diff options
author | Laszlo Agocs <laszlo.agocs@digia.com> | 2013-09-14 20:31:54 +0200 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-10-04 21:15:15 +0200 |
commit | 0a92295ca829a62125c9f122fd3daec991993855 (patch) | |
tree | c2be1af86b694be234fd3c470a61243b7d5d388d /src/gui/kernel/qwindowsysteminterface_p.h | |
parent | 69e78b9a0764ea5ec56689f09311741d4fc5870e (diff) |
Relay mouse event synthesization information
Make platform plugins, like the windows one, able to indicate
if a mouse event is synthesized from a touch event by the OS.
This will be valuable information for the Quick2 event handlers.
No new member variables are added to QMouseEvent. Instead, the enum
value is encoded in the caps member, there are plenty of bits
available in it.
This introduces Qt::MouseEventSource and QMouseEvent::source() as
public APIs.
Change-Id: If087a0bafb33a6cd7891bd07b84871358f6aba69
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Diffstat (limited to 'src/gui/kernel/qwindowsysteminterface_p.h')
-rw-r--r-- | src/gui/kernel/qwindowsysteminterface_p.h | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/src/gui/kernel/qwindowsysteminterface_p.h b/src/gui/kernel/qwindowsysteminterface_p.h index 46479701cc..a4221b0e76 100644 --- a/src/gui/kernel/qwindowsysteminterface_p.h +++ b/src/gui/kernel/qwindowsysteminterface_p.h @@ -205,14 +205,17 @@ public: class MouseEvent : public InputEvent { public: MouseEvent(QWindow * w, ulong time, const QPointF & local, const QPointF & global, - Qt::MouseButtons b, Qt::KeyboardModifiers mods) - : InputEvent(w, time, Mouse, mods), localPos(local), globalPos(global), buttons(b) { } + Qt::MouseButtons b, Qt::KeyboardModifiers mods, + Qt::MouseEventSource src = Qt::MouseEventNotSynthesized) + : InputEvent(w, time, Mouse, mods), localPos(local), globalPos(global), buttons(b), source(src) { } MouseEvent(QWindow * w, ulong time, EventType t, const QPointF & local, const QPointF & global, - Qt::MouseButtons b, Qt::KeyboardModifiers mods) - : InputEvent(w, time, t, mods), localPos(local), globalPos(global), buttons(b) { } + Qt::MouseButtons b, Qt::KeyboardModifiers mods, + Qt::MouseEventSource src = Qt::MouseEventNotSynthesized) + : InputEvent(w, time, t, mods), localPos(local), globalPos(global), buttons(b), source(src) { } QPointF localPos; QPointF globalPos; Qt::MouseButtons buttons; + Qt::MouseEventSource source; }; class WheelEvent : public InputEvent { |