diff options
| author | 2017-02-09 04:36:04 -0500 | |
|---|---|---|
| committer | 2017-02-09 04:36:04 -0500 | |
| commit | d9aa870e5d509cc7309ab82dd102a937ab58613a (patch) | |
| tree | d92d03d76b5c390b335f1cfd761f1a0b59ec8496 /SQLiteStudio3/coreSQLiteStudio/plugins | |
| parent | 68ee4cbcbe424b95969c70346283a9f217f63825 (diff) | |
Imported Upstream version 3.1.1+dfsg1upstream/3.1.1+dfsg1
Diffstat (limited to 'SQLiteStudio3/coreSQLiteStudio/plugins')
4 files changed, 51 insertions, 2 deletions
diff --git a/SQLiteStudio3/coreSQLiteStudio/plugins/dbpluginsqlite3.cpp b/SQLiteStudio3/coreSQLiteStudio/plugins/dbpluginsqlite3.cpp index 0f16098..7228752 100644 --- a/SQLiteStudio3/coreSQLiteStudio/plugins/dbpluginsqlite3.cpp +++ b/SQLiteStudio3/coreSQLiteStudio/plugins/dbpluginsqlite3.cpp @@ -38,7 +38,7 @@ QList<DbPluginOption> DbPluginSqlite3::getOptionsList() const QString DbPluginSqlite3::generateDbName(const QVariant& baseValue) { QFileInfo file(baseValue.toString()); - return file.baseName(); + return file.completeBaseName(); } bool DbPluginSqlite3::checkIfDbServedByPlugin(Db* db) const diff --git a/SQLiteStudio3/coreSQLiteStudio/plugins/dbpluginstdfilebase.cpp b/SQLiteStudio3/coreSQLiteStudio/plugins/dbpluginstdfilebase.cpp new file mode 100644 index 0000000..b890c26 --- /dev/null +++ b/SQLiteStudio3/coreSQLiteStudio/plugins/dbpluginstdfilebase.cpp @@ -0,0 +1,33 @@ +#include "dbpluginstdfilebase.h"
+#include "common/unused.h"
+#include "db/sqlquery.h"
+#include <QFileInfo>
+
+Db *DbPluginStdFileBase::getInstance(const QString &name, const QString &path, const QHash<QString, QVariant> &options, QString *errorMessage)
+{
+ UNUSED(errorMessage);
+
+ Db* db = newInstance(name, path, options);
+
+ if (!db->openForProbing())
+ {
+ delete db;
+ return nullptr;
+ }
+
+ SqlQueryPtr results = db->exec("SELECT * FROM sqlite_master");
+ if (results->isError())
+ {
+ delete db;
+ return nullptr;
+ }
+
+ db->closeQuiet();
+ return db;
+}
+
+QString DbPluginStdFileBase::generateDbName(const QVariant &baseValue)
+{
+ QFileInfo file(baseValue.toString());
+ return file.completeBaseName();
+}
diff --git a/SQLiteStudio3/coreSQLiteStudio/plugins/dbpluginstdfilebase.h b/SQLiteStudio3/coreSQLiteStudio/plugins/dbpluginstdfilebase.h new file mode 100644 index 0000000..6ea1c47 --- /dev/null +++ b/SQLiteStudio3/coreSQLiteStudio/plugins/dbpluginstdfilebase.h @@ -0,0 +1,16 @@ +#ifndef DBPLUGINSTDFILEBASE_H
+#define DBPLUGINSTDFILEBASE_H
+
+#include "dbplugin.h"
+
+class API_EXPORT DbPluginStdFileBase : public DbPlugin
+{
+ public:
+ Db *getInstance(const QString &name, const QString &path, const QHash<QString, QVariant> &options, QString *errorMessage);
+ QString generateDbName(const QVariant &baseValue);
+
+ protected:
+ virtual Db *newInstance(const QString &name, const QString &path, const QHash<QString, QVariant> &options) = 0;
+};
+
+#endif // DBPLUGINSTDFILEBASE_H
diff --git a/SQLiteStudio3/coreSQLiteStudio/plugins/uiconfiguredplugin.h b/SQLiteStudio3/coreSQLiteStudio/plugins/uiconfiguredplugin.h index c9af8e0..1426117 100644 --- a/SQLiteStudio3/coreSQLiteStudio/plugins/uiconfiguredplugin.h +++ b/SQLiteStudio3/coreSQLiteStudio/plugins/uiconfiguredplugin.h @@ -39,7 +39,7 @@ class API_EXPORT UiConfiguredPlugin * * This is called just after the config dialog was open and all its contents are already initialized. * This is a good moment to connect to plugin's CfgMain configuration object to listen for changes, - * so all uncommited (yet) configuration changes can be reflected by this plugin. + * so all uncommitted (yet) configuration changes can be reflected by this plugin. */ virtual void configDialogOpen() = 0; |
