author | simon <simon> | 2002-11-22 10:56:30 (UTC) |
---|---|---|
committer | simon <simon> | 2002-11-22 10:56:30 (UTC) |
commit | 480284c491e26427c630131a25e56f9ed1d129b2 (patch) (side-by-side diff) | |
tree | 3bdd60afe34e8c466fbea92dcf89fcab381b110d /inputmethods/dvorak | |
parent | 772c1321e4e95a415b9de700c3474f81f98b5482 (diff) | |
download | opie-480284c491e26427c630131a25e56f9ed1d129b2.zip opie-480284c491e26427c630131a25e56f9ed1d129b2.tar.gz opie-480284c491e26427c630131a25e56f9ed1d129b2.tar.bz2 |
- properly namespace the input methods. fixes symbols clashes at run-time
with names like 'Keyboard' or 'KeyboardConfig' . the qcom interface
objects are in an anonymous namespace now and the actual keyboard
implementations are in Dvorak, JumpX, etc. namespaces.
What's left is to solve the symbol clashes of the multiply compiled
pickboard classes. I'll leave that one (as part of the patch posted
yesterday) for another day for review. This part (namespacing) sounds like
a safe bet to me though, so comitting now. (got no comments anyway)
-rw-r--r-- | inputmethods/dvorak/dvorak.cpp | 2 | ||||
-rw-r--r-- | inputmethods/dvorak/dvorak.h | 4 | ||||
-rw-r--r-- | inputmethods/dvorak/dvorakimpl.cpp | 6 | ||||
-rw-r--r-- | inputmethods/dvorak/dvorakimpl.h | 13 |
4 files changed, 20 insertions, 5 deletions
diff --git a/inputmethods/dvorak/dvorak.cpp b/inputmethods/dvorak/dvorak.cpp index 29b5bd0..97afa0a 100644 --- a/inputmethods/dvorak/dvorak.cpp +++ b/inputmethods/dvorak/dvorak.cpp @@ -28,12 +28,14 @@ #include <qtimer.h> #include <ctype.h> #define USE_SMALL_BACKSPACE +using namespace Dvorak; + Keyboard::Keyboard(QWidget* parent, const char* name, WFlags f) : QFrame(parent, name, f), shift(FALSE), lock(FALSE), ctrl(FALSE), alt(FALSE), useLargeKeys(TRUE), useOptiKeys(0), pressedKey(-1), unicode(-1), qkeycode(0), modifiers(0) { // setPalette(QPalette(QColor(240,240,230))); // Beige! diff --git a/inputmethods/dvorak/dvorak.h b/inputmethods/dvorak/dvorak.h index 38ae338..216b5e5 100644 --- a/inputmethods/dvorak/dvorak.h +++ b/inputmethods/dvorak/dvorak.h @@ -20,12 +20,15 @@ #include <qframe.h> #include "../pickboard/pickboardcfg.h" #include "../pickboard/pickboardpicks.h" class QTimer; +namespace Dvorak +{ + class KeyboardConfig : public DictFilterConfig { public: KeyboardConfig(PickboardPicks* p) : DictFilterConfig(p), backspaces(0) { nrows = 1; } virtual void generateText(const QString &s); void decBackspaces() { if (backspaces) backspaces--; } @@ -98,6 +101,7 @@ private: int pressTid; bool pressed; QTimer *repeatTimer; }; +} // namespace Dvorak diff --git a/inputmethods/dvorak/dvorakimpl.cpp b/inputmethods/dvorak/dvorakimpl.cpp index 3c83464..8050ce1 100644 --- a/inputmethods/dvorak/dvorakimpl.cpp +++ b/inputmethods/dvorak/dvorakimpl.cpp @@ -20,13 +20,13 @@ #include <qapplication.h> #include <qpixmap.h> #include "dvorak.h" #include "dvorakimpl.h" /* XPM */ -static const char * kb_xpm[] = { +static const char * const kb_xpm[] = { "28 13 4 1", " c None", ". c #4C4C4C", "+ c #FFF7DD", "@ c #D6CFBA", " .......................... ", @@ -42,13 +42,13 @@ static const char * kb_xpm[] = { " .++++.++++++++++++++.++++. ", " .+@@@.+@@@@@@@@@@@@@.+@@@. ", " .......................... "}; /* XPM */ -static char * opti_xpm[] = { +static const char * const opti_xpm[] = { "28 13 4 1", " c None", ". c #4C4C4C", "+ c #FFF7DD", "@ c #D6CFBA", " ......................... ", @@ -78,13 +78,13 @@ KeyboardImpl::~KeyboardImpl() delete icn; } QWidget *KeyboardImpl::inputMethod( QWidget *parent, Qt::WFlags f ) { if ( !input ) - input = new Keyboard( parent, "Keyboard", f ); + input = new Dvorak::Keyboard( parent, "Keyboard", f ); return input; } void KeyboardImpl::resetState() { if ( input ) diff --git a/inputmethods/dvorak/dvorakimpl.h b/inputmethods/dvorak/dvorakimpl.h index e756364..bd9fa88 100644 --- a/inputmethods/dvorak/dvorakimpl.h +++ b/inputmethods/dvorak/dvorakimpl.h @@ -19,15 +19,22 @@ **********************************************************************/ #ifndef KEYBOARDIMPL_H #define KEYBOARDIMPL_H #include <qpe/inputmethodinterface.h> -class Keyboard; +namespace Dvorak +{ + class Keyboard; +} + class QPixmap; +namespace +{ + class KeyboardImpl : public InputMethodInterface { public: KeyboardImpl(); virtual ~KeyboardImpl(); @@ -40,12 +47,14 @@ public: virtual void resetState(); virtual QPixmap *icon(); virtual QString name(); virtual void onKeyPress( QObject *receiver, const char *slot ); private: - Keyboard *input; + Dvorak::Keyboard *input; QPixmap *icn; ulong ref; }; +} // anonymous namespace + #endif |