Tizen 2.1 base
[framework/uifw/ecore.git] / src / modules / immodules / ibus / ibus_imcontext.h
1 #ifndef __IBUS_IM_CONTEXT_H_
2 #define __IBUS_IM_CONTEXT_H_
3
4 #include <Ecore_IMF.h>
5
6 typedef struct _IBusIMContext IBusIMContext;
7
8 EAPI void ibus_im_context_add     (Ecore_IMF_Context *ctx);
9 EAPI void ibus_im_context_del     (Ecore_IMF_Context *ctx);
10 EAPI void ibus_im_context_reset   (Ecore_IMF_Context *context);
11 EAPI void ibus_im_context_focus_in(Ecore_IMF_Context *context);
12 EAPI void ibus_im_context_focus_out(Ecore_IMF_Context *context);
13 EAPI void ibus_im_context_preedit_string_get
14                                             (Ecore_IMF_Context     *context,
15                                              char                  **str,
16                                              int                   *cursor_pos);
17 EAPI void ibus_im_context_preedit_string_with_attributes_get
18                                             (Ecore_IMF_Context     *context,
19                                              char                  **str,
20                                              Eina_List             **attr,
21                                              int                   *cursor_pos);
22
23 EAPI void ibus_im_context_cursor_location_set(Ecore_IMF_Context *context,
24                                               int x, int y, int w, int h);
25 EAPI void ibus_im_context_use_preedit_set(Ecore_IMF_Context *context,
26                                           Eina_Bool use_preedit);
27 EAPI void
28 ibus_im_context_client_window_set(Ecore_IMF_Context   *context, void *window);
29 EAPI void
30 ibus_im_context_client_canvas_set(Ecore_IMF_Context   *context, void *canvas);
31 EAPI Eina_Bool
32 ibus_im_context_filter_event(Ecore_IMF_Context *ctx, Ecore_IMF_Event_Type type, Ecore_IMF_Event *event);
33
34 IBusIMContext
35         *ibus_im_context_new      (void);
36 #endif