File: qtreewidget.sip

package info (click to toggle)
pyqt5 5.11.3%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 15,956 kB
  • sloc: python: 93,806; cpp: 21,390; xml: 285; makefile: 266; sh: 31
file content (243 lines) | stat: -rw-r--r-- 10,244 bytes parent folder | download
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
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
// qtreewidget.sip generated by MetaSIP
//
// This file is part of the QtWidgets Python extension module.
//
// Copyright (c) 2018 Riverbank Computing Limited <info@riverbankcomputing.com>
// 
// This file is part of PyQt5.
// 
// This file may be used under the terms of the GNU General Public License
// version 3.0 as published by the Free Software Foundation and appearing in
// the file LICENSE included in the packaging of this file.  Please review the
// following information to ensure the GNU General Public License version 3.0
// requirements will be met: http://www.gnu.org/copyleft/gpl.html.
// 
// If you do not wish to use this file under the terms of the GPL version 3.0
// then you may purchase a commercial license.  For more information contact
// info@riverbankcomputing.com.
// 
// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.


class QTreeWidgetItem /Supertype=sip.wrapper/
{
%TypeHeaderCode
#include <qtreewidget.h>
%End

public:
    enum ItemType
    {
        Type,
        UserType,
    };

    explicit QTreeWidgetItem(int type = Type);
    QTreeWidgetItem(const QStringList &strings, int type = Type);
    QTreeWidgetItem(QTreeWidget *parent /TransferThis/, int type = Type);
    QTreeWidgetItem(QTreeWidget *parent /TransferThis/, const QStringList &strings, int type = Type);
    QTreeWidgetItem(QTreeWidget *parent /TransferThis/, QTreeWidgetItem *preceding, int type = Type);
    QTreeWidgetItem(QTreeWidgetItem *parent /TransferThis/, int type = Type);
    QTreeWidgetItem(QTreeWidgetItem *parent /TransferThis/, const QStringList &strings, int type = Type);
    QTreeWidgetItem(QTreeWidgetItem *parent /TransferThis/, QTreeWidgetItem *preceding, int type = Type);
    QTreeWidgetItem(const QTreeWidgetItem &other);
    virtual ~QTreeWidgetItem();
    virtual QTreeWidgetItem *clone() const /Factory/;
    QTreeWidget *treeWidget() const;
    Qt::ItemFlags flags() const;
    QString text(int column) const;
    QIcon icon(int column) const;
    QString statusTip(int column) const;
    QString toolTip(int column) const;
    QString whatsThis(int column) const;
    QFont font(int column) const;
    int textAlignment(int column) const;
    void setTextAlignment(int column, int alignment);
    Qt::CheckState checkState(int column) const;
    void setCheckState(int column, Qt::CheckState state);
    virtual QVariant data(int column, int role) const;
    virtual void setData(int column, int role, const QVariant &value);
    virtual bool operator<(const QTreeWidgetItem &other /NoCopy/) const;
    virtual void read(QDataStream &in) /ReleaseGIL/;
    virtual void write(QDataStream &out) const /ReleaseGIL/;
    QTreeWidgetItem *parent() const;
    QTreeWidgetItem *child(int index) const;
    int childCount() const;
    int columnCount() const;
    void addChild(QTreeWidgetItem *child /Transfer/);
    void insertChild(int index, QTreeWidgetItem *child /Transfer/);
    QTreeWidgetItem *takeChild(int index) /TransferBack/;
    int type() const;
    void setFlags(Qt::ItemFlags aflags);
    void setText(int column, const QString &atext);
    void setIcon(int column, const QIcon &aicon);
    void setStatusTip(int column, const QString &astatusTip);
    void setToolTip(int column, const QString &atoolTip);
    void setWhatsThis(int column, const QString &awhatsThis);
    void setFont(int column, const QFont &afont);
    int indexOfChild(QTreeWidgetItem *achild) const;
    QSize sizeHint(int column) const;
    void setSizeHint(int column, const QSize &size);
    void addChildren(const QList<QTreeWidgetItem *> &children /Transfer/);
    void insertChildren(int index, const QList<QTreeWidgetItem *> &children /Transfer/);
    QList<QTreeWidgetItem *> takeChildren() /TransferBack/;
    QBrush background(int column) const;
    void setBackground(int column, const QBrush &brush);
    QBrush foreground(int column) const;
    void setForeground(int column, const QBrush &brush);
    void sortChildren(int column, Qt::SortOrder order);
    void setSelected(bool aselect);
    bool isSelected() const;
    void setHidden(bool ahide);
    bool isHidden() const;
    void setExpanded(bool aexpand);
    bool isExpanded() const;

    enum ChildIndicatorPolicy
    {
        ShowIndicator,
        DontShowIndicator,
        DontShowIndicatorWhenChildless,
    };

    void setChildIndicatorPolicy(QTreeWidgetItem::ChildIndicatorPolicy policy);
    QTreeWidgetItem::ChildIndicatorPolicy childIndicatorPolicy() const;
    void removeChild(QTreeWidgetItem *child /TransferBack/);
    void setFirstColumnSpanned(bool aspan);
    bool isFirstColumnSpanned() const;
    void setDisabled(bool disabled);
    bool isDisabled() const;

protected:
    void emitDataChanged();

private:
    QTreeWidgetItem &operator=(const QTreeWidgetItem &);
};

QDataStream &operator<<(QDataStream &out, const QTreeWidgetItem &item /Constrained/) /ReleaseGIL/;
QDataStream &operator>>(QDataStream &in, QTreeWidgetItem &item /Constrained/) /ReleaseGIL/;

