diff options
Diffstat (limited to 'SQLiteStudio3/guiSQLiteStudio/selectabledbmodel.h')
| -rw-r--r-- | SQLiteStudio3/guiSQLiteStudio/selectabledbmodel.h | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/SQLiteStudio3/guiSQLiteStudio/selectabledbmodel.h b/SQLiteStudio3/guiSQLiteStudio/selectabledbmodel.h new file mode 100644 index 0000000..bbae582 --- /dev/null +++ b/SQLiteStudio3/guiSQLiteStudio/selectabledbmodel.h @@ -0,0 +1,36 @@ +#ifndef SELECTABLEDBMODEL_H +#define SELECTABLEDBMODEL_H + +#include "guiSQLiteStudio_global.h" +#include <QModelIndex> +#include <QSortFilterProxyModel> +#include <QVariant> + +class DbTreeItem; + +class GUI_API_EXPORT SelectableDbModel : public QSortFilterProxyModel +{ + public: + explicit SelectableDbModel(QObject *parent = 0); + + QVariant data(const QModelIndex& index, int role) const; + bool setData(const QModelIndex& index, const QVariant& value, int role); + Qt::ItemFlags flags(const QModelIndex& index) const; + + void setDatabases(const QStringList& databases); + QStringList getDatabases() const; + + int getDisabledVersion() const; + void setDisabledVersion(int value); + + protected: + bool filterAcceptsRow(int srcRow, const QModelIndex& srcParent) const; + + private: + DbTreeItem* getItemForProxyIndex(const QModelIndex& index) const; + + QStringList checkedDatabases; + int disabledVersion = -1; +}; + +#endif // SELECTABLEDBMODEL_H |
