summaryrefslogtreecommitdiffstats
path: root/kxkb/kxkbconfig.h
diff options
context:
space:
mode:
Diffstat (limited to 'kxkb/kxkbconfig.h')
-rw-r--r--kxkb/kxkbconfig.h93
1 files changed, 30 insertions, 63 deletions
diff --git a/kxkb/kxkbconfig.h b/kxkb/kxkbconfig.h
index 82fe610c9..4e424102a 100644
--- a/kxkb/kxkbconfig.h
+++ b/kxkb/kxkbconfig.h
@@ -1,7 +1,7 @@
//
// C++ Interface: kxkbconfig
//
-// Description:
+// Description:
//
//
// Author: Andriy Rysin <rysin@kde.org>, (C) 2006
@@ -14,74 +14,30 @@
#include <tqstring.h>
#include <tqstringlist.h>
+#include <tqcolor.h>
+#include <tqfont.h>
#include <tqptrqueue.h>
#include <tqmap.h>
+#include "layoutunit.h"
+
+struct XkbOptions {
+ TQString layouts;
+ TQString variants;
+ TQString model;
+ TQString options;
+ bool resetOld;
+};
/* Utility classes for per-window/per-application layout implementation
*/
-enum SwitchingPolicy {
+enum SwitchingPolicy {
SWITCH_POLICY_GLOBAL = 0,
SWITCH_POLICY_WIN_CLASS = 1,
SWITCH_POLICY_WINDOW = 2,
SWITCH_POLICY_COUNT = 3
};
-
-
-inline TQString createPair(TQString key, TQString value)
-{
- if( value.isEmpty() )
- return key;
- return TQString("%1(%2)").arg(key, value);
-}
-
-struct LayoutUnit {
- TQString layout;
- TQString variant;
- TQString includeGroup;
- TQString displayName;
- int defaultGroup;
-
- LayoutUnit() {}
-
- LayoutUnit(TQString layout_, TQString variant_):
- layout(layout_),
- variant(variant_)
- {}
-
- LayoutUnit(TQString pair) {
- setFromPair( pair );
- }
-
- void setFromPair(const TQString& pair) {
- layout = parseLayout(pair);
- variant = parseVariant(pair);
- }
-
- TQString toPair() const {
- return createPair(layout, variant);
- }
-
- bool operator<(const LayoutUnit& lu) const {
- return layout<lu.layout ||
- (layout==lu.layout && variant<lu.variant);
- }
-
- bool operator!=(const LayoutUnit& lu) const {
- return layout!=lu.layout || variant!=lu.variant;
- }
-
- bool operator==(const LayoutUnit& lu) const {
-// kdDebug() << layout << "==" << lu.layout << "&&" << variant << "==" << lu.variant << endl;
- return layout==lu.layout && variant==lu.variant;
- }
-
-//private:
- static const TQString parseLayout(const TQString &layvar);
- static const TQString parseVariant(const TQString &layvar);
-};
-
extern const LayoutUnit DEFAULT_LAYOUT_UNIT;
extern const char* DEFAULT_MODEL;
@@ -90,31 +46,42 @@ class KxkbConfig
{
public:
enum { LOAD_INIT_OPTIONS, LOAD_ACTIVE_OPTIONS, LOAD_ALL };
-
+
bool m_useKxkb;
bool m_showSingle;
bool m_showFlag;
+ bool m_showLabel;
bool m_enableXkbOptions;
bool m_resetOldOptions;
SwitchingPolicy m_switchingPolicy;
bool m_stickySwitching;
int m_stickySwitchingDepth;
-
+ bool m_enableNotify;
+ bool m_notifyUseKMilo;
+
+ bool m_useThemeColors;
+ TQColor m_colorBackground;
+ bool m_bgTransparent;
+ TQColor m_colorLabel;
+ TQFont m_labelFont;
+ bool m_labelShadow;
+ TQColor m_colorShadow;
+
TQString m_model;
TQString m_options;
TQValueList<LayoutUnit> m_layouts;
- LayoutUnit getDefaultLayout();
-
bool load(int loadMode);
void save();
void setDefaults();
-
+
TQStringList getLayoutStringList(/*bool compact*/);
static TQString getDefaultDisplayName(const TQString& code_);
static TQString getDefaultDisplayName(const LayoutUnit& layoutUnit, bool single=false);
-private:
+ const XkbOptions getKXkbOptions();
+
+private:
static const TQMap<TQString, TQString> parseIncludesMap(const TQStringList& pairList);
};