on 8cebdc7 help sign in
unity8/libs/UbuntuGestures/DebugHelpers.cpp
68 lines 2.0 kB history raw
1/*
2 * Copyright (C) 2014 Canonical, Ltd.
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation; version 3.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
17#include "DebugHelpers.h"
18#include <QTouchEvent>
20QString touchPointStateToString(Qt::TouchPointState state)
22 switch (state) {
23 case Qt::TouchPointPressed:
24 return QString("pressed");
25 case Qt::TouchPointMoved:
26 return QString("moved");
27 case Qt::TouchPointStationary:
28 return QString("stationary");
29 case Qt::TouchPointReleased:
30 return QString("released");
31 default:
32 return QString("INVALID_STATE");
33 }
36QString touchEventToString(const QTouchEvent *ev)
38 QString message;
40 switch (ev->type()) {
41 case QEvent::TouchBegin:
42 message.append("TouchBegin ");
43 break;
44 case QEvent::TouchUpdate:
45 message.append("TouchUpdate ");
46 break;
47 case QEvent::TouchEnd:
48 message.append("TouchEnd ");
49 break;
50 case QEvent::TouchCancel:
51 message.append("TouchCancel ");
52 break;
53 default:
54 message.append("INVALID_TOUCH_EVENT_TYPE ");
55 }
57 foreach(const QTouchEvent::TouchPoint& touchPoint, ev->touchPoints()) {
58 message.append(
59 QString("(id:%1, state:%2, scenePos:(%3,%4)) ")
60 .arg(touchPoint.id())
61 .arg(touchPointStateToString(touchPoint.state()))
62 .arg(touchPoint.scenePos().x())
63 .arg(touchPoint.scenePos().y())
64 );
65 }
67 return message;