20#include <QAbstractItemModel>
21#include <QAbstractItemDelegate>
24#include <QStyledItemDelegate>
53 IsCategoryRole = Qt::UserRole,
56 CategoryButtonDisplayRole = Qt::UserRole + 1,
57 CategoryButtonMapId = Qt::UserRole + 2,
60 IsAppendRole = Qt::UserRole + 3,
63 AppendDecorationRole = Qt::UserRole + 4,
64 AppendMapId = Qt::UserRole + 5,
67 IsUpdateRole = Qt::UserRole + 6,
70 UpdateDecorationRole = Qt::UserRole + 7,
71 UpdateMapId = Qt::UserRole + 8,
74 IsDeleteRole = Qt::UserRole + 9,
77 DeleteDecorationRole = Qt::UserRole + 10,
78 DeleteMapId = Qt::UserRole + 11
86 ColumnAppendButton = 3,
87 ColumnUpdateButton = 4,
88 ColumnDeleteButton = 5,
95 CategoryRemovable = 1,
106 void loadCollections();
109 void setParentWidgetForDialogs(QWidget*
const widget);
114 QModelIndex indexForCategory(Category category)
const;
115 QList<QModelIndex> categoryIndexes()
const;
119 QVariant data(
const QModelIndex& index,
int role = Qt::DisplayRole)
const override;
120 QVariant headerData(
int section, Qt::Orientation orientation,
int role = Qt::DisplayRole)
const override;
121 int rowCount(
const QModelIndex& parent = QModelIndex())
const override;
122 int columnCount(
const QModelIndex& parent = QModelIndex())
const override;
123 Qt::ItemFlags flags(
const QModelIndex& index)
const override;
124 bool setData(
const QModelIndex& index,
const QVariant&
value,
int role = Qt::EditRole)
override;
125 QModelIndex index(
int row,
int column,
const QModelIndex& parent = QModelIndex())
const override;
126 QModelIndex parent(
const QModelIndex& index)
const override;
148 void slotCategoryButtonPressed(
int mappedId);
155 void slotAppendPressed(
int mappedId);
156 void slotUpdatePressed(
int mappedId);
157 void slotDeletePressed(
int mappedId);
165 void addCollection(
int category);
166 void updateCollection(
int internalId);
167 void deleteCollection(
int internalId);
171 QModelIndex indexForId(
int id,
int column)
const;
173 bool askForNewCollectionPath(
bool adding,
175 QString*
const newPath,
176 QString*
const newLabel);
177 bool askForNewCollectionCategory(
int*
const category);
179 int categoryButtonMapId(
const QModelIndex& index)
const;
180 int buttonMapId(
const QModelIndex& index)
const;
202 bool appended =
false;
203 bool updated =
false;
204 bool deleted =
false;
210 QWidget* m_dialogParentWidget =
nullptr;
235 void setModel(QAbstractItemModel* model)
override
250 QObject*
const parent =
nullptr);
254 const QStyleOptionViewItem& option,
255 const QModelIndex& index)
const override;
258 QAbstractItemModel* model,
259 const QStyleOptionViewItem& option,
260 const QModelIndex& index)
override;
262 void paint(QPainter* painter,
263 const QStyleOptionViewItem& option,
264 const QModelIndex& index)
const override;
267 const QModelIndex& index)
const override;
270 QAbstractItemModel* model,
271 const QModelIndex& index)
const override;
273 QSize
sizeHint(
const QStyleOptionViewItem& option,
274 const QModelIndex& index)
const override;
277 const QStyleOptionViewItem& option,
278 const QModelIndex& index)
const override;
282 const QStyleOptionViewItem& option,
283 const QPersistentModelIndex& index)
const override;
Definition collectionlocation.h:31
Type
Definition collectionlocation.h:70
Definition dwitemdelegate.h:50
Definition setupcollectionview.h:244
void paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const override
Definition setupcollectionview.cpp:305
void appendPressed(int mappedId) const
QList< QWidget * > createItemWidgets(const QModelIndex &index) const override
Definition setupcollectionview.cpp:92
void updatePressed(int mappedId) const
void categoryButtonPressed(int mappedId) const
void setModelData(QWidget *editor, QAbstractItemModel *model, const QModelIndex &index) const override
Definition setupcollectionview.cpp:315
int m_categoryMaxStyledWidth
Definition setupcollectionview.h:300
bool editorEvent(QEvent *event, QAbstractItemModel *model, const QStyleOptionViewItem &option, const QModelIndex &index) override
Definition setupcollectionview.cpp:299
void updateItemWidgets(const QList< QWidget * > &widgets, const QStyleOptionViewItem &option, const QPersistentModelIndex &index) const override
Definition setupcollectionview.cpp:222
void updateEditorGeometry(QWidget *editor, const QStyleOptionViewItem &option, const QModelIndex &index) const override
Definition setupcollectionview.cpp:320
QStyledItemDelegate * m_styledDelegate
Definition setupcollectionview.h:294
void deletePressed(int mappedId) const
QPushButton * m_samplePushButton
Definition setupcollectionview.h:296
~SetupCollectionDelegate() override
Definition setupcollectionview.cpp:88
QToolButton * m_sampleUpdateButton
Definition setupcollectionview.h:298
void setEditorData(QWidget *editor, const QModelIndex &index) const override
Definition setupcollectionview.cpp:310
QToolButton * m_sampleDeleteButton
Definition setupcollectionview.h:299
QToolButton * m_sampleAppendButton
Definition setupcollectionview.h:297
QSize sizeHint(const QStyleOptionViewItem &option, const QModelIndex &index) const override
Definition setupcollectionview.cpp:147
QWidget * createEditor(QWidget *parent, const QStyleOptionViewItem &option, const QModelIndex &index) const override
Definition setupcollectionview.cpp:294
Definition setupcollectionview.h:187
QString path
Definition setupcollectionview.h:199
QStringList childs
Definition setupcollectionview.h:197
QString label
Definition setupcollectionview.h:198
CollectionLocation location
Definition setupcollectionview.h:196
Definition setupcollectionview.h:38
Category
Definition setupcollectionview.h:93
SetupCollectionDataRole
Definition setupcollectionview.h:51
void collectionsLoaded()
Emitted when all collections were loaded and the model reset in loadCollections.
QList< Item > m_collections
Definition setupcollectionview.h:209
Columns
Definition setupcollectionview.h:82
QString lastAddedCollectionPath
Definition setupcollectionview.h:161
Definition setupcollectionview.h:220
void modelLoadedCollections()
Definition setupcollectionview.cpp:373
void setModel(SetupCollectionModel *model)
Definition setupcollectionview.cpp:340
qulonglong value
Definition itemviewutilities.cpp:585
Definition datefolderview.cpp:34