- Main Page
- Related Pages
- Data Structures
- Files
- Examples

Functions
Flip Selector

## Functions
EOAPI void | elm_obj_flipselector_first_interval_set (double interval)
| Set the interval on time updates for a user mouse button hold on a flip selector widget. More...
EOAPI double | elm_obj_flipselector_first_interval_get (void)
| Get the interval on time updates for an user mouse button hold on a flip selector widget. More...
EOAPI const Eina_List * | elm_obj_flipselector_items_get (void)
| Get the internal list of items in a given flip selector widget. More...
EOAPI Elm_Object_Item * | elm_obj_flipselector_first_item_get (void)
| Get the first item in the given flip selector widget's list of items. More...
EOAPI Elm_Object_Item * | elm_obj_flipselector_last_item_get (void)
| Get the last item in the given flip selector widget's list of items. More...
EOAPI Elm_Object_Item * | elm_obj_flipselector_selected_item_get (void)
| Get the currently selected item in a flip selector widget. More...
EOAPI Elm_Object_Item * | elm_obj_flipselector_item_prepend (const char *label, Evas_Smart_Cb func, void *data)
| Prepend a (text) item to a flip selector widget. More...
EOAPI void | elm_obj_flipselector_flip_next (void)
| Programmatically select the next item of a flip selector widget. More...
EOAPI Elm_Object_Item * | elm_obj_flipselector_item_append (const char *label, Evas_Smart_Cb func, const void *data)
| Append a (text) item to a flip selector widget. More...
EOAPI void | elm_obj_flipselector_flip_prev (void)
| Programmatically select the previous item of a flip selector widget. More...
Elm_Object_Item * | elm_flipselector::item_prepend (std::string label_, Evas_Smart_Cb func_, void *data_) const
| Prepend a (text) item to a flip selector widget. More...
void | elm_flipselector::flip_next () const
| Programmatically select the next item of a flip selector widget. More...
Elm_Object_Item * | elm_flipselector::item_append (std::string label_, Evas_Smart_Cb func_, const void *data_) const
| Append a (text) item to a flip selector widget. More...
void | elm_flipselector::flip_prev () const
| Programmatically select the previous item of a flip selector widget. More...
void | elm_flipselector_first_interval_set (Eo *obj, double interval)
| Set the interval on time updates for a user mouse button hold on a flip selector widget. More...
double | elm_flipselector_first_interval_get (const Eo *obj)
| Get the interval on time updates for an user mouse button hold on a flip selector widget. More...
const Eina_List * | elm_flipselector_items_get (const Eo *obj)
| Get the internal list of items in a given flip selector widget. More...
Elm_Object_Item * | elm_flipselector_first_item_get (const Eo *obj)
| Get the first item in the given flip selector widget's list of items. More...
Elm_Object_Item * | elm_flipselector_last_item_get (const Eo *obj)
| Get the last item in the given flip selector widget's list of items. More...
Elm_Object_Item * | elm_flipselector_selected_item_get (const Eo *obj)
| Get the currently selected item in a flip selector widget. More...
Elm_Object_Item * | elm_flipselector_item_prepend (Eo *obj, const char *label, Evas_Smart_Cb func, void *data)
| Prepend a (text) item to a flip selector widget. More...
void | elm_flipselector_flip_next (Eo *obj)
| Programmatically select the next item of a flip selector widget. More...
Elm_Object_Item * | elm_flipselector_item_append (Eo *obj, const char *label, Evas_Smart_Cb func, const void *data)
| Append a (text) item to a flip selector widget. More...
void | elm_flipselector_flip_prev (Eo *obj)
| Programmatically select the previous item of a flip selector widget. More...
void | elm_flipselector_item_selected_set (Elm_Object_Item *it, Eina_Bool selected)
| Set whether a given flip selector widget's item should be the currently selected one. More...
Eina_Bool | elm_flipselector_item_selected_get (const Elm_Object_Item *it)
| Get whether a given flip selector widget's item is the currently selected one. More...
Elm_Object_Item * | elm_flipselector_item_prev_get (const Elm_Object_Item *it)
| Get the item before `item` in a flip selector widget's internal list of items. More...
Elm_Object_Item * | elm_flipselector_item_next_get (const Elm_Object_Item *it)
| Get the item after `item` in a flip selector widget's internal list of items. More...
Evas_Object * | elm_flipselector_add (Evas_Object *parent)
| Add a new flip selector widget to the given parent Elementary (container) widget. More...

