Macros | |
#define | ELM_SEGMENT_CONTROL_CLASS elm_segment_control_class_get() |
Elementary segment control class. | |
#define | ELM_SEGMENT_CONTROL_EVENT_CHANGED (&(_ELM_SEGMENT_CONTROL_EVENT_CHANGED)) |
Called when segment control changed. More... | |
Functions | |
EOAPI int | elm_obj_segment_control_item_count_get (const Eo *obj) |
Get the Segment items count from segment control. More... | |
EOAPI Elm_Widget_Item * | elm_obj_segment_control_item_selected_get (const Eo *obj) |
Get the selected item. More... | |
EOAPI const char * | elm_obj_segment_control_item_label_get (const Eo *obj, int idx) |
Get the label of item. More... | |
EOAPI Elm_Widget_Item * | elm_obj_segment_control_item_insert_at (Eo *obj, Efl_Canvas_Object *icon, const char *label, int idx) |
Insert a new item to the segment control object at specified position. More... | |
EOAPI Elm_Widget_Item * | elm_obj_segment_control_item_get (const Eo *obj, int idx) |
Get the item placed at specified index. More... | |
EOAPI void | elm_obj_segment_control_item_del_at (Eo *obj, int idx) |
Remove a segment control item at given index from its parent, deleting it. More... | |
EOAPI Elm_Widget_Item * | elm_obj_segment_control_item_add (Eo *obj, Efl_Canvas_Object *icon, const char *label) |
Append a new item to the segment control object. More... | |
EOAPI Efl_Canvas_Object * | elm_obj_segment_control_item_icon_get (const Eo *obj, int idx) |
Get the icon associated to the item. More... | |
Evas_Object * | elm_segment_control_add (Evas_Object *parent) |
Add a new segment control widget to the given parent Elementary (container) object. More... | |
Segment control widget is a horizontal control made of multiple segment items, each segment item functioning similar to discrete two state button. A segment control groups the items together and provides compact single button with multiple equal size segments.
Segment item size is determined by base widget size and the number of items added. Only one segment item can be at selected state. A segment item can display combination of Text and any Evas_Object like Images or other widget.
This widget inherits from the Layout one, so that all the functions acting on it also work for segment control objects.
This widget emits the following signals, besides the ones sent from Layout :
"changed"
- When the user clicks on a segment item which is not previously selected and get selected. The event_info parameter is the segment item pointer."language,changed"
- the program's language changed (since 1.9)Available styles for it:
"default"
Default content parts of the segment control items that you can use for are:
Default text parts of the segment control items that you can use for are:
Supported elm_object common APIs.
Supported elm_object_item common APIs.
Here is an example on its usage:
#define ELM_SEGMENT_CONTROL_EVENT_CHANGED (&(_ELM_SEGMENT_CONTROL_EVENT_CHANGED)) |
Called when segment control changed.
EOAPI int elm_obj_segment_control_item_count_get | ( | const Eo * | obj | ) |
EOAPI Elm_Widget_Item * elm_obj_segment_control_item_selected_get | ( | const Eo * | obj | ) |
Get the selected item.
The selected item can be unselected with function elm_segment_control_item_selected_set().
The selected item always will be highlighted on segment control.
[in] | obj | The object. |
NULL
if none of segment items is selected. EOAPI const char * elm_obj_segment_control_item_label_get | ( | const Eo * | obj, |
int | idx | ||
) |
Get the label of item.
The return value is a pointer to the label associated to the item when it was created, with function elm_segment_control_item_add(), or later with function elm_object_item_text_set. If no label was passed as argument, it will return NULL
.
[in] | obj | The object. |
[in] | idx | The index of the segment item. |
index
. EOAPI Elm_Widget_Item * elm_obj_segment_control_item_insert_at | ( | Eo * | obj, |
Efl_Canvas_Object * | icon, | ||
const char * | label, | ||
int | idx | ||
) |
Insert a new item to the segment control object at specified position.
Index values must be between $0, when item will be prepended to segment control, and items count, that can be get with elm_segment_control_item_count_get(), case when item will be appended to segment control, just like elm_segment_control_item_add().
Items created with this function can be deleted with function elm_object_item_del() or elm_segment_control_item_del_at().
label
set to NULL
is different from empty string "". If an item only has icon, it will be displayed bigger and centered. If it has icon and label, even that an empty string, icon will be smaller and positioned at left.[in] | obj | The object. |
[in] | icon | The icon object to use for the left side of the item. An icon can be any Evas object, but usually it is an icon created with elm_icon_add(). |
[in] | label | The label of the item. |
[in] | idx | Item position. Value should be between 0 and items count. |
NULL
upon failure. EOAPI Elm_Widget_Item * elm_obj_segment_control_item_get | ( | const Eo * | obj, |
int | idx | ||
) |
Get the item placed at specified index.
Index is the position of an item in segment control widget. Its range is from $0 to count - 1
. Count is the number of items, that can be get with elm_segment_control_item_count_get().
[in] | obj | The object. |
[in] | idx | The index of the segment item. |
NULL
on failure. EOAPI void elm_obj_segment_control_item_del_at | ( | Eo * | obj, |
int | idx | ||
) |
Remove a segment control item at given index from its parent, deleting it.
Items can be added with elm_segment_control_item_add() or elm_segment_control_item_insert_at().
[in] | obj | The object. |
[in] | idx | The position of the segment control item to be deleted. |
EOAPI Elm_Widget_Item * elm_obj_segment_control_item_add | ( | Eo * | obj, |
Efl_Canvas_Object * | icon, | ||
const char * | label | ||
) |
Append a new item to the segment control object.
A new item will be created and appended to the segment control, i.e., will be set as last item.
If it should be inserted at another position, elm_segment_control_item_insert_at() should be used instead.
Items created with this function can be deleted with function elm_object_item_del() or elm_object_item_del_at().
label
set to NULL
is different from empty string "". If an item only has icon, it will be displayed bigger and centered. If it has icon and label, even that an empty string, icon will be smaller and positioned at left.[in] | obj | The object. |
[in] | icon | The icon object to use for the left side of the item. An icon can be any Evas object, but usually it is an icon created with elm_icon_add(). |
[in] | label | The label of the item. Note that, NULL is different from empty string "". |
NULL
upon failure. EOAPI Efl_Canvas_Object * elm_obj_segment_control_item_icon_get | ( | const Eo * | obj, |
int | idx | ||
) |
Get the icon associated to the item.
The return value is a pointer to the icon associated to the item when it was created, with function elm_segment_control_item_add(), or later with function elm_object_item_part_content_set(). If no icon was passed as argument, it will return NULL
.
[in] | obj | The object. |
[in] | idx | The index of the segment item. |
index
. Evas_Object * elm_segment_control_add | ( | Evas_Object * | parent | ) |
Add a new segment control widget to the given parent Elementary (container) object.
parent | The parent object. |
NULL
, on errors.This function inserts a new segment control widget on the canvas.
References EINA_SAFETY_ON_NULL_RETURN_VAL.