Add debug operator for QTouchDevice.

Produces:
QTouchDevice("", type=TouchScreen, capabilities=Position|Area|NormalizedPosition|MouseEmulation, maximumTouchPoints=10)

Remove operator from manual test.

Change-Id: I6b792665031902d5f822c80807a400a334c27526
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
bb10
Friedemann Kleint 2015-05-21 13:26:46 +02:00
parent 97e75b2763
commit b0a1a134c2
3 changed files with 28 additions and 19 deletions

View File

@ -37,6 +37,8 @@
#include <QMutex>
#include <QCoreApplication>
#include <private/qdebug_p.h>
QT_BEGIN_NAMESPACE
/*!
@ -239,4 +241,25 @@ void QTouchDevicePrivate::registerDevice(QTouchDevice *dev)
deviceList()->append(dev);
}
#ifndef QT_NO_DEBUG_STREAM
QDebug operator<<(QDebug debug, const QTouchDevice *device)
{
QDebugStateSaver saver(debug);
debug.nospace();
debug.noquote();
debug << "QTouchDevice(";
if (device) {
debug << '"' << device->name() << "\", type=";
QtDebugUtils::formatQEnum(debug, device->type());
debug << ", capabilities=";
QtDebugUtils::formatQFlags(debug, device->capabilities());
debug << ", maximumTouchPoints=" << device->maximumTouchPoints();
} else {
debug << '0';
}
debug << ')';
return debug;
}
#endif // !QT_NO_DEBUG_STREAM
QT_END_NAMESPACE

View File

@ -38,7 +38,7 @@
QT_BEGIN_NAMESPACE
class QDebug;
class QTouchDevicePrivate;
class Q_GUI_EXPORT QTouchDevice
@ -84,6 +84,10 @@ private:
Q_DECLARE_OPERATORS_FOR_FLAGS(QTouchDevice::Capabilities)
#ifndef QT_NO_DEBUG_STREAM
Q_GUI_EXPORT QDebug operator<<(QDebug, const QTouchDevice *);
#endif
QT_END_NAMESPACE
#endif // QTOUCHDEVICE_H

View File

@ -47,24 +47,6 @@
#include <QDebug>
#include <QTextStream>
QDebug operator<<(QDebug debug, const QTouchDevice *d)
{
QDebugStateSaver saver(debug);
debug.nospace();
debug << "QTouchDevice(" << d->name() << ',';
switch (d->type()) {
case QTouchDevice::TouchScreen:
debug << "TouchScreen";
break;
case QTouchDevice::TouchPad:
debug << "TouchPad";
break;
}
debug << ", capabilities=" << d->capabilities()
<< ", maximumTouchPoints=" << d->maximumTouchPoints() << ')';
return debug;
}
typedef QVector<QEvent::Type> EventTypeVector;
class EventFilter : public QObject {