aboutsummaryrefslogtreecommitdiffstats
path: root/SQLiteStudio3/guiSQLiteStudio/dialogs/indexexprcolumndialog.h
diff options
context:
space:
mode:
authorLibravatarUnit 193 <unit193@ubuntu.com>2016-06-13 18:42:42 -0400
committerLibravatarUnit 193 <unit193@ubuntu.com>2016-06-13 18:42:42 -0400
commit5d9314f134ddd3dc4c853e398ac90ba247fb2e4f (patch)
tree5c457fc188036988d7abd29a3eb09931e406510f /SQLiteStudio3/guiSQLiteStudio/dialogs/indexexprcolumndialog.h
parent8e640722c62692818ab840d50b3758f89a41a54e (diff)
Imported Upstream version 3.1.0upstream/3.1.0
Diffstat (limited to 'SQLiteStudio3/guiSQLiteStudio/dialogs/indexexprcolumndialog.h')
-rw-r--r--SQLiteStudio3/guiSQLiteStudio/dialogs/indexexprcolumndialog.h47
1 files changed, 47 insertions, 0 deletions
diff --git a/SQLiteStudio3/guiSQLiteStudio/dialogs/indexexprcolumndialog.h b/SQLiteStudio3/guiSQLiteStudio/dialogs/indexexprcolumndialog.h
new file mode 100644
index 0000000..5e4fde5
--- /dev/null
+++ b/SQLiteStudio3/guiSQLiteStudio/dialogs/indexexprcolumndialog.h
@@ -0,0 +1,47 @@
+#ifndef INDEXEXPRCOLUMNDIALOG_H
+#define INDEXEXPRCOLUMNDIALOG_H
+
+#include <QDialog>
+
+class SqliteExpr;
+class Db;
+
+namespace Ui {
+ class IndexExprColumnDialog;
+}
+
+class IndexExprColumnDialog : public QDialog
+{
+ Q_OBJECT
+
+ public:
+ explicit IndexExprColumnDialog(Db* db, QWidget *parent = 0);
+ IndexExprColumnDialog(Db* db, SqliteExpr* col, QWidget *parent = 0);
+ ~IndexExprColumnDialog();
+
+ SqliteExpr* getColumn() const;
+ void setTableColumns(const QStringList& value);
+ void setExistingExprColumnKeys(const QStringList& value);
+
+ private:
+ void readColumn(SqliteExpr* col);
+ void setOkEnabled(bool enabled);
+ SqliteExpr* parseExpr();
+ bool checkRestrictions(QString& errorMsg);
+
+ Ui::IndexExprColumnDialog *ui;
+ SqliteExpr* theColumn = nullptr;
+ QString lastValidatedText;
+ Db* db = nullptr;
+ QStringList tableColumns;
+ QStringList existingExprColumnKeys;
+
+ public slots:
+ void accept();
+ int exec();
+
+ private slots:
+ void validate();
+};
+
+#endif // INDEXEXPRCOLUMNDIALOG_H