Multibuttonentry

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

Typedefs | Functions
Multibuttonentry

## 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. More...
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. More...

## Functions
Evas_Object * | elm_multibuttonentry_add (Evas_Object *parent)
| Add a new multibuttonentry to the parent. More...

## Detailed Description

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 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" - A label of the multi-button entry

Default text parts of multi-button entry items that you can use are:

- "default" - A label of the multi-button entry item

Supported elm_object_item common APIs.

- elm_object_item_del
- elm_object_item_part_text_set
- elm_object_item_part_text_get

## Typedef Documentation

Elm_Multibuttonentry_Format_Cb

This callback type is used to format the string that will be used to display the hidden items counter, when not in expanded mode.

Parameters

  count | Number of hidden items
  data | The (context) data passed in to elm_multibuttonentry_format_function_set()

Returns
  String representing the counter that will be set to multibuttonentry's counter item's text.

See also
  elm_multibuttonentry_format_function_set()
  elm_multibuttonentry_expanded_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.

Parameters

  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.

Returns
  `EINA_TRUE` `EINA_FALSE` otherwise.

## Function Documentation

Evas_Object* elm_multibuttonentry_add | ( | Evas_Object * | parent | ) |

Add a new multibuttonentry to the parent.

Parameters

  parent | The parent object

Returns
  The new object or NULL if it cannot be created