File indexing completed on 2024-05-12 15:59:52

0001 /*
0002  * SPDX-FileCopyrightText: 2018 boud <boud@valdyas.org>
0003  *
0004  *  SPDX-License-Identifier: GPL-2.0-or-later
0005  */
0006 #ifndef KISRESOURCETYPEMODEL_H
0007 #define KISRESOURCETYPEMODEL_H
0008 
0009 #include <QAbstractTableModel>
0010 #include <QStyledItemDelegate>
0011 #include <QObject>
0012 
0013 #include "kritaresources_export.h"
0014 
0015 /**
0016  * KisResourceTypeModel provides a view on the various resource types
0017  * defined in the database. This should be the same list as available
0018  * from KisResourceLoaderRegistry. 
0019  */
0020 class KRITARESOURCES_EXPORT KisResourceTypeModel : public QAbstractTableModel
0021 {
0022     Q_OBJECT
0023 public:
0024 
0025     enum Columns {
0026         Id = 0,
0027         ResourceType,
0028         Name,
0029     };
0030 
0031     KisResourceTypeModel(QObject *parent = 0);
0032     ~KisResourceTypeModel() override;
0033 
0034     int rowCount(const QModelIndex &parent = QModelIndex()) const override;
0035     int columnCount(const QModelIndex &parent = QModelIndex()) const override;
0036     QVariant data(const QModelIndex &index, int role) const override;
0037 
0038 private:
0039 
0040     bool prepareQuery();
0041 
0042     struct Private;
0043     Private* const d;
0044 
0045 };
0046 
0047 #endif // KISRESOURCETYPEMODEL_H