summaryrefslogtreecommitdiffstats
path: root/src/gui/kernel/qkeymapper_p.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/gui/kernel/qkeymapper_p.h')
-rw-r--r--src/gui/kernel/qkeymapper_p.h16
1 files changed, 14 insertions, 2 deletions
diff --git a/src/gui/kernel/qkeymapper_p.h b/src/gui/kernel/qkeymapper_p.h
index 09c36c88..706ee23 100644
--- a/src/gui/kernel/qkeymapper_p.h
+++ b/src/gui/kernel/qkeymapper_p.h
@@ -137,12 +137,21 @@ struct QXCoreDesc {
KeySym lock_meaning;
};
+#elif defined(Q_OS_SYMBIAN)
+#include <e32keys.h>
+class KeyMapping{
+public:
+ KeyMapping(TKeyCode aS60KeyCode, TStdScanCode aS60ScanCode, Qt::Key aQtKey) : s60KeyCode(aS60KeyCode), s60ScanCode(aS60ScanCode), qtKey(aQtKey) { };
+ TKeyCode s60KeyCode;
+ TStdScanCode s60ScanCode;
+ Qt::Key qtKey;
+};
#endif
struct KeyboardLayoutItem;
typedef struct __TISInputSource * TISInputSourceRef;
class QKeyEvent;
-class QKeyMapperPrivate : public QObjectPrivate
+class Q_GUI_EXPORT QKeyMapperPrivate : public QObjectPrivate
{
Q_DECLARE_PUBLIC(QKeyMapper)
public:
@@ -208,11 +217,14 @@ public:
#elif defined(Q_WS_QWS)
#elif defined(Q_OS_SYMBIAN)
private:
- QHash<TUint, int> s60ToQtKeyMap;
+ QList<KeyMapping> keyMapping;
void fillKeyMap();
public:
QString translateKeyEvent(int keySym, Qt::KeyboardModifiers modifiers);
int mapS60KeyToQt(TUint s60key);
+ int mapS60ScanCodesToQt(TUint s60key);
+ int mapQtToS60Key(int qtKey);
+ int mapQtToS60ScanCodes(int qtKey);
#endif
};