summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPeng Wu <alexepico@gmail.com>2014-04-10 14:42:02 +0800
committerPeng Wu <alexepico@gmail.com>2014-04-10 14:42:02 +0800
commit1a8c791e1955ba7e4d288f0e95236054115f3d00 (patch)
treee79c3a452c763a3d650283044536d9133a4c3311
parentdaa5ddefd5e470b15037d17cbcf15e39ec3f48f8 (diff)
downloadibus-libzhuyin-1a8c791e1955ba7e4d288f0e95236054115f3d00.tar.gz
ibus-libzhuyin-1a8c791e1955ba7e4d288f0e95236054115f3d00.tar.xz
ibus-libzhuyin-1a8c791e1955ba7e4d288f0e95236054115f3d00.zip
update class Config
-rw-r--r--setup/ibus-libzhuyin-preferences.ui2
-rw-r--r--setup/main.py2
-rw-r--r--src/ZYConfig.h16
-rw-r--r--src/ZYZConfig.cc47
4 files changed, 54 insertions, 13 deletions
diff --git a/setup/ibus-libzhuyin-preferences.ui b/setup/ibus-libzhuyin-preferences.ui
index 4a0fab4..f8f3e71 100644
--- a/setup/ibus-libzhuyin-preferences.ui
+++ b/setup/ibus-libzhuyin-preferences.ui
@@ -5,7 +5,7 @@
<object class="GtkAdjustment" id="adjustmentCandidate">
<property name="lower">1</property>
<property name="upper">10</property>
- <property name="value">5</property>
+ <property name="value">10</property>
<property name="step_increment">1</property>
<property name="page_increment">10</property>
</object>
diff --git a/setup/main.py b/setup/main.py
index f91e6d9..9a79e8b 100644
--- a/setup/main.py
+++ b/setup/main.py
@@ -122,7 +122,7 @@ class PreferencesWindow:
# read value
self.__keyboard_layout.set_active(self.__get_value("keyboardlayout", 0))
self.__candidate_keys_entry.set_text(self.__get_value("candidatekeys", "1234567890"))
- self.__candidate_num.set_value(self.__get_value("candidatenum", 5))
+ self.__candidate_num.set_value(self.__get_value("candidatenum", 10))
# connect signals
self.__keyboard_layout.connect("changed", self.__keyboard_layout_cb, "keyboardlayout")
diff --git a/src/ZYConfig.h b/src/ZYConfig.h
index 744f9a0..a9f91fd 100644
--- a/src/ZYConfig.h
+++ b/src/ZYConfig.h
@@ -40,14 +40,15 @@ protected:
virtual ~Config (void);
public:
- guint option (void) const { return m_option & m_option_mask; }
+ zhuyin_option_t option (void) const { return m_option & m_option_mask; }
+ guint orientation (void) const { return m_orientation; }
guint pageSize (void) const { return m_page_size; }
gint zhuyinSchema (void) const { return m_zhuyin_schema; }
gboolean initChinese (void) const { return m_init_chinese; }
- gboolean initFull (void) const { return m_init_full; }
+ gboolean initFullEnglish (void) const { return m_init_full_english; }
gboolean initFullPunct (void) const { return m_init_full_punct; }
gboolean initTradChinese (void) const { return m_init_trad_chinese; }
- std::string selectKeys (void) const { return m_select_keys; }
+ std::string candidateKeys (void) const { return m_candidate_keys; }
protected:
bool read (const gchar * name, bool defval);
@@ -68,19 +69,20 @@ private:
protected:
std::string m_section;
- guint m_option;
- guint m_option_mask;
+ zhuyin_option_t m_option;
+ zhuyin_option_t m_option_mask;
+ gint m_orientation;
guint m_page_size;
gint m_zhuyin_schema;
gboolean m_init_chinese;
- gboolean m_init_full;
+ gboolean m_init_full_english;
gboolean m_init_full_punct;
gboolean m_init_trad_chinese;
- std::string m_select_keys;
+ std::string m_candidate_keys;
};
};
diff --git a/src/ZYZConfig.cc b/src/ZYZConfig.cc
index 772a067..8e34d0f 100644
--- a/src/ZYZConfig.cc
+++ b/src/ZYZConfig.cc
@@ -20,6 +20,7 @@
*/
#include "ZYZConfig.h"
+#include <zhuyin.h>
namespace ZY {
@@ -34,6 +35,48 @@ const gchar * const CONFIG_INIT_FULL_PUNCT = "fullhalfpunct";
const gchar * const CONFIG_INIT_TRAD_CHINESE = "TraditionalChinese";
const gchar * const CONFIG_CANDIDATE_KEYS = "candidatekeys";
+const zhuyin_option_t ZHUYIN_DEFAULT_OPTION =
+ USE_TONE |
+ FORCE_TONE |
+ ZHUYIN_CORRECT_ALL |
+ 0;
+
+std::unique_ptr<ZhuyinConfig> ZhuyinConfig::m_instance;
+
+ZhuyinConfig::ZhuyinConfig (Bus & bus)
+ : Config (bus, "zhuyin")
+{
+ initDefaultValues ();
+ g_signal_connect (get<IBusConfig> (),
+ "value-changed",
+ G_CALLBACK (valueChangedCallback),
+ this);
+
+}
+
+ZhuyinConfig::~ZhuyinConfig (void)
+{
+}
+
+void
+ZhuyinConfig::initDefaultValues (void)
+{
+ m_option = ZHUYIN_DEFAULT_OPTION;
+ m_option_mask = USE_TONE | FORCE_TONE | ZHUYIN_CORRECT_ALL;
+
+ m_orientation = IBUS_ORIENTATION_VERTICAL;
+ m_page_size = 10;
+
+ m_zhuyin_schema = 0;
+
+ m_init_chinese = TRUE;
+ m_init_full_english = FALSE;
+ m_init_full_punct = TRUE;
+ m_init_trad_chinese = TRUE;
+
+ m_candidate_keys = "1234567890";
+}
+
static const struct {
const gchar * const name;
guint option;
@@ -51,9 +94,5 @@ static const struct {
{ "fuzzyzhuyin_in_ing", ZHUYIN_AMB_IN_ING },
};
-ZhuyinConfig::ZhuyinConfig (Bus & bus)
- : Config (bus, "zhuyin")
-{
-}
};