1// qlistwidget.sip generated by MetaSIP 2// 3// This file is part of the QtWidgets Python extension module. 4// 5// Copyright (c) 2021 Riverbank Computing Limited <info@riverbankcomputing.com> 6// 7// This file is part of PyQt5. 8// 9// This file may be used under the terms of the GNU General Public License 10// version 3.0 as published by the Free Software Foundation and appearing in 11// the file LICENSE included in the packaging of this file. Please review the 12// following information to ensure the GNU General Public License version 3.0 13// requirements will be met: http://www.gnu.org/copyleft/gpl.html. 14// 15// If you do not wish to use this file under the terms of the GPL version 3.0 16// then you may purchase a commercial license. For more information contact 17// info@riverbankcomputing.com. 18// 19// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE 20// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 21 22 23class QListWidgetItem /Supertype=sip.wrapper/ 24{ 25%TypeHeaderCode 26#include <qlistwidget.h> 27%End 28 29public: 30 enum ItemType 31 { 32 Type, 33 UserType, 34 }; 35 36 QListWidgetItem(QListWidget *parent /TransferThis/ = 0, int type = Type); 37 QListWidgetItem(const QString &text, QListWidget *parent /TransferThis/ = 0, int type = Type); 38 QListWidgetItem(const QIcon &icon, const QString &text, QListWidget *parent /TransferThis/ = 0, int type = Type); 39 QListWidgetItem(const QListWidgetItem &other); 40 virtual ~QListWidgetItem(); 41 virtual QListWidgetItem *clone() const /Factory/; 42 QListWidget *listWidget() const; 43 Qt::ItemFlags flags() const; 44 QString text() const; 45 QIcon icon() const; 46 QString statusTip() const; 47 QString toolTip() const; 48 QString whatsThis() const; 49 QFont font() const; 50 int textAlignment() const; 51 void setTextAlignment(int alignment); 52 Qt::CheckState checkState() const; 53 void setCheckState(Qt::CheckState state); 54 QSize sizeHint() const; 55 void setSizeHint(const QSize &size); 56 virtual QVariant data(int role) const; 57 virtual void setData(int role, const QVariant &value); 58 virtual bool operator<(const QListWidgetItem &other /NoCopy/) const; 59 virtual void read(QDataStream &in) /ReleaseGIL/; 60 virtual void write(QDataStream &out) const /ReleaseGIL/; 61 int type() const; 62 void setFlags(Qt::ItemFlags aflags); 63 void setText(const QString &atext); 64 void setIcon(const QIcon &aicon); 65 void setStatusTip(const QString &astatusTip); 66 void setToolTip(const QString &atoolTip); 67 void setWhatsThis(const QString &awhatsThis); 68 void setFont(const QFont &afont); 69 QBrush background() const; 70 void setBackground(const QBrush &brush); 71 QBrush foreground() const; 72 void setForeground(const QBrush &brush); 73 void setSelected(bool aselect); 74 bool isSelected() const; 75 void setHidden(bool ahide); 76 bool isHidden() const; 77 78private: 79 QListWidgetItem &operator=(const QListWidgetItem &); 80}; 81 82QDataStream &operator<<(QDataStream &out, const QListWidgetItem &item /Constrained/) /ReleaseGIL/; 83QDataStream &operator>>(QDataStream &in, QListWidgetItem &item /Constrained/) /ReleaseGIL/; 84 85class QListWidget : QListView 86{ 87%TypeHeaderCode 88#include <qlistwidget.h> 89%End 90 91public: 92 explicit QListWidget(QWidget *parent /TransferThis/ = 0); 93 virtual ~QListWidget(); 94 QListWidgetItem *item(int row) const; 95 int row(const QListWidgetItem *item) const; 96 void insertItem(int row, QListWidgetItem *item /Transfer/); 97 void insertItem(int row, const QString &label); 98 void insertItems(int row, const QStringList &labels); 99 void addItem(QListWidgetItem *aitem /Transfer/); 100 void addItem(const QString &label); 101 void addItems(const QStringList &labels); 102 QListWidgetItem *takeItem(int row) /TransferBack/; 103 int count() const /__len__/; 104 QListWidgetItem *currentItem() const; 105 void setCurrentItem(QListWidgetItem *item); 106 void setCurrentItem(QListWidgetItem *item, QItemSelectionModel::SelectionFlags command); 107 int currentRow() const; 108 void setCurrentRow(int row); 109 void setCurrentRow(int row, QItemSelectionModel::SelectionFlags command); 110 QListWidgetItem *itemAt(const QPoint &p) const; 111 QListWidgetItem *itemAt(int ax, int ay) const; 112 QWidget *itemWidget(QListWidgetItem *item) const; 113 void setItemWidget(QListWidgetItem *item, QWidget *widget /Transfer/); 114%MethodCode 115 // We have to break the association with any existing widget. 116 QWidget *w = sipCpp->itemWidget(a0); 117 118 if (w) 119 { 120 PyObject *wo = sipGetPyObject(w, sipType_QWidget); 121 122 if (wo) 123 sipTransferTo(wo, 0); 124 } 125 126 Py_BEGIN_ALLOW_THREADS 127 sipCpp->setItemWidget(a0, a1); 128 Py_END_ALLOW_THREADS 129%End 130 131 QRect visualItemRect(const QListWidgetItem *item) const; 132 void sortItems(Qt::SortOrder order = Qt::AscendingOrder); 133 void editItem(QListWidgetItem *item); 134 void openPersistentEditor(QListWidgetItem *item); 135 void closePersistentEditor(QListWidgetItem *item); 136 QList<QListWidgetItem *> selectedItems() const; 137 QList<QListWidgetItem *> findItems(const QString &text, Qt::MatchFlags flags) const; 138 139public slots: 140 void clear(); 141 void scrollToItem(const QListWidgetItem *item, QAbstractItemView::ScrollHint hint = QAbstractItemView::EnsureVisible); 142 143signals: 144 void itemPressed(QListWidgetItem *item); 145 void itemClicked(QListWidgetItem *item); 146 void itemDoubleClicked(QListWidgetItem *item); 147 void itemActivated(QListWidgetItem *item); 148 void itemEntered(QListWidgetItem *item); 149 void itemChanged(QListWidgetItem *item); 150 void currentItemChanged(QListWidgetItem *current, QListWidgetItem *previous); 151 void currentTextChanged(const QString ¤tText); 152 void currentRowChanged(int currentRow); 153 void itemSelectionChanged(); 154 155protected: 156 virtual QStringList mimeTypes() const; 157 virtual QMimeData *mimeData(const QList<QListWidgetItem *> items) const /TransferBack/; 158 virtual bool dropMimeData(int index, const QMimeData *data, Qt::DropAction action); 159 virtual Qt::DropActions supportedDropActions() const; 160 QList<QListWidgetItem *> items(const QMimeData *data) const; 161 QModelIndex indexFromItem(QListWidgetItem *item) const; 162 QListWidgetItem *itemFromIndex(const QModelIndex &index) const; 163 virtual bool event(QEvent *e); 164 165public: 166 void setSortingEnabled(bool enable); 167 bool isSortingEnabled() const; 168 virtual void dropEvent(QDropEvent *event); 169 void removeItemWidget(QListWidgetItem *aItem); 170%MethodCode 171 // We have to break the association with any existing widget. 172 QWidget *w = sipCpp->itemWidget(a0); 173 174 if (w) 175 { 176 PyObject *wo = sipGetPyObject(w, sipType_QWidget); 177 178 if (wo) 179 sipTransferTo(wo, 0); 180 } 181 182 Py_BEGIN_ALLOW_THREADS 183 sipCpp->removeItemWidget(a0); 184 Py_END_ALLOW_THREADS 185%End 186 187%If (Qt_5_7_0 -) 188 virtual void setSelectionModel(QItemSelectionModel *selectionModel); 189%End 190%If (Qt_5_10_0 -) 191 bool isPersistentEditorOpen(QListWidgetItem *item) const; 192%End 193 194private: 195 virtual void setModel(QAbstractItemModel *model /KeepReference/); 196}; 197