diff options
author | Volker Hilsheimer <volker.hilsheimer@qt.io> | 2020-09-02 12:04:07 +0200 |
---|---|---|
committer | Volker Hilsheimer <volker.hilsheimer@qt.io> | 2020-09-05 02:06:26 +0200 |
commit | 0f39cfae93ab20e6e190bc02225265d6186149d3 (patch) | |
tree | f9ad4555955c29f858425c089b96155b485b9c44 /src | |
parent | 403b01f86682b9b0b1cd271dbf421da949a2f0ad (diff) |
Change QWidget::enterEvent signature to take a QEnterEvent
This is a source incompatible change for widget implementors.
Leaving the old enterEvent as a virtual overload is problematic due to
shadowing. Best to make a clean cut, widget reimplementors will get a compile
time warning if they mark their override as such, or if they try to call the
parent class implementation.
Addresses ### Qt 6 comment.
[ChangeLog][QtWidgets][QWidget] The virtual enterEvent handler now receives
a QEnterEvent, which contains information about mouse position and button
states, rather than a plain QEvent.
Change-Id: I233f594fd79c0c090983b3db8532913d00132fde
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Diffstat (limited to 'src')
-rw-r--r-- | src/widgets/dialogs/qwizard_win.cpp | 2 | ||||
-rw-r--r-- | src/widgets/dialogs/qwizard_win_p.h | 2 | ||||
-rw-r--r-- | src/widgets/kernel/qwidget.cpp | 8 | ||||
-rw-r--r-- | src/widgets/kernel/qwidget.h | 3 | ||||
-rw-r--r-- | src/widgets/widgets/qcombobox_p.h | 2 | ||||
-rw-r--r-- | src/widgets/widgets/qdockwidget.cpp | 4 | ||||
-rw-r--r-- | src/widgets/widgets/qmenu.cpp | 2 | ||||
-rw-r--r-- | src/widgets/widgets/qmenu.h | 2 | ||||
-rw-r--r-- | src/widgets/widgets/qtabbar.cpp | 4 | ||||
-rw-r--r-- | src/widgets/widgets/qtoolbutton.cpp | 2 | ||||
-rw-r--r-- | src/widgets/widgets/qtoolbutton.h | 2 |
11 files changed, 16 insertions, 17 deletions
diff --git a/src/widgets/dialogs/qwizard_win.cpp b/src/widgets/dialogs/qwizard_win.cpp index c80db1fd94..9575dc7fba 100644 --- a/src/widgets/dialogs/qwizard_win.cpp +++ b/src/widgets/dialogs/qwizard_win.cpp @@ -94,7 +94,7 @@ QSize QVistaBackButton::sizeHint() const return QSize(width, height); } -void QVistaBackButton::enterEvent(QEvent *event) +void QVistaBackButton::enterEvent(QEnterEvent *event) { if (isEnabled()) update(); diff --git a/src/widgets/dialogs/qwizard_win_p.h b/src/widgets/dialogs/qwizard_win_p.h index 520046ca02..a8799e4b86 100644 --- a/src/widgets/dialogs/qwizard_win_p.h +++ b/src/widgets/dialogs/qwizard_win_p.h @@ -75,7 +75,7 @@ public: inline QSize minimumSizeHint() const override { return sizeHint(); } - void enterEvent(QEvent *event) override; + void enterEvent(QEnterEvent *event) override; void leaveEvent(QEvent *event) override; void paintEvent(QPaintEvent *event) override; }; diff --git a/src/widgets/kernel/qwidget.cpp b/src/widgets/kernel/qwidget.cpp index dc7f8f7dc4..5a76be82a5 100644 --- a/src/widgets/kernel/qwidget.cpp +++ b/src/widgets/kernel/qwidget.cpp @@ -8756,7 +8756,7 @@ bool QWidget::event(QEvent *event) QCoreApplication::sendEvent(const_cast<QWidget *>(this), &tip); } #endif - enterEvent(event); + enterEvent(static_cast<QEnterEvent*>(event)); break; case QEvent::Leave: @@ -9402,7 +9402,7 @@ void QWidget::focusOutEvent(QFocusEvent *) } /*! - \fn void QWidget::enterEvent(QEvent *event) + \fn void QWidget::enterEvent(QEnterEvent *event) This event handler can be reimplemented in a subclass to receive widget enter events which are passed in the \a event parameter. @@ -9413,12 +9413,10 @@ void QWidget::focusOutEvent(QFocusEvent *) \sa leaveEvent(), mouseMoveEvent(), event() */ -void QWidget::enterEvent(QEvent *) +void QWidget::enterEvent(QEnterEvent *) { } -// ### Qt 6: void QWidget::enterEvent(QEnterEvent *). - /*! \fn void QWidget::leaveEvent(QEvent *event) diff --git a/src/widgets/kernel/qwidget.h b/src/widgets/kernel/qwidget.h index 6f4c709c10..b423b0ebad 100644 --- a/src/widgets/kernel/qwidget.h +++ b/src/widgets/kernel/qwidget.h @@ -75,6 +75,7 @@ class QMouseEvent; class QWheelEvent; class QHoverEvent; class QKeyEvent; +class QEnterEvent; class QFocusEvent; class QPaintEvent; class QMoveEvent; @@ -622,7 +623,7 @@ protected: virtual void keyReleaseEvent(QKeyEvent *event); virtual void focusInEvent(QFocusEvent *event); virtual void focusOutEvent(QFocusEvent *event); - virtual void enterEvent(QEvent *event); + virtual void enterEvent(QEnterEvent *event); virtual void leaveEvent(QEvent *event); virtual void paintEvent(QPaintEvent *event); virtual void moveEvent(QMoveEvent *event); diff --git a/src/widgets/widgets/qcombobox_p.h b/src/widgets/widgets/qcombobox_p.h index b3adb4be69..a7e7af64a1 100644 --- a/src/widgets/widgets/qcombobox_p.h +++ b/src/widgets/widgets/qcombobox_p.h @@ -154,7 +154,7 @@ protected: fast = false; } - void enterEvent(QEvent *) override { + void enterEvent(QEnterEvent *) override { startTimer(); } diff --git a/src/widgets/widgets/qdockwidget.cpp b/src/widgets/widgets/qdockwidget.cpp index fd9e98c795..6f5f345a40 100644 --- a/src/widgets/widgets/qdockwidget.cpp +++ b/src/widgets/widgets/qdockwidget.cpp @@ -129,7 +129,7 @@ public: QSize minimumSizeHint() const override { return sizeHint(); } - void enterEvent(QEvent *event) override; + void enterEvent(QEnterEvent *event) override; void leaveEvent(QEvent *event) override; void paintEvent(QPaintEvent *event) override; @@ -205,7 +205,7 @@ QSize QDockWidgetTitleButton::sizeHint() const return QSize(size, size); } -void QDockWidgetTitleButton::enterEvent(QEvent *event) +void QDockWidgetTitleButton::enterEvent(QEnterEvent *event) { if (isEnabled()) update(); QAbstractButton::enterEvent(event); diff --git a/src/widgets/widgets/qmenu.cpp b/src/widgets/widgets/qmenu.cpp index 9007d2af78..aa04873f63 100644 --- a/src/widgets/widgets/qmenu.cpp +++ b/src/widgets/widgets/qmenu.cpp @@ -3502,7 +3502,7 @@ void QMenu::mouseMoveEvent(QMouseEvent *e) /*! \reimp */ -void QMenu::enterEvent(QEvent *) +void QMenu::enterEvent(QEnterEvent *) { Q_D(QMenu); d->hasReceievedEnter = true; diff --git a/src/widgets/widgets/qmenu.h b/src/widgets/widgets/qmenu.h index e8b27c3278..f7348529e2 100644 --- a/src/widgets/widgets/qmenu.h +++ b/src/widgets/widgets/qmenu.h @@ -249,7 +249,7 @@ protected: #if QT_CONFIG(wheelevent) void wheelEvent(QWheelEvent *) override; #endif - void enterEvent(QEvent *) override; + void enterEvent(QEnterEvent *) override; void leaveEvent(QEvent *) override; void hideEvent(QHideEvent *) override; void paintEvent(QPaintEvent *) override; diff --git a/src/widgets/widgets/qtabbar.cpp b/src/widgets/widgets/qtabbar.cpp index 7761bcea30..5e686aa396 100644 --- a/src/widgets/widgets/qtabbar.cpp +++ b/src/widgets/widgets/qtabbar.cpp @@ -83,7 +83,7 @@ public: QSize sizeHint() const override; QSize minimumSizeHint() const override { return sizeHint(); } - void enterEvent(QEvent *event) override; + void enterEvent(QEnterEvent *event) override; void leaveEvent(QEvent *event) override; void paintEvent(QPaintEvent *event) override; }; @@ -2814,7 +2814,7 @@ QSize CloseButton::sizeHint() const return QSize(width, height); } -void CloseButton::enterEvent(QEvent *event) +void CloseButton::enterEvent(QEnterEvent *event) { if (isEnabled()) update(); diff --git a/src/widgets/widgets/qtoolbutton.cpp b/src/widgets/widgets/qtoolbutton.cpp index 5a394cfda8..30ac2f219c 100644 --- a/src/widgets/widgets/qtoolbutton.cpp +++ b/src/widgets/widgets/qtoolbutton.cpp @@ -527,7 +527,7 @@ void QToolButtonPrivate::_q_actionTriggered() /*! \reimp */ -void QToolButton::enterEvent(QEvent * e) +void QToolButton::enterEvent(QEnterEvent * e) { Q_D(QToolButton); if (d->autoRaise) diff --git a/src/widgets/widgets/qtoolbutton.h b/src/widgets/widgets/qtoolbutton.h index 5d522c62bb..96702c145f 100644 --- a/src/widgets/widgets/qtoolbutton.h +++ b/src/widgets/widgets/qtoolbutton.h @@ -112,7 +112,7 @@ protected: void paintEvent(QPaintEvent *) override; void actionEvent(QActionEvent *) override; - void enterEvent(QEvent *) override; + void enterEvent(QEnterEvent *) override; void leaveEvent(QEvent *) override; void timerEvent(QTimerEvent *) override; void changeEvent(QEvent *) override; |