summaryrefslogtreecommitdiffstats
path: root/src/gui/kernel/qkeymapper_p.h
diff options
context:
space:
mode:
authorTor Arne Vestbø <tor.arne.vestbo@qt.io>2020-07-17 23:31:41 +0200
committerTor Arne Vestbø <tor.arne.vestbo@qt.io>2020-07-20 17:47:42 +0200
commit5b1befa31a9851397d56363f058568094d11f5f3 (patch)
treef1be4f68da64a59d6502e9e45488436417c68e5d /src/gui/kernel/qkeymapper_p.h
parent9166abcd997f57625c17db8e8734988ff303217e (diff)
Add QEvdevKeyMapper platform interface
Task-number: QTBUG-84220 Change-Id: I4f3a54415c5509b4bde486b54c56b0e05976bac6 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Diffstat (limited to 'src/gui/kernel/qkeymapper_p.h')
-rw-r--r--src/gui/kernel/qkeymapper_p.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/gui/kernel/qkeymapper_p.h b/src/gui/kernel/qkeymapper_p.h
index cb77deb6ba..9abdbbb732 100644
--- a/src/gui/kernel/qkeymapper_p.h
+++ b/src/gui/kernel/qkeymapper_p.h
@@ -72,6 +72,9 @@ public:
static void changeKeyboard();
static QList<int> possibleKeys(QKeyEvent *e);
+ template <typename T>
+ T *platformInterface() const;
+
private:
friend QKeyMapperPrivate *qt_keymapper_private();
Q_DECLARE_PRIVATE(QKeyMapper)
@@ -96,6 +99,22 @@ public:
QKeyMapperPrivate *qt_keymapper_private(); // from qkeymapper.cpp
+// ----------------- QPlatformInterface -----------------
+
+namespace QPlatformInterface::Private {
+
+#if QT_CONFIG(evdev)
+struct Q_GUI_EXPORT QEvdevKeyMapper
+{
+ QT_DECLARE_PLATFORM_INTERFACE(QEvdevKeyMapper)
+ virtual void loadKeymap(const QString &filename) = 0;
+ virtual void switchLang() = 0;
+};
+#endif
+
+} // QPlatformInterface::Private
+
+
QT_END_NAMESPACE
#endif // QKEYMAPPER_P_H