qtablewidget.sip 9.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255
  1. // qtablewidget.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 QTableWidgetSelectionRange
  22. {
  23. %TypeHeaderCode
  24. #include <qtablewidget.h>
  25. %End
  26. public:
  27. QTableWidgetSelectionRange();
  28. QTableWidgetSelectionRange(int top, int left, int bottom, int right);
  29. int topRow() const;
  30. int bottomRow() const;
  31. int leftColumn() const;
  32. int rightColumn() const;
  33. int rowCount() const;
  34. int columnCount() const;
  35. };
  36. class QTableWidgetItem /Supertype=PyQt6.sip.wrapper/
  37. {
  38. %TypeHeaderCode
  39. #include <qtablewidget.h>
  40. %End
  41. public:
  42. enum ItemType /BaseType=IntEnum/
  43. {
  44. Type,
  45. UserType,
  46. };
  47. explicit QTableWidgetItem(int type = QTableWidgetItem::Type);
  48. QTableWidgetItem(const QString &text, int type = QTableWidgetItem::Type);
  49. QTableWidgetItem(const QIcon &icon, const QString &text, int type = QTableWidgetItem::Type);
  50. QTableWidgetItem(const QTableWidgetItem &other);
  51. virtual ~QTableWidgetItem();
  52. virtual QTableWidgetItem *clone() const /Factory/;
  53. QTableWidget *tableWidget() const;
  54. Qt::ItemFlags flags() const;
  55. QString text() const;
  56. QIcon icon() const;
  57. QString statusTip() const;
  58. QString toolTip() const;
  59. QString whatsThis() const;
  60. QFont font() const;
  61. int textAlignment() const;
  62. %If (Qt_6_4_0 -)
  63. void setTextAlignment(Qt::Alignment alignment);
  64. %End
  65. void setTextAlignment(int alignment);
  66. Qt::CheckState checkState() const;
  67. void setCheckState(Qt::CheckState state);
  68. virtual QVariant data(int role) const;
  69. virtual void setData(int role, const QVariant &value);
  70. virtual bool operator<(const QTableWidgetItem &other /NoCopy/) const;
  71. virtual void read(QDataStream &in) /ReleaseGIL/;
  72. virtual void write(QDataStream &out) const /ReleaseGIL/;
  73. int type() const;
  74. void setFlags(Qt::ItemFlags aflags);
  75. void setText(const QString &atext);
  76. void setIcon(const QIcon &aicon);
  77. void setStatusTip(const QString &astatusTip);
  78. void setToolTip(const QString &atoolTip);
  79. void setWhatsThis(const QString &awhatsThis);
  80. void setFont(const QFont &afont);
  81. QSize sizeHint() const;
  82. void setSizeHint(const QSize &size);
  83. QBrush background() const;
  84. void setBackground(const QBrush &brush);
  85. QBrush foreground() const;
  86. void setForeground(const QBrush &brush);
  87. int row() const;
  88. int column() const;
  89. void setSelected(bool aselect);
  90. bool isSelected() const;
  91. private:
  92. QTableWidgetItem &operator=(const QTableWidgetItem &);
  93. };
  94. QDataStream &operator<<(QDataStream &out, const QTableWidgetItem &item) /ReleaseGIL/;
  95. QDataStream &operator>>(QDataStream &in, QTableWidgetItem &item /Constrained/) /ReleaseGIL/;
  96. class QTableWidget : public QTableView
  97. {
  98. %TypeHeaderCode
  99. #include <qtablewidget.h>
  100. %End
  101. public:
  102. explicit QTableWidget(QWidget *parent /TransferThis/ = 0);
  103. QTableWidget(int rows, int columns, QWidget *parent /TransferThis/ = 0);
  104. virtual ~QTableWidget();
  105. void setRowCount(int rows);
  106. int rowCount() const;
  107. void setColumnCount(int columns);
  108. int columnCount() const;
  109. int row(const QTableWidgetItem *item) const;
  110. int column(const QTableWidgetItem *item) const;
  111. QTableWidgetItem *item(int row, int column) const;
  112. void setItem(int row, int column, QTableWidgetItem *item /Transfer/);
  113. QTableWidgetItem *takeItem(int row, int column) /TransferBack/;
  114. QTableWidgetItem *verticalHeaderItem(int row) const;
  115. void setVerticalHeaderItem(int row, QTableWidgetItem *item /Transfer/);
  116. QTableWidgetItem *takeVerticalHeaderItem(int row) /TransferBack/;
  117. QTableWidgetItem *horizontalHeaderItem(int column) const;
  118. void setHorizontalHeaderItem(int column, QTableWidgetItem *item /Transfer/);
  119. QTableWidgetItem *takeHorizontalHeaderItem(int column) /TransferBack/;
  120. void setVerticalHeaderLabels(const QStringList &labels);
  121. void setHorizontalHeaderLabels(const QStringList &labels);
  122. int currentRow() const;
  123. int currentColumn() const;
  124. QTableWidgetItem *currentItem() const;
  125. void setCurrentItem(QTableWidgetItem *item);
  126. void setCurrentItem(QTableWidgetItem *item, QItemSelectionModel::SelectionFlags command);
  127. void setCurrentCell(int row, int column);
  128. void setCurrentCell(int row, int column, QItemSelectionModel::SelectionFlags command);
  129. void sortItems(int column, Qt::SortOrder order = Qt::AscendingOrder);
  130. void setSortingEnabled(bool enable);
  131. bool isSortingEnabled() const;
  132. void editItem(QTableWidgetItem *item);
  133. void openPersistentEditor(QTableWidgetItem *item);
  134. void closePersistentEditor(QTableWidgetItem *item);
  135. QWidget *cellWidget(int row, int column) const;
  136. void setCellWidget(int row, int column, QWidget *widget /Transfer/);
  137. %MethodCode
  138. // We have to break the association with any existing widget.
  139. QWidget *w = sipCpp->cellWidget(a0, a1);
  140. if (w)
  141. {
  142. PyObject *wo = sipGetPyObject(w, sipType_QWidget);
  143. if (wo)
  144. sipTransferTo(wo, 0);
  145. }
  146. Py_BEGIN_ALLOW_THREADS
  147. sipCpp->setCellWidget(a0, a1, a2);
  148. Py_END_ALLOW_THREADS
  149. %End
  150. void removeCellWidget(int arow, int acolumn);
  151. %MethodCode
  152. // We have to break the association with any existing widget.
  153. QWidget *w = sipCpp->cellWidget(a0, a1);
  154. if (w)
  155. {
  156. PyObject *wo = sipGetPyObject(w, sipType_QWidget);
  157. if (wo)
  158. sipTransferTo(wo, 0);
  159. }
  160. Py_BEGIN_ALLOW_THREADS
  161. sipCpp->removeCellWidget(a0, a1);
  162. Py_END_ALLOW_THREADS
  163. %End
  164. void setRangeSelected(const QTableWidgetSelectionRange &range, bool select);
  165. QList<QTableWidgetSelectionRange> selectedRanges() const;
  166. QList<QTableWidgetItem *> selectedItems() const;
  167. QList<QTableWidgetItem *> findItems(const QString &text, Qt::MatchFlags flags) const;
  168. int visualRow(int logicalRow) const;
  169. int visualColumn(int logicalColumn) const;
  170. QTableWidgetItem *itemAt(const QPoint &p) const;
  171. QTableWidgetItem *itemAt(int ax, int ay) const;
  172. QRect visualItemRect(const QTableWidgetItem *item) const;
  173. const QTableWidgetItem *itemPrototype() const;
  174. void setItemPrototype(const QTableWidgetItem *item /Transfer/);
  175. public slots:
  176. void scrollToItem(const QTableWidgetItem *item, QAbstractItemView::ScrollHint hint = QAbstractItemView::EnsureVisible);
  177. void insertRow(int row);
  178. void insertColumn(int column);
  179. void removeRow(int row);
  180. void removeColumn(int column);
  181. void clear();
  182. void clearContents();
  183. signals:
  184. void itemPressed(QTableWidgetItem *item);
  185. void itemClicked(QTableWidgetItem *item);
  186. void itemDoubleClicked(QTableWidgetItem *item);
  187. void itemActivated(QTableWidgetItem *item);
  188. void itemEntered(QTableWidgetItem *item);
  189. void itemChanged(QTableWidgetItem *item);
  190. void currentItemChanged(QTableWidgetItem *current, QTableWidgetItem *previous);
  191. void itemSelectionChanged();
  192. void cellPressed(int row, int column);
  193. void cellClicked(int row, int column);
  194. void cellDoubleClicked(int row, int column);
  195. void cellActivated(int row, int column);
  196. void cellEntered(int row, int column);
  197. void cellChanged(int row, int column);
  198. void currentCellChanged(int currentRow, int currentColumn, int previousRow, int previousColumn);
  199. protected:
  200. virtual QStringList mimeTypes() const;
  201. virtual QMimeData *mimeData(const QList<QTableWidgetItem *> &items) const /TransferBack/;
  202. virtual bool dropMimeData(int row, int column, const QMimeData *data, Qt::DropAction action);
  203. virtual Qt::DropActions supportedDropActions() const;
  204. public:
  205. QList<QTableWidgetItem *> items(const QMimeData *data) const;
  206. QModelIndex indexFromItem(const QTableWidgetItem *item) const;
  207. QTableWidgetItem *itemFromIndex(const QModelIndex &index) const;
  208. protected:
  209. virtual bool event(QEvent *e);
  210. virtual void dropEvent(QDropEvent *event);
  211. public:
  212. bool isPersistentEditorOpen(QTableWidgetItem *item) const;
  213. private:
  214. virtual void setModel(QAbstractItemModel *model /KeepReference/);
  215. public:
  216. %If (Qt_6_10_0 -)
  217. Qt::DropActions supportedDragActions() const;
  218. %End
  219. %If (Qt_6_10_0 -)
  220. void setSupportedDragActions(Qt::DropActions actions);
  221. %End
  222. };
  223. %If (Qt_6_3_0 -)
  224. bool operator==(const QTableWidgetSelectionRange &lhs, const QTableWidgetSelectionRange &rhs);
  225. %End
  226. %If (Qt_6_3_0 -)
  227. bool operator!=(const QTableWidgetSelectionRange &lhs, const QTableWidgetSelectionRange &rhs);
  228. %End