Widget Tree Navigation

These functions provide checks for if a Evas_Object is an Elementary widget, the possibility of getting a widget's parent, top level parent and getting a string representation of a widget's type. More...

## Functions

Eina_Bool | elm_object_widget_check (const Evas_Object *obj)
| Check if the given Evas Object is an Elementary widget.
Evas_Object * | elm_object_parent_widget_get (const Evas_Object *obj)
| Get the first parent of the given object that is an Elementary widget.
Evas_Object * | elm_object_top_widget_get (const Evas_Object *obj)
| Get the top level parent of an Elementary widget.
const char * | elm_object_widget_type_get (const Evas_Object *obj)
| Get the string that represents this Elementary widget.

## Detailed Description

These functions provide checks for if a Evas_Object is an Elementary widget, the possibility of getting a widget's parent, top level parent and getting a string representation of a widget's type.

## Function Documentation

## elm_object_widget_check()

Eina_Bool elm_object_widget_check | ( | const Evas_Object * | obj | ) |

Check if the given Evas Object is an Elementary widget.

Parameters

  obj | the object to query.

Returns
  `EINA_TRUE` if it is an elementary widget variant, `EINA_FALSE` otherwise

References EINA_FALSE, and EINA_SAFETY_ON_NULL_RETURN_VAL.

## elm_object_parent_widget_get()

Evas_Object * elm_object_parent_widget_get | ( | const Evas_Object * | obj | ) |

Get the first parent of the given object that is an Elementary widget.

Parameters

  obj | the Elementary object to query parent from.

Returns
  the parent object that is an Elementary widget, or `NULL`, if it was not found.

Use this to query for an object's parent widget.

Note
  Most of Elementary users wouldn't be mixing non-Elementary smart objects in the objects tree of an application, as this is an advanced usage of Elementary with Evas. So, except for the application's window, which is the root of that tree, all other objects would have valid Elementary widget parents.

References EINA_SAFETY_ON_NULL_RETURN_VAL.

## elm_object_top_widget_get()

Evas_Object * elm_object_top_widget_get | ( | const Evas_Object * | obj | ) |

Get the top level parent of an Elementary widget.

Parameters

  obj | The object to query.

Returns
  The top level Elementary widget, or `NULL` if parent cannot be found.

References EINA_SAFETY_ON_NULL_RETURN_VAL.

Referenced by elm_object_focus_next(), elm_object_focus_next_object_get(), and elm_object_focused_object_get().

## elm_object_widget_type_get()

const char * elm_object_widget_type_get | ( | const Evas_Object * | obj | ) |

Get the string that represents this Elementary widget.

Parameters

  obj | the object to query.

Returns
  Elementary widget name, or `NULL` if not a valid widget.

References EINA_SAFETY_ON_NULL_RETURN_VAL.