diff options
| author | 2014-12-06 17:33:25 -0500 | |
|---|---|---|
| committer | 2014-12-06 17:33:25 -0500 | |
| commit | 7167ce41b61d2ba2cdb526777a4233eb84a3b66a (patch) | |
| tree | a35c14143716e1f2c98f808c81f89426045a946f /SQLiteStudio3/coreSQLiteStudio/plugins/scriptingsql.h | |
Imported Upstream version 2.99.6upstream/2.99.6
Diffstat (limited to 'SQLiteStudio3/coreSQLiteStudio/plugins/scriptingsql.h')
| -rw-r--r-- | SQLiteStudio3/coreSQLiteStudio/plugins/scriptingsql.h | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/SQLiteStudio3/coreSQLiteStudio/plugins/scriptingsql.h b/SQLiteStudio3/coreSQLiteStudio/plugins/scriptingsql.h new file mode 100644 index 0000000..7b8fd3b --- /dev/null +++ b/SQLiteStudio3/coreSQLiteStudio/plugins/scriptingsql.h @@ -0,0 +1,46 @@ +#ifndef SCRIPTINGSQL_H +#define SCRIPTINGSQL_H + +#include "builtinplugin.h" +#include "scriptingplugin.h" + +class ScriptingSql : public BuiltInPlugin, public DbAwareScriptingPlugin +{ + Q_OBJECT + + SQLITESTUDIO_PLUGIN_TITLE("SQL scripting") + SQLITESTUDIO_PLUGIN_DESC("SQL scripting support.") + SQLITESTUDIO_PLUGIN_VERSION(10000) + SQLITESTUDIO_PLUGIN_AUTHOR("sqlitestudio.pl") + + public: + class SqlContext : public Context + { + public: + QString errorText; + QHash<QString,QVariant> variables; + }; + + ScriptingSql(); + ~ScriptingSql(); + + QString getLanguage() const; + Context* createContext(); + void releaseContext(Context* context); + void resetContext(Context* context); + QVariant evaluate(Context* context, const QString& code, const QList<QVariant>& args, Db* db, bool locking); + QVariant evaluate(const QString& code, const QList<QVariant>& args, Db* db, bool locking, QString* errorMessage); + void setVariable(Context* context, const QString& name, const QVariant& value); + QVariant getVariable(Context* context, const QString& name); + bool hasError(Context* context) const; + QString getErrorMessage(Context* context) const; + QString getIconPath() const; + bool init(); + void deinit(); + + private: + QList<Context*> contexts; + Db* memDb = nullptr; +}; + +#endif // SCRIPTINGSQL_H |
