* Change API names from edje_object_markup_filter_callback_{add,del,del_full}.
to edje_object_text_markup_filter_callback_{add,del,del_full}.
+
+2012-02-24 Jihoon Kim
+
+ * add edje_object_part_text_imf_context_get for getting Ecore_IMF_Context handle in edje text object
EAPI void edje_object_part_text_imf_context_reset (const Evas_Object *obj, const char *part);
/**
+ * @brief Get the input method context in entry.
+ *
+ * If ecore_imf was not available when edje was compiled, this function returns NULL
+ * otherwise, the returned pointer is an Ecore_IMF *
+ *
+ * @param obj A valid Evas_Object handle
+ * @param part The part name
+ *
+ * @return The input method context (Ecore_IMF_Context *) in entry
+ * @since 1.2.0
+ */
+EAPI void *edje_object_part_text_imf_context_get (const Evas_Object *obj, const char *part);
+
+/**
* @brief Set the layout of the input panel.
*
* The layout of the input panel or virtual keyboard can make it easier or
}
}
+void *
+_edje_entry_imf_context_get(Edje_Real_Part *rp)
+{
+ Entry *en = rp->entry_data;
+ if (!en) return NULL;
+
+#ifdef HAVE_ECORE_IMF
+ return en->imf_context;
+#else
+ return NULL;
+#endif
+}
+
void
_edje_entry_autocapital_type_set(Edje_Real_Part *rp, Edje_Text_Autocapital_Type autocapital_type)
{
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);
-
+void *_edje_entry_imf_context_get(Edje_Real_Part *rp);
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);
_edje_entry_select_extend(rp);
}
+EAPI void *
+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;
+}
+
EAPI Eina_Bool
edje_object_part_text_cursor_next(Evas_Object *obj, const char *part, Edje_Cursor cur)
{