forked from enlightenment/efl
Add edje_object_part_text_imf_context_get API
This API can be used to get the input method context in entry. SVN revision: 68306
This commit is contained in:
parent
0a42091076
commit
c58edcd114
|
@ -452,6 +452,10 @@ param in edje programs
|
|||
# undef EAPI
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_ECORE_IMF
|
||||
#include <Ecore_IMF.h>
|
||||
#endif
|
||||
|
||||
#ifdef _WIN32
|
||||
# ifdef EFL_EDJE_BUILD
|
||||
# ifdef DLL_EXPORT
|
||||
|
@ -2869,9 +2873,21 @@ EAPI int edje_object_part_text_cursor_pos_get (const E
|
|||
*/
|
||||
EAPI void edje_object_part_text_imf_context_reset (const Evas_Object *obj, const char *part);
|
||||
|
||||
#ifdef HAVE_ECORE_IMF
|
||||
/**
|
||||
* @brief Get the input method context in entry.
|
||||
*
|
||||
* @param obj A valid Evas_Object handle
|
||||
* @param part The part name
|
||||
*
|
||||
* @return The input method context in entry
|
||||
*/
|
||||
EAPI Ecore_IMF_Context *edje_object_part_text_imf_context_get (const Evas_Object *obj, const char *part);
|
||||
#endif
|
||||
|
||||
/**
|
||||
* @brief Set the layout of the input panel.
|
||||
*
|
||||
*
|
||||
* The layout of the input panel or virtual keyboard can make it easier or
|
||||
* harder to enter content. This allows you to hint what kind of input you
|
||||
* are expecting to enter and thus have the input panel automatically
|
||||
|
|
|
@ -2553,6 +2553,17 @@ _edje_entry_select_abort(Edje_Real_Part *rp)
|
|||
}
|
||||
}
|
||||
|
||||
#ifdef HAVE_ECORE_IMF
|
||||
Ecore_IMF_Context *
|
||||
_edje_entry_imf_context_get(Edje_Real_Part *rp)
|
||||
{
|
||||
Entry *en = rp->entry_data;
|
||||
if (!en) return NULL;
|
||||
|
||||
return en->imf_context;
|
||||
}
|
||||
#endif
|
||||
|
||||
void
|
||||
_edje_entry_autocapital_type_set(Edje_Real_Part *rp, Edje_Text_Autocapital_Type autocapital_type)
|
||||
{
|
||||
|
|
|
@ -1940,7 +1940,9 @@ void _edje_entry_cursor_geometry_get(Edje_Real_Part *rp, Evas_Coord *cx, Evas_Co
|
|||
void _edje_entry_select_allow_set(Edje_Real_Part *rp, Eina_Bool allow);
|
||||
Eina_Bool _edje_entry_select_allow_get(const Edje_Real_Part *rp);
|
||||
void _edje_entry_select_abort(Edje_Real_Part *rp);
|
||||
|
||||
#ifdef HAVE_ECORE_IMF
|
||||
Ecore_IMF_Context *_edje_entry_imf_context_get(Edje_Real_Part *rp);
|
||||
#endif
|
||||
Eina_Bool _edje_entry_cursor_next(Edje_Real_Part *rp, Edje_Cursor cur);
|
||||
Eina_Bool _edje_entry_cursor_prev(Edje_Real_Part *rp, Edje_Cursor cur);
|
||||
Eina_Bool _edje_entry_cursor_up(Edje_Real_Part *rp, Edje_Cursor cur);
|
||||
|
|
|
@ -1527,6 +1527,26 @@ edje_object_part_text_select_extend(const Evas_Object *obj, const char *part)
|
|||
_edje_entry_select_extend(rp);
|
||||
}
|
||||
|
||||
#ifdef HAVE_ECORE_IMF
|
||||
EAPI Ecore_IMF_Context *
|
||||
edje_object_part_text_imf_context_get(const Evas_Object *obj, const char *part)
|
||||
{
|
||||
Edje *ed;
|
||||
Edje_Real_Part *rp;
|
||||
|
||||
ed = _edje_fetch(obj);
|
||||
if ((!ed) || (!part)) return NULL;
|
||||
|
||||
rp = _edje_real_part_recursive_get(ed, (char *)part);
|
||||
if (!rp) return NULL;
|
||||
|
||||
if (rp->part->entry_mode > EDJE_ENTRY_EDIT_MODE_NONE)
|
||||
return _edje_entry_imf_context_get(rp);
|
||||
else
|
||||
return NULL;
|
||||
}
|
||||
#endif
|
||||
|
||||
EAPI Eina_Bool
|
||||
edje_object_part_text_cursor_next(Evas_Object *obj, const char *part, Edje_Cursor cur)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue