aboutsummaryrefslogtreecommitdiffstats
path: root/SQLiteStudio3/guiSQLiteStudio/multieditor/multieditorbool.h
diff options
context:
space:
mode:
authorLibravatarUnit 193 <unit193@ubuntu.com>2014-12-06 17:33:25 -0500
committerLibravatarUnit 193 <unit193@ubuntu.com>2014-12-06 17:33:25 -0500
commit7167ce41b61d2ba2cdb526777a4233eb84a3b66a (patch)
treea35c14143716e1f2c98f808c81f89426045a946f /SQLiteStudio3/guiSQLiteStudio/multieditor/multieditorbool.h
Imported Upstream version 2.99.6upstream/2.99.6
Diffstat (limited to 'SQLiteStudio3/guiSQLiteStudio/multieditor/multieditorbool.h')
-rw-r--r--SQLiteStudio3/guiSQLiteStudio/multieditor/multieditorbool.h68
1 files changed, 68 insertions, 0 deletions
diff --git a/SQLiteStudio3/guiSQLiteStudio/multieditor/multieditorbool.h b/SQLiteStudio3/guiSQLiteStudio/multieditor/multieditorbool.h
new file mode 100644
index 0000000..f328cf0
--- /dev/null
+++ b/SQLiteStudio3/guiSQLiteStudio/multieditor/multieditorbool.h
@@ -0,0 +1,68 @@
+#ifndef MULTIEDITORBOOL_H
+#define MULTIEDITORBOOL_H
+
+#include "guiSQLiteStudio_global.h"
+#include "multieditorwidget.h"
+#include "multieditorwidgetplugin.h"
+#include "plugins/builtinplugin.h"
+#include <QStringList>
+
+class QCheckBox;
+
+class GUI_API_EXPORT MultiEditorBool : public MultiEditorWidget
+{
+ Q_OBJECT
+
+ public:
+ explicit MultiEditorBool(QWidget* parent = 0);
+
+ static void staticInit();
+
+ void setValue(const QVariant& boolValue);
+ QVariant getValue();
+ void setReadOnly(bool boolValue);
+ QList<QWidget*> getNoScrollWidgets();
+ QString getTabLabel();
+ void focusThisWidget();
+
+ private:
+ enum Format
+ {
+ TRUE_FALSE,
+ ON_OFF,
+ YES_NO,
+ ONE_ZERO,
+ BOOL
+ };
+
+ bool valueFromString(const QString& strValue);
+ void updateLabel();
+
+ static QStringList validValues;
+
+ QCheckBox* checkBox = nullptr;
+ Format valueFormat = ONE_ZERO;
+ bool upperCaseValue = false;
+ bool readOnly = false;
+ bool boolValue = false;
+
+ private slots:
+ void stateChanged(int state);
+};
+
+class GUI_API_EXPORT MultiEditorBoolPlugin : public BuiltInPlugin, public MultiEditorWidgetPlugin
+{
+ Q_OBJECT
+
+ SQLITESTUDIO_PLUGIN_AUTHOR("sqlitestudio.pl")
+ SQLITESTUDIO_PLUGIN_DESC("Boolean data editor.")
+ SQLITESTUDIO_PLUGIN_TITLE("Boolean")
+ SQLITESTUDIO_PLUGIN_VERSION(10000)
+
+ public:
+ MultiEditorWidget* getInstance();
+ bool validFor(const DataType& dataType);
+ int getPriority(const DataType& dataType);
+};
+
+#endif // MULTIEDITORBOOL_H