summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPeng Wu <alexepico@gmail.com>2014-09-22 16:37:27 +0800
committerPeng Wu <alexepico@gmail.com>2014-09-22 16:37:27 +0800
commitc1054a5731b2d7f0c9d19a5fe6c55bebfb986abc (patch)
tree1b52169510426a80bd0dc55979c9c23223847f63
parent91e2dbca77121840393ee991f2e9cbd0d432d906 (diff)
downloadibus-libzhuyin-c1054a5731b2d7f0c9d19a5fe6c55bebfb986abc.tar.gz
ibus-libzhuyin-c1054a5731b2d7f0c9d19a5fe6c55bebfb986abc.tar.xz
ibus-libzhuyin-c1054a5731b2d7f0c9d19a5fe6c55bebfb986abc.zip
add symbol options
-rw-r--r--src/ZYConfig.cc3
-rw-r--r--src/ZYConfig.h6
-rw-r--r--src/ZYZConfig.cc15
3 files changed, 24 insertions, 0 deletions
diff --git a/src/ZYConfig.cc b/src/ZYConfig.cc
index a963c6b..a978da1 100644
--- a/src/ZYConfig.cc
+++ b/src/ZYConfig.cc
@@ -54,6 +54,9 @@ Config::initDefaultValues (void)
m_init_trad_chinese = TRUE;
m_always_input_numbers = FALSE;
+
+ m_easy_symbol = TRUE;
+ m_user_symbol = TRUE;
}
diff --git a/src/ZYConfig.h b/src/ZYConfig.h
index c1c9375..6c9b2c7 100644
--- a/src/ZYConfig.h
+++ b/src/ZYConfig.h
@@ -52,6 +52,9 @@ public:
gboolean alwaysInputNumbers (void) const { return m_always_input_numbers; }
std::string candidateKeys (void) const { return m_candidate_keys; }
+ gboolean easySymbol (void) const { return m_easy_symbol; }
+ gboolean userSymbol (void) const { return m_user_symbol; }
+
protected:
bool read (const gchar * name, bool defval);
gint read (const gchar * name, gint defval);
@@ -87,6 +90,9 @@ protected:
gboolean m_always_input_numbers;
std::string m_candidate_keys;
+
+ gboolean m_easy_symbol;
+ gboolean m_user_symbol;
};
static inline bool
diff --git a/src/ZYZConfig.cc b/src/ZYZConfig.cc
index c3b0e72..ecf15dc 100644
--- a/src/ZYZConfig.cc
+++ b/src/ZYZConfig.cc
@@ -39,6 +39,9 @@ const gchar * const CONFIG_ALWAYS_INPUT_NUMBERS = "alwaysinputnum";
const gchar * const CONFIG_KEYBOARD_LAYOUT = "keyboardlayout";
const gchar * const CONFIG_CANDIDATE_KEYS = "candidatekeys";
+const gchar * const CONFIG_EASY_SYMBOL = "easysymbol";
+const gchar * const CONFIG_USER_SYMBOL = "usersymbol";
+
const gchar * const CONFIG_IMPORT_DICTIONARY = "importdictionary";
const gchar * const CONFIG_CLEAR_USER_DATA = "clearuserdata";
@@ -93,6 +96,9 @@ ZhuyinConfig::initDefaultValues (void)
m_always_input_numbers = FALSE;
m_candidate_keys = "1234567890";
+
+ m_easy_symbol = TRUE;
+ m_user_symbol = TRUE;
}
/* Here are the zhuyin keyboard layout mapping table. */
@@ -191,6 +197,9 @@ ZhuyinConfig::readDefaultValues (void)
m_candidate_keys = read (CONFIG_CANDIDATE_KEYS, std::string ("1234567890"));
+ m_easy_symbol = read (CONFIG_EASY_SYMBOL, true);
+ m_user_symbol = read (CONFIG_USER_SYMBOL, true);
+
/* fuzzy zhuyin */
if (read (CONFIG_FUZZY_ZHUYIN, false))
m_option_mask |= ZHUYIN_AMB_ALL;
@@ -259,6 +268,12 @@ ZhuyinConfig::valueChanged (const std::string &section,
g_warn_if_reached ();
}
}
+ else if (CONFIG_EASY_SYMBOL == name) {
+ m_easy_symbol = normalizeGVariant (value, true);
+ }
+ else if (CONFIG_USER_SYMBOL == name) {
+ m_user_symbol = normalizeGVariant (value, true);
+ }
else if (CONFIG_IMPORT_DICTIONARY == name) {
std::string filename = normalizeGVariant (value, std::string(""));
LibZhuyinBackEnd::instance ().importZhuyinDictionary(filename.c_str ());