summaryrefslogtreecommitdiff
path: root/noncore/applets/keyhelper/keyhelperconf/KeyNames.h
Unidiff
Diffstat (limited to 'noncore/applets/keyhelper/keyhelperconf/KeyNames.h') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/applets/keyhelper/keyhelperconf/KeyNames.h49
1 files changed, 49 insertions, 0 deletions
diff --git a/noncore/applets/keyhelper/keyhelperconf/KeyNames.h b/noncore/applets/keyhelper/keyhelperconf/KeyNames.h
new file mode 100644
index 0000000..edd7dc5
--- a/dev/null
+++ b/noncore/applets/keyhelper/keyhelperconf/KeyNames.h
@@ -0,0 +1,49 @@
1#ifndef _KEY_NAMES_H_
2#define _KEY_NAMES_H_
3
4#include <qstring.h>
5#include <qmap.h>
6#include <qnamespace.h>
7
8class KeyNames
9{
10public:
11 static const QString& getName(int code){
12 if(namemap.isEmpty()) setNameMap();
13 if(namemap.contains(code)){
14 return(namemap[code]);
15 } else {
16 return(QString::null);
17 }
18 }
19 static void clearName(){
20 namemap.clear();
21 }
22 static int getCode(const QString& s){
23 if(codemap.isEmpty()) setCodeMap();
24 if(codemap.contains(s)){
25 return(codemap[s]);
26 } else {
27 return(0);
28 }
29 }
30 static void setCode(const QString& s, int code){
31 if(codemap.contains(s) == false){
32 codemap.insert(s, code);
33 }
34 }
35 static void clearCode(){
36 codemap.clear();
37 }
38 static void reset(){
39 clearCode();
40 }
41private:
42 static QMap<QString, int> codemap;
43 static QMap<int, QString> namemap;
44
45 static void setCodeMap();
46 static void setNameMap();
47};
48
49#endif /* _KEY_NAMES_H_ */