diff options
Diffstat (limited to 'SQLiteStudio3/guiSQLiteStudio/dialogs/triggerdialog.cpp')
| -rw-r--r-- | SQLiteStudio3/guiSQLiteStudio/dialogs/triggerdialog.cpp | 31 |
1 files changed, 23 insertions, 8 deletions
diff --git a/SQLiteStudio3/guiSQLiteStudio/dialogs/triggerdialog.cpp b/SQLiteStudio3/guiSQLiteStudio/dialogs/triggerdialog.cpp index 0707bd3..12baafd 100644 --- a/SQLiteStudio3/guiSQLiteStudio/dialogs/triggerdialog.cpp +++ b/SQLiteStudio3/guiSQLiteStudio/dialogs/triggerdialog.cpp @@ -19,6 +19,9 @@ #include <QMessageBox> #include <QPushButton> +QStringList TriggerDialog::tableEventNames; +QStringList TriggerDialog::viewEventNames; + TriggerDialog::TriggerDialog(Db* db, QWidget *parent) : QDialog(parent), db(db), @@ -54,6 +57,18 @@ void TriggerDialog::setTrigger(const QString& name) initTrigger(); } +void TriggerDialog::staticInit() +{ + tableEventNames = QStringList({ + SqliteCreateTrigger::time(SqliteCreateTrigger::Time::null), + SqliteCreateTrigger::time(SqliteCreateTrigger::Time::AFTER), + SqliteCreateTrigger::time(SqliteCreateTrigger::Time::BEFORE) + }); + viewEventNames = QStringList({ + SqliteCreateTrigger::time(SqliteCreateTrigger::Time::INSTEAD_OF) + }); +} + void TriggerDialog::changeEvent(QEvent *e) { QDialog::changeEvent(e); @@ -99,6 +114,9 @@ void TriggerDialog::init() }); } + // Event combo - default values + ui->whenCombo->addItems(tableEventNames + viewEventNames); + // Precondition connect(ui->preconditionCheck, SIGNAL(clicked()), this, SLOT(updateState())); connect(ui->preconditionEdit, SIGNAL(errorsChecked(bool)), this, SLOT(updateValidation())); @@ -128,22 +146,19 @@ void TriggerDialog::initTrigger() } // Event combo + QString eventValue = ui->whenCombo->currentText(); + ui->whenCombo->clear(); if (forTable) { - ui->whenCombo->addItems({ - SqliteCreateTrigger::time(SqliteCreateTrigger::Time::null), - SqliteCreateTrigger::time(SqliteCreateTrigger::Time::BEFORE), - SqliteCreateTrigger::time(SqliteCreateTrigger::Time::AFTER) - }); + ui->whenCombo->addItems(tableEventNames); } else { - ui->whenCombo->addItems({ - SqliteCreateTrigger::time(SqliteCreateTrigger::Time::INSTEAD_OF) - }); + ui->whenCombo->addItems(viewEventNames); ui->whenCombo->setEnabled(false); ui->onLabel->setText(tr("On view:")); } + ui->whenCombo->setCurrentText(eventValue); if (!view.isNull() || !table.isNull()) { |
