From 1e1e7075b63f56117c9e7646ac78efa8d4adeb31 Mon Sep 17 00:00:00 2001 From: Peng Wu Date: Tue, 4 May 2010 15:23:17 +0800 Subject: [PATCH] define ext editor interface. --- src/ExtEditor.cc | 26 ++++++++++++++++++++++++++ src/ExtEditor.h | 8 +++++--- 2 files changed, 31 insertions(+), 3 deletions(-) diff --git a/src/ExtEditor.cc b/src/ExtEditor.cc index 93b4400..c8cbd88 100644 --- a/src/ExtEditor.cc +++ b/src/ExtEditor.cc @@ -5,11 +5,32 @@ namespace PY { ExtEditor::ExtEditor (PinyinProperties & props) : Editor (props) { + m_lua_plugin = ibus_engine_plugin_new(); + + loadLuaScript("./lua/base.lua"); + + m_input = ""; + m_lookup_table.clear(); +} + +int +ExtEditor::loadLuaScript(std::string filename) +{ + return ibus_engine_plugin_load_lua_script(m_lua_plugin, filename.c_str()); +} + +void +ExtEditor::resetLuaState() +{ + g_object_unref(m_lua_plugin); + m_lua_plugin = ibus_engine_plugin_new(); } + gboolean ExtEditor::processKeyEvent (guint keyval, guint keycode, guint modifiers) { + return FALSE; } @@ -48,6 +69,11 @@ ExtEditor::candidateClicked (guint index, guint button, guint state) { } +bool +ExtEditor::updateStateFromInput(){ + return true; +} + }; diff --git a/src/ExtEditor.h b/src/ExtEditor.h index 78d1d66..15d4b32 100644 --- a/src/ExtEditor.h +++ b/src/ExtEditor.h @@ -27,12 +27,14 @@ public: virtual void reset (void); virtual void candidateClicked (guint index, guint button, guint state); - int load_lua_script(std::string filename); - void reset_lua_state(); + int loadLuaScript(std::string filename); + void resetLuaState(); private: + bool updateStateFromInput(); + Pointer m_lua_plugin; - lua_command_t * m_current_command; + std::string m_input; LookupTable m_lookup_table; -- 2.7.4