## Detailed Description

A flip selector is a widget to show a set of text items, one at a time, with the same sheet switching style as the clock widget, when one changes the current displaying sheet (thus, the "flip" in the name).

User clicks to flip sheets which are held for some time will make the flip selector to flip continuously and automatically for the user. The interval between flips will keep growing in time, so that it helps the user to reach an item which is distant from the current selection.

This widget inherits from the Layout one, so that all the functions acting on it also work for flip selector objects.

This widget emits the following signals, besides the ones sent from Layout:

- `"selected"` - when the widget's selected text item is changed. The `event_info` parameter is the item that was selected.
- `"overflowed"` - when the widget's current selection is changed from the first item in its list to the last
- `"underflowed"` - when the widget's current selection is changed from the last item in its list to the first
- `"focused"` - When the flip selector has received focus. (since 1.8)
- `"unfocused"` - When the flip selector has lost focus. (since 1.8)
- `"language,changed"` - the program's language changed (since 1.9)

Available styles for it:

- `"default"`

Default text parts of the flipselector items that you can use for are:

- "default" - label of the flipselector item

Supported elm_object common APIs.

- elm_object_disabled_set
- elm_object_disabled_get

Supported elm_object_item common APIs.

- elm_object_item_del
- elm_object_item_part_text_set
- elm_object_item_part_text_get
- elm_object_item_signal_emit

Here is an example on its usage:

- Flip selector widget example

## Function Documentation

Evas_Object* elm_flipselector_add | ( | Evas_Object * | parent | ) |

Add a new flip selector widget to the given parent Elementary (container) widget.

Parameters

  parent | The parent object

Returns
  a new flip selector widget handle or `NULL`, on errors

This function inserts a new flip selector widget on the canvas.

double elm_flipselector_first_interval_get | ( | const Eo * | obj | ) |

Get the interval on time updates for an user mouse button hold on a flip selector widget.

Returns
  The (first) interval value, in seconds, set on it

See also
  elm_flipselector_first_interval_set() for more details

References elm_obj_flipselector_first_interval_get().

void elm_flipselector_first_interval_set | ( | Eo * | obj,
|  | double | interval
| ) |  |

Set the interval on time updates for a user mouse button hold on a flip selector widget.

This interval value is decreased while the user holds the mouse pointer either flipping up or flipping down a given flip selector.

This helps the user to get to a given item distant from the current one easier/faster, as it will start to flip quicker and quicker on mouse button holds.

The calculation for the next flip interval value, starting from the one set with this call, is the previous interval divided by 1.05, so it decreases a little bit.

The default starting interval value for automatic flips is 0.85 seconds.

See also
  elm_flipselector_first_interval_get()

Parameters

  [in] | interval | The (first) interval value in seconds

References elm_obj_flipselector_first_interval_set().

Elm_Object_Item* elm_flipselector_first_item_get | ( | const Eo * | obj | ) |

Get the first item in the given flip selector widget's list of items.

Returns
  The first item or `NULL`, if it has no items (and on errors)

See also
  elm_flipselector_item_append()
  elm_flipselector_last_item_get()

References elm_obj_flipselector_first_item_get().

void elm_flipselector_flip_next | ( | Eo * | obj | ) |

Programmatically select the next item of a flip selector widget.

Note
  The selection will be animated. Also, if it reaches the end of its list of member items, it will continue with the first one onwards.

References elm_obj_flipselector_flip_next().

void elm_flipselector_flip_prev | ( | Eo * | obj | ) |

