diff options
author | Cedric BAIL <cedric@osg.samsung.com> | 2016-03-23 12:56:14 -0700 |
---|---|---|
committer | Cedric BAIL <cedric@osg.samsung.com> | 2016-03-23 13:24:41 -0700 |
commit | c2a1c49ab2042f559b28e840e54feb8494888e0e (patch) | |
tree | c6eb110b7c479499854eede9d0c3ab0a80c9a11a /src/lib/elementary/elm_toolbar.eo | |
parent | 9340855597e7e465435c69b6278650346688da14 (diff) | |
download | efl-c2a1c49ab2042f559b28e840e54feb8494888e0e.tar.gz |
elementary: move all legacy files to their expected new location.
Diffstat (limited to 'src/lib/elementary/elm_toolbar.eo')
-rw-r--r-- | src/lib/elementary/elm_toolbar.eo | 402 |
1 files changed, 402 insertions, 0 deletions
diff --git a/src/lib/elementary/elm_toolbar.eo b/src/lib/elementary/elm_toolbar.eo new file mode 100644 index 0000000000..66f92f37aa --- /dev/null +++ b/src/lib/elementary/elm_toolbar.eo @@ -0,0 +1,402 @@ +import elm_general; + +enum Elm.Toolbar.Shrink_Mode +{ + [[Set toolbar's items display behavior, it can be scrollable, + show a menu with exceeding items, or simply hide them. + + Default value is #ELM_TOOLBAR_SHRINK_MENU. It reads value + from elm config. + + Values don't work as bitmask, only one can be chosen. + + See also @Elm.Toolbar.shrink_mode.set, @Elm.Toolbar.shrink_mode.get. + ]] + + legacy: elm_toolbar_shrink; + + none, [[Set toolbar minimum size to fit all the items.]] + hide, [[Hide exceeding items.]] + scroll, [[Allow accessing exceeding items through a scroller.]] + menu, [[Inserts a button to pop up a menu with exceeding items.]] + expand, [[Expand all items according the size of the toolbar.]] + last [[Indicates error if returned by elm_toolbar_shrink_mode_get()]] +} + +class Elm.Toolbar (Elm.Widget, Elm.Interface_Scrollable, + Elm.Interface_Atspi_Widget_Action, Elm.Interface_Atspi_Selection, + Evas.Clickable_Interface, Evas.Selectable_Interface) +{ + eo_prefix: elm_obj_toolbar; + methods { + @property homogeneous { + [[Control homogeneous mode. + + This will enable the homogeneous mode where items are of the same size.]] + set { + } + get { + } + values { + homogeneous: bool; [[Assume the items within the toolbar are of the same size (true = on, false = off). Default is $false.]] + } + } + @property align { + [[Control the alignment of the items. + + Alignment of toolbar items, from 0.0 to indicates to align + left, to 1.0, to align to right. 0.5 centralize + items. + + Centered items by default.]] + set { + } + get { + } + values { + align: double; [[The new alignment, a float between 0.0 and 1.0.]] + } + } + @property select_mode { + [[Control the toolbar select mode. + + elm_toolbar_select_mode_set() changes item select mode in the toolbar widget. + - #ELM_OBJECT_SELECT_MODE_DEFAULT : Items will only call their selection func and + callback when first becoming selected. Any further clicks will + do nothing, unless you set always select mode. + - #ELM_OBJECT_SELECT_MODE_ALWAYS : This means that, even if selected, + every click will make the selected callbacks be called. + - #ELM_OBJECT_SELECT_MODE_NONE : This will turn off the ability to select items + entirely and they will neither appear selected nor call selected + callback functions.]] + set { + } + get { + } + values { + mode: Elm.Object.Select_Mode(Elm.Object.Select_Mode.max); [[The select mode If getting mode fails, it returns #ELM_OBJECT_SELECT_MODE_MAX]] + } + } + @property icon_size { + [[Control the icon size, in pixels, to be used by toolbar items. + + Note: Default value is $32. It reads value from elm config.]] + set { + } + get { + } + values { + icon_size: int; [[The icon size in pixels]] + } + } + @property horizontal { + [[Change a toolbar's orientation + + By default, a toolbar will be horizontal. Use this function to create a vertical toolbar.]] + set { + } + get { + } + values { + horizontal: bool; [[If $true, the toolbar is horizontal.]] + } + } + @property icon_order_lookup { + [[Sets icon lookup order, for toolbar items' icons. + + Icons added before calling this function will not be affected. + The default lookup order is #ELM_ICON_LOOKUP_THEME_FDO.]] + set { + } + get { + } + values { + order: Elm.Icon.Lookup_Order(1); [[The icon lookup order. (If getting the icon order loopup fails, it returns #ELM_ICON_LOOKUP_THEME_FDO)]] + } + } + @property shrink_mode { + [[Control the item displaying mode of a given toolbar widget $obj. + + The toolbar won't scroll under #ELM_TOOLBAR_SHRINK_NONE mode, but + it will enforce a minimum size, so that all the items will fit + inside it. It won't scroll and won't show the items that don't fit + under #ELM_TOOLBAR_SHRINK_HIDE mode. Finally, it'll scroll under + #ELM_TOOLBAR_SHRINK_SCROLL mode, and it will create a button to + aggregate items which didn't fit with the #ELM_TOOLBAR_SHRINK_MENU + mode. + + If shrink mode is changed, Toolbar will send one of the following + signal to each item for informing the current shrink mode. + "elm,state,shrink,default" + "elm,state,shrink,hide" + "elm,state,shrink,scroll" + "elm,state,shrink,menu" + "elm,state,shrink,expand" + + Warning: This function's behavior will clash with those of + elm_scroller_policy_set(), so use either one of them, but not both.]] + set { + } + get { + } + values { + shrink_mode: Elm.Toolbar.Shrink_Mode; [[Toolbar's items display behavior]] + } + } + @property menu_parent { + [[Control the parent object of the toolbar items' menus. + + Each item can be set as item menu, with elm_toolbar_item_menu_set(). + + For more details about setting the parent for toolbar menus, see + elm_menu_parent_set(). + + See: elm_menu_parent_set() for details. + See: elm_toolbar_item_menu_set() for details.]] + set { + } + get { + } + values { + parent: Evas.Object *; [[The parent of the menu objects.]] + } + } + @property standard_priority { + [[Set the standard priority of visible items in a toolbar + + If the priority of the item is up to standard priority, it is shown in basic panel. + The other items are located in more menu or panel. The more menu or panel can be shown when the more item is clicked. + + @since 1.7]] + set { + } + get { + } + values { + priority: int; [[The standard_priority of visible items]] + } + } + @property selected_item { + get { + [[Get the selected item. + + The selected item can be unselected with function + elm_toolbar_item_selected_set(). + + The selected item always will be highlighted on toolbar.]] + + return: Elm.Widget_Item *; [[The selected toolbar item.]] + } + } + @property first_item { + get { + [[Get the first item in the given toolbar widget's list of items. + + See: @.item_append and @.last_item]] + + return: Elm.Widget_Item *; [[The first item or $NULL, if it has no items (and on errors)]] + } + } + @property more_item { + get { + [[Get the more item which is auto-generated by toolbar. + + Toolbar generates 'more' item when there is no more space to fit items in + and toolbar is in #ELM_TOOLBAR_SHRINK_MENU or #ELM_TOOLBAR_SHRINK_EXPAND mode. + The more item can be manipulated by elm_object_item_text_set() and + elm_object_item_content_set.]] + + return: Elm.Widget_Item *; [[The toolbar more item.]] + } + } + @property last_item { + get { + [[Get the last item in the given toolbar widget's list of items. + + See: @.item_prepend and @.first_item]] + return: Elm.Widget_Item *; [[The last item or $NULL, if it has no items (and on errors)]] + } + } + item_insert_before { + [[Insert a new item into the toolbar object before item $before. + + A new item will be created and added to the toolbar. Its position in + this toolbar will be just before item $before. + + Items created with this method can be deleted with + elm_object_item_del(). + + Associated $data can be properly freed when item is deleted if a + callback function is set with elm_object_item_del_cb_set(). + + If a function is passed as argument, it will be called every time this item + is selected, i.e., the user clicks over an unselected item. + If such function isn't needed, just passing + $NULL as $func is enough. The same should be done for $data. + + Toolbar will load icon image from fdo or current theme. + This behavior can be set by elm_toolbar_icon_order_lookup_set() function. + If an absolute path is provided it will load it direct from a file. + + Note: This function does not accept relative icon path. + + See: elm_toolbar_item_icon_set()]] + + return: Elm.Widget_Item *; [[The created item or $NULL upon failure.]] + params { + @in before: Elm.Widget_Item *; [[The toolbar item to insert before.]] + @in icon: const(char)* @optional; [[A string with icon name or the absolute path of an image file.]] + @in label: const(char)*; [[The label of the item.]] + @in func: Evas_Smart_Cb @optional; [[The function to call when the item is clicked.]] + @in data: const(void)* @optional; [[The data to associate with the item for related callbacks.]] + } + } + item_insert_after { + [[Insert a new item into the toolbar object after item $after. + + A new item will be created and added to the toolbar. Its position in + this toolbar will be just after item $after. + + Items created with this method can be deleted with + elm_object_item_del(). + + Associated $data can be properly freed when item is deleted if a + callback function is set with elm_object_item_del_cb_set(). + + If a function is passed as argument, it will be called every time this item + is selected, i.e., the user clicks over an unselected item. + If such function isn't needed, just passing + $NULL as $func is enough. The same should be done for $data. + + Toolbar will load icon image from fdo or current theme. + This behavior can be set by elm_toolbar_icon_order_lookup_set() function. + If an absolute path is provided it will load it direct from a file. + + Note: This function does not accept relative icon path. + + See: elm_toolbar_item_icon_set()]] + + return: Elm.Widget_Item *; [[The created item or $NULL upon failure.]] + params { + @in after: Elm.Widget_Item *; [[The toolbar item to insert after.]] + @in icon: const(char)* @optional; [[A string with icon name or the absolute path of an image file.]] + @in label: const(char)*; [[The label of the item.]] + @in func: Evas_Smart_Cb @optional; [[The function to call when the item is clicked.]] + @in data: const(void)* @optional; [[The data to associate with the item for related callbacks.]] + } + } + item_append { + [[Append item to the toolbar. + + A new item will be created and appended to the toolbar, i.e., will + be set as last item. + + Items created with this method can be deleted with + elm_object_item_del(). + + Associated $data can be properly freed when item is deleted if a + callback function is set with elm_object_item_del_cb_set(). + + If a function is passed as argument, it will be called every time this item + is selected, i.e., the user clicks over an unselected item. + If such function isn't needed, just passing + $NULL as $func is enough. The same should be done for $data. + + Toolbar will load icon image from fdo or current theme. + This behavior can be set by elm_toolbar_icon_order_lookup_set() function. + If an absolute path is provided it will load it direct from a file. + + Note: This function does not accept relative icon path. + + See: elm_toolbar_item_icon_set()]] + + return: Elm.Widget_Item *; [[The created item or $NULL upon failure.]] + params { + @in icon: const(char)* @optional; [[A string with icon name or the absolute path of an image file.]] + @in label: const(char)*; [[The label of the item.]] + @in func: Evas_Smart_Cb @optional; [[The function to call when the item is clicked.]] + @in data: const(void)* @optional; [[The data to associate with the item for related callbacks.]] + } + } + items_count @const { + [[Get the number of items in a toolbar]] + return: uint; [[The number of items in $obj toolbar]] + } + item_prepend { + [[Prepend item to the toolbar. + + A new item will be created and prepended to the toolbar, i.e., will + be set as first item. + + Items created with this method can be deleted with + elm_object_item_del(). + + Associated $data can be properly freed when item is deleted if a + callback function is set with elm_object_item_del_cb_set(). + + If a function is passed as argument, it will be called every time this item + is selected, i.e., the user clicks over an unselected item. + If such function isn't needed, just passing + $NULL as $func is enough. The same should be done for $data. + + Toolbar will load icon image from fdo or current theme. + This behavior can be set by elm_toolbar_icon_order_lookup_set() function. + If an absolute path is provided it will load it direct from a file. + + Note: This function does not accept relative icon path. + + See: elm_toolbar_item_icon_set()]] + + return: Elm.Widget_Item *; [[The created item or $NULL upon failure.]] + params { + @in icon: const(char)* @optional; [[A string with icon name or the absolute path of an image file.]] + @in label: const(char)*; [[The label of the item.]] + @in func: Evas_Smart_Cb @optional; [[The function to call when the item is clicked.]] + @in data: const(void)* @optional; [[The data to associate with the item for related callbacks.]] + } + } + item_find_by_label @const { + [[Returns a pointer to a toolbar item by its label.]] + + return: Elm.Widget_Item *; [[The pointer to the toolbar item matching $label or $NULL on failure.]] + params { + @in label: const(char)*; [[The label of the item to find.]] + } + } + } + implements { + class.constructor; + Eo.Base.constructor; + Evas.Object_Smart.calculate; + Evas.Object_Smart.move; + Evas.Object_Smart.add; + Evas.Object_Smart.del; + Evas.Object_Smart.member_add; + Evas.Object_Smart.resize; + Elm.Widget.focus_next_manager_is; + Elm.Widget.access; + Elm.Widget.focus_next; + Elm.Widget.theme_apply; + Elm.Widget.on_focus; + Elm.Widget.translate; + Elm.Widget.event; + Elm.Widget.focus_highlight_geometry_get; + Elm.Widget.focused_item.get; + Elm.Interface_Atspi_Widget_Action.elm_actions.get; + Elm.Interface_Atspi_Accessible.children.get; + Elm.Interface_Atspi_Accessible.state_set.get; + Elm.Interface_Atspi_Selection.selected_children_count.get; + Elm.Interface_Atspi_Selection.selected_child.get; + Elm.Interface_Atspi_Selection.selected_child_deselect; + Elm.Interface_Atspi_Selection.child_select; + Elm.Interface_Atspi_Selection.child_deselect; + Elm.Interface_Atspi_Selection.is_child_selected; + Elm.Interface_Atspi_Selection.all_children_select; + Elm.Interface_Atspi_Selection.clear; + } + events { + item,focused; + item,unfocused; + } + +} |