Qx v0.7
Qt Extensions Library
Loading...
Searching...
No Matches
qx-standarditemmodel.h
1#ifndef QX_STANDARDITEMMODEL_H
2#define QX_STANDARDITEMMODEL_H
3
4// Shared Lib Support
5#include "qx/widgets/qx_widgets_export.h"
6
7// Qt Includes
8#include <QStandardItemModel>
9
10namespace Qx
11{
12
13class QX_WIDGETS_EXPORT StandardItemModel : public QStandardItemModel
14{
15//-Instance Members---------------------------------------------------------------------------------------------------
16private:
17 bool mUpdatingParentTristate = false;
18 bool mAutoTristate = false;
19
20//-Constructor-------------------------------------------------------------------------------------------------------
21public:
22 StandardItemModel(int rows, int columns, QObject* parent = nullptr);
23 StandardItemModel(QObject* parent = nullptr);
24
25//-Instance Functions-----------------------------------------------------------------------------------------------
26private:
27 void autoTristateChildren(QStandardItem* changingItem, const QVariant& value, int role);
28 void autoTristateParents(QStandardItem* changingItem, const QVariant& changingValue);
29
30public:
31 virtual bool setData(const QModelIndex& index, const QVariant& value, int role = Qt::EditRole) override;
32 bool isAutoTristate();
33 void setAutoTristate(bool autoTristate);
34 void forEachItem(const std::function<void(QStandardItem*)>& func, QModelIndex parent = QModelIndex()) const;
35
36 void selectAll();
37 void selectNone();
38};
39
40}
41
42#endif // QX_STANDARDITEMMODEL_H
void selectAll()
Definition qx-standarditemmodel.cpp:157
void setAutoTristate(bool autoTristate)
Definition qx-standarditemmodel.cpp:130
virtual bool setData(const QModelIndex &index, const QVariant &value, int role=Qt::EditRole) override
Definition qx-standarditemmodel.cpp:94
bool isAutoTristate()
Definition qx-standarditemmodel.cpp:118
StandardItemModel(int rows, int columns, QObject *parent=nullptr)
Definition qx-standarditemmodel.cpp:31
void selectNone()
Definition qx-standarditemmodel.cpp:164
void forEachItem(const std::function< void(QStandardItem *)> &func, QModelIndex parent=QModelIndex()) const
Definition qx-standarditemmodel.cpp:140
The Qx namespace is the main namespace through which all non-global functionality of the Qx library i...
Definition qx-abstracterror.cpp:13