Programmatically select the previous item of a flip selector widget.

Note
  The selection will be animated. Also, if it reaches the beginning of its list of member items, it will continue with the last one backwards.

References elm_obj_flipselector_flip_prev().

Elm_Object_Item* elm_flipselector_item_append | ( | Eo * | obj,
|  | const char * | label,
|  | Evas_Smart_Cb | func,
|  | const void * | data
| ) |  |

Append a (text) item to a flip selector widget.

Returns
  A handle to the item added or `NULL`, on errors

The widget's list of labels to show will be appended with the given value. If the user wishes so, a callback function pointer can be passed, which will get called when this same item is selected.

Note
  The current selection won't be modified by appending an element to the list.
  The maximum length of the text label is going to be determined by the widget's theme. Strings larger than that value are going to be truncated.

Parameters

  [in] | label | The (text) label of the new item
  [in] | func | Convenience callback function to take place when item is selected
  [in] | data | Data passed to `func`, above

References elm_obj_flipselector_item_append().

Elm_Object_Item* elm_flipselector_item_next_get | ( | const Elm_Object_Item * | it | ) |

Get the item after `item` in a flip selector widget's internal list of items.

Parameters

  it | The item to fetch next from

Returns
  The item after the `item`, in its parent's list. If there is no next item for `item` or there's an error, `NULL` is returned.

See also
  elm_flipselector_item_prev_get()

Elm_Object_Item* elm_flipselector_item_prepend | ( | Eo * | obj,
|  | const char * | label,
|  | Evas_Smart_Cb | func,
|  | void * | data
| ) |  |

Prepend a (text) item to a flip selector widget.

Returns
  A handle to the item added or `NULL`, on errors

The widget's list of labels to show will be prepended with the given value. If the user wishes so, a callback function pointer can be passed, which will get called when this same item is selected.

Note
  The current selection won't be modified by prepending an element to the list.
  The maximum length of the text label is going to be determined by the widget's theme. Strings larger than that value are going to be truncated.

Parameters

  [in] | label | The (text) label of the new item
  [in] | func | Convenience callback function to take place when item is selected
  [in] | data | Data passed to `func`, above

References elm_obj_flipselector_item_prepend().

Elm_Object_Item* elm_flipselector_item_prev_get | ( | const Elm_Object_Item * | it | ) |

Get the item before `item` in a flip selector widget's internal list of items.

Parameters

  it | The item to fetch previous from

Returns
  The item before the `item`, in its parent's list. If there is no previous item for `item` or there's an error, `NULL` is returned.

See also
  elm_flipselector_item_next_get()

Eina_Bool elm_flipselector_item_selected_get | ( | const Elm_Object_Item * | it | ) |

Get whether a given flip selector widget's item is the currently selected one.

Parameters

  it | The flip selector item

Returns
  `EINA_TRUE`, if it's selected, `EINA_FALSE` otherwise (or on errors).

See also
  elm_flipselector_item_selected_set()

void elm_flipselector_item_selected_set | ( | Elm_Object_Item * | it,
|  | Eina_Bool | selected
| ) |  |

Set whether a given flip selector widget's item should be the currently selected one.

Parameters

  it | The flip selector item
  selected | `EINA_TRUE` to select it, `EINA_FALSE` to unselect.

This sets whether `item` is or not the selected (thus, under display) one. If `item` is different than the one under display, the latter will be unselected. If the `item` is set to be unselected, on the other hand, the first item in the widget's internal members list will be the new selected one.

See also
  elm_flipselector_item_selected_get()

const Eina_List* elm_flipselector_items_get | ( | const Eo * | obj | ) |

Get the internal list of items in a given flip selector widget.

Returns
  The list of items (Elm_Object_Item as data) or `NULL` on errors.

This list is not to be modified in any way and must not be freed. Use the list members with functions like elm_object_item_text_set(), elm_object_item_text_get(), elm_object_item_del(), elm_flipselector_item_selected_get(), elm_flipselector_item_selected_set().

