summaryrefslogtreecommitdiffstats
path: root/lua/lua-plugin.c
diff options
context:
space:
mode:
authorPeng Wu <epico@dhcp-65-116.nay.redhat.com>2010-04-11 15:01:11 +0800
committerPeng Wu <alexepico@gmail.com>2010-05-19 10:09:32 +0800
commit7505cd8f7c7298f6db1dc1ad665b082810234944 (patch)
tree37c8b313588b274a672a5c3a21cc18236c365357 /lua/lua-plugin.c
parent07351a7e974d192a1b93679d518be75cb764fdd2 (diff)
downloadibus-libpinyin-7505cd8f7c7298f6db1dc1ad665b082810234944.tar.gz
ibus-libpinyin-7505cd8f7c7298f6db1dc1ad665b082810234944.tar.xz
ibus-libpinyin-7505cd8f7c7298f6db1dc1ad665b082810234944.zip
add gobject interface for lua-plugin.
Diffstat (limited to 'lua/lua-plugin.c')
-rw-r--r--lua/lua-plugin.c50
1 files changed, 50 insertions, 0 deletions
diff --git a/lua/lua-plugin.c b/lua/lua-plugin.c
new file mode 100644
index 0000000..db8aa43
--- /dev/null
+++ b/lua/lua-plugin.c
@@ -0,0 +1,50 @@
+#include <lua.h>
+
+#include "lua-plugin.h"
+
+#define IBUS_ENGINE_PLUGIN_GET_PRIVATE(obj) (G_TYPE_INSTANCE_GET_PRIVATE ((obj), IBUS_TYPE_ENGINE_PLUGIN, IBusEnginePluginPrivate))
+
+G_DEFINE_TYPE (IBusEnginePlugin, ibus_engine_plugin, G_TYPE_OBJECT);
+
+static void
+ibus_engine_plugin_dispose (GObject *gobject)
+{
+ IBusEnginePlugin *self = IBUS_ENGINE_PLUGIN (gobject);
+
+ /* do some cleaning here. */
+
+ /* Chain up to the parent class */
+ G_OBJECT_CLASS (ibus_engine_plugin_parent_class)->dispose(gobject);
+}
+
+static void
+ibus_engine_plugin_finalize (GObject *gobject)
+{
+ IBusEnginePlugin *self = IBUS_ENGINE_PLUGIN (gobject);
+
+ /* Chain up to the parent class */
+ G_OBJECT_CLASS (ibus_engine_plugin_parent_class)->dispose(gobject);
+}
+
+static void
+ibus_engine_plugin_class_init (IBusEnginePluginClass *klass)
+{
+ GObjectClass *gobject_class = G_OBJECT_CLASS (klass);
+
+ gobject_class->dispose = ibus_engine_plugin_dispose;
+ gobject_class->finalize = ibus_engine_plugin_finalize;
+
+ g_type_class_add_private (klass, sizeof (IBusEnginePluginPrivate));
+}
+
+static void
+ibus_engine_plugin_init (IBusEnginePlugin *self)
+{
+ IBusEnginePluginPrivate *priv;
+
+ self->priv = priv = IBUS_ENGINE_PLUGIN_GET_PRIVATE (self);
+
+ priv->L = NULL;
+ priv->lua_commands = NULL;
+}
+