Mark some Qt namespace enum members properly as deprecated

A comment is not good enough, Some of the enum members were even still
in use, or mentioned in documentation.

WA_ContentsPropagated, WA_WState_DND and WA_ForceAcceptDrops have been
deprecated since 4.5.1; and at least the last has been an \omitvalue
in the docs for even longer.  (WA_ShowModal and WA_GroupLeader have
been similarly marked, but are in use, see QTBUG-85816.)

Push back to 5.15.1 in order to be able to remove these at Qt 6.

Pick-to: 5.15.1
Change-Id: I6ea3839767e5f5158b0fed508f65798470191908
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
bb10
Edward Welbourne 2020-07-20 13:08:26 +02:00
parent ffde7e8995
commit 7883bf7304
5 changed files with 13 additions and 14 deletions

View File

@ -308,7 +308,9 @@ namespace Qt {
WA_Disabled = 0,
WA_UnderMouse = 1,
WA_MouseTracking = 2,
WA_ContentsPropagated = 3, // ## deprecated
#if QT_DEPRECATED_SINCE(5, 15) // commented as such since 4.5.1
WA_ContentsPropagated Q_DECL_ENUMERATOR_DEPRECATED = 3,
#endif
WA_OpaquePaintEvent = 4,
#if QT_DEPRECATED_SINCE(5, 14)
WA_NoBackground Q_DECL_ENUMERATOR_DEPRECATED = WA_OpaquePaintEvent,
@ -363,14 +365,16 @@ namespace Qt {
WA_WState_Reparented = 63,
WA_WState_ConfigPending = 64,
WA_WState_Polished = 66,
WA_WState_DND = 67, // ## deprecated
#if QT_DEPRECATED_SINCE(5, 15) // commented as such in 4.5.1
WA_WState_DND Q_DECL_ENUMERATOR_DEPRECATED = 67,
#endif
WA_WState_OwnSizePolicy = 68,
WA_WState_ExplicitShowHide = 69,
WA_ShowModal = 70, // ## deprecated
WA_ShowModal = 70, // ## deprecated since since 4.5.1 but still in use :-(
WA_MouseNoMask = 71,
WA_GroupLeader = 72, // ## deprecated
WA_NoMousePropagation = 73, // ## for now, might go away.
WA_GroupLeader = 72, // ## deprecated since since 4.5.1 but still in use :-(
WA_NoMousePropagation = 73, // for now, might go away.
WA_Hover = 74,
WA_InputMethodTransparent = 75, // Don't reset IM when user clicks on this (for virtual keyboards on embedded)
WA_QuitOnClose = 76,
@ -379,7 +383,9 @@ namespace Qt {
WA_AcceptDrops = 78,
WA_DropSiteRegistered = 79, // internal
WA_ForceAcceptDrops = WA_DropSiteRegistered, // ## deprecated
#if QT_DEPRECATED_SINCE(5, 15) // commented as such since 4.5.1
WA_ForceAcceptDrops Q_DECL_ENUMERATOR_DEPRECATED_X("WA_ForceAcceptDrops is deprecated. Use WA_DropSiteRegistered instead") = WA_DropSiteRegistered,
#endif
WA_WindowPropagation = 80,

View File

@ -1155,9 +1155,6 @@ void QWindowsXPStyle::polish(QWidget *widget)
widget->setWindowOpacity(0.6);
}
#endif
if (qobject_cast<QStackedWidget*>(widget) &&
qobject_cast<QTabWidget*>(widget->parent()))
widget->parentWidget()->setAttribute(Qt::WA_ContentsPropagated);
Q_D(QWindowsXPStyle);
if (!d->hasInitColors) {

View File

@ -715,8 +715,7 @@ void QWidget::setAutoFillBackground(bool enabled)
is no need to write double-buffering code in paintEvent() to avoid
flicker.
Since Qt 4.1, the Qt::WA_ContentsPropagated widget attribute has been
deprecated. Instead, the contents of parent widgets are propagated by
Since Qt 4.1, the contents of parent widgets are propagated by
default to each of their children as long as Qt::WA_PaintOnScreen is not
set. Custom widgets can be written to take advantage of this feature by
updating irregular regions (to create non-rectangular child widgets), or

View File

@ -754,8 +754,6 @@ void QDockWidgetPrivate::updateButtons()
button->setAccessibleName(QDockWidget::tr("Close"));
button->setAccessibleDescription(QDockWidget::tr("Closes the dock widget"));
#endif
q->setAttribute(Qt::WA_ContentsPropagated,
(canFloat || canClose) && !hideButtons);
layout->invalidate();
}

View File

@ -189,7 +189,6 @@ void tst_QMacStyle::sizeHints()
QDateTimeEdit dateTime1(&w);
QCOMPARE(sh(&dateTime1).height(), h1);
ok1.setAttribute(Qt::WA_MacMetalStyle, true);
QSize s2 = sh(&ok1);
if (size == Normal) {
QVERIFY(s2.height() >= 21 && s2.height() <= 32);