Warning
  This list is only valid until `obj` object's internal items list is changed. It should be fetched again with another call to this function when changes happen.

References elm_obj_flipselector_items_get().

Elm_Object_Item* elm_flipselector_last_item_get | ( | const Eo * | obj | ) |

Get the last item in the given flip selector widget's list of items.

Returns
  The last item or `NULL`, if it has no items (and on errors)

See also
  elm_flipselector_item_prepend()
  elm_flipselector_first_item_get()

References elm_obj_flipselector_last_item_get().

Elm_Object_Item* elm_flipselector_selected_item_get | ( | const Eo * | obj | ) |

Get the currently selected item in a flip selector widget.

Returns
  The selected item or `NULL`, if the widget has no items (and on errors)

References elm_obj_flipselector_selected_item_get().

EOAPI double elm_obj_flipselector_first_interval_get | ( | void |  | ) |

Get the interval on time updates for an user mouse button hold on a flip selector widget.

Returns
  The (first) interval value, in seconds, set on it

See also
  elm_flipselector_first_interval_set() for more details

Referenced by elm_flipselector_first_interval_get().

EOAPI void elm_obj_flipselector_first_interval_set | ( | double | interval | ) |

Set the interval on time updates for a user mouse button hold on a flip selector widget.

This interval value is decreased while the user holds the mouse pointer either flipping up or flipping down a given flip selector.

This helps the user to get to a given item distant from the current one easier/faster, as it will start to flip quicker and quicker on mouse button holds.

The calculation for the next flip interval value, starting from the one set with this call, is the previous interval divided by 1.05, so it decreases a little bit.

The default starting interval value for automatic flips is 0.85 seconds.

See also
  elm_flipselector_first_interval_get()

Parameters

  [in] | interval | The (first) interval value in seconds

Referenced by elm_flipselector_first_interval_set().

EOAPI Elm_Object_Item* elm_obj_flipselector_first_item_get | ( | void |  | ) |

Get the first item in the given flip selector widget's list of items.

Returns
  The first item or `NULL`, if it has no items (and on errors)

See also
  elm_flipselector_item_append()
  elm_flipselector_last_item_get()

Referenced by elm_flipselector_first_item_get().

EOAPI void elm_obj_flipselector_flip_next | ( | void |  | ) |

Programmatically select the next item of a flip selector widget.

Note
  The selection will be animated. Also, if it reaches the end of its list of member items, it will continue with the first one onwards.

Referenced by elm_flipselector_flip_next(), and elm_flipselector::flip_next().

EOAPI void elm_obj_flipselector_flip_prev | ( | void |  | ) |

Programmatically select the previous item of a flip selector widget.

Note
  The selection will be animated. Also, if it reaches the beginning of its list of member items, it will continue with the last one backwards.

Referenced by elm_flipselector_flip_prev(), and elm_flipselector::flip_prev().

EOAPI Elm_Object_Item* elm_obj_flipselector_item_append | ( | const char * | label,
|  | Evas_Smart_Cb | func,
|  | const void * | data
| ) |  |

Append a (text) item to a flip selector widget.

Returns
  A handle to the item added or `NULL`, on errors

The widget's list of labels to show will be appended with the given value. If the user wishes so, a callback function pointer can be passed, which will get called when this same item is selected.

Note
  The current selection won't be modified by appending an element to the list.
  The maximum length of the text label is going to be determined by the widget's theme. Strings larger than that value are going to be truncated.

Parameters

  [in] | label | The (text) label of the new item
  [in] | func | Convenience callback function to take place when item is selected
  [in] | data | Data passed to `func`, above

Referenced by elm_flipselector_item_append(), and elm_flipselector::item_append().

EOAPI Elm_Object_Item* elm_obj_flipselector_item_prepend | ( | const char * | label,
|  | Evas_Smart_Cb | func,
|  | void * | data
| ) |  |

Prepend a (text) item to a flip selector widget.

