Flip Selector

- 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_Widget_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_Widget_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_Widget_Item * | elm_obj_flipselector_selected_item_get (void)
| Get the currently selected item in a flip selector widget. More...
EOAPI Elm_Widget_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_Widget_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...
void | elm_flipselector_first_interval_set (Elm_Flipselector *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 Elm_Flipselector *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 Elm_Flipselector *obj)
| Get the internal list of items in a given flip selector widget. More...
Elm_Widget_Item * | elm_flipselector_first_item_get (const Elm_Flipselector *obj)
| Get the first item in the given flip selector widget's list of items. More...
Elm_Widget_Item * | elm_flipselector_last_item_get (const Elm_Flipselector *obj)
| Get the last item in the given flip selector widget's list of items. More...
Elm_Widget_Item * | elm_flipselector_selected_item_get (const Elm_Flipselector *obj)
| Get the currently selected item in a flip selector widget. More...
Elm_Widget_Item * | elm_flipselector_item_prepend (Elm_Flipselector *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 (Elm_Flipselector *obj)
| Programmatically select the next item of a flip selector widget. More...
Elm_Widget_Item * | elm_flipselector_item_append (Elm_Flipselector *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 (Elm_Flipselector *obj)
| Programmatically select the previous item of a flip selector widget. 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" - A 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.

References elm_layout_signal_emit(), and elm_layout_sizing_eval().

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

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

See also elm_flipselector_first_interval_set for more details.

Returns
  The (first) interval value in seconds.

References elm_obj_flipselector_first_interval_get().

void elm_flipselector_first_interval_set | ( | Elm_Flipselector * | 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_Widget_Item* elm_flipselector_first_item_get | ( | const Elm_Flipselector * | obj | ) |

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

See also elm_flipselector_item_append, elm_flipselector_last_item_get.

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

References elm_obj_flipselector_first_item_get().

void elm_flipselector_flip_next | ( | Elm_Flipselector * | 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 | ( | Elm_Flipselector * | 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_Widget_Item* elm_flipselector_item_append | ( | Elm_Flipselector * | obj,
|  | const char * | label,
|  | Evas_Smart_Cb | func,
|  | const void * | data
| ) |  |

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

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] | 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_Widget_Item* elm_flipselector_item_prepend | ( | Elm_Flipselector * | obj,
|  | const char * | label,
|  | Evas_Smart_Cb | func,
|  | void * | data
| ) |  |

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

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] | func | Convenience callback function to take place when item is selected.
  [in] | data | Data passed to `func`, above.

References elm_obj_flipselector_item_prepend().

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

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

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_Widget_Item* elm_flipselector_last_item_get | ( | const Elm_Flipselector * | obj | ) |

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

See also elm_flipselector_item_prepend, elm_flipselector_first_item_get.

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

References elm_obj_flipselector_last_item_get().

Elm_Widget_Item* elm_flipselector_selected_item_get | ( | const Elm_Flipselector * | 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.

See also elm_obj_flipselector_first_interval_set for more details.

Returns
  The (first) interval value in seconds.

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_obj_flipselector_first_interval_get.

Parameters

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

Referenced by elm_flipselector_first_interval_set().

EOAPI Elm_Widget_Item* elm_obj_flipselector_first_item_get | ( | void |  | ) |

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

See also elm_obj_flipselector_item_append, elm_obj_flipselector_last_item_get.

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

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().

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().

EOAPI Elm_Widget_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.

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] | func | Convenience callback function to take place when item is selected.
  [in] | data | Data passed to `func`, above.

Referenced by elm_flipselector_item_append().

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

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

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] | func | Convenience callback function to take place when item is selected.
  [in] | data | Data passed to `func`, above.

Referenced by 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.

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_Widget_Item* elm_obj_flipselector_last_item_get | ( | void |  | ) |

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

See also elm_obj_flipselector_item_prepend, elm_obj_flipselector_first_item_get.

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

Referenced by elm_flipselector_last_item_get().

EOAPI Elm_Widget_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().