Tizen Native API
4.0
|
A multi-button entry is a widget letting an user enter text and each chunk of text managed as a set of buttons. Each text button is inserted by pressing the "return" key. If there is no space in the current row, a new button is added to the next row. When a text button is pressed, it will become focused. Backspace removes the focus. When the multi-button entry loses focus, items longer than one line are shrunk to one line.
The typical use case of multi-button entry is composing emails/messages to a group of addresses, each of which is an item that can be clicked for further actions.
This widget inherits from the Layout one, so that all the functions acting on it also work for multi-button entry objects (since 1.8).
This widget emits the following signals, besides the ones sent from Elm_Layout:
"item,selected"
- this is called when an item is selected by api, user interaction, and etc. this is also called when a user press back space while cursor is on the first field of entry."item,added"
- when a new multi-button entry item is added."item,deleted"
- when a multi-button entry item is deleted."item,clicked"
- this is called when an item is clicked by user interaction. Both "item,selected" and "item,clicked" are needed."item,longpressed"
- when multi-button entry item is pressed for a long time."clicked"
- when multi-button entry is clicked."focused"
- when multi-button entry is focused."unfocused"
- when multi-button entry is unfocused."expanded"
- when multi-button entry is expanded."contracted"
- when multi-button entry is contracted."expand,state,changed"
- when shrink mode state of multi-button entry is changed.Default text parts of the multi-button entry widget that you can use are:
Default text parts of multi-button entry items that you can use are:
Supported elm_object_item common APIs.
Functions | |
Evas_Object * | elm_multibuttonentry_add (Evas_Object *parent) |
Add a new multibuttonentry to the parent. | |
void | elm_multibuttonentry_editable_set (Elm_Multibuttonentry *obj, Eina_Bool editable) |
Control if the multibuttonentry is to be editable or not. | |
Eina_Bool | elm_multibuttonentry_editable_get (const Elm_Multibuttonentry *obj) |
Control if the multibuttonentry is to be editable or not. | |
void | elm_multibuttonentry_expanded_set (Elm_Multibuttonentry *obj, Eina_Bool expanded) |
Control the multibuttonentry to expanded state. | |
Eina_Bool | elm_multibuttonentry_expanded_get (const Elm_Multibuttonentry *obj) |
Control the multibuttonentry to expanded state. | |
void | elm_multibuttonentry_format_function_set (Elm_Multibuttonentry *obj, Elm_Multibuttonentry_Format_Cb format_function, const void *data) |
Set a function to format the string that will be used to display the hidden items counter. | |
const Eina_List * | elm_multibuttonentry_items_get (const Elm_Multibuttonentry *obj) |
Get a list of items in the multibuttonentry. | |
Elm_Widget_Item * | elm_multibuttonentry_first_item_get (const Elm_Multibuttonentry *obj) |
Get the first item in the multibuttonentry. | |
Elm_Widget_Item * | elm_multibuttonentry_last_item_get (const Elm_Multibuttonentry *obj) |
Get the last item in the multibuttonentry. | |
Evas_Object * | elm_multibuttonentry_entry_get (const Elm_Multibuttonentry *obj) |
Get the entry of the multibuttonentry object. | |
Elm_Widget_Item * | elm_multibuttonentry_selected_item_get (const Elm_Multibuttonentry *obj) |
Get the selected item in the multibuttonentry. | |
Elm_Widget_Item * | elm_multibuttonentry_item_prepend (Elm_Multibuttonentry *obj, const char *label, Evas_Smart_Cb func, void *data) |
Prepend a new item to the multibuttonentry. | |
void | elm_multibuttonentry_clear (Elm_Multibuttonentry *obj) |
Remove all items in the multibuttonentry. | |
void | elm_multibuttonentry_item_filter_remove (Elm_Multibuttonentry *obj, Elm_Multibuttonentry_Item_Filter_Cb func, void *data) |
Remove a filter from the list. | |
Elm_Widget_Item * | elm_multibuttonentry_item_insert_before (Elm_Multibuttonentry *obj, Elm_Widget_Item *before, const char *label, Evas_Smart_Cb func, void *data) |
Add a new item to the multibuttonentry before the indicated object reference. | |
Elm_Widget_Item * | elm_multibuttonentry_item_append (Elm_Multibuttonentry *obj, const char *label, Evas_Smart_Cb func, void *data) |
Append a new item to the multibuttonentry. | |
void | elm_multibuttonentry_item_filter_prepend (Elm_Multibuttonentry *obj, Elm_Multibuttonentry_Item_Filter_Cb func, void *data) |
Prepend a filter function for text inserted in the Multibuttonentry. | |
void | elm_multibuttonentry_item_filter_append (Elm_Multibuttonentry *obj, Elm_Multibuttonentry_Item_Filter_Cb func, void *data) |
Append an item filter function for text inserted in the Multibuttonentry. | |
Elm_Widget_Item * | elm_multibuttonentry_item_insert_after (Elm_Multibuttonentry *obj, Elm_Widget_Item *after, const char *label, Evas_Smart_Cb func, void *data) |
Add a new item to the multibuttonentry after the indicated object. | |
Typedefs | |
typedef Eina_Bool(* | Elm_Multibuttonentry_Item_Filter_Cb )(Evas_Object *obj, const char *item_label, void *item_data, void *data) |
Callback to be invoked when an item is added to the multibuttonentry. | |
typedef char *(* | Elm_Multibuttonentry_Format_Cb )(int count, void *data) |
This callback type is used to format the string that will be used to display the hidden items counter, when not in expanded mode.
count | Number of hidden items |
data | The (context) data passed in to elm_multibuttonentry_format_function_set() |
typedef Eina_Bool(* Elm_Multibuttonentry_Item_Filter_Cb)(Evas_Object *obj, const char *item_label, void *item_data, void *data) |
Callback to be invoked when an item is added to the multibuttonentry.
obj | The parent object |
item_label | The label corresponding to the added item. |
item_data | data specific to this item. |
data | data specific to the multibuttonentry. |
EINA_TRUE
EINA_FALSE
otherwise. Evas_Object* elm_multibuttonentry_add | ( | Evas_Object * | parent | ) |
Add a new multibuttonentry to the parent.
parent | The parent object |
void elm_multibuttonentry_clear | ( | Elm_Multibuttonentry * | obj | ) |
Remove all items in the multibuttonentry.
[in] | obj | The object. |
Eina_Bool elm_multibuttonentry_editable_get | ( | const Elm_Multibuttonentry * | obj | ) |
Control if the multibuttonentry is to be editable or not.
[in] | obj | The object. |
true
, user can add/delete item in multibuttonentry, if not, the multibuttonentry is non-editable.void elm_multibuttonentry_editable_set | ( | Elm_Multibuttonentry * | obj, |
Eina_Bool | editable | ||
) |
Control if the multibuttonentry is to be editable or not.
[in] | obj | The object. |
[in] | editable | If true , user can add/delete item in multibuttonentry, if not, the multibuttonentry is non-editable. |
Evas_Object* elm_multibuttonentry_entry_get | ( | const Elm_Multibuttonentry * | obj | ) |
Get the entry of the multibuttonentry object.
[in] | obj | The object. |
Eina_Bool elm_multibuttonentry_expanded_get | ( | const Elm_Multibuttonentry * | obj | ) |
Control the multibuttonentry to expanded state.
In expanded state, the complete entry will be displayed. Otherwise, only single line of the entry will be displayed.
[in] | obj | The object. |
true
for expanded state. Set this to false for single line state. void elm_multibuttonentry_expanded_set | ( | Elm_Multibuttonentry * | obj, |
Eina_Bool | expanded | ||
) |
Control the multibuttonentry to expanded state.
In expanded state, the complete entry will be displayed. Otherwise, only single line of the entry will be displayed.
[in] | obj | The object. |
[in] | expanded | the value of expanded state. Set this to true for expanded state. Set this to false for single line state. |
Elm_Widget_Item* elm_multibuttonentry_first_item_get | ( | const Elm_Multibuttonentry * | obj | ) |
Get the first item in the multibuttonentry.
[in] | obj | The object. |
void elm_multibuttonentry_format_function_set | ( | Elm_Multibuttonentry * | obj, |
Elm_Multibuttonentry_Format_Cb | format_function, | ||
const void * | data | ||
) |
Set a function to format the string that will be used to display the hidden items counter.
If format_function
is NULL
, the default format will be used, which is $"... + %d".
[in] | obj | The object. |
[in] | format_function | format_function The actual format function |
[in] | data | data User data to passed to format_function |
Elm_Widget_Item* elm_multibuttonentry_item_append | ( | Elm_Multibuttonentry * | obj, |
const char * | label, | ||
Evas_Smart_Cb | func, | ||
void * | data | ||
) |
Append a new item to the multibuttonentry.
See elm_object_item_del to delete the item.
[in] | obj | The object. |
[in] | label | The label of new item |
[in] | func | The callback function to be invoked when this item is pressed. |
[in] | data | The pointer to the data to be attached |
void elm_multibuttonentry_item_filter_append | ( | Elm_Multibuttonentry * | obj, |
Elm_Multibuttonentry_Item_Filter_Cb | func, | ||
void * | data | ||
) |
Append an item filter function for text inserted in the Multibuttonentry.
Append the given callback to the list. This functions will be called whenever any text is inserted into the Multibuttonentry, with the text to be inserted as a parameter. The callback function is free to alter the text in any way it wants, but it must remember to free the given pointer and update it. If the new text is to be discarded, the function can free it and set it text parameter to NULL. This will also prevent any following filters from being called.
[in] | obj | The object. |
[in] | func | The function to use as item filter |
[in] | data | User data to pass to func |
void elm_multibuttonentry_item_filter_prepend | ( | Elm_Multibuttonentry * | obj, |
Elm_Multibuttonentry_Item_Filter_Cb | func, | ||
void * | data | ||
) |
Prepend a filter function for text inserted in the Multibuttonentry.
Prepend the given callback to the list. See elm_multibuttonentry_item_filter_append() for more information
[in] | obj | The object. |
[in] | func | The function to use as text filter |
[in] | data | User data to pass to func |
void elm_multibuttonentry_item_filter_remove | ( | Elm_Multibuttonentry * | obj, |
Elm_Multibuttonentry_Item_Filter_Cb | func, | ||
void * | data | ||
) |
Remove a filter from the list.
Removes the given callback from the filter list. See elm_multibuttonentry_item_filter_append() for more information.
[in] | obj | The object. |
[in] | func | The filter function to remove |
[in] | data | The user data passed when adding the function |
Elm_Widget_Item* elm_multibuttonentry_item_insert_after | ( | Elm_Multibuttonentry * | obj, |
Elm_Widget_Item * | after, | ||
const char * | label, | ||
Evas_Smart_Cb | func, | ||
void * | data | ||
) |
Add a new item to the multibuttonentry after the indicated object.
See elm_object_item_del to delete the item.
[in] | obj | The object. |
[in] | after | The item after which to add it |
[in] | label | The label of new item |
[in] | func | The callback function to be invoked when this item is pressed. |
[in] | data | The pointer to the data to be attached |
Elm_Widget_Item* elm_multibuttonentry_item_insert_before | ( | Elm_Multibuttonentry * | obj, |
Elm_Widget_Item * | before, | ||
const char * | label, | ||
Evas_Smart_Cb | func, | ||
void * | data | ||
) |
Add a new item to the multibuttonentry before the indicated object reference.
See elm_object_item_del to delete the item.
[in] | obj | The object. |
[in] | before | The item before which to add it |
[in] | label | The label of new item |
[in] | func | The callback function to be invoked when this item is pressed. |
[in] | data | The pointer to the data to be attached |
Elm_Widget_Item* elm_multibuttonentry_item_prepend | ( | Elm_Multibuttonentry * | obj, |
const char * | label, | ||
Evas_Smart_Cb | func, | ||
void * | data | ||
) |
Prepend a new item to the multibuttonentry.
See elm_object_item_del to delete the item.
[in] | obj | The object. |
[in] | label | The label of new item |
[in] | func | The callback function to be invoked when this item is pressed. |
[in] | data | The pointer to the data to be attached |
const Eina_List* elm_multibuttonentry_items_get | ( | const Elm_Multibuttonentry * | obj | ) |
Get a list of items in the multibuttonentry.
[in] | obj | The object. |
Elm_Widget_Item* elm_multibuttonentry_last_item_get | ( | const Elm_Multibuttonentry * | obj | ) |
Get the last item in the multibuttonentry.
[in] | obj | The object. |
Elm_Widget_Item* elm_multibuttonentry_selected_item_get | ( | const Elm_Multibuttonentry * | obj | ) |
Get the selected item in the multibuttonentry.
[in] | obj | The object. |