* focused object **/
unsigned int order = 0;
Evas_Object *target;
- target = elm_obj_widget_newest_focus_order_get(win, &order, EINA_TRUE);
+ target = elm_widget_newest_focus_order_get(win, &order, EINA_TRUE);
if (target)
elm_interface_atspi_accessible_state_changed_signal_emit(target, ELM_ATSPI_STATE_FOCUSED, EINA_TRUE);
}
*
* @ingroup Widget
*/
-EOLIAN static Eina_List*
-_elm_widget_can_focus_child_list_get(Eo *obj EINA_UNUSED, Elm_Widget_Smart_Data *sd)
+EAPI Eina_List*
+elm_widget_can_focus_child_list_get(const Eo *obj)
{
+ Elm_Widget_Smart_Data *sd = efl_data_scope_safe_get(obj, MY_CLASS);
const Eina_List *l;
Eina_List *child_list = NULL;
Evas_Object *child;
+ if (!sd) return NULL;
EINA_LIST_FOREACH(sd->subobjs, l, child)
{
if (!_elm_widget_is(child)) continue;
return (sd->focused && sd->top_win_focused);
}
-EOLIAN static Eina_Bool
-_elm_widget_highlight_get(Eo *obj EINA_UNUSED, Elm_Widget_Smart_Data *sd)
+/** @internal */
+EAPI Eina_Bool
+elm_widget_highlight_get(const Eo *obj)
{
+ Elm_Widget_Smart_Data *sd = efl_data_scope_safe_get(obj, MY_CLASS);
+ if (!sd) return EINA_FALSE;
+
return sd->highlighted;
}
return sd->focus_order;
}
-EOLIAN static Evas_Object*
-_elm_widget_newest_focus_order_get(const Eo *obj, Elm_Widget_Smart_Data *sd, unsigned int *newest_focus_order, Eina_Bool can_focus_only)
+EAPI Evas_Object*
+elm_widget_newest_focus_order_get(const Eo *obj, unsigned int *newest_focus_order, Eina_Bool can_focus_only)
{
+ Elm_Widget_Smart_Data *sd = efl_data_scope_safe_get(obj, MY_CLASS);
const Eina_List *l;
Evas_Object *child, *cur, *best;
+ if (!sd) return NULL;
if (!evas_object_visible_get(obj)
|| (elm_widget_disabled_get(obj))
|| (elm_widget_tree_unfocusable_get(obj)))
return: int; [[FIXME]]
}
}
- @property can_focus_child_list {
- [[Can focus children list]]
- get {
- return: free(own(list<Efl.Canvas.Object>), eina_list_free) @warn_unused; [[List of children which can focus]]
- }
- }
@property focused_item {
get {
[[Get the focused widget item.]]
return: Elm.Widget.Item; [[Focused item]]
}
}
- @property highlight {
- [[Highlight property]]
- get {
- return: bool; [[$true if widget is highlight, $false otherwise]]
- }
- }
@property focused_object {
[[Current focused object in object tree.]]
get {
label: string; [[Label]]
}
}
- newest_focus_order_get @const {
- [[Get newest focus in order]]
- return: Efl.Canvas.Object; [[Handle to focused widget]]
- params {
- @out newest_focus_order: uint; [[Newest focus order]]
- @in can_focus_only: bool; [[$true only us widgets which can focus, $false otherweise]]
- }
- }
scroll_hold_push {
[[Push scroll hold]]
}