Merge remote-tracking branch 'remotes/origin/upstream'
[framework/uifw/elementary.git] / src / lib / elm_toolbar.h
index bfeb795..1637a78 100644 (file)
  * @enum _Elm_Toolbar_Shrink_Mode
  * @typedef Elm_Toolbar_Shrink_Mode
  *
+<<<<<<< HEAD
+ * Set toolbar's items display behavior, it can be scrollabel,
+=======
  * Set toolbar's items display behavior, it can be scrollable,
+>>>>>>> remotes/origin/upstream
  * show a menu with exceeding items, or simply hide them.
  *
  * @note Default value is #ELM_TOOLBAR_SHRINK_MENU. It reads value
  * from elm config.
  *
+<<<<<<< HEAD
+ * Values <b> don't </b> work as bitmask, only one can be choosen.
+=======
  * Values <b> don't </b> work as bitmask, only one can be chosen.
+>>>>>>> remotes/origin/upstream
  *
  * @see elm_toolbar_shrink_mode_set()
  * @see elm_toolbar_shrink_mode_get()
  */
 typedef enum
 {
+<<<<<<< HEAD
+   ELM_TOOLBAR_SHRINK_NONE, /**< Set toolbar minimun size to fit all the items. */
+=======
    ELM_TOOLBAR_SHRINK_NONE, /**< Set toolbar minimum size to fit all the items. */
+>>>>>>> remotes/origin/upstream
    ELM_TOOLBAR_SHRINK_HIDE, /**< Hide exceeding items. */
    ELM_TOOLBAR_SHRINK_SCROLL, /**< Allow accessing exceeding items through a scroller. */
    ELM_TOOLBAR_SHRINK_MENU, /**< Inserts a button to pop up a menu with exceeding items. */
@@ -140,6 +152,73 @@ EAPI void                         elm_toolbar_icon_order_lookup_set(Evas_Object
 EAPI Elm_Icon_Lookup_Order        elm_toolbar_icon_order_lookup_get(const Evas_Object *obj);
 
 /**
+<<<<<<< HEAD
+ * Set whether the toolbar should always have an item selected.
+ *
+ * @param obj The toolbar object.
+ * @param wrap @c EINA_TRUE to enable always-select mode or @c EINA_FALSE to
+ * disable it.
+ *
+ * This will cause the toolbar to always have an item selected, and clicking
+ * the selected item will not cause a selected event to be emitted. Enabling this mode
+ * will immediately select the first toolbar item.
+ *
+ * Always-selected is disabled by default.
+ *
+ * @see elm_toolbar_always_select_mode_get().
+ *
+ * @ingroup Toolbar
+ */
+EAPI void                         elm_toolbar_always_select_mode_set(Evas_Object *obj, Eina_Bool always_select);
+
+/**
+ * Get whether the toolbar should always have an item selected.
+ *
+ * @param obj The toolbar object.
+ * @return @c EINA_TRUE means an item will always be selected, @c EINA_FALSE indicates
+ * that it is possible to have no items selected. If @p obj is @c NULL, @c EINA_FALSE is returned.
+ *
+ * @see elm_toolbar_always_select_mode_set() for details.
+ *
+ * @ingroup Toolbar
+ */
+EAPI Eina_Bool                    elm_toolbar_always_select_mode_get(const Evas_Object *obj);
+
+/**
+ * Set whether the toolbar items' should be selected by the user or not.
+ *
+ * @param obj The toolbar object.
+ * @param wrap @c EINA_TRUE to disable selection or @c EINA_FALSE to
+ * enable it.
+ *
+ * This will turn off the ability to select items entirely and they will
+ * neither appear selected nor emit selected signals. The clicked
+ * callback function will still be called.
+ *
+ * Selection is enabled by default.
+ *
+ * @see elm_toolbar_no_select_mode_get().
+ *
+ * @ingroup Toolbar
+ */
+EAPI void                         elm_toolbar_no_select_mode_set(Evas_Object *obj, Eina_Bool no_select);
+
+/**
+ * Set whether the toolbar items' should be selected by the user or not.
+ *
+ * @param obj The toolbar object.
+ * @return @c EINA_TRUE means items can be selected. @c EINA_FALSE indicates
+ * they can't. If @p obj is @c NULL, @c EINA_FALSE is returned.
+ *
+ * @see elm_toolbar_no_select_mode_set() for details.
+ *
+ * @ingroup Toolbar
+ */
+EAPI Eina_Bool                    elm_toolbar_no_select_mode_get(const Evas_Object *obj);
+
+/**
+=======
+>>>>>>> remotes/origin/upstream
  * Append item to the toolbar.
  *
  * @param obj The toolbar object.
@@ -158,7 +237,11 @@ EAPI Elm_Icon_Lookup_Order        elm_toolbar_icon_order_lookup_get(const Evas_O
  * Associated @p data can be properly freed when item is deleted if a
  * callback function is set with elm_object_item_del_cb_set().
  *
+<<<<<<< HEAD
+ * If a function is passed as argument, it will be called everytime this item
+=======
  * If a function is passed as argument, it will be called every time this item
+>>>>>>> remotes/origin/upstream
  * is selected, i.e., the user clicks over an unselected item.
  * If such function isn't needed, just passing
  * @c NULL as @p func is enough. The same should be done for @p data.
@@ -193,7 +276,11 @@ EAPI Elm_Object_Item             *elm_toolbar_item_append(Evas_Object *obj, cons
  * Associated @p data can be properly freed when item is deleted if a
  * callback function is set with elm_object_item_del_cb_set().
  *
+<<<<<<< HEAD
+ * If a function is passed as argument, it will be called everytime this item
+=======
  * If a function is passed as argument, it will be called every time this item
+>>>>>>> remotes/origin/upstream
  * is selected, i.e., the user clicks over an unselected item.
  * If such function isn't needed, just passing
  * @c NULL as @p func is enough. The same should be done for @p data.
@@ -229,7 +316,11 @@ EAPI Elm_Object_Item             *elm_toolbar_item_prepend(Evas_Object *obj, con
  * Associated @p data can be properly freed when item is deleted if a
  * callback function is set with elm_object_item_del_cb_set().
  *
+<<<<<<< HEAD
+ * If a function is passed as argument, it will be called everytime this item
+=======
  * If a function is passed as argument, it will be called every time this item
+>>>>>>> remotes/origin/upstream
  * is selected, i.e., the user clicks over an unselected item.
  * If such function isn't needed, just passing
  * @c NULL as @p func is enough. The same should be done for @p data.
@@ -265,7 +356,11 @@ EAPI Elm_Object_Item             *elm_toolbar_item_insert_before(Evas_Object *ob
  * Associated @p data can be properly freed when item is deleted if a
  * callback function is set with elm_object_item_del_cb_set().
  *
+<<<<<<< HEAD
+ * If a function is passed as argument, it will be called everytime this item
+=======
  * If a function is passed as argument, it will be called every time this item
+>>>>>>> remotes/origin/upstream
  * is selected, i.e., the user clicks over an unselected item.
  * If such function isn't needed, just passing
  * @c NULL as @p func is enough. The same should be done for @p data.
@@ -328,7 +423,11 @@ EAPI Elm_Object_Item             *elm_toolbar_item_next_get(const Elm_Object_Ite
 /**
  * Get the item before @p item in toolbar.
  *
+<<<<<<< HEAD
+ * @param item The toolbar item.
+=======
  * @param it The toolbar item.
+>>>>>>> remotes/origin/upstream
  * @return The item before @p item, or @c NULL if none or on failure.
  *
  * @note If it is the first item, @c NULL will be returned.
@@ -406,8 +505,13 @@ EAPI Eina_Bool                    elm_toolbar_item_selected_get(const Elm_Object
  * This sets the selected state of the given item @p it.
  * @c EINA_TRUE for selected, @c EINA_FALSE for not selected.
  *
+<<<<<<< HEAD
+ * If a new item is selected the previosly selected will be unselected.
+ * Previoulsy selected item can be get with function
+=======
  * If a new item is selected the previously selected will be unselected.
  * Previously selected item can be get with function
+>>>>>>> remotes/origin/upstream
  * elm_toolbar_selected_item_get().
  *
  * Selected items will be highlighted.
@@ -439,6 +543,10 @@ EAPI Elm_Object_Item             *elm_toolbar_selected_item_get(const Evas_Objec
 /**
  * Set the icon associated with @p item.
  *
+<<<<<<< HEAD
+ * @param obj The parent of this item.
+=======
+>>>>>>> remotes/origin/upstream
  * @param it The toolbar item.
  * @param icon A string with icon name or the absolute path of an image file.
  *
@@ -526,7 +634,11 @@ EAPI Eina_Bool                    elm_toolbar_item_icon_file_set(Elm_Object_Item
  * Set or unset item as a separator.
  *
  * @param it The toolbar item.
+<<<<<<< HEAD
+ * @param setting @c EINA_TRUE to set item @p item as separator or
+=======
  * @param separator @c EINA_TRUE to set item @p item as separator or
+>>>>>>> remotes/origin/upstream
  * @c EINA_FALSE to unset, i.e., item will be used as a regular item.
  *
  * Items aren't set as separator by default.
@@ -560,7 +672,11 @@ EAPI Eina_Bool                    elm_toolbar_item_separator_get(const Elm_Objec
  * @param shrink_mode Toolbar's items display behavior.
  *
  * The toolbar won't scroll if #ELM_TOOLBAR_SHRINK_NONE,
+<<<<<<< HEAD
+ * but will enforce a minimun size so all the items will fit, won't scroll
+=======
  * but will enforce a minimum size so all the items will fit, won't scroll
+>>>>>>> remotes/origin/upstream
  * and won't show the items that don't fit if #ELM_TOOLBAR_SHRINK_HIDE,
  * will scroll if #ELM_TOOLBAR_SHRINK_SCROLL, and will create a button to
  * pop up excess elements with #ELM_TOOLBAR_SHRINK_MENU.
@@ -746,7 +862,11 @@ EAPI Evas_Object                 *elm_toolbar_item_menu_get(const Elm_Object_Ite
 EAPI Elm_Toolbar_Item_State      *elm_toolbar_item_state_add(Elm_Object_Item *it, const char *icon, const char *label, Evas_Smart_Cb func, const void *data);
 
 /**
+<<<<<<< HEAD
+ * Delete a previoulsy added state to @p item.
+=======
  * Delete a previously added state to @p item.
+>>>>>>> remotes/origin/upstream
  *
  * @param it The toolbar item.
  * @param state The state to be deleted.
@@ -765,7 +885,11 @@ EAPI Eina_Bool                    elm_toolbar_item_state_del(Elm_Object_Item *it
  *
  * If @p state is @c NULL, it won't select any state and the default item's
  * icon and label will be used. It's the same behaviour than
+<<<<<<< HEAD
+ * elm_toolbar_item_state_unser().
+=======
  * elm_toolbar_item_state_unset().
+>>>>>>> remotes/origin/upstream
  *
  * @see elm_toolbar_item_state_unset()
  *
@@ -856,6 +980,8 @@ EAPI Eina_Bool                    elm_toolbar_horizontal_get(const Evas_Object *
  * @ingroup Toolbar
  */
 EAPI unsigned int                 elm_toolbar_items_count(const Evas_Object *obj);
+<<<<<<< HEAD
+=======
 
 /**
  * Set the toolbar select mode.
@@ -894,6 +1020,7 @@ elm_toolbar_select_mode_set(Evas_Object *obj, Elm_Object_Select_Mode mode);
 EAPI Elm_Object_Select_Mode
 elm_toolbar_select_mode_get(const Evas_Object *obj);
 
+>>>>>>> remotes/origin/upstream
 /**
  * @}
  */