diff options
author | Laszlo Agocs <laszlo.p.agocs@nokia.com> | 2012-05-24 13:41:36 +0300 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2012-06-01 03:15:52 +0200 |
commit | 22ef98c0b11f3d2e48af6adce11d79c5d1cae194 (patch) | |
tree | f09b7cc0eb7fb7c59ce3d05e56ab0a515dc4ed8e | |
parent | dacc3f28521452fcdff3663a7d51cf2ff37311ff (diff) | |
download | qtbase-22ef98c0b11f3d2e48af6adce11d79c5d1cae194.tar.gz |
Migrate tslib to new plugin format
Also rename the binary and avoid crashes when tslib initialization
fails.
Change-Id: Ia7ccf7c997e1b1484bd475626ca16c9a9642466e
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
-rw-r--r-- | src/plugins/generic/tslib/main.cpp | 9 | ||||
-rw-r--r-- | src/plugins/generic/tslib/qtslib.cpp | 7 | ||||
-rw-r--r-- | src/plugins/generic/tslib/tslib.json | 3 | ||||
-rw-r--r-- | src/plugins/generic/tslib/tslib.pro | 4 |
4 files changed, 17 insertions, 6 deletions
diff --git a/src/plugins/generic/tslib/main.cpp b/src/plugins/generic/tslib/main.cpp index 1bbc618d6d..dc043138e9 100644 --- a/src/plugins/generic/tslib/main.cpp +++ b/src/plugins/generic/tslib/main.cpp @@ -46,6 +46,9 @@ QT_BEGIN_NAMESPACE class QTsLibPlugin : public QGenericPlugin { + Q_OBJECT + Q_PLUGIN_METADATA(IID "org.qt-project.Qt.QGenericPluginFactoryInterface" FILE "tslib.json") + public: QTsLibPlugin(); @@ -71,8 +74,8 @@ QObject* QTsLibPlugin::create(const QString &key, if (!key.compare(QLatin1String("Tslib"), Qt::CaseInsensitive) || !key.compare(QLatin1String("TslibRaw"), Qt::CaseInsensitive)) return new QTsLibMouseHandler(key, specification); return 0; - } - -Q_EXPORT_PLUGIN2(qtslibplugin, QTsLibPlugin) +} QT_END_NAMESPACE + +#include "main.moc" diff --git a/src/plugins/generic/tslib/qtslib.cpp b/src/plugins/generic/tslib/qtslib.cpp index 6fec309f9a..369b602c1a 100644 --- a/src/plugins/generic/tslib/qtslib.cpp +++ b/src/plugins/generic/tslib/qtslib.cpp @@ -68,13 +68,16 @@ QTsLibMouseHandler::QTsLibMouseHandler(const QString &key, if (specification.startsWith("/dev/")) device = specification.toLocal8Bit(); - m_dev = ts_open(device.constData(), 1); + m_dev = ts_open(device.constData(), 1); + if (!m_dev) { + qErrnoWarning(errno, "ts_open() failed"); + return; + } if (ts_config(m_dev)) { perror("Error configuring\n"); } - m_rawMode = !key.compare(QLatin1String("TslibRaw"), Qt::CaseInsensitive); int fd = ts_fd(m_dev); diff --git a/src/plugins/generic/tslib/tslib.json b/src/plugins/generic/tslib/tslib.json new file mode 100644 index 0000000000..53b6a9ec30 --- /dev/null +++ b/src/plugins/generic/tslib/tslib.json @@ -0,0 +1,3 @@ +{ + "Keys": [ "Tslib", "TslibRaw" ] +} diff --git a/src/plugins/generic/tslib/tslib.pro b/src/plugins/generic/tslib/tslib.pro index d9726b6d3a..6b46798d84 100644 --- a/src/plugins/generic/tslib/tslib.pro +++ b/src/plugins/generic/tslib/tslib.pro @@ -1,4 +1,4 @@ -TARGET = qlinuxinputplugin +TARGET = qtslibplugin load(qt_plugin) DESTDIR = $$QT.gui.plugins/generic @@ -11,3 +11,5 @@ SOURCES = main.cpp \ qtslib.cpp LIBS += -lts + +OTHER_FILES += tslib.json |