QTimerEvent: port to Qt::TimerId

[ChangeLog][QtCore][QTimerEvent] Added constructor taking a Qt::TimerId.
Also added a getter for Qt::TimerId.

[ChangeLog][Potentially Source-Incompatible Changes] The protected
(and undocumented) QTimerEvent::id member variable has been renamed to
m_id to allow for the addition of an id() getter that returns a
Qt::TimerId.

Task-number: QTBUG-128144
Pick-to: 6.8
Change-Id: Ia156f11e9e9347b6bf61b36e40da3ad551d23407
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
This commit is contained in:
Ahmad Samir 2024-08-18 18:45:45 +03:00 committed by Volker Hilsheimer
parent 81d31d2760
commit 29b98eabf0
2 changed files with 27 additions and 3 deletions

View File

@ -533,9 +533,21 @@ int QEvent::registerEventType(int hint) noexcept
\a timerId. \a timerId.
*/ */
QTimerEvent::QTimerEvent(int timerId) QTimerEvent::QTimerEvent(int timerId)
: QEvent(Timer), id(timerId) : QTimerEvent(Qt::TimerId{timerId})
{} {}
/*!
\since 6.8
Constructs a timer event object with the timer identifier set to
\a timerId.
*/
QTimerEvent::QTimerEvent(Qt::TimerId timerId)
: QEvent(Timer), m_id(timerId)
{
static_assert(sizeof(Qt::TimerId) == sizeof(int));
}
Q_IMPL_EVENT_COMMON(QTimerEvent) Q_IMPL_EVENT_COMMON(QTimerEvent)
/*! /*!
@ -545,6 +557,15 @@ Q_IMPL_EVENT_COMMON(QTimerEvent)
as returned from QObject::startTimer(). as returned from QObject::startTimer().
*/ */
/*!
\fn Qt::TimerId QTimerEvent::id() const
\since 6.8
Returns the Qt::TimerId of the timer associated with this event, which
is the same identifier returned by QObject::startTimer() cast to
Qt::TimerId.
*/
/*! /*!
\class QChildEvent \class QChildEvent
\inmodule QtCore \inmodule QtCore

View File

@ -367,10 +367,13 @@ class Q_CORE_EXPORT QTimerEvent : public QEvent
Q_DECL_EVENT_COMMON(QTimerEvent) Q_DECL_EVENT_COMMON(QTimerEvent)
public: public:
explicit QTimerEvent(int timerId); explicit QTimerEvent(int timerId);
int timerId() const { return id; } explicit QTimerEvent(Qt::TimerId timerId);
int timerId() const { return qToUnderlying(id()); }
Qt::TimerId id() const { return m_id; }
protected: protected:
int id; Qt::TimerId m_id;
}; };
class QObject; class QObject;