Add more options to database settings widget.

This commit is contained in:
Florian Geyer 2012-04-19 18:10:53 +02:00 committed by Felix Geyer
parent 258af265c7
commit 26c4dedd01
4 changed files with 77 additions and 4 deletions

View File

@ -33,8 +33,17 @@ DatabaseSettingsWidget::~DatabaseSettingsWidget()
{ {
} }
void DatabaseSettingsWidget::setForms(int transformRounds) void DatabaseSettingsWidget::setForms(QString dbName, QString dbDescription,
bool recylceBinEnabled, int transformRounds)
{ {
m_ui->dbNameEdit->setText(dbName);
m_ui->dbDescriptionEdit->setText(dbDescription);
if (recylceBinEnabled) {
m_ui->recycleBinEnabledCheckBox->setCheckState(Qt::Checked);
}
else {
m_ui->recycleBinEnabledCheckBox->setCheckState(Qt::Unchecked);
}
m_ui->transformRoundsSpinBox->setValue(transformRounds); m_ui->transformRoundsSpinBox->setValue(transformRounds);
} }
@ -43,9 +52,33 @@ quint64 DatabaseSettingsWidget::transformRounds()
return m_transformRounds; return m_transformRounds;
} }
QString DatabaseSettingsWidget::dbName()
{
return m_dbName;
}
QString DatabaseSettingsWidget::dbDescription()
{
return m_dbDescription;
}
bool DatabaseSettingsWidget::recylceBinEnabled()
{
return m_recylceBinEnabled;
}
void DatabaseSettingsWidget::changeSettings() void DatabaseSettingsWidget::changeSettings()
{ {
m_dbName = m_ui->dbNameEdit->text();
m_dbDescription = m_ui->dbDescriptionEdit->text();
if (m_ui->recycleBinEnabledCheckBox->checkState() == Qt::Checked) {
m_recylceBinEnabled = true;
}
else {
m_recylceBinEnabled = false;
}
m_transformRounds = m_ui->transformRoundsSpinBox->value(); m_transformRounds = m_ui->transformRoundsSpinBox->value();
Q_EMIT editFinished(true); Q_EMIT editFinished(true);
} }

View File

@ -35,8 +35,12 @@ public:
explicit DatabaseSettingsWidget(QWidget* parent = 0); explicit DatabaseSettingsWidget(QWidget* parent = 0);
~DatabaseSettingsWidget(); ~DatabaseSettingsWidget();
void setForms(int transformRounds); void setForms(QString dbName, QString dbDescription,
bool recylceBinEnabled, int transformRounds);
quint64 transformRounds(); quint64 transformRounds();
QString dbName();
QString dbDescription();
bool recylceBinEnabled();
Q_SIGNALS: Q_SIGNALS:
void editFinished(bool accepted); void editFinished(bool accepted);
@ -48,6 +52,9 @@ private Q_SLOTS:
private: private:
QScopedPointer<Ui::DatabaseSettingsWidget> m_ui; QScopedPointer<Ui::DatabaseSettingsWidget> m_ui;
QString m_dbName;
QString m_dbDescription;
bool m_recylceBinEnabled;
quint64 m_transformRounds; quint64 m_transformRounds;
Q_DISABLE_COPY(DatabaseSettingsWidget) Q_DISABLE_COPY(DatabaseSettingsWidget)

View File

@ -33,13 +33,33 @@
<item> <item>
<layout class="QFormLayout" name="formLayout"> <layout class="QFormLayout" name="formLayout">
<item row="1" column="0"> <item row="1" column="0">
<widget class="QLabel" name="dbNameLabel">
<property name="text">
<string>Database name:</string>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QLineEdit" name="dbNameEdit"/>
</item>
<item row="2" column="1">
<widget class="QLineEdit" name="dbDescriptionEdit"/>
</item>
<item row="2" column="0">
<widget class="QLabel" name="dbDescriptionLabel">
<property name="text">
<string>Database description:</string>
</property>
</widget>
</item>
<item row="3" column="0">
<widget class="QLabel" name="transformRoundsLabel"> <widget class="QLabel" name="transformRoundsLabel">
<property name="text"> <property name="text">
<string>Transform rounds:</string> <string>Transform rounds:</string>
</property> </property>
</widget> </widget>
</item> </item>
<item row="1" column="1"> <item row="3" column="1">
<widget class="QSpinBox" name="transformRoundsSpinBox"> <widget class="QSpinBox" name="transformRoundsSpinBox">
<property name="sizePolicy"> <property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed"> <sizepolicy hsizetype="Expanding" vsizetype="Fixed">
@ -55,6 +75,13 @@
</property> </property>
</widget> </widget>
</item> </item>
<item row="4" column="1">
<widget class="QCheckBox" name="recycleBinEnabledCheckBox">
<property name="text">
<string>Recycle bin</string>
</property>
</widget>
</item>
</layout> </layout>
</item> </item>
<item> <item>

View File

@ -198,6 +198,9 @@ void DatabaseWidget::updateSettings(bool accepted)
{ {
if (accepted) { if (accepted) {
m_db->updateKey(m_databaseSettingsWidget->transformRounds()); m_db->updateKey(m_databaseSettingsWidget->transformRounds());
m_db->metadata()->setDescription(m_databaseSettingsWidget->dbDescription());
m_db->metadata()->setRecycleBinEnabled(m_databaseSettingsWidget->recylceBinEnabled());
m_db->metadata()->setName(m_databaseSettingsWidget->dbName());
} }
setCurrentIndex(0); setCurrentIndex(0);
@ -221,7 +224,10 @@ void DatabaseWidget::switchToMasterKeyChange()
void DatabaseWidget::switchToDatabaseSettings() void DatabaseWidget::switchToDatabaseSettings()
{ {
m_databaseSettingsWidget->setForms(m_db->transformRounds()); m_databaseSettingsWidget->setForms(m_db->metadata()->name(),
m_db->metadata()->description(),
m_db->metadata()->recycleBinEnabled(),
m_db->transformRounds());
setCurrentIndex(4); setCurrentIndex(4);
} }