summaryrefslogtreecommitdiff
path: root/src/modules/ecore/immodules/ibus/ibus_imcontext.h
blob: ce5c075c3f981cb069a44311f37b6c0b656c7fed (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#ifndef __IBUS_IM_CONTEXT_H_
#define __IBUS_IM_CONTEXT_H_

#include <Ecore_IMF.h>

typedef struct _IBusIMContext IBusIMContext;

EAPI void ibus_im_context_add     (Ecore_IMF_Context *ctx);
EAPI void ibus_im_context_del     (Ecore_IMF_Context *ctx);
EAPI void ibus_im_context_reset   (Ecore_IMF_Context *context);
EAPI void ibus_im_context_focus_in(Ecore_IMF_Context *context);
EAPI void ibus_im_context_focus_out(Ecore_IMF_Context *context);
EAPI void ibus_im_context_preedit_string_get
                                            (Ecore_IMF_Context     *context,
                                             char                  **str,
                                             int                   *cursor_pos);
EAPI void ibus_im_context_preedit_string_with_attributes_get
                                            (Ecore_IMF_Context     *context,
                                             char                  **str,
                                             Eina_List             **attr,
                                             int                   *cursor_pos);

EAPI void ibus_im_context_cursor_location_set(Ecore_IMF_Context *context,
                                              int x, int y, int w, int h);
EAPI void ibus_im_context_use_preedit_set(Ecore_IMF_Context *context,
                                          Eina_Bool use_preedit);
EAPI void
ibus_im_context_client_window_set(Ecore_IMF_Context   *context, void *window);
EAPI void
ibus_im_context_client_canvas_set(Ecore_IMF_Context   *context, void *canvas);
EAPI Eina_Bool
ibus_im_context_filter_event(Ecore_IMF_Context *ctx, Ecore_IMF_Event_Type type, Ecore_IMF_Event *event);

IBusIMContext
        *ibus_im_context_new      (void);
#endif