summaryrefslogtreecommitdiffstats
path: root/src/PYPSuggestionEditor.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/PYPSuggestionEditor.h')
-rw-r--r--src/PYPSuggestionEditor.h24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/PYPSuggestionEditor.h b/src/PYPSuggestionEditor.h
index 637dfe0..8276a6a 100644
--- a/src/PYPSuggestionEditor.h
+++ b/src/PYPSuggestionEditor.h
@@ -25,10 +25,19 @@
#include <pinyin.h>
#include "PYEditor.h"
#include "PYLookupTable.h"
+#include "PYPSuggestionCandidates.h"
+#include "PYPTradCandidates.h"
+
+#ifdef IBUS_BUILD_LUA_EXTENSION
+#include "PYPLuaTriggerCandidates.h"
+#include "PYPLuaConverterCandidates.h"
+#endif
namespace PY {
class SuggestionEditor : public Editor {
+ friend class SuggestionCandidates;
+
public:
SuggestionEditor (PinyinProperties &props, Config & config);
virtual ~SuggestionEditor ();
@@ -42,6 +51,9 @@ public:
virtual void reset (void);
virtual void candidateClicked (guint index, guint button, guint state);
+protected:
+ virtual SelectCandidateAction selectCandidateInternal (EnhancedCandidate & candidate);
+
private:
void updateLookupTable (void);
gboolean updateCandidates ();
@@ -65,6 +77,18 @@ private:
/* use LibPinyinBackEnd here. */
pinyin_instance_t *m_instance;
+
+ /* use EnhancedCandidates here. */
+ std::vector<EnhancedCandidate> m_candidates;
+
+ /* several EnhancedCandidates providers. */
+ SuggestionCandidates m_suggestion_candidates;
+ TraditionalCandidates m_traditional_candidates;
+
+#ifdef IBUS_BUILD_LUA_EXTENSION
+ LuaTriggerCandidates m_lua_trigger_candidates;
+ LuaConverterCandidates m_lua_converter_candidates;
+#endif
};
};