diff options
author | Peng Wu <epico@dhcp-65-116.nay.redhat.com> | 2010-04-11 15:01:11 +0800 |
---|---|---|
committer | Peng Wu <alexepico@gmail.com> | 2010-05-19 10:09:32 +0800 |
commit | 7505cd8f7c7298f6db1dc1ad665b082810234944 (patch) | |
tree | 37c8b313588b274a672a5c3a21cc18236c365357 /lua/lua-plugin.c | |
parent | 07351a7e974d192a1b93679d518be75cb764fdd2 (diff) | |
download | ibus-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.c | 50 |
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; +} + |