summaryrefslogtreecommitdiffstats
path: root/src/gui/statemachine/qbasicmouseeventtransition.cpp
diff options
context:
space:
mode:
authorKent Hansen <khansen@trolltech.com>2009-04-29 08:54:10 (GMT)
committerKent Hansen <khansen@trolltech.com>2009-04-29 08:54:10 (GMT)
commit58b74319a639cb471cdec92c0e8a054fc6d4d5f5 (patch)
tree6d6bd21ff8c53636cc51eb8a1d17eb2fd00ebed9 /src/gui/statemachine/qbasicmouseeventtransition.cpp
parentf39a905bc75e7ce95294f3584ea8a400ab383861 (diff)
downloadQt-58b74319a639cb471cdec92c0e8a054fc6d4d5f5.zip
Qt-58b74319a639cb471cdec92c0e8a054fc6d4d5f5.tar.gz
Qt-58b74319a639cb471cdec92c0e8a054fc6d4d5f5.tar.bz2
modifiers --> modifiersMask
Result of API review. A == comparison of the modifiers is not useful. The common case is you want to test if one or more modifiers are set, i.e. a mask check.
Diffstat (limited to 'src/gui/statemachine/qbasicmouseeventtransition.cpp')
-rw-r--r--src/gui/statemachine/qbasicmouseeventtransition.cpp22
1 files changed, 22 insertions, 0 deletions
diff --git a/src/gui/statemachine/qbasicmouseeventtransition.cpp b/src/gui/statemachine/qbasicmouseeventtransition.cpp
index b7583f8..83254dc 100644
--- a/src/gui/statemachine/qbasicmouseeventtransition.cpp
+++ b/src/gui/statemachine/qbasicmouseeventtransition.cpp
@@ -39,6 +39,7 @@ public:
QEvent::Type eventType;
Qt::MouseButton button;
+ Qt::KeyboardModifiers modifiersMask;
QPainterPath path;
};
@@ -118,6 +119,26 @@ void QBasicMouseEventTransition::setButton(Qt::MouseButton button)
}
/*!
+ Returns the keyboard modifiers mask that this mouse event transition checks
+ for.
+*/
+Qt::KeyboardModifiers QBasicMouseEventTransition::modifiersMask() const
+{
+ Q_D(const QBasicMouseEventTransition);
+ return d->modifiersMask;
+}
+
+/*!
+ Sets the keyboard modifiers mask that this mouse event transition will check
+ for.
+*/
+void QBasicMouseEventTransition::setModifiersMask(Qt::KeyboardModifiers modifiersMask)
+{
+ Q_D(QBasicMouseEventTransition);
+ d->modifiersMask = modifiersMask;
+}
+
+/*!
Returns the path for this mouse event transition.
*/
QPainterPath QBasicMouseEventTransition::path() const
@@ -144,6 +165,7 @@ bool QBasicMouseEventTransition::eventTest(QEvent *event) const
if (event->type() == d->eventType) {
QMouseEvent *me = static_cast<QMouseEvent*>(event);
return (me->button() == d->button)
+ && ((me->modifiers() & d->modifiersMask) == d->modifiersMask)
&& (d->path.isEmpty() || d->path.contains(me->pos()));
}
return false;