qlistwidget.sip 7.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203
  1. // qlistwidget.sip generated by MetaSIP
  2. //
  3. // This file is part of the QtWidgets Python extension module.
  4. //
  5. // Copyright (c) 2026 Riverbank Computing Limited <info@riverbankcomputing.com>
  6. //
  7. // This file is part of PyQt6.
  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. class QListWidgetItem /Supertype=PyQt6.sip.wrapper/
  22. {
  23. %TypeHeaderCode
  24. #include <qlistwidget.h>
  25. %End
  26. public:
  27. enum ItemType /BaseType=IntEnum/
  28. {
  29. Type,
  30. UserType,
  31. };
  32. QListWidgetItem(QListWidget *parent /TransferThis/ = 0, int type = QListWidgetItem::Type);
  33. QListWidgetItem(const QString &text, QListWidget *parent /TransferThis/ = 0, int type = QListWidgetItem::Type);
  34. QListWidgetItem(const QIcon &icon, const QString &text, QListWidget *parent /TransferThis/ = 0, int type = QListWidgetItem::Type);
  35. QListWidgetItem(const QListWidgetItem &other);
  36. virtual ~QListWidgetItem();
  37. virtual QListWidgetItem *clone() const /Factory/;
  38. QListWidget *listWidget() const;
  39. Qt::ItemFlags flags() const;
  40. QString text() const;
  41. QIcon icon() const;
  42. QString statusTip() const;
  43. QString toolTip() const;
  44. QString whatsThis() const;
  45. QFont font() const;
  46. int textAlignment() const;
  47. %If (Qt_6_4_0 -)
  48. void setTextAlignment(Qt::Alignment alignment);
  49. %End
  50. void setTextAlignment(int alignment);
  51. Qt::CheckState checkState() const;
  52. void setCheckState(Qt::CheckState state);
  53. QSize sizeHint() const;
  54. void setSizeHint(const QSize &size);
  55. virtual QVariant data(int role) const;
  56. virtual void setData(int role, const QVariant &value);
  57. virtual bool operator<(const QListWidgetItem &other /NoCopy/) const;
  58. virtual void read(QDataStream &in) /ReleaseGIL/;
  59. virtual void write(QDataStream &out) const /ReleaseGIL/;
  60. int type() const;
  61. void setFlags(Qt::ItemFlags aflags);
  62. void setText(const QString &atext);
  63. void setIcon(const QIcon &aicon);
  64. void setStatusTip(const QString &astatusTip);
  65. void setToolTip(const QString &atoolTip);
  66. void setWhatsThis(const QString &awhatsThis);
  67. void setFont(const QFont &afont);
  68. QBrush background() const;
  69. void setBackground(const QBrush &brush);
  70. QBrush foreground() const;
  71. void setForeground(const QBrush &brush);
  72. void setSelected(bool aselect);
  73. bool isSelected() const;
  74. void setHidden(bool ahide);
  75. bool isHidden() const;
  76. private:
  77. QListWidgetItem &operator=(const QListWidgetItem &);
  78. };
  79. QDataStream &operator<<(QDataStream &out, const QListWidgetItem &item) /ReleaseGIL/;
  80. QDataStream &operator>>(QDataStream &in, QListWidgetItem &item /Constrained/) /ReleaseGIL/;
  81. class QListWidget : public QListView
  82. {
  83. %TypeHeaderCode
  84. #include <qlistwidget.h>
  85. %End
  86. public:
  87. explicit QListWidget(QWidget *parent /TransferThis/ = 0);
  88. virtual ~QListWidget();
  89. QListWidgetItem *item(int row) const;
  90. int row(const QListWidgetItem *item) const;
  91. void insertItem(int row, QListWidgetItem *item /Transfer/);
  92. void insertItem(int row, const QString &label);
  93. void insertItems(int row, const QStringList &labels);
  94. void addItem(QListWidgetItem *aitem /Transfer/);
  95. void addItem(const QString &label);
  96. void addItems(const QStringList &labels);
  97. QListWidgetItem *takeItem(int row) /TransferBack/;
  98. int count() const /__len__/;
  99. QListWidgetItem *currentItem() const;
  100. void setCurrentItem(QListWidgetItem *item);
  101. void setCurrentItem(QListWidgetItem *item, QItemSelectionModel::SelectionFlags command);
  102. int currentRow() const;
  103. void setCurrentRow(int row);
  104. void setCurrentRow(int row, QItemSelectionModel::SelectionFlags command);
  105. QListWidgetItem *itemAt(const QPoint &p) const;
  106. QListWidgetItem *itemAt(int ax, int ay) const;
  107. QWidget *itemWidget(QListWidgetItem *item) const;
  108. void setItemWidget(QListWidgetItem *item, QWidget *widget /Transfer/);
  109. %MethodCode
  110. // We have to break the association with any existing widget.
  111. QWidget *w = sipCpp->itemWidget(a0);
  112. if (w)
  113. {
  114. PyObject *wo = sipGetPyObject(w, sipType_QWidget);
  115. if (wo)
  116. sipTransferTo(wo, 0);
  117. }
  118. Py_BEGIN_ALLOW_THREADS
  119. sipCpp->setItemWidget(a0, a1);
  120. Py_END_ALLOW_THREADS
  121. %End
  122. QRect visualItemRect(const QListWidgetItem *item) const;
  123. void sortItems(Qt::SortOrder order = Qt::AscendingOrder);
  124. void editItem(QListWidgetItem *item);
  125. void openPersistentEditor(QListWidgetItem *item);
  126. void closePersistentEditor(QListWidgetItem *item);
  127. QList<QListWidgetItem *> selectedItems() const;
  128. QList<QListWidgetItem *> findItems(const QString &text, Qt::MatchFlags flags) const;
  129. public slots:
  130. void clear();
  131. void scrollToItem(const QListWidgetItem *item, QAbstractItemView::ScrollHint hint = QAbstractItemView::EnsureVisible);
  132. signals:
  133. void itemPressed(QListWidgetItem *item);
  134. void itemClicked(QListWidgetItem *item);
  135. void itemDoubleClicked(QListWidgetItem *item);
  136. void itemActivated(QListWidgetItem *item);
  137. void itemEntered(QListWidgetItem *item);
  138. void itemChanged(QListWidgetItem *item);
  139. void currentItemChanged(QListWidgetItem *current, QListWidgetItem *previous);
  140. void currentTextChanged(const QString &currentText);
  141. void currentRowChanged(int currentRow);
  142. void itemSelectionChanged();
  143. protected:
  144. virtual QStringList mimeTypes() const;
  145. virtual QMimeData *mimeData(const QList<QListWidgetItem *> &items) const /TransferBack/;
  146. virtual bool dropMimeData(int index, const QMimeData *data, Qt::DropAction action);
  147. virtual Qt::DropActions supportedDropActions() const;
  148. virtual bool event(QEvent *e);
  149. virtual void dropEvent(QDropEvent *event);
  150. public:
  151. QList<QListWidgetItem *> items(const QMimeData *data) const;
  152. QModelIndex indexFromItem(const QListWidgetItem *item) const;
  153. QListWidgetItem *itemFromIndex(const QModelIndex &index) const;
  154. void setSortingEnabled(bool enable);
  155. bool isSortingEnabled() const;
  156. void removeItemWidget(QListWidgetItem *aItem);
  157. %MethodCode
  158. // We have to break the association with any existing widget.
  159. QWidget *w = sipCpp->itemWidget(a0);
  160. if (w)
  161. {
  162. PyObject *wo = sipGetPyObject(w, sipType_QWidget);
  163. if (wo)
  164. sipTransferTo(wo, 0);
  165. }
  166. Py_BEGIN_ALLOW_THREADS
  167. sipCpp->removeItemWidget(a0);
  168. Py_END_ALLOW_THREADS
  169. %End
  170. virtual void setSelectionModel(QItemSelectionModel *selectionModel);
  171. bool isPersistentEditorOpen(QListWidgetItem *item) const;
  172. private:
  173. virtual void setModel(QAbstractItemModel *model /KeepReference/);
  174. public:
  175. %If (Qt_6_10_0 -)
  176. void setSupportedDragActions(Qt::DropActions actions);
  177. %End
  178. %If (Qt_6_10_0 -)
  179. Qt::DropActions supportedDragActions() const;
  180. %End
  181. };