class QTreeWidget : QTreeView
{
%TypeHeaderCode
#include <qtreewidget.h>
%End

public:
    explicit QTreeWidget(QWidget *parent /TransferThis/ = 0);
    virtual ~QTreeWidget();
    int columnCount() const;
    void setColumnCount(int columns);
    QTreeWidgetItem *topLevelItem(int index) const;
    int topLevelItemCount() const;
    void insertTopLevelItem(int index, QTreeWidgetItem *item /Transfer/);
    void addTopLevelItem(QTreeWidgetItem *item /Transfer/);
    QTreeWidgetItem *takeTopLevelItem(int index) /TransferBack/;
    int indexOfTopLevelItem(QTreeWidgetItem *item) const;
    void insertTopLevelItems(int index, const QList<QTreeWidgetItem *> &items /Transfer/);
    void addTopLevelItems(const QList<QTreeWidgetItem *> &items /Transfer/);
    QTreeWidgetItem *headerItem() const;
    void setHeaderItem(QTreeWidgetItem *item /Transfer/);
    void setHeaderLabels(const QStringList &labels);
    QTreeWidgetItem *currentItem() const;
    int currentColumn() const;
    void setCurrentItem(QTreeWidgetItem *item);
    void setCurrentItem(QTreeWidgetItem *item, int column);
    void setCurrentItem(QTreeWidgetItem *item, int column, QItemSelectionModel::SelectionFlags command);
    QTreeWidgetItem *itemAt(const QPoint &p) const;
    QTreeWidgetItem *itemAt(int ax, int ay) const;
    QRect visualItemRect(const QTreeWidgetItem *item) const;
    int sortColumn() const;
    void sortItems(int column, Qt::SortOrder order);
    void editItem(QTreeWidgetItem *item, int column = 0);
    void openPersistentEditor(QTreeWidgetItem *item, int column = 0);
    void closePersistentEditor(QTreeWidgetItem *item, int column = 0);
    QWidget *itemWidget(QTreeWidgetItem *item, int column) const;
    void setItemWidget(QTreeWidgetItem *item, int column, QWidget *widget /Transfer/);
%MethodCode
        // We have to break the association with any existing widget.  Note that I'm
        // not sure this is really necessary as it should get tidied up when Qt
        // destroys any current widget, except (possibly) when the widget wasn't
        // created from PyQt.  See also removeItemWidget(), QListWidget and
        // QTableWidget.
        QWidget *w = sipCpp->itemWidget(a0, a1);
        
        if (w)
        {
            PyObject *wo = sipGetPyObject(w, sipType_QWidget);
        
            if (wo)
                sipTransferTo(wo, 0);
        }
        
        Py_BEGIN_ALLOW_THREADS
        sipCpp->setItemWidget(a0, a1, a2);
        Py_END_ALLOW_THREADS
%End

    QList<QTreeWidgetItem *> selectedItems() const;
    QList<QTreeWidgetItem *> findItems(const QString &text, Qt::MatchFlags flags, int column = 0) const;

public slots:
    void scrollToItem(const QTreeWidgetItem *item, QAbstractItemView::ScrollHint hint = QAbstractItemView::EnsureVisible);
    void expandItem(const QTreeWidgetItem *item);
    void collapseItem(const QTreeWidgetItem *item);
    void clear();

signals:
    void itemPressed(QTreeWidgetItem *item, int column);
    void itemClicked(QTreeWidgetItem *item, int column);
    void itemDoubleClicked(QTreeWidgetItem *item, int column);
    void itemActivated(QTreeWidgetItem *item, int column);
    void itemEntered(QTreeWidgetItem *item, int column);
    void itemChanged(QTreeWidgetItem *item, int column);
    void itemExpanded(QTreeWidgetItem *item);
    void itemCollapsed(QTreeWidgetItem *item);
    void currentItemChanged(QTreeWidgetItem *current, QTreeWidgetItem *previous);
    void itemSelectionChanged();

protected:
    virtual QStringList mimeTypes() const;
    virtual QMimeData *mimeData(const QList<QTreeWidgetItem *> items) const /TransferBack/;
    virtual bool dropMimeData(QTreeWidgetItem *parent, int index, const QMimeData *data, Qt::DropAction action);
    virtual Qt::DropActions supportedDropActions() const;
    QModelIndex indexFromItem(QTreeWidgetItem *item, int column = 0) const;
    QTreeWidgetItem *itemFromIndex(const QModelIndex &index) const;
    virtual bool event(QEvent *e);
    virtual void dropEvent(QDropEvent *event);

public:
    QTreeWidgetItem *invisibleRootItem() const /Transfer/;
    void setHeaderLabel(const QString &alabel);
    bool isFirstItemColumnSpanned(const QTreeWidgetItem *item) const;
    void setFirstItemColumnSpanned(const QTreeWidgetItem *item, bool span);
    QTreeWidgetItem *itemAbove(const QTreeWidgetItem *item) const;
    QTreeWidgetItem *itemBelow(const QTreeWidgetItem *item) const;
    void removeItemWidget(QTreeWidgetItem *item, int column);
%MethodCode
        // We have to break the association with any existing widget.
        QWidget *w = sipCpp->itemWidget(a0, a1);
        
        if (w)
        {
            PyObject *wo = sipGetPyObject(w, sipType_QWidget);
        
            if (wo)
                sipTransferTo(wo, 0);
        }
        
        Py_BEGIN_ALLOW_THREADS
        sipCpp->removeItemWidget(a0, a1);
        Py_END_ALLOW_THREADS
%End

    virtual void setSelectionModel(QItemSelectionModel *selectionModel /KeepReference/);
%If (Qt_5_10_0 -)
    bool isPersistentEditorOpen(QTreeWidgetItem *item, int column = 0) const;
%End

private:
    virtual void setModel(QAbstractItemModel *model /KeepReference/);
};