9#pragma qt_class(QtEvents)
12#include <QtGui/qtguiglobal.h>
14#include <QtCore/qcoreevent.h>
15#include <QtCore/qiodevice.h>
16#include <QtCore/qlist.h>
17#include <QtCore/qnamespace.h>
18#include <QtCore/qstring.h>
19#include <QtCore/qurl.h>
20#include <QtCore/qvariant.h>
21#include <QtGui/qeventpoint.h>
22#include <QtGui/qpointingdevice.h>
23#include <QtGui/qregion.h>
24#include <QtGui/qwindowdefs.h>
26#if QT_CONFIG(shortcut)
27# include <QtGui/qkeysequence.h>
40#if QT_CONFIG(shortcut)
45#if QT_CONFIG(gestures)
51 Q_DECL_EVENT_COMMON(QInputEvent)
53 explicit QInputEvent(Type type,
const QInputDevice *m_dev, Qt::KeyboardModifiers modifiers = Qt::NoModifier);
55 const QInputDevice *device()
const {
return m_dev; }
56 QInputDevice::DeviceType deviceType()
const {
return m_dev ? m_dev->type() : QInputDevice::DeviceType::Unknown; }
57 inline Qt::KeyboardModifiers modifiers()
const {
return m_modState; }
58 inline void setModifiers(Qt::KeyboardModifiers modifiers) { m_modState = modifiers; }
59 inline quint64 timestamp()
const {
return m_timeStamp; }
60 virtual void setTimestamp(quint64 timestamp) { m_timeStamp = timestamp; }
63 QInputEvent(Type type, PointerEventTag,
const QInputDevice *dev, Qt::KeyboardModifiers modifiers = Qt::NoModifier);
64 QInputEvent(Type type, SinglePointEventTag,
const QInputDevice *dev, Qt::KeyboardModifiers modifiers = Qt::NoModifier);
66 const QInputDevice *m_dev =
nullptr;
67 quint64 m_timeStamp = 0;
68 Qt::KeyboardModifiers m_modState = Qt::NoModifier;
70 quint32 m_reserved = 0;
76 Q_DECL_EVENT_COMMON(QPointerEvent)
78 explicit QPointerEvent(Type type,
const QPointingDevice *dev,
79 Qt::KeyboardModifiers modifiers = Qt::NoModifier,
const QList<QEventPoint> &points = {});
81 const QPointingDevice *pointingDevice()
const;
82 QPointingDevice::PointerType pointerType()
const {
83 return pointingDevice() ? pointingDevice()->pointerType() : QPointingDevice::PointerType::Unknown;
85 void setTimestamp(quint64 timestamp) override;
86 qsizetype pointCount()
const {
return m_points.size(); }
87 QEventPoint &point(qsizetype i);
88 const QList<QEventPoint> &points()
const {
return m_points; }
89 QEventPoint *pointById(
int id);
90 bool allPointsGrabbed()
const;
91 virtual bool isBeginEvent()
const {
return false; }
92 virtual bool isUpdateEvent()
const {
return false; }
93 virtual bool isEndEvent()
const {
return false; }
94 bool allPointsAccepted()
const;
95 virtual void setAccepted(
bool accepted) override;
96 QObject *exclusiveGrabber(
const QEventPoint &point)
const;
97 void setExclusiveGrabber(
const QEventPoint &point, QObject *exclusiveGrabber);
98 QList<QPointer <QObject>> passiveGrabbers(
const QEventPoint &point)
const;
99 void clearPassiveGrabbers(
const QEventPoint &point);
100 bool addPassiveGrabber(
const QEventPoint &point, QObject *grabber);
101 bool removePassiveGrabber(
const QEventPoint &point, QObject *grabber);
104 QPointerEvent(Type type, SinglePointEventTag,
const QInputDevice *dev, Qt::KeyboardModifiers modifiers = Qt::NoModifier);
106 QList<QEventPoint> m_points;
112 Q_PROPERTY(QObject *exclusivePointGrabber READ exclusivePointGrabber
113 WRITE setExclusivePointGrabber)
115 Q_DECL_EVENT_COMMON(QSinglePointEvent)
117 inline Qt::MouseButton button()
const {
return m_button; }
118 inline Qt::MouseButtons buttons()
const {
return m_mouseState; }
120 inline QPointF position()
const
121 { Q_ASSERT(!m_points.isEmpty());
return m_points.first().position(); }
122 inline QPointF scenePosition()
const
123 { Q_ASSERT(!m_points.isEmpty());
return m_points.first().scenePosition(); }
124 inline QPointF globalPosition()
const
125 { Q_ASSERT(!m_points.isEmpty());
return m_points.first().globalPosition(); }
127 bool isBeginEvent()
const override;
128 bool isUpdateEvent()
const override;
129 bool isEndEvent()
const override;
131 QObject *exclusivePointGrabber()
const
132 {
return QPointerEvent::exclusiveGrabber(points().first()); }
133 void setExclusivePointGrabber(QObject *exclusiveGrabber)
134 { QPointerEvent::setExclusiveGrabber(points().first(), exclusiveGrabber); }
137 friend class ::tst_QEvent;
138 friend class QMutableSinglePointEvent;
139 QSinglePointEvent(Type type,
const QPointingDevice *dev,
const QEventPoint &point,
140 Qt::MouseButton button, Qt::MouseButtons buttons,
141 Qt::KeyboardModifiers modifiers, Qt::MouseEventSource source);
142 QSinglePointEvent(Type type,
const QPointingDevice *dev,
const QPointF &localPos,
143 const QPointF &scenePos,
const QPointF &globalPos,
144 Qt::MouseButton button, Qt::MouseButtons buttons,
145 Qt::KeyboardModifiers modifiers,
146 Qt::MouseEventSource source = Qt::MouseEventNotSynthesized);
148 Qt::MouseButton m_button = Qt::NoButton;
149 Qt::MouseButtons m_mouseState = Qt::NoButton;
150 Qt::MouseEventSource m_source;
152
153
154
155
158 quint16 m_reserved2 : 11;
160 quint16 m_doubleClick : 1;
163 quint16 m_invertedScrolling : 1;
168 Q_DECL_EVENT_COMMON(QEnterEvent)
170 QEnterEvent(
const QPointF &localPos,
const QPointF &scenePos,
const QPointF &globalPos,
171 const QPointingDevice *device = QPointingDevice::primaryPointingDevice());
173#if QT_DEPRECATED_SINCE(6
, 0
)
174#ifndef QT_NO_INTEGER_EVENT_COORDINATES
175 QT_DEPRECATED_VERSION_X_6_0(
"Use position()")
176 inline QPoint pos()
const {
return position().toPoint(); }
177 QT_DEPRECATED_VERSION_X_6_0(
"Use globalPosition()")
178 inline QPoint globalPos()
const {
return globalPosition().toPoint(); }
179 QT_DEPRECATED_VERSION_X_6_0(
"Use position()")
180 inline int x()
const {
return qRound(position().x()); }
181 QT_DEPRECATED_VERSION_X_6_0(
"Use position()")
182 inline int y()
const {
return qRound(position().y()); }
183 QT_DEPRECATED_VERSION_X_6_0(
"Use globalPosition()")
184 inline int globalX()
const {
return qRound(globalPosition().x()); }
185 QT_DEPRECATED_VERSION_X_6_0(
"Use globalPosition()")
186 inline int globalY()
const {
return qRound(globalPosition().y()); }
188 QT_DEPRECATED_VERSION_X_6_0(
"Use position()")
189 QPointF localPos()
const {
return position(); }
190 QT_DEPRECATED_VERSION_X_6_0(
"Use scenePosition()")
191 QPointF windowPos()
const {
return scenePosition(); }
192 QT_DEPRECATED_VERSION_X_6_0(
"Use globalPosition()")
193 QPointF screenPos()
const {
return globalPosition(); }
199 Q_DECL_EVENT_COMMON(QMouseEvent)
201#if QT_DEPRECATED_SINCE(6
, 4
)
202 QT_DEPRECATED_VERSION_X_6_4(
"Use another constructor")
203 QMouseEvent(Type type,
const QPointF &localPos, Qt::MouseButton button,
204 Qt::MouseButtons buttons, Qt::KeyboardModifiers modifiers,
205 const QPointingDevice *device = QPointingDevice::primaryPointingDevice());
207 QMouseEvent(Type type,
const QPointF &localPos,
const QPointF &globalPos,
208 Qt::MouseButton button, Qt::MouseButtons buttons,
209 Qt::KeyboardModifiers modifiers,
210 const QPointingDevice *device = QPointingDevice::primaryPointingDevice());
211 QMouseEvent(Type type,
const QPointF &localPos,
const QPointF &scenePos,
const QPointF &globalPos,
212 Qt::MouseButton button, Qt::MouseButtons buttons,
213 Qt::KeyboardModifiers modifiers,
214 const QPointingDevice *device = QPointingDevice::primaryPointingDevice());
215 QMouseEvent(Type type,
const QPointF &localPos,
const QPointF &scenePos,
const QPointF &globalPos,
216 Qt::MouseButton button, Qt::MouseButtons buttons,
217 Qt::KeyboardModifiers modifiers, Qt::MouseEventSource source,
218 const QPointingDevice *device = QPointingDevice::primaryPointingDevice());
220#ifndef QT_NO_INTEGER_EVENT_COORDINATES
221 inline QPoint pos()
const {
return position().toPoint(); }
223#if QT_DEPRECATED_SINCE(6
, 0
)
224#ifndef QT_NO_INTEGER_EVENT_COORDINATES
225 QT_DEPRECATED_VERSION_X_6_0(
"Use globalPosition()")
226 inline QPoint globalPos()
const {
return globalPosition().toPoint(); }
227 QT_DEPRECATED_VERSION_X_6_0(
"Use position()")
228 inline int x()
const {
return qRound(position().x()); }
229 QT_DEPRECATED_VERSION_X_6_0(
"Use position()")
230 inline int y()
const {
return qRound(position().y()); }
231 QT_DEPRECATED_VERSION_X_6_0(
"Use globalPosition()")
232 inline int globalX()
const {
return qRound(globalPosition().x()); }
233 QT_DEPRECATED_VERSION_X_6_0(
"Use globalPosition()")
234 inline int globalY()
const {
return qRound(globalPosition().y()); }
236 QT_DEPRECATED_VERSION_X_6_0(
"Use position()")
237 QPointF localPos()
const {
return position(); }
238 QT_DEPRECATED_VERSION_X_6_0(
"Use scenePosition()")
239 QPointF windowPos()
const {
return scenePosition(); }
240 QT_DEPRECATED_VERSION_X_6_0(
"Use globalPosition()")
241 QPointF screenPos()
const {
return globalPosition(); }
243 Qt::MouseEventSource source()
const;
244 Qt::MouseEventFlags flags()
const;
249 Q_DECL_EVENT_COMMON(QHoverEvent)
251 QHoverEvent(Type type,
const QPointF &scenePos,
const QPointF &globalPos,
const QPointF &oldPos,
252 Qt::KeyboardModifiers modifiers = Qt::NoModifier,
253 const QPointingDevice *device = QPointingDevice::primaryPointingDevice());
254#if QT_DEPRECATED_SINCE(6
, 3
)
255 QT_DEPRECATED_VERSION_X_6_3(
"Use the other constructor")
256 QHoverEvent(Type type,
const QPointF &pos,
const QPointF &oldPos,
257 Qt::KeyboardModifiers modifiers = Qt::NoModifier,
258 const QPointingDevice *device = QPointingDevice::primaryPointingDevice());
261#if QT_DEPRECATED_SINCE(6
, 0
)
262#ifndef QT_NO_INTEGER_EVENT_COORDINATES
263 QT_DEPRECATED_VERSION_X_6_0(
"Use position()")
264 inline QPoint pos()
const {
return position().toPoint(); }
267 QT_DEPRECATED_VERSION_X_6_0(
"Use position()")
268 inline QPointF posF()
const {
return position(); }
271 bool isUpdateEvent()
const override {
return true; }
274 inline QPoint oldPos()
const {
return m_oldPos.toPoint(); }
275 inline QPointF oldPosF()
const {
return m_oldPos; }
281#if QT_CONFIG(wheelevent)
282class Q_GUI_EXPORT QWheelEvent :
public QSinglePointEvent
285 Q_PROPERTY(
const QPointingDevice *device READ pointingDevice)
286 Q_PROPERTY(QPoint pixelDelta READ pixelDelta)
287 Q_PROPERTY(QPoint angleDelta READ angleDelta)
288 Q_PROPERTY(Qt::ScrollPhase phase READ phase)
289 Q_PROPERTY(
bool inverted READ inverted)
291 Q_DECL_EVENT_COMMON(QWheelEvent)
293 enum { DefaultDeltasPerStep = 120 };
295 QWheelEvent(
const QPointF &pos,
const QPointF &globalPos, QPoint pixelDelta, QPoint angleDelta,
296 Qt::MouseButtons buttons, Qt::KeyboardModifiers modifiers, Qt::ScrollPhase phase,
297 bool inverted, Qt::MouseEventSource source = Qt::MouseEventNotSynthesized,
298 const QPointingDevice *device = QPointingDevice::primaryPointingDevice());
300 inline QPoint pixelDelta()
const {
return m_pixelDelta; }
301 inline QPoint angleDelta()
const {
return m_angleDelta; }
303 inline Qt::ScrollPhase phase()
const {
return Qt::ScrollPhase(m_phase); }
304 inline bool inverted()
const {
return m_invertedScrolling; }
305 inline bool isInverted()
const {
return m_invertedScrolling; }
306 inline bool hasPixelDelta()
const {
return !m_pixelDelta.isNull(); }
308 bool isBeginEvent()
const override;
309 bool isUpdateEvent()
const override;
310 bool isEndEvent()
const override;
311 Qt::MouseEventSource source()
const {
return Qt::MouseEventSource(m_source); }
319#if QT_CONFIG(tabletevent)
320class Q_GUI_EXPORT QTabletEvent :
public QSinglePointEvent
322 Q_DECL_EVENT_COMMON(QTabletEvent)
324 QTabletEvent(Type t,
const QPointingDevice *device,
325 const QPointF &pos,
const QPointF &globalPos,
326 qreal pressure,
float xTilt,
float yTilt,
327 float tangentialPressure, qreal rotation,
float z,
328 Qt::KeyboardModifiers keyState,
329 Qt::MouseButton button, Qt::MouseButtons buttons);
331#if QT_DEPRECATED_SINCE(6
, 0
)
332 QT_DEPRECATED_VERSION_X_6_0(
"Use position()")
333 inline QPoint pos()
const {
return position().toPoint(); }
334 QT_DEPRECATED_VERSION_X_6_0(
"Use globalPosition()")
335 inline QPoint globalPos()
const {
return globalPosition().toPoint(); }
337 QT_DEPRECATED_VERSION_X_6_0(
"Use position()")
338 inline const QPointF posF()
const {
return position(); }
339 QT_DEPRECATED_VERSION_X_6_0(
"Use globalPosition()")
340 inline const QPointF globalPosF()
const {
return globalPosition(); }
341 QT_DEPRECATED_VERSION_X_6_0(
"Use position().x()")
342 inline int x()
const {
return qRound(position().x()); }
343 QT_DEPRECATED_VERSION_X_6_0(
"Use position().y()")
344 inline int y()
const {
return qRound(position().y()); }
345 QT_DEPRECATED_VERSION_X_6_0(
"Use globalPosition().x()")
346 inline int globalX()
const {
return qRound(globalPosition().x()); }
347 QT_DEPRECATED_VERSION_X_6_0(
"Use globalPosition().y()")
348 inline int globalY()
const {
return qRound(globalPosition().y()); }
349 QT_DEPRECATED_VERSION_X_6_0(
"use globalPosition().x()")
350 inline qreal hiResGlobalX()
const {
return globalPosition().x(); }
351 QT_DEPRECATED_VERSION_X_6_0(
"use globalPosition().y()")
352 inline qreal hiResGlobalY()
const {
return globalPosition().y(); }
353 QT_DEPRECATED_VERSION_X_6_0(
"use pointingDevice().uniqueId()")
354 inline qint64 uniqueId()
const {
return pointingDevice() ? pointingDevice()->uniqueId().numericId() : -1; }
356 inline qreal pressure()
const { Q_ASSERT(!points().isEmpty());
return points().first().pressure(); }
357 inline qreal rotation()
const { Q_ASSERT(!points().isEmpty());
return points().first().rotation(); }
358 inline qreal z()
const {
return m_z; }
359 inline qreal tangentialPressure()
const {
return m_tangential; }
360 inline qreal xTilt()
const {
return m_xTilt; }
361 inline qreal yTilt()
const {
return m_yTilt; }
371#if QT_CONFIG(gestures)
372class Q_GUI_EXPORT QNativeGestureEvent :
public QSinglePointEvent
374 Q_DECL_EVENT_COMMON(QNativeGestureEvent)
376#if QT_DEPRECATED_SINCE(6
, 2
)
377 QT_DEPRECATED_VERSION_X_6_2(
"Use the other constructor")
378 QNativeGestureEvent(Qt::NativeGestureType type,
const QPointingDevice *dev,
const QPointF &localPos,
const QPointF &scenePos,
379 const QPointF &globalPos, qreal value, quint64 sequenceId, quint64 intArgument);
381 QNativeGestureEvent(Qt::NativeGestureType type,
const QPointingDevice *dev,
int fingerCount,
382 const QPointF &localPos,
const QPointF &scenePos,
const QPointF &globalPos,
383 qreal value,
const QPointF &delta, quint64 sequenceId = UINT64_MAX);
385 Qt::NativeGestureType gestureType()
const {
return m_gestureType; }
386 int fingerCount()
const {
return m_fingerCount; }
387 qreal value()
const {
return m_realValue; }
388 QPointF delta()
const {
389#if QT_VERSION < QT_VERSION_CHECK(7
, 0
, 0
)
390 return m_delta.toPointF();
396#if QT_DEPRECATED_SINCE(6
, 0
)
397#ifndef QT_NO_INTEGER_EVENT_COORDINATES
398 QT_DEPRECATED_VERSION_X_6_0(
"Use position().toPoint()")
399 inline const QPoint pos()
const {
return position().toPoint(); }
400 QT_DEPRECATED_VERSION_X_6_0(
"Use globalPosition().toPoint()")
401 inline const QPoint globalPos()
const {
return globalPosition().toPoint(); }
403 QT_DEPRECATED_VERSION_X_6_0(
"Use position()")
404 QPointF localPos()
const {
return position(); }
405 QT_DEPRECATED_VERSION_X_6_0(
"Use scenePosition()")
406 QPointF windowPos()
const {
return scenePosition(); }
407 QT_DEPRECATED_VERSION_X_6_0(
"Use globalPosition()")
408 QPointF screenPos()
const {
return globalPosition(); }
412 quint64 m_sequenceId;
413#if QT_VERSION < QT_VERSION_CHECK(7
, 0
, 0
)
419 Qt::NativeGestureType m_gestureType;
420 quint32 m_fingerCount : 4;
421 quint32 m_reserved : 28;
427 Q_DECL_EVENT_COMMON(QKeyEvent)
429 QKeyEvent(Type type,
int key, Qt::KeyboardModifiers modifiers,
const QString& text = QString(),
430 bool autorep =
false, quint16 count = 1);
431 QKeyEvent(Type type,
int key, Qt::KeyboardModifiers modifiers,
432 quint32 nativeScanCode, quint32 nativeVirtualKey, quint32 nativeModifiers,
433 const QString &text = QString(),
bool autorep =
false, quint16 count = 1,
434 const QInputDevice *device = QInputDevice::primaryKeyboard());
436 int key()
const {
return m_key; }
437#if QT_CONFIG(shortcut)
438 bool matches(QKeySequence::StandardKey key)
const;
440 Qt::KeyboardModifiers modifiers()
const;
441 QKeyCombination keyCombination()
const
443 return QKeyCombination(modifiers(), Qt::Key(m_key));
445 inline QString text()
const {
return m_text; }
446 inline bool isAutoRepeat()
const {
return m_autoRepeat; }
447 inline int count()
const {
return int(m_count); }
449 inline quint32 nativeScanCode()
const {
return m_scanCode; }
450 inline quint32 nativeVirtualKey()
const {
return m_virtualKey; }
451 inline quint32 nativeModifiers()
const {
return m_nativeModifiers; }
453#if QT_CONFIG(shortcut)
454 friend inline bool operator==(QKeyEvent *e, QKeySequence::StandardKey key)
455 {
return (e ? e->matches(key) :
false); }
456 friend inline bool operator==(QKeySequence::StandardKey key, QKeyEvent *e)
457 {
return (e ? e->matches(key) :
false); }
464 quint32 m_virtualKey;
465 quint32 m_nativeModifiers;
466 quint16 m_count : 15;
467 quint16 m_autoRepeat : 1;
473 Q_DECL_EVENT_COMMON(QFocusEvent)
475 explicit QFocusEvent(Type type, Qt::FocusReason reason=Qt::OtherFocusReason);
477 inline bool gotFocus()
const {
return type() == FocusIn; }
478 inline bool lostFocus()
const {
return type() == FocusOut; }
480 Qt::FocusReason reason()
const;
483 Qt::FocusReason m_reason;
489 Q_DECL_EVENT_COMMON(QPaintEvent)
491 explicit QPaintEvent(
const QRegion& paintRegion);
492 explicit QPaintEvent(
const QRect &paintRect);
494 inline const QRect &rect()
const {
return m_rect; }
495 inline const QRegion ®ion()
const {
return m_region; }
505 Q_DECL_EVENT_COMMON(QMoveEvent)
507 QMoveEvent(
const QPoint &pos,
const QPoint &oldPos);
509 inline const QPoint &pos()
const {
return m_pos; }
510 inline const QPoint &oldPos()
const {
return m_oldPos;}
512 QPoint m_pos, m_oldPos;
513 friend class QApplication;
514 friend class QApplicationPrivate;
519 Q_DECL_EVENT_COMMON(QExposeEvent)
521 explicit QExposeEvent(
const QRegion &m_region);
523#if QT_DEPRECATED_SINCE(6
, 0
)
524 QT_DEPRECATED_VERSION_X_6_0(
"Handle QPaintEvent instead")
525 inline const QRegion ®ion()
const {
return m_region; }
530 friend class QWidgetWindow;
535 Q_DECL_EVENT_COMMON(QPlatformSurfaceEvent)
537 enum SurfaceEventType {
539 SurfaceAboutToBeDestroyed
542 explicit QPlatformSurfaceEvent(SurfaceEventType surfaceEventType);
544 inline SurfaceEventType surfaceEventType()
const {
return m_surfaceEventType; }
547 SurfaceEventType m_surfaceEventType;
552 Q_DECL_EVENT_COMMON(QResizeEvent)
554 QResizeEvent(
const QSize &size,
const QSize &oldSize);
556 inline const QSize &size()
const {
return m_size; }
557 inline const QSize &oldSize()
const {
return m_oldSize;}
559 QSize m_size, m_oldSize;
560 friend class QApplication;
561 friend class QApplicationPrivate;
567 Q_DECL_EVENT_COMMON(QCloseEvent)
575 Q_DECL_EVENT_COMMON(QIconDragEvent)
583 Q_DECL_EVENT_COMMON(QShowEvent)
591 Q_DECL_EVENT_COMMON(QHideEvent)
596#ifndef QT_NO_CONTEXTMENU
599 Q_DECL_EVENT_COMMON(QContextMenuEvent)
601 enum Reason { Mouse, Keyboard, Other };
603 QContextMenuEvent(Reason reason,
const QPoint &pos,
const QPoint &globalPos,
604 Qt::KeyboardModifiers modifiers = Qt::NoModifier);
605#if QT_DEPRECATED_SINCE(6
, 4
)
606 QT_DEPRECATED_VERSION_X_6_4(
"Use the other constructor")
607 QContextMenuEvent(Reason reason,
const QPoint &pos);
610 inline int x()
const {
return m_pos.x(); }
611 inline int y()
const {
return m_pos.y(); }
612 inline int globalX()
const {
return m_globalPos.x(); }
613 inline int globalY()
const {
return m_globalPos.y(); }
615 inline const QPoint& pos()
const {
return m_pos; }
616 inline const QPoint& globalPos()
const {
return m_globalPos; }
618 inline Reason reason()
const {
return Reason(m_reason); }
627#ifndef QT_NO_INPUTMETHOD
630 Q_DECL_EVENT_COMMON(QInputMethodEvent)
642 Attribute(AttributeType typ,
int s,
int l, QVariant val) : type(typ), start(s), length(l), value(std::move(val)) {}
643 Attribute(AttributeType typ,
int s,
int l) : type(typ), start(s), length(l), value() {}
651 QInputMethodEvent(
const QString &preeditText,
const QList<Attribute> &attributes);
653 void setCommitString(
const QString &commitString,
int replaceFrom = 0,
int replaceLength = 0);
654 inline const QList<Attribute> &attributes()
const {
return m_attributes; }
655 inline const QString &preeditString()
const {
return m_preedit; }
657 inline const QString &commitString()
const {
return m_commit; }
658 inline int replacementStart()
const {
return m_replacementStart; }
659 inline int replacementLength()
const {
return m_replacementLength; }
661 inline friend bool operator==(
const QInputMethodEvent::Attribute &lhs,
662 const QInputMethodEvent::Attribute &rhs)
664 return lhs.type == rhs.type && lhs.start == rhs.start
665 && lhs.length == rhs.length && lhs.value == rhs.value;
668 inline friend bool operator!=(
const QInputMethodEvent::Attribute &lhs,
669 const QInputMethodEvent::Attribute &rhs)
671 return !(lhs == rhs);
677 QList<Attribute> m_attributes;
678 int m_replacementStart;
679 int m_replacementLength;
681Q_DECLARE_TYPEINFO(QInputMethodEvent::Attribute, Q_RELOCATABLE_TYPE);
685 Q_DECL_EVENT_COMMON(QInputMethodQueryEvent)
687 explicit QInputMethodQueryEvent(Qt::InputMethodQueries queries);
689 Qt::InputMethodQueries queries()
const {
return m_queries; }
691 void setValue(Qt::InputMethodQuery query,
const QVariant &value);
692 QVariant value(Qt::InputMethodQuery query)
const;
694 Qt::InputMethodQueries m_queries;
696 Qt::InputMethodQuery query;
699 friend QTypeInfo<QueryPair>;
700 QList<QueryPair> m_values;
702Q_DECLARE_TYPEINFO(QInputMethodQueryEvent::QueryPair, Q_RELOCATABLE_TYPE);
706#if QT_CONFIG(draganddrop)
710class Q_GUI_EXPORT QDropEvent :
public QEvent
712 Q_DECL_EVENT_COMMON(QDropEvent)
714 QDropEvent(
const QPointF& pos, Qt::DropActions actions,
const QMimeData *data,
715 Qt::MouseButtons buttons, Qt::KeyboardModifiers modifiers, Type type = Drop);
717#if QT_DEPRECATED_SINCE(6
, 0
)
718 QT_DEPRECATED_VERSION_X_6_0(
"Use position().toPoint()")
719 inline QPoint pos()
const {
return position().toPoint(); }
720 QT_DEPRECATED_VERSION_X_6_0(
"Use position()")
721 inline QPointF posF()
const {
return position(); }
722 QT_DEPRECATED_VERSION_X_6_0(
"Use buttons()")
723 inline Qt::MouseButtons mouseButtons()
const {
return buttons(); }
724 QT_DEPRECATED_VERSION_X_6_0(
"Use modifiers()")
725 inline Qt::KeyboardModifiers keyboardModifiers()
const {
return modifiers(); }
728 QPointF position()
const {
return m_pos; }
729 inline Qt::MouseButtons buttons()
const {
return m_mouseState; }
730 inline Qt::KeyboardModifiers modifiers()
const {
return m_modState; }
732 inline Qt::DropActions possibleActions()
const {
return m_actions; }
733 inline Qt::DropAction proposedAction()
const {
return m_defaultAction; }
734 inline void acceptProposedAction() { m_dropAction = m_defaultAction; accept(); }
736 inline Qt::DropAction dropAction()
const {
return m_dropAction; }
737 void setDropAction(Qt::DropAction action);
739 QObject* source()
const;
740 inline const QMimeData *mimeData()
const {
return m_data; }
743 friend class QApplication;
745 Qt::MouseButtons m_mouseState;
746 Qt::KeyboardModifiers m_modState;
747 Qt::DropActions m_actions;
748 Qt::DropAction m_dropAction;
749 Qt::DropAction m_defaultAction;
750 const QMimeData *m_data;
754class Q_GUI_EXPORT QDragMoveEvent :
public QDropEvent
756 Q_DECL_EVENT_COMMON(QDragMoveEvent)
758#if QT_DEPRECATED_SINCE(6
, 16
)
759 QT_DEPRECATED_VERSION_X_6_16(
"Use the constructor taking QPointF")
760 QDragMoveEvent(
const QPoint &pos, Qt::DropActions actions,
const QMimeData *data,
761 Qt::MouseButtons buttons, Qt::KeyboardModifiers modifiers, Type type = DragMove);
763 QDragMoveEvent(QPointF pos, Qt::DropActions actions,
const QMimeData *data,
764 Qt::MouseButtons buttons, Qt::KeyboardModifiers modifiers, Type type = DragMove);
766 inline QRect answerRect()
const {
return m_rect; }
768 inline void accept() { QDropEvent::accept(); }
769 inline void ignore() { QDropEvent::ignore(); }
771 inline void accept(
const QRect & r) { accept(); m_rect = r; }
772 inline void ignore(
const QRect & r) { ignore(); m_rect = r; }
779class Q_GUI_EXPORT QDragEnterEvent :
public QDragMoveEvent
781 Q_DECL_EVENT_COMMON(QDragEnterEvent)
783#if QT_DEPRECATED_SINCE(6
, 16
)
784 QT_DEPRECATED_VERSION_X_6_16(
"Use the constructor taking QPointF")
785 QDragEnterEvent(
const QPoint &pos, Qt::DropActions actions,
const QMimeData *data,
786 Qt::MouseButtons buttons, Qt::KeyboardModifiers modifiers);
788 QDragEnterEvent(QPointF pos, Qt::DropActions actions,
const QMimeData *data,
789 Qt::MouseButtons buttons, Qt::KeyboardModifiers modifiers);
793class Q_GUI_EXPORT QDragLeaveEvent :
public QEvent
795 Q_DECL_EVENT_COMMON(QDragLeaveEvent)
804 Q_DECL_EVENT_COMMON(QHelpEvent)
806 QHelpEvent(Type type,
const QPoint &pos,
const QPoint &globalPos);
808 inline int x()
const {
return m_pos.x(); }
809 inline int y()
const {
return m_pos.y(); }
810 inline int globalX()
const {
return m_globalPos.x(); }
811 inline int globalY()
const {
return m_globalPos.y(); }
813 inline const QPoint& pos()
const {
return m_pos; }
814 inline const QPoint& globalPos()
const {
return m_globalPos; }
821#ifndef QT_NO_STATUSTIP
824 Q_DECL_EVENT_COMMON(QStatusTipEvent)
826 explicit QStatusTipEvent(
const QString &tip);
828 inline QString tip()
const {
return m_tip; }
834#if QT_CONFIG(whatsthis)
835class Q_GUI_EXPORT QWhatsThisClickedEvent :
public QEvent
837 Q_DECL_EVENT_COMMON(QWhatsThisClickedEvent)
839 explicit QWhatsThisClickedEvent(
const QString &href);
841 inline QString href()
const {
return m_href; }
848class Q_GUI_EXPORT QActionEvent :
public QEvent
850 Q_DECL_EVENT_COMMON(QActionEvent)
852 QActionEvent(
int type, QAction *action, QAction *before =
nullptr);
854 inline QAction *action()
const {
return m_action; }
855 inline QAction *before()
const {
return m_before; }
864 Q_DECL_EVENT_COMMON(QFileOpenEvent)
866 explicit QFileOpenEvent(
const QString &file);
867 explicit QFileOpenEvent(
const QUrl &url);
869 inline QString file()
const {
return m_file; }
870 QUrl url()
const {
return m_url; }
871#if QT_DEPRECATED_SINCE(6
, 6
)
872 QT_DEPRECATED_VERSION_X_6_6(
"Interpret the string returned by file()")
873 bool openFile(QFile &file, QIODevice::OpenMode flags)
const;
883 Q_DECL_EVENT_COMMON(QToolBarChangeEvent)
885 explicit QToolBarChangeEvent(
bool t);
887 inline bool toggle()
const {
return m_toggle; }
893#if QT_CONFIG(shortcut)
894class Q_GUI_EXPORT QShortcutEvent :
public QEvent
896 Q_DECL_EVENT_COMMON(QShortcutEvent)
899 QShortcutEvent(
const QKeySequence &key,
int id,
bool ambiguous =
false);
900 QShortcutEvent(
const QKeySequence &key,
const QShortcut *shortcut =
nullptr,
bool ambiguous =
false);
902 inline const QKeySequence &key()
const {
return m_sequence; }
904 inline int shortcutId()
const {
return m_shortcutId; }
905 inline bool isAmbiguous()
const {
return m_ambiguous; }
907 QKeySequence m_sequence;
915 Q_DECL_EVENT_COMMON(QWindowStateChangeEvent)
917 explicit QWindowStateChangeEvent(Qt::WindowStates oldState,
bool isOverride =
false);
919 inline Qt::WindowStates oldState()
const {
return m_oldStates; }
920 bool isOverride()
const;
923 Qt::WindowStates m_oldStates;
927#ifndef QT_NO_DEBUG_STREAM
929Q_GUI_EXPORT
QDebug operator<<(QDebug,
const QEvent *);
934 Q_DECL_EVENT_COMMON(QTouchEvent)
936 using TouchPoint = QEventPoint;
938 explicit QTouchEvent(QEvent::Type eventType,
939 const QPointingDevice *device =
nullptr,
940 Qt::KeyboardModifiers modifiers = Qt::NoModifier,
941 const QList<QEventPoint> &touchPoints = {});
942#if QT_DEPRECATED_SINCE(6
, 0
)
943 QT_DEPRECATED_VERSION_X_6_0(
"Use another constructor")
944 explicit QTouchEvent(QEvent::Type eventType,
945 const QPointingDevice *device,
946 Qt::KeyboardModifiers modifiers,
947 QEventPoint::States touchPointStates,
948 const QList<QEventPoint> &touchPoints = {});
951 inline QObject *target()
const {
return m_target; }
952 inline QEventPoint::States touchPointStates()
const {
return m_touchPointStates; }
953#if QT_DEPRECATED_SINCE(6
, 0
)
954 QT_DEPRECATED_VERSION_X_6_0(
"Use points()")
955 const QList<QEventPoint> &touchPoints()
const {
return points(); }
957 bool isBeginEvent()
const override;
958 bool isUpdateEvent()
const override;
959 bool isEndEvent()
const override;
962 friend class QMutableTouchEvent;
963 QObject *m_target =
nullptr;
964 QEventPoint::States m_touchPointStates = QEventPoint::State::Unknown;
965 quint32 m_reserved : 24;
970 Q_DECL_EVENT_COMMON(QScrollPrepareEvent)
972 explicit QScrollPrepareEvent(
const QPointF &startPos);
974 QPointF startPos()
const {
return m_startPos; }
976 QSizeF viewportSize()
const {
return m_viewportSize; }
977 QRectF contentPosRange()
const {
return m_contentPosRange; }
978 QPointF contentPos()
const {
return m_contentPos; }
980 void setViewportSize(
const QSizeF &size);
981 void setContentPosRange(
const QRectF &rect);
982 void setContentPos(
const QPointF &pos);
985 QRectF m_contentPosRange;
986 QSizeF m_viewportSize;
988 QPointF m_contentPos;
994 Q_DECL_EVENT_COMMON(QScrollEvent)
1003 QScrollEvent(
const QPointF &contentPos,
const QPointF &overshoot, ScrollState scrollState);
1005 QPointF contentPos()
const {
return m_contentPos; }
1006 QPointF overshootDistance()
const {
return m_overshoot; }
1007 ScrollState scrollState()
const {
return m_state; }
1010 QPointF m_contentPos;
1011 QPointF m_overshoot;
1012 QScrollEvent::ScrollState m_state;
1017 Q_DECL_EVENT_COMMON(QScreenOrientationChangeEvent)
1019 QScreenOrientationChangeEvent(QScreen *screen, Qt::ScreenOrientation orientation);
1021 QScreen *screen()
const {
return m_screen; }
1022 Qt::ScreenOrientation orientation()
const {
return m_orientation; }
1026 Qt::ScreenOrientation m_orientation;
1031 Q_DECL_EVENT_COMMON(QApplicationStateChangeEvent)
1033 explicit QApplicationStateChangeEvent(Qt::ApplicationState state);
1035 Qt::ApplicationState applicationState()
const {
return m_applicationState; }
1038 Qt::ApplicationState m_applicationState;
1043 Q_DECL_EVENT_COMMON(QChildWindowEvent)
1045 explicit QChildWindowEvent(Type type, QWindow *childWindow);
1046 QWindow *child()
const {
return c; }
The QCloseEvent class contains parameters that describe a close event.
The QExposeEvent class contains event parameters for expose events. \inmodule QtGui.
The QFileOpenEvent class provides an event that will be sent when there is a request to open a file o...
The QFocusEvent class contains event parameters for widget focus events.
The QHelpEvent class provides an event that is used to request helpful information about a particular...
The QHideEvent class provides an event which is sent after a widget is hidden.
QList< QIBusAttribute > attributes
QList< QInputMethodEvent::Attribute > imAttributes() const
void deserializeFrom(const QDBusArgument &argument)
void serializeTo(QDBusArgument &argument) const
QTextCharFormat format() const
void deserializeFrom(const QDBusArgument &argument)
void serializeTo(QDBusArgument &argument) const
void serializeTo(QDBusArgument &argument) const
void deserializeFrom(const QDBusArgument &argument)
QIBusFilterEventWatcher(const QDBusPendingCall &call, QObject *parent=nullptr, QWindow *window=nullptr, const Qt::KeyboardModifiers modifiers={ }, const QVariantList arguments=QVariantList())
const QVariantList arguments() const
const Qt::KeyboardModifiers modifiers() const
~QIBusFilterEventWatcher()
void invokeAction(QInputMethod::Action a, int x) override
Called when the word currently being composed in the input item is tapped by the user.
void busUnregistered(const QString &str)
bool filterEvent(const QEvent *event) override
This function can be reimplemented to filter input events.
void globalEngineChanged(const QString &engine_name)
void filterEventFinished(QDBusPendingCallWatcher *call)
void update(Qt::InputMethodQueries) override
Notification on editor updates.
bool hasCapability(Capability capability) const override
Returns whether the implementation supports capability.
void socketChanged(const QString &str)
QLocale locale() const override
bool isValid() const override
Returns input context validity.
void forwardKeyEvent(uint keyval, uint keycode, uint state)
void setFocusObject(QObject *object) override
This virtual method gets called to notify updated focus to object.
void updatePreeditText(const QDBusVariant &text, uint cursor_pos, bool visible)
~QIBusPlatformInputContext()
void surroundingTextRequired()
void updatePreeditTextWithMode(const QDBusVariant &text, uint cursor_pos, bool visible, uint mode)
void reset() override
Method to be called when input method needs to be reset.
void busRegistered(const QString &str)
void deleteSurroundingText(int offset, uint n_chars)
QIBusPropTypeClientCommitPreedit()
QIBusPropTypeClientCommitPreedit(bool inClientCommitPreedit)
void deserializeFrom(const QDBusArgument &argument)
void serializeTo(QDBusArgument &argument) const
QIBusPropTypeContentType()
void serializeTo(QDBusArgument &argument) const
QIBusPropTypeContentType(unsigned int inPurpose, unsigned int inHint)
void deserializeFrom(const QDBusArgument &argument)
void deserializeFrom(const QDBusArgument &argument)
QIBusAttributeList attributes
void serializeTo(QDBusArgument &argument) const
The QIconDragEvent class indicates that a main icon drag has begun.
The QKeyEvent class describes a key event.
The QMoveEvent class contains event parameters for move events.
The QPaintEvent class contains event parameters for paint events.
A base class for pointer events.
The QResizeEvent class contains event parameters for resize events.
The QShowEvent class provides an event that is sent when a widget is shown.
A base class for pointer events containing a single point, such as mouse events.
The QStatusTipEvent class provides an event that is used to show messages in a status bar.
The QTouchEvent class contains parameters that describe a touch event.
Combined button and popup list for selecting options.
Q_CORE_EXPORT QDebug operator<<(QDebug debug, QDir::Filters filters)
Q_DECLARE_TYPEINFO(QIBusText, Q_RELOCATABLE_TYPE)
const QDBusArgument & operator>>(const QDBusArgument &argument, QIBusPropTypeClientCommitPreedit &data)
Q_DECLARE_TYPEINFO(QIBusAttributeList, Q_RELOCATABLE_TYPE)
const QDBusArgument & operator>>(const QDBusArgument &argument, QIBusPropTypeContentType &data)
QDBusArgument & operator<<(QDBusArgument &argument, const QIBusEngineDesc &desc)
Q_DECLARE_TYPEINFO(QIBusPropTypeClientCommitPreedit, Q_RELOCATABLE_TYPE)
const QDBusArgument & operator>>(const QDBusArgument &argument, QIBusEngineDesc &desc)
QDBusArgument & operator<<(QDBusArgument &argument, const QIBusAttributeList &attributeList)
QDBusArgument & operator<<(QDBusArgument &argument, const QIBusText &text)
Q_DECLARE_TYPEINFO(QIBusAttribute, Q_RELOCATABLE_TYPE)
Q_DECLARE_TYPEINFO(QIBusEngineDesc, Q_RELOCATABLE_TYPE)
Q_DECLARE_TYPEINFO(QIBusPropTypeContentType, Q_RELOCATABLE_TYPE)
QDBusArgument & operator<<(QDBusArgument &argument, const QIBusPropTypeClientCommitPreedit &data)
const QDBusArgument & operator>>(const QDBusArgument &argument, QIBusText &text)
QDBusArgument & operator<<(QDBusArgument &argument, const QIBusPropTypeContentType &data)
QDBusArgument & operator<<(QDBusArgument &argument, const QIBusAttribute &attribute)
const QDBusArgument & operator>>(const QDBusArgument &argument, QIBusAttribute &attribute)
const QDBusArgument & operator>>(const QDBusArgument &argument, QIBusAttributeList &attributeList)