/
treeitem.h
47 lines (39 loc) · 1.02 KB
/
treeitem.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
#ifndef TREEITEM_H
#define TREEITEM_H
#include <QList>
#include <QVariant>
#include <QWidget>
#include <QObject>
enum TreeItemType {board, thread};
class TreeItem : public QObject
{
Q_OBJECT
public:
explicit TreeItem(const QList<QVariant> &data, TreeItem *parent);
explicit TreeItem(const QList<QVariant> &data, TreeItem *parent, QWidget *tab, TreeItemType type = TreeItemType::thread);
~TreeItem();
void appendChild(TreeItem *child);
void removeChild(int row);
TreeItem *child(int row) const;
int childCount() const;
int columnCount() const;
QVariant data(int column) const;
int row() const;
void insertChild(int pos, TreeItem *child);
bool insertChildren(int position, int count, int columns);
bool setData(int column, const QVariant &value);
TreeItem *parent;
QWidget *tab = Q_NULLPTR;
TreeItemType type;
QString query;
QString display;
QString api;
int unseen;
void removeChildren();
private:
QList<QVariant> itemData;
QList<TreeItem*> children;
signals:
void deleting(TreeItem *tn);
};
#endif // TREEITEM_H