Returns
  A handle to the item added or `NULL`, on errors

The widget's list of labels to show will be prepended with the given value. If the user wishes so, a callback function pointer can be passed, which will get called when this same item is selected.

Note
  The current selection won't be modified by prepending an element to the list.
  The maximum length of the text label is going to be determined by the widget's theme. Strings larger than that value are going to be truncated.

Parameters

  [in] | label | The (text) label of the new item
  [in] | func | Convenience callback function to take place when item is selected
  [in] | data | Data passed to `func`, above

Referenced by elm_flipselector_item_prepend(), and elm_flipselector::item_prepend().

EOAPI const Eina_List* elm_obj_flipselector_items_get | ( | void |  | ) |

Get the internal list of items in a given flip selector widget.

Returns
  The list of items (Elm_Object_Item as data) or `NULL` on errors.

This list is not to be modified in any way and must not be freed. Use the list members with functions like elm_object_item_text_set(), elm_object_item_text_get(), elm_object_item_del(), elm_flipselector_item_selected_get(), elm_flipselector_item_selected_set().

Warning
  This list is only valid until `obj` object's internal items list is changed. It should be fetched again with another call to this function when changes happen.

Referenced by elm_flipselector_items_get().

EOAPI Elm_Object_Item* elm_obj_flipselector_last_item_get | ( | void |  | ) |

Get the last item in the given flip selector widget's list of items.

Returns
  The last item or `NULL`, if it has no items (and on errors)

See also
  elm_flipselector_item_prepend()
  elm_flipselector_first_item_get()

Referenced by elm_flipselector_last_item_get().

EOAPI Elm_Object_Item* elm_obj_flipselector_selected_item_get | ( | void |  | ) |

Get the currently selected item in a flip selector widget.

Returns
  The selected item or `NULL`, if the widget has no items (and on errors)

Referenced by elm_flipselector_selected_item_get().

void elm_flipselector::flip_next | ( |  | ) | const
| inline

Programmatically select the next item of a flip selector widget.

Note
  The selection will be animated. Also, if it reaches the end of its list of member items, it will continue with the first one onwards.

References elm_obj_flipselector_flip_next().

void elm_flipselector::flip_prev | ( |  | ) | const
| inline

Programmatically select the previous item of a flip selector widget.

Note
  The selection will be animated. Also, if it reaches the beginning of its list of member items, it will continue with the last one backwards.

References elm_obj_flipselector_flip_prev().

Elm_Object_Item* elm_flipselector::item_append | ( | std::string | label_,
|  | Evas_Smart_Cb | func_,
|  | const void * | data_
| ) |  | const
| inline

Append a (text) item to a flip selector widget.

Returns
  A handle to the item added or `NULL`, on errors

The widget's list of labels to show will be appended with the given value. If the user wishes so, a callback function pointer can be passed, which will get called when this same item is selected.

Note
  The current selection won't be modified by appending an element to the list.
  The maximum length of the text label is going to be determined by the widget's theme. Strings larger than that value are going to be truncated.

Parameters

  label | The (text) label of the new item
  func | Convenience callback function to take place when item is selected
  data | Data passed to `func`, above

References elm_obj_flipselector_item_append().

Elm_Object_Item* elm_flipselector::item_prepend | ( | std::string | label_,
|  | Evas_Smart_Cb | func_,
|  | void * | data_
| ) |  | const
| inline

Prepend a (text) item to a flip selector widget.

Returns
  A handle to the item added or `NULL`, on errors

The widget's list of labels to show will be prepended with the given value. If the user wishes so, a callback function pointer can be passed, which will get called when this same item is selected.

Note
  The current selection won't be modified by prepending an element to the list.
  The maximum length of the text label is going to be determined by the widget's theme. Strings larger than that value are going to be truncated.

Parameters

  label | The (text) label of the new item
  func | Convenience callback function to take place when item is selected
  data | Data passed to `func`, above

References elm_obj_flipselector_item_prepend().