]> Pileus Git - ~andy/gtk/blobdiff - modules/input/imxim.c
modules/input/gtkimcontextmultipress.h modules/input/gtkimcontextthai.h
[~andy/gtk] / modules / input / imxim.c
index 42a3d409eca5f6b80236d58c317f35eda3942df9..eae380580b3e781f62258a4f57c39643a540d9d5 100644 (file)
@@ -35,28 +35,30 @@ static const GtkIMContextInfo *info_list[] = {
   &xim_ja_info
 };
 
-void
-im_module_init (GTypeModule *type_module)
+#ifndef INCLUDE_IM_xim
+#define MODULE_ENTRY(type, function) G_MODULE_EXPORT type im_module_ ## function
+#else
+#define MODULE_ENTRY(type, function) type _gtk_immodule_xim_ ## function
+#endif
+
+MODULE_ENTRY (void, init) (GTypeModule *type_module)
 {
   gtk_im_context_xim_register_type (type_module);
 }
 
-void 
-im_module_exit (void)
+MODULE_ENTRY (void, exit) (void)
 {
   gtk_im_context_xim_shutdown ();
 }
 
-void 
-im_module_list (const GtkIMContextInfo ***contexts,
-               int                      *n_contexts)
+MODULE_ENTRY (void, list) (const GtkIMContextInfo ***contexts,
+                          int                      *n_contexts)
 {
   *contexts = info_list;
   *n_contexts = G_N_ELEMENTS (info_list);
 }
 
-GtkIMContext *
-im_module_create (const gchar *context_id)
+MODULE_ENTRY (GtkIMContext *, create) (const gchar *context_id)
 {
   if (strcmp (context_id, "xim") == 0)
     return gtk_im_context_xim_new ();