Diffstat (limited to 'noncore/applets/zkbapplet/keyzcfg/zkbcfg.cpp') (more/less context) (show whitespace changes)
-rw-r--r-- | noncore/applets/zkbapplet/keyzcfg/zkbcfg.cpp | 19 |
1 files changed, 14 insertions, 5 deletions
diff --git a/noncore/applets/zkbapplet/keyzcfg/zkbcfg.cpp b/noncore/applets/zkbapplet/keyzcfg/zkbcfg.cpp index 24bd897..6f3b9bf 100644 --- a/noncore/applets/zkbapplet/keyzcfg/zkbcfg.cpp +++ b/noncore/applets/zkbapplet/keyzcfg/zkbcfg.cpp | |||
@@ -2,6 +2,7 @@ | |||
2 | 2 | ||
3 | /* OPIE */ | 3 | /* OPIE */ |
4 | #include <opie2/odebug.h> | 4 | #include <opie2/odebug.h> |
5 | #include <opie2/oapplication.h> | ||
5 | using namespace Opie::Core; | 6 | using namespace Opie::Core; |
6 | 7 | ||
7 | /* QT */ | 8 | /* QT */ |
@@ -16,16 +17,23 @@ ZkbConfig::~ZkbConfig() { | |||
16 | 17 | ||
17 | bool ZkbConfig::load(const QString& file, Keymap& keymap, const QString& prefix) { | 18 | bool ZkbConfig::load(const QString& file, Keymap& keymap, const QString& prefix) { |
18 | bool ret; | 19 | bool ret; |
19 | QFile f(path+"/"+file); | 20 | QFile *f = new QFile(path+"/"+file); |
20 | QFileInfo fi(f); | 21 | QFileInfo fi(*f); |
21 | 22 | ||
22 | odebug << "start loading file=" << file.utf8() << "\n" << oendl; | 23 | /* Try */ |
24 | if ( !fi.exists() && !path.contains( QPEApplication::qpeDir()) ) { | ||
25 | delete f; | ||
26 | f = new QFile( QPEApplication::qpeDir() + "share/zkb/" + file ); | ||
27 | fi = QFileInfo( *f ); | ||
28 | } | ||
29 | |||
30 | odebug << "start loading file=" << file << "\n" << oendl; | ||
23 | if (includedFiles.find(fi.absFilePath()) != includedFiles.end()) { | 31 | if (includedFiles.find(fi.absFilePath()) != includedFiles.end()) { |
24 | return false; | 32 | return false; |
25 | } | 33 | } |
26 | 34 | ||
27 | includedFiles.insert(fi.absFilePath(), 1); | 35 | includedFiles.insert(fi.absFilePath(), 1); |
28 | QXmlInputSource is(f); | 36 | QXmlInputSource is(*f); |
29 | QXmlSimpleReader reader; | 37 | QXmlSimpleReader reader; |
30 | ZkbHandler h(*this, keymap, prefix); | 38 | ZkbHandler h(*this, keymap, prefix); |
31 | 39 | ||
@@ -34,7 +42,8 @@ bool ZkbConfig::load(const QString& file, Keymap& keymap, const QString& prefix) | |||
34 | ret = reader.parse(is); | 42 | ret = reader.parse(is); |
35 | includedFiles.remove(fi.absFilePath()); | 43 | includedFiles.remove(fi.absFilePath()); |
36 | 44 | ||
37 | odebug << "end loading file=" << file.utf8() << ": status=" << err.utf8() << oendl; | 45 | odebug << "end loading file=" << file << ": status=" << err << oendl; |
46 | delete f; | ||
38 | return ret; | 47 | return ret; |
39 | } | 48 | } |
40 | 49 | ||