aboutsummaryrefslogtreecommitdiffstats
path: root/SQLiteStudio3/guiSQLiteStudio/constraints/columndefaultpanel.h
diff options
context:
space:
mode:
authorLibravatarUnit 193 <unit193@ubuntu.com>2015-01-30 17:00:24 -0500
committerLibravatarUnit 193 <unit193@ubuntu.com>2015-01-30 17:00:24 -0500
commite4767514ed04e6a0bddf3f4a47f5f0b09e65e0ee (patch)
tree86cadc2137831d44fa29fd40a2964f7fb1326de4 /SQLiteStudio3/guiSQLiteStudio/constraints/columndefaultpanel.h
parent26ddfe11c2b7fac52e5f57dcd9f5223a50b2a9a7 (diff)
parent016003905ca0e8e459e3dc33e786beda8ec92f45 (diff)
Merge tag 'upstream/3.0.2'
Upstream version 3.0.2 # gpg: Signature made Fri 30 Jan 2015 05:00:11 PM EST using RSA key ID EBE9BD91 # gpg: Good signature from "Unit 193 <unit193@gmail.com>" # gpg: aka "Unit 193 <unit193@ninthfloor.org>" # gpg: aka "Unit 193 <unit193@ubuntu.com>"
Diffstat (limited to 'SQLiteStudio3/guiSQLiteStudio/constraints/columndefaultpanel.h')
-rw-r--r--SQLiteStudio3/guiSQLiteStudio/constraints/columndefaultpanel.h16
1 files changed, 15 insertions, 1 deletions
diff --git a/SQLiteStudio3/guiSQLiteStudio/constraints/columndefaultpanel.h b/SQLiteStudio3/guiSQLiteStudio/constraints/columndefaultpanel.h
index 933c2dd..3cdd962 100644
--- a/SQLiteStudio3/guiSQLiteStudio/constraints/columndefaultpanel.h
+++ b/SQLiteStudio3/guiSQLiteStudio/constraints/columndefaultpanel.h
@@ -4,6 +4,7 @@
#include "constraintpanel.h"
#include "parser/ast/sqliteconflictalgo.h"
#include "guiSQLiteStudio_global.h"
+#include "parser/ast/sqlitecreatetable.h"
#include <QWidget>
namespace Ui {
@@ -27,12 +28,25 @@ class GUI_API_EXPORT ColumnDefaultPanel : public ConstraintPanel
void storeConfiguration();
private:
+ enum class Mode
+ {
+ EXPR,
+ LITERAL,
+ ERROR
+ };
+
void init();
void readConstraint();
void updateVirtualSql();
- SqliteExprPtr parseExpression(const QString& sql);
+ QString getTempTable();
+ void storeExpr(SqliteCreateTable::Column::Constraint* constr);
+ void storeLiteral(SqliteCreateTable::Column::Constraint* constr);
+ void clearDefault(SqliteCreateTable::Column::Constraint* constr);
Ui::ColumnDefaultPanel *ui = nullptr;
+ QString lastValidatedText;
+ bool lastValidationResult = false;
+ Mode currentMode = Mode::ERROR;
private slots:
void updateState();