aboutsummaryrefslogtreecommitdiffstats
path: root/SQLiteStudio3/coreSQLiteStudio/plugins/scriptingqtdbproxy.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/coreSQLiteStudio/plugins/scriptingqtdbproxy.h
Imported Upstream version 2.99.6upstream/2.99.6
Diffstat (limited to 'SQLiteStudio3/coreSQLiteStudio/plugins/scriptingqtdbproxy.h')
-rw-r--r--SQLiteStudio3/coreSQLiteStudio/plugins/scriptingqtdbproxy.h44
1 files changed, 44 insertions, 0 deletions
diff --git a/SQLiteStudio3/coreSQLiteStudio/plugins/scriptingqtdbproxy.h b/SQLiteStudio3/coreSQLiteStudio/plugins/scriptingqtdbproxy.h
new file mode 100644
index 0000000..add9540
--- /dev/null
+++ b/SQLiteStudio3/coreSQLiteStudio/plugins/scriptingqtdbproxy.h
@@ -0,0 +1,44 @@
+#ifndef SCRIPTINGQTDBPROXY_H
+#define SCRIPTINGQTDBPROXY_H
+
+#include <QObject>
+#include <QScriptable>
+#include <QHash>
+#include <QList>
+#include <QVariant>
+
+class Db;
+
+class ScriptingQtDbProxy : public QObject, protected QScriptable
+{
+ Q_OBJECT
+ public:
+ explicit ScriptingQtDbProxy(QObject *parent = 0);
+
+ Db* getDb() const;
+ void setDb(Db* value);
+
+ bool getUseDbLocking() const;
+ void setUseDbLocking(bool value);
+
+ private:
+ QVariant evalInternal(const QString& sql, const QList<QVariant>& listArgs, const QMap<QString, QVariant>& mapArgs, bool singleCell,
+ const QScriptValue* funcPtr = nullptr);
+ QVariant evalInternalErrorResult(bool singleCell);
+
+ static QHash<QString, QVariant> mapToHash(const QMap<QString, QVariant>& map);
+
+ Db* db = nullptr;
+ bool useDbLocking = false;
+
+ public slots:
+ QVariant eval(const QString& sql);
+ QVariant eval(const QString& sql, const QList<QVariant>& args);
+ QVariant eval(const QString& sql, const QMap<QString, QVariant>& args);
+ QVariant eval(const QString& sql, const QList<QVariant>& args, const QScriptValue& func);
+ QVariant eval(const QString& sql, const QMap<QString, QVariant>& args, const QScriptValue& func);
+ QVariant onecolumn(const QString& sql, const QList<QVariant>& args);
+ QVariant onecolumn(const QString& sql, const QMap<QString, QVariant>& args);
+};
+
+#endif // SCRIPTINGQTDBPROXY_H