statemachine/qbasicmouseeventtransition.cpp

Source codeSwitch to Preprocessed file
LineSource CodeCoverage
1/**************************************************************************** -
2** -
3** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). -
4** Contact: http://www.qt-project.org/legal -
5** -
6** This file is part of the QtGui module of the Qt Toolkit. -
7** -
8** $QT_BEGIN_LICENSE:LGPL$ -
9** Commercial License Usage -
10** Licensees holding valid commercial Qt licenses may use this file in -
11** accordance with the commercial license agreement provided with the -
12** Software or, alternatively, in accordance with the terms contained in -
13** a written agreement between you and Digia. For licensing terms and -
14** conditions see http://qt.digia.com/licensing. For further information -
15** use the contact form at http://qt.digia.com/contact-us. -
16** -
17** GNU Lesser General Public License Usage -
18** Alternatively, this file may be used under the terms of the GNU Lesser -
19** General Public License version 2.1 as published by the Free Software -
20** Foundation and appearing in the file LICENSE.LGPL included in the -
21** packaging of this file. Please review the following information to -
22** ensure the GNU Lesser General Public License version 2.1 requirements -
23** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -
24** -
25** In addition, as a special exception, Digia gives you certain additional -
26** rights. These rights are described in the Digia Qt LGPL Exception -
27** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -
28** -
29** GNU General Public License Usage -
30** Alternatively, this file may be used under the terms of the GNU -
31** General Public License version 3.0 as published by the Free Software -
32** Foundation and appearing in the file LICENSE.GPL included in the -
33** packaging of this file. Please review the following information to -
34** ensure the GNU General Public License version 3.0 requirements will be -
35** met: http://www.gnu.org/copyleft/gpl.html. -
36** -
37** -
38** $QT_END_LICENSE$ -
39** -
40****************************************************************************/ -
41 -
42#include "qbasicmouseeventtransition_p.h" -
43 -
44#ifndef QT_NO_STATEMACHINE -
45 -
46#include <QtGui/qevent.h> -
47#include <QtGui/qpainterpath.h> -
48#include <qdebug.h> -
49#include <private/qabstracttransition_p.h> -
50 -
51QT_BEGIN_NAMESPACE -
52 -
53/*! -
54 \internal -
55 \class QBasicMouseEventTransition -
56 \since 4.6 -
57 \ingroup statemachine -
58 -
59 \brief The QBasicMouseEventTransition class provides a transition for Qt mouse events. -
60*/ -
61 -
62class QBasicMouseEventTransitionPrivate : public QAbstractTransitionPrivate -
63{ -
64 Q_DECLARE_PUBLIC(QBasicMouseEventTransition) -
65public: -
66 QBasicMouseEventTransitionPrivate(); -
67 -
68 static QBasicMouseEventTransitionPrivate *get(QBasicMouseEventTransition *q); -
69 -
70 QEvent::Type eventType; -
71 Qt::MouseButton button; -
72 Qt::KeyboardModifiers modifierMask; -
73 QPainterPath path; -
74}; -
75 -
76QBasicMouseEventTransitionPrivate::QBasicMouseEventTransitionPrivate() -
77{ -
78 eventType = QEvent::None;
executed (the execution status of this line is deduced): eventType = QEvent::None;
-
79 button = Qt::NoButton;
executed (the execution status of this line is deduced): button = Qt::NoButton;
-
80}
executed: }
Execution Count:2
2
81 -
82QBasicMouseEventTransitionPrivate *QBasicMouseEventTransitionPrivate::get(QBasicMouseEventTransition *q) -
83{ -
84 return q->d_func();
never executed: return q->d_func();
0
85} -
86 -
87/*! -
88 Constructs a new mouse event transition with the given \a sourceState. -
89*/ -
90QBasicMouseEventTransition::QBasicMouseEventTransition(QState *sourceState) -
91 : QAbstractTransition(*new QBasicMouseEventTransitionPrivate, sourceState) -
92{ -
93}
executed: }
Execution Count:1
1
94 -
95/*! -
96 Constructs a new mouse event transition for events of the given \a type. -
97*/ -
98QBasicMouseEventTransition::QBasicMouseEventTransition(QEvent::Type type, -
99 Qt::MouseButton button, -
100 QState *sourceState) -
101 : QAbstractTransition(*new QBasicMouseEventTransitionPrivate, sourceState) -
102{ -
103 Q_D(QBasicMouseEventTransition);
executed (the execution status of this line is deduced): QBasicMouseEventTransitionPrivate * const d = d_func();
-
104 d->eventType = type;
executed (the execution status of this line is deduced): d->eventType = type;
-
105 d->button = button;
executed (the execution status of this line is deduced): d->button = button;
-
106}
executed: }
Execution Count:1
1
107 -
108/*! -
109 Destroys this mouse event transition. -
110*/ -
111QBasicMouseEventTransition::~QBasicMouseEventTransition() -
112{ -
113} -
114 -
115/*! -
116 Returns the event type that this mouse event transition is associated with. -
117*/ -
118QEvent::Type QBasicMouseEventTransition::eventType() const -
119{ -
120 Q_D(const QBasicMouseEventTransition);
never executed (the execution status of this line is deduced): const QBasicMouseEventTransitionPrivate * const d = d_func();
-
121 return d->eventType;
never executed: return d->eventType;
0
122} -
123 -
124/*! -
125 Sets the event \a type that this mouse event transition is associated with. -
126*/ -
127void QBasicMouseEventTransition::setEventType(QEvent::Type type) -
128{ -
129 Q_D(QBasicMouseEventTransition);
executed (the execution status of this line is deduced): QBasicMouseEventTransitionPrivate * const d = d_func();
-
130 d->eventType = type;
executed (the execution status of this line is deduced): d->eventType = type;
-
131}
executed: }
Execution Count:5
5
132 -
133/*! -
134 Returns the button that this mouse event transition checks for. -
135*/ -
136Qt::MouseButton QBasicMouseEventTransition::button() const -
137{ -
138 Q_D(const QBasicMouseEventTransition);
executed (the execution status of this line is deduced): const QBasicMouseEventTransitionPrivate * const d = d_func();
-
139 return d->button;
executed: return d->button;
Execution Count:2
2
140} -
141 -
142/*! -
143 Sets the button that this mouse event transition will check for. -
144*/ -
145void QBasicMouseEventTransition::setButton(Qt::MouseButton button) -
146{ -
147 Q_D(QBasicMouseEventTransition);
executed (the execution status of this line is deduced): QBasicMouseEventTransitionPrivate * const d = d_func();
-
148 d->button = button;
executed (the execution status of this line is deduced): d->button = button;
-
149}
executed: }
Execution Count:1
1
150 -
151/*! -
152 Returns the keyboard modifier mask that this mouse event transition checks -
153 for. -
154*/ -
155Qt::KeyboardModifiers QBasicMouseEventTransition::modifierMask() const -
156{ -
157 Q_D(const QBasicMouseEventTransition);
never executed (the execution status of this line is deduced): const QBasicMouseEventTransitionPrivate * const d = d_func();
-
158 return d->modifierMask;
never executed: return d->modifierMask;
0
159} -
160 -
161/*! -
162 Sets the keyboard modifier mask that this mouse event transition will check -
163 for. -
164*/ -
165void QBasicMouseEventTransition::setModifierMask(Qt::KeyboardModifiers modifierMask) -
166{ -
167 Q_D(QBasicMouseEventTransition);
never executed (the execution status of this line is deduced): QBasicMouseEventTransitionPrivate * const d = d_func();
-
168 d->modifierMask = modifierMask;
never executed (the execution status of this line is deduced): d->modifierMask = modifierMask;
-
169}
never executed: }
0
170 -
171/*! -
172 Returns the hit test path for this mouse event transition. -
173*/ -
174QPainterPath QBasicMouseEventTransition::hitTestPath() const -
175{ -
176 Q_D(const QBasicMouseEventTransition);
never executed (the execution status of this line is deduced): const QBasicMouseEventTransitionPrivate * const d = d_func();
-
177 return d->path;
never executed: return d->path;
0
178} -
179 -
180/*! -
181 Sets the hit test path for this mouse event transition. -
182*/ -
183void QBasicMouseEventTransition::setHitTestPath(const QPainterPath &path) -
184{ -
185 Q_D(QBasicMouseEventTransition);
never executed (the execution status of this line is deduced): QBasicMouseEventTransitionPrivate * const d = d_func();
-
186 d->path = path;
never executed (the execution status of this line is deduced): d->path = path;
-
187}
never executed: }
0
188 -
189/*! -
190 \reimp -
191*/ -
192bool QBasicMouseEventTransition::eventTest(QEvent *event) -
193{ -
194 Q_D(const QBasicMouseEventTransition);
executed (the execution status of this line is deduced): const QBasicMouseEventTransitionPrivate * const d = d_func();
-
195 if (event->type() == d->eventType) {
partially evaluated: event->type() == d->eventType
TRUEFALSE
yes
Evaluation Count:5
no
Evaluation Count:0
0-5
196 QMouseEvent *me = static_cast<QMouseEvent*>(event);
executed (the execution status of this line is deduced): QMouseEvent *me = static_cast<QMouseEvent*>(event);
-
197 return (me->button() == d->button)
executed: return (me->button() == d->button) && ((me->modifiers() & d->modifierMask) == d->modifierMask) && (d->path.isEmpty() || d->path.contains(me->pos()));
Execution Count:5
5
198 && ((me->modifiers() & d->modifierMask) == d->modifierMask)
executed: return (me->button() == d->button) && ((me->modifiers() & d->modifierMask) == d->modifierMask) && (d->path.isEmpty() || d->path.contains(me->pos()));
Execution Count:5
5
199 && (d->path.isEmpty() || d->path.contains(me->pos()));
executed: return (me->button() == d->button) && ((me->modifiers() & d->modifierMask) == d->modifierMask) && (d->path.isEmpty() || d->path.contains(me->pos()));
Execution Count:5
5
200 } -
201 return false;
never executed: return false;
0
202} -
203 -
204/*! -
205 \reimp -
206*/ -
207void QBasicMouseEventTransition::onTransition(QEvent *) -
208{ -
209} -
210 -
211QT_END_NAMESPACE -
212 -
213#endif //QT_NO_STATEMACHINE -
214 -
Source codeSwitch to Preprocessed file

Generated by Squish Coco Non-Commercial