QListWidget: mark (is|set)Item(Selected|Hidden) as deprecated
QListWidget::(is|set)Item(Selected|Hidden)() are deprecated for a long time but not marked as such. Therefore explicitly mark them as deprecated so they can get removed with Qt6. Change-Id: I4567e740f1ebb5841b2e5b50c601fb83a782950c Reviewed-by: Konstantin Shegunov <kshegunov@gmail.com> Reviewed-by: Samuel Gaist <samuel.gaist@idiap.ch> Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>bb10
parent
009a5538eb
commit
e2f473f4d4
|
|
@ -582,24 +582,6 @@ Qt::DropActions QListModel::supportedDropActions() const
|
|||
Returns the list widget containing the item.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn void QListWidgetItem::setSelected(bool select)
|
||||
\since 4.2
|
||||
|
||||
Sets the selected state of the item to \a select.
|
||||
|
||||
\sa isSelected()
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn bool QListWidgetItem::isSelected() const
|
||||
\since 4.2
|
||||
|
||||
Returns \c true if the item is selected; otherwise returns \c false.
|
||||
|
||||
\sa setSelected()
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn void QListWidgetItem::setHidden(bool hide)
|
||||
\since 4.2
|
||||
|
|
@ -1001,6 +983,50 @@ QDataStream &operator>>(QDataStream &in, QListWidgetItem &item)
|
|||
the item delegate will compute the size hint based on the item data.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn void QListWidgetItem::setSelected(bool select)
|
||||
\since 4.2
|
||||
|
||||
Sets the selected state of the item to \a select.
|
||||
|
||||
\sa isSelected()
|
||||
*/
|
||||
void QListWidgetItem::setSelected(bool select)
|
||||
{
|
||||
const QListModel *model = listModel();
|
||||
if (!model || !view->selectionModel())
|
||||
return;
|
||||
const QAbstractItemView::SelectionMode selectionMode = view->selectionMode();
|
||||
if (selectionMode == QAbstractItemView::NoSelection)
|
||||
return;
|
||||
const QModelIndex index = model->index(this);
|
||||
if (selectionMode == QAbstractItemView::SingleSelection)
|
||||
view->selectionModel()->select(index, select
|
||||
? QItemSelectionModel::ClearAndSelect
|
||||
: QItemSelectionModel::Deselect);
|
||||
else
|
||||
view->selectionModel()->select(index, select
|
||||
? QItemSelectionModel::Select
|
||||
: QItemSelectionModel::Deselect);
|
||||
}
|
||||
|
||||
/*!
|
||||
\fn bool QListWidgetItem::isSelected() const
|
||||
\since 4.2
|
||||
|
||||
Returns \c true if the item is selected; otherwise returns \c false.
|
||||
|
||||
\sa setSelected()
|
||||
*/
|
||||
bool QListWidgetItem::isSelected() const
|
||||
{
|
||||
const QListModel *model = listModel();
|
||||
if (!model || !view->selectionModel())
|
||||
return false;
|
||||
const QModelIndex index = model->index(this);
|
||||
return view->selectionModel()->isSelected(index);
|
||||
}
|
||||
|
||||
/*!
|
||||
\fn void QListWidgetItem::setFlags(Qt::ItemFlags flags)
|
||||
|
||||
|
|
@ -1743,6 +1769,7 @@ void QListWidget::setItemWidget(QListWidgetItem *item, QWidget *widget)
|
|||
QAbstractItemView::setIndexWidget(index, widget);
|
||||
}
|
||||
|
||||
#if QT_DEPRECATED_SINCE(5, 13)
|
||||
/*!
|
||||
Returns \c true if \a item is selected; otherwise returns \c false.
|
||||
|
||||
|
|
@ -1752,9 +1779,7 @@ void QListWidget::setItemWidget(QListWidgetItem *item, QWidget *widget)
|
|||
*/
|
||||
bool QListWidget::isItemSelected(const QListWidgetItem *item) const
|
||||
{
|
||||
Q_D(const QListWidget);
|
||||
QModelIndex index = d->listModel()->index(const_cast<QListWidgetItem*>(item));
|
||||
return selectionModel()->isSelected(index);
|
||||
return ((item && item->listWidget() == this) ? item->isSelected() : false);
|
||||
}
|
||||
|
||||
/*!
|
||||
|
|
@ -1767,20 +1792,10 @@ bool QListWidget::isItemSelected(const QListWidgetItem *item) const
|
|||
*/
|
||||
void QListWidget::setItemSelected(const QListWidgetItem *item, bool select)
|
||||
{
|
||||
Q_D(QListWidget);
|
||||
QModelIndex index = d->listModel()->index(const_cast<QListWidgetItem*>(item));
|
||||
|
||||
if (d->selectionMode == SingleSelection) {
|
||||
selectionModel()->select(index, select
|
||||
? QItemSelectionModel::ClearAndSelect
|
||||
: QItemSelectionModel::Deselect);
|
||||
} else if (d->selectionMode != NoSelection) {
|
||||
selectionModel()->select(index, select
|
||||
? QItemSelectionModel::Select
|
||||
: QItemSelectionModel::Deselect);
|
||||
}
|
||||
|
||||
if (item && item->listWidget() == this)
|
||||
const_cast<QListWidgetItem*>(item)->setSelected(select);
|
||||
}
|
||||
#endif
|
||||
|
||||
/*!
|
||||
Returns a list of all selected items in the list widget.
|
||||
|
|
@ -1816,6 +1831,7 @@ QList<QListWidgetItem*> QListWidget::findItems(const QString &text, Qt::MatchFla
|
|||
return items;
|
||||
}
|
||||
|
||||
#if QT_DEPRECATED_SINCE(5, 13)
|
||||
/*!
|
||||
Returns \c true if the \a item is explicitly hidden; otherwise returns \c false.
|
||||
|
||||
|
|
@ -1839,6 +1855,7 @@ void QListWidget::setItemHidden(const QListWidgetItem *item, bool hide)
|
|||
{
|
||||
setRowHidden(row(item), hide);
|
||||
}
|
||||
#endif
|
||||
|
||||
/*!
|
||||
Scrolls the view if necessary to ensure that the \a item is visible.
|
||||
|
|
|
|||
|
|
@ -72,8 +72,8 @@ public:
|
|||
|
||||
inline QListWidget *listWidget() const { return view; }
|
||||
|
||||
inline void setSelected(bool select);
|
||||
inline bool isSelected() const;
|
||||
void setSelected(bool select);
|
||||
bool isSelected() const;
|
||||
|
||||
inline void setHidden(bool hide);
|
||||
inline bool isHidden() const;
|
||||
|
|
@ -167,7 +167,6 @@ public:
|
|||
|
||||
private:
|
||||
QListModel *listModel() const;
|
||||
private:
|
||||
int rtti;
|
||||
QVector<void *> dummy;
|
||||
QListWidget *view;
|
||||
|
|
@ -256,13 +255,21 @@ public:
|
|||
void setItemWidget(QListWidgetItem *item, QWidget *widget);
|
||||
inline void removeItemWidget(QListWidgetItem *item);
|
||||
|
||||
#if QT_DEPRECATED_SINCE(5, 13)
|
||||
QT_DEPRECATED_X ("Use QListWidgetItem::isSelected() instead")
|
||||
bool isItemSelected(const QListWidgetItem *item) const;
|
||||
QT_DEPRECATED_X ("Use QListWidgetItem::setSelected() instead")
|
||||
void setItemSelected(const QListWidgetItem *item, bool select);
|
||||
#endif
|
||||
QList<QListWidgetItem*> selectedItems() const;
|
||||
QList<QListWidgetItem*> findItems(const QString &text, Qt::MatchFlags flags) const;
|
||||
|
||||
#if QT_DEPRECATED_SINCE(5, 13)
|
||||
QT_DEPRECATED_X ("Use QListWidgetItem::isHidden() instead")
|
||||
bool isItemHidden(const QListWidgetItem *item) const;
|
||||
QT_DEPRECATED_X ("Use QListWidgetItem::setHidden() instead")
|
||||
void setItemHidden(const QListWidgetItem *item, bool hide);
|
||||
#endif
|
||||
#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0)
|
||||
protected:
|
||||
#endif
|
||||
|
|
@ -341,17 +348,11 @@ inline void QListWidget::addItem(QListWidgetItem *aitem)
|
|||
inline QListWidgetItem *QListWidget::itemAt(int ax, int ay) const
|
||||
{ return itemAt(QPoint(ax, ay)); }
|
||||
|
||||
inline void QListWidgetItem::setSelected(bool aselect)
|
||||
{ if (view) view->setItemSelected(this, aselect); }
|
||||
|
||||
inline bool QListWidgetItem::isSelected() const
|
||||
{ return (view ? view->isItemSelected(this) : false); }
|
||||
|
||||
inline void QListWidgetItem::setHidden(bool ahide)
|
||||
{ if (view) view->setItemHidden(this, ahide); }
|
||||
{ if (view) view->setRowHidden(view->row(this), ahide); }
|
||||
|
||||
inline bool QListWidgetItem::isHidden() const
|
||||
{ return (view ? view->isItemHidden(this) : false); }
|
||||
{ return (view ? view->isRowHidden(view->row(this)) : false); }
|
||||
|
||||
QT_END_NAMESPACE
|
||||
|
||||
|
|
|
|||
|
|
@ -344,7 +344,7 @@ void tst_QListWidget::addItem2()
|
|||
testWidget->addItem(item);
|
||||
QCOMPARE(testWidget->count(), ++count);
|
||||
QCOMPARE(testWidget->item(testWidget->count()-1), item);
|
||||
QCOMPARE(testWidget->isItemHidden(item), false);
|
||||
QCOMPARE(item->isHidden(), false);
|
||||
}
|
||||
|
||||
void tst_QListWidget::addItems()
|
||||
|
|
@ -402,9 +402,11 @@ void tst_QListWidget::closePersistentEditor()
|
|||
|
||||
void tst_QListWidget::setItemHidden()
|
||||
{
|
||||
#if QT_DEPRECATED_SINCE(5, 13)
|
||||
// Boundary checking
|
||||
testWidget->setItemHidden(0, true);
|
||||
testWidget->setItemHidden(0, false);
|
||||
#endif
|
||||
|
||||
int totalHidden = 0;
|
||||
for (int i = 0; i < testWidget->model()->rowCount(); ++i)
|
||||
|
|
@ -421,27 +423,27 @@ void tst_QListWidget::setItemHidden()
|
|||
newTotal++;
|
||||
QCOMPARE(newTotal, totalHidden);
|
||||
|
||||
testWidget->setItemHidden(item, true);
|
||||
QCOMPARE(testWidget->isItemHidden(item), true);
|
||||
item->setHidden(true);
|
||||
QCOMPARE(item->isHidden(), true);
|
||||
|
||||
// Check that nothing else changed
|
||||
newTotal = 0;
|
||||
for (int i = 0; i < testWidget->model()->rowCount(); ++i)
|
||||
if (testWidget->isItemHidden(testWidget->item(i)))
|
||||
if (testWidget->item(i)->isHidden())
|
||||
newTotal++;
|
||||
QCOMPARE(newTotal, totalHidden + 1);
|
||||
|
||||
testWidget->setItemHidden(item, false);
|
||||
QCOMPARE(testWidget->isItemHidden(item), false);
|
||||
item->setHidden(false);
|
||||
QCOMPARE(item->isHidden(), false);
|
||||
|
||||
// Check that nothing else changed
|
||||
newTotal = 0;
|
||||
for (int i = 0; i < testWidget->model()->rowCount(); ++i)
|
||||
if (testWidget->isItemHidden(testWidget->item(i)))
|
||||
if (testWidget->item(i)->isHidden())
|
||||
newTotal++;
|
||||
QCOMPARE(newTotal, totalHidden);
|
||||
|
||||
testWidget->setItemHidden(item, true);
|
||||
item->setHidden(true);
|
||||
}
|
||||
|
||||
void tst_QListWidget::setCurrentItem_data()
|
||||
|
|
@ -847,7 +849,7 @@ void tst_QListWidget::selectedItems()
|
|||
testWidget->setSelectionMode(QListWidget::SingleSelection);
|
||||
for (int i=0; i<itemCount; ++i) {
|
||||
QListWidgetItem *item = testWidget->item(i);
|
||||
testWidget->setItemSelected(item, true);
|
||||
item->setSelected(true);
|
||||
QVERIFY(item->isSelected());
|
||||
QCOMPARE(testWidget->selectedItems().count(), 1);
|
||||
}
|
||||
|
|
@ -860,10 +862,10 @@ void tst_QListWidget::selectedItems()
|
|||
QCOMPARE(testWidget->count(), itemCount);
|
||||
// hide items
|
||||
foreach (int row, hiddenRows)
|
||||
testWidget->setItemHidden(testWidget->item(row), true);
|
||||
testWidget->item(row)->setHidden(true);
|
||||
// select items
|
||||
foreach (int row, selectedRows)
|
||||
testWidget->setItemSelected(testWidget->item(row), true);
|
||||
testWidget->item(row)->setSelected(true);
|
||||
|
||||
// check that the correct number of items and the expected items are there
|
||||
QList<QListWidgetItem *> selectedItems = testWidget->selectedItems();
|
||||
|
|
@ -874,7 +876,7 @@ void tst_QListWidget::selectedItems()
|
|||
//check that isSelected agrees with selectedItems
|
||||
for (int i=0; i<itemCount; ++i) {
|
||||
QListWidgetItem *item = testWidget->item(i);
|
||||
if (testWidget->isItemSelected(item))
|
||||
if (item->isSelected())
|
||||
QVERIFY(selectedItems.contains(item));
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue