From feda8a7db8d1d7c5439aa8f8feef7cc0dd2b59a0 Mon Sep 17 00:00:00 2001 From: Unit 193 Date: Fri, 27 Jul 2018 23:51:12 -0400 Subject: New upstream version 3.2.1+dfsg1 --- .../windows/sqliteextensioneditormodel.h | 65 ++++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 SQLiteStudio3/guiSQLiteStudio/windows/sqliteextensioneditormodel.h (limited to 'SQLiteStudio3/guiSQLiteStudio/windows/sqliteextensioneditormodel.h') diff --git a/SQLiteStudio3/guiSQLiteStudio/windows/sqliteextensioneditormodel.h b/SQLiteStudio3/guiSQLiteStudio/windows/sqliteextensioneditormodel.h new file mode 100644 index 0000000..085edd9 --- /dev/null +++ b/SQLiteStudio3/guiSQLiteStudio/windows/sqliteextensioneditormodel.h @@ -0,0 +1,65 @@ +#ifndef SQLITEEXTENSIONEDITORMODEL_H +#define SQLITEEXTENSIONEDITORMODEL_H + +#include "guiSQLiteStudio_global.h" +#include "services/sqliteextensionmanager.h" +#include +#include +#include + +class GUI_API_EXPORT SqliteExtensionEditorModel : public QAbstractListModel +{ + Q_OBJECT + + public: + using QAbstractItemModel::setData; + + explicit SqliteExtensionEditorModel(QObject* parent = nullptr); + + void clearModified(); + bool isModified() const; + bool isModified(int row) const; + void setModified(int row, bool modified); + QString getName(int row) const; + void setName(int row, const QString& name); + void setFilePath(int row, const QString& filePath); + QString getFilePath(int row) const; + void setInitFunction(int row, const QString& initFunc); + QString getInitFunction(int row) const; + void setAllDatabases(int row, bool allDatabases); + bool getAllDatabases(int row) const; + void setDatabases(int row, const QStringList& databases); + QStringList getDatabases(int row); + bool isValid(int row) const; + void setValid(int row, bool valid); + bool isValid() const; + void setData(const QList& extensions); + void addExtension(const SqliteExtensionManager::ExtensionPtr& extension); + void deleteExtension(int row); + QList getExtensions() const; + bool isValidRowIndex(int row) const; + + int rowCount(const QModelIndex& parent = QModelIndex()) const; + QVariant data(const QModelIndex& index, int role) const; + + private: + struct Extension + { + Extension(); + Extension(const SqliteExtensionManager::ExtensionPtr& other); + + SqliteExtensionManager::ExtensionPtr data; + QString name; + bool modified = false; + bool valid = true; + }; + + void emitDataChanged(int row); + + QList extensionList; + QList originalExtensionList; + QHash langToIcon; + bool listModified = false; +}; + +#endif // SQLITEEXTENSIONEDITORMODEL_H -- cgit v1.2.3