1 #ifndef _ECORE_IMF_PRIVATE_H
2 #define _ECORE_IMF_PRIVATE_H
4 #define ECORE_MAGIC_CONTEXT 0x56c1b39a
6 #ifdef ECORE_IMF_DEFAULT_LOG_COLOR
7 #undef ECORE_IMF_DEFAULT_LOG_COLOR
9 #define ECORE_IMF_DEFAULT_LOG_COLOR EINA_COLOR_BLUE
11 extern int _ecore_imf_log_dom;
15 #define ERR(...) EINA_LOG_DOM_ERR(_ecore_imf_log_dom, __VA_ARGS__)
20 #define DBG(...) EINA_LOG_DOM_DBG(_ecore_imf_log_dom, __VA_ARGS__)
25 #define INF(...) EINA_LOG_DOM_INFO(_ecore_imf_log_dom, __VA_ARGS__)
30 #define WRN(...) EINA_LOG_DOM_WARN(_ecore_imf_log_dom, __VA_ARGS__)
35 #define CRIT(...) EINA_LOG_DOM_CRIT(_ecore_imf_log_dom, __VA_ARGS__)
37 typedef struct _Ecore_IMF_Module Ecore_IMF_Module;
39 struct _Ecore_IMF_Context
42 const Ecore_IMF_Module *module;
43 const Ecore_IMF_Context_Class *klass;
48 Ecore_IMF_Input_Panel_Layout input_panel_layout;
49 Ecore_IMF_Input_Panel_Lang input_panel_lang;
53 Ecore_IMF_Input_Panel_Orient input_panel_orient;
54 Eina_Bool (*retrieve_surrounding_func)(void *data, Ecore_IMF_Context *ctx, char **text, int *cursor_pos);
55 void *retrieve_surrounding_data;
57 Eina_List *disabled_key_list;
58 Eina_List *private_key_list;
61 struct _Ecore_IMF_Module
63 const Ecore_IMF_Context_Info *info;
64 Ecore_IMF_Context *(*create)(void);
65 Ecore_IMF_Context *(*exit)(void);
68 void ecore_imf_module_init(void);
69 void ecore_imf_module_shutdown(void);
70 Eina_List *ecore_imf_module_available_get(void);
71 Ecore_IMF_Module *ecore_imf_module_get(const char *ctx_id);
72 Ecore_IMF_Context *ecore_imf_module_context_create(const char *ctx_id);
73 Eina_List *ecore_imf_module_context_ids_get(void);
74 Eina_List *ecore_imf_module_context_ids_by_canvas_type_get(const char *canvas_type);