summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorPeng Wu <alexepico@gmail.com>2018-06-15 11:52:36 +0800
committerPeng Wu <alexepico@gmail.com>2018-06-15 11:52:36 +0800
commit1cc1fe8b7b7d70e611f3e74d56cca8f1c837ed4e (patch)
tree4afa5dc7bd79e0f45ee8ec0dd3ad0abec2a5bd18 /src
parent766a1322395e32286930a62b9f66033a0d8d637c (diff)
downloadibus-libpinyin-1cc1fe8b7b7d70e611f3e74d56cca8f1c837ed4e.tar.gz
ibus-libpinyin-1cc1fe8b7b7d70e611f3e74d56cca8f1c837ed4e.tar.xz
ibus-libpinyin-1cc1fe8b7b7d70e611f3e74d56cca8f1c837ed4e.zip
use IBUS_BUILD_LUA_EXTENSION
Diffstat (limited to 'src')
-rw-r--r--src/PYPBopomofoEngine.cc2
-rw-r--r--src/PYPBopomofoEngine.h1
-rw-r--r--src/PYPPhoneticEditor.cc11
-rw-r--r--src/PYPPhoneticEditor.h16
-rw-r--r--src/PYPPinyinEngine.cc4
5 files changed, 25 insertions, 9 deletions
diff --git a/src/PYPBopomofoEngine.cc b/src/PYPBopomofoEngine.cc
index a8a8401..0fc97ae 100644
--- a/src/PYPBopomofoEngine.cc
+++ b/src/PYPBopomofoEngine.cc
@@ -25,6 +25,7 @@
#include "PYPunctEditor.h"
#include "PYPBopomofoEditor.h"
#include "PYFallbackEditor.h"
+#include "PYPSuggestionEditor.h"
#include "PYConfig.h"
#include "PYPConfig.h"
@@ -43,6 +44,7 @@ BopomofoEngine::BopomofoEngine (IBusEngine *engine)
/* create editors */
m_editors[MODE_INIT].reset (new BopomofoEditor (m_props, BopomofoConfig::instance ()));
m_editors[MODE_PUNCT].reset (new PunctEditor (m_props, BopomofoConfig::instance ()));
+ m_editors[MODE_SUGGESTION].reset (new SuggestionEditor (m_props, BopomofoConfig::instance ()));
m_props.signalUpdateProperty ().connect
(std::bind (&BopomofoEngine::updateProperty, this, _1));
diff --git a/src/PYPBopomofoEngine.h b/src/PYPBopomofoEngine.h
index 7133a55..5b2f129 100644
--- a/src/PYPBopomofoEngine.h
+++ b/src/PYPBopomofoEngine.h
@@ -73,6 +73,7 @@ private:
MODE_STROKE, // press u into stroke input mode
MODE_EXTENSION, // press i into extension input mode
#endif
+ MODE_SUGGESTION, // suggestion mode
MODE_LAST,
} m_input_mode;
diff --git a/src/PYPPhoneticEditor.cc b/src/PYPPhoneticEditor.cc
index 2be4836..4457ecd 100644
--- a/src/PYPPhoneticEditor.cc
+++ b/src/PYPPhoneticEditor.cc
@@ -23,7 +23,6 @@
#include <assert.h>
#include "PYConfig.h"
#include "PYPinyinProperties.h"
-#include "PYSimpTradConverter.h"
using namespace PY;
@@ -34,9 +33,11 @@ PhoneticEditor::PhoneticEditor (PinyinProperties &props,
m_pinyin_len (0),
m_lookup_table (m_config.pageSize ()),
m_libpinyin_candidates (this),
- m_traditional_candidates (this),
+#ifdef IBUS_BUILD_LUA_EXTENSION
m_lua_trigger_candidates (this),
- m_lua_converter_candidates (this)
+ m_lua_converter_candidates (this),
+#endif
+ m_traditional_candidates (this)
{
}
@@ -217,6 +218,7 @@ PhoneticEditor::updateCandidates (void)
if (!m_props.modeSimp ())
m_traditional_candidates.processCandidates (m_candidates);
+#ifdef IBUS_BUILD_LUA_EXTENSION
m_lua_trigger_candidates.processCandidates (m_candidates);
const char * converter = m_config.luaConverter ().c_str ();
@@ -225,6 +227,7 @@ PhoneticEditor::updateCandidates (void)
m_lua_converter_candidates.setConverter (converter);
m_lua_converter_candidates.processCandidates (m_candidates);
}
+#endif
return TRUE;
}
@@ -351,11 +354,13 @@ PhoneticEditor::selectCandidateInternal (EnhancedCandidate & candidate)
case CANDIDATE_TRADITIONAL_CHINESE:
return m_traditional_candidates.selectCandidate (candidate);
+#ifdef IBUS_BUILD_LUA_EXTENSION
case CANDIDATE_LUA_TRIGGER:
return m_lua_trigger_candidates.selectCandidate (candidate);
case CANDIDATE_LUA_CONVERTER:
return m_lua_converter_candidates.selectCandidate (candidate);
+#endif
default:
assert (FALSE);
diff --git a/src/PYPPhoneticEditor.h b/src/PYPPhoneticEditor.h
index b49627a..d64fc85 100644
--- a/src/PYPPhoneticEditor.h
+++ b/src/PYPPhoneticEditor.h
@@ -28,22 +28,23 @@
#include "PYPEnhancedCandidates.h"
#include "PYPLibPinyinCandidates.h"
#include "PYPTradCandidates.h"
+
+#ifdef IBUS_BUILD_LUA_EXTENSION
#include "PYPLuaTriggerCandidates.h"
#include "PYPLuaConverterCandidates.h"
-
+#endif
namespace PY {
-class LibPinyinCandidates;
-class TraditionalCandidates;
-class LuaTriggerCandidates;
-class LuaConverterCandidates;
-
class PhoneticEditor : public Editor {
friend class LibPinyinCandidates;
friend class TraditionalCandidates;
+
+#ifdef IBUS_BUILD_LUA_EXTENSION
friend class LuaTriggerCandidates;
friend class LuaConverterCandidates;
+#endif
+
public:
PhoneticEditor (PinyinProperties & props, Config & config);
virtual ~PhoneticEditor ();
@@ -112,8 +113,11 @@ protected:
/* several EnhancedCandidates providers. */
LibPinyinCandidates m_libpinyin_candidates;
TraditionalCandidates m_traditional_candidates;
+
+#ifdef IBUS_BUILD_LUA_EXTENSION
LuaTriggerCandidates m_lua_trigger_candidates;
LuaConverterCandidates m_lua_converter_candidates;
+#endif
};
};
diff --git a/src/PYPPinyinEngine.cc b/src/PYPPinyinEngine.cc
index ca118b5..324ebe3 100644
--- a/src/PYPPinyinEngine.cc
+++ b/src/PYPPinyinEngine.cc
@@ -37,6 +37,7 @@
#include "PYPFullPinyinEditor.h"
#include "PYPDoublePinyinEditor.h"
#include "PYFallbackEditor.h"
+#include "PYPSuggestionEditor.h"
using namespace PY;
@@ -80,6 +81,9 @@ PinyinEngine::PinyinEngine (IBusEngine *engine)
m_editors[MODE_STROKE].reset (new Editor (m_props, PinyinConfig::instance ()));
#endif
+ m_editors[MODE_SUGGESTION].reset
+ (new SuggestionEditor (m_props, PinyinConfig::instance ()));
+
m_props.signalUpdateProperty ().connect
(std::bind (&PinyinEngine::updateProperty, this, _1));