-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathiisTreeMenu.h
executable file
·62 lines (50 loc) · 1.52 KB
/
iisTreeMenu.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
/*
* iisTreeMenu.h
*
* Created on: 15.07.2008
*
* Industrial Infosystems (c) 2008
* www.ii-system.com
*
* This component is freeware and could be used while building any applications.
* Removal/modification of this information not permitted.
*/
#ifndef IISTREEMENU_H_
#define IISTREEMENU_H_
#include <QtWidgets>
#define iisTreeMenuIdRole 1000
#define iisTreeMenuCheckRole 1001
#define iisTreeMenuCheckable 0x1000
/**
* \class iisTreeMenu
* \brief This class is intended to build tree-like menus.
*/
class iisTreeMenu : public QTreeWidget
{
Q_OBJECT
public:
iisTreeMenu(QWidget *parent = 0);
virtual ~iisTreeMenu();
QTreeWidgetItem* addGroup(const QIcon &icon,
const QString &text,
QTreeWidgetItem *parent = 0
);
QTreeWidgetItem* addItem(const QIcon &icon,
const QString &text,
QTreeWidgetItem *parent = 0,
int checkable = 0,
const QVariant id = 0,
int role = iisTreeMenuIdRole,
int column = 0
);
void setCurrent(int id);
signals:
void selected(int id);
void selected(QTreeWidgetItem *item);
void checked(int id, Qt::CheckState check);
void checked(QTreeWidgetItem *item, Qt::CheckState check);
protected slots:
void onCurrentItemChanged ( QTreeWidgetItem * current, QTreeWidgetItem * previous );
void onItemChanged ( QTreeWidgetItem * item, int column);
};
#endif /* IISTREEMENU_H_ */