diff --git a/src/Makefile_Elementary.am b/src/Makefile_Elementary.am index 6a0385a77d..0ca9be82cc 100644 --- a/src/Makefile_Elementary.am +++ b/src/Makefile_Elementary.am @@ -146,8 +146,6 @@ elm_public_eolian_files += \ lib/elementary/elm_atspi_bridge.eo \ lib/elementary/elm_atspi_app_object.eo \ lib/elementary/efl_ui_image_zoomable_pan.eo \ - lib/elementary/elm_widget_item.eo \ - lib/elementary/elm_widget_item_container.eo \ $(NULL) # Private classes (not exposed or shipped) @@ -175,7 +173,6 @@ elm_private_eolian_files = \ # Legacy classes - not part of public EO API elm_legacy_eolian_files = \ lib/elementary/efl_ui_clock_legacy.eo \ - lib/elementary/elm_widget_item_static_focus.eo \ lib/elementary/elm_ctxpopup_part.eo \ lib/elementary/elm_dayselector_part.eo \ lib/elementary/elm_entry_part.eo \ @@ -395,6 +392,10 @@ lib/elementary/elm_view_form_eo.c \ lib/elementary/elm_view_list_eo.c \ lib/elementary/elm_web_eo.c \ lib/elementary/elm_web_eo.legacy.c \ +lib/elementary/elm_widget_item_container_eo.c \ +lib/elementary/elm_widget_item_eo.c \ +lib/elementary/elm_widget_item_eo.legacy.c \ +lib/elementary/elm_widget_item_static_focus_eo.c \ $(NULL) elm_legacy_eo_headers = \ @@ -608,6 +609,12 @@ lib/elementary/elm_view_list_eo.h \ lib/elementary/elm_view_list_eo.legacy.h \ lib/elementary/elm_web_eo.h \ lib/elementary/elm_web_eo.legacy.h \ +lib/elementary/elm_widget_item_container_eo.h \ +lib/elementary/elm_widget_item_container_eo.legacy.h \ +lib/elementary/elm_widget_item_eo.h \ +lib/elementary/elm_widget_item_eo.legacy.h \ +lib/elementary/elm_widget_item_static_focus_eo.h \ +lib/elementary/elm_widget_item_static_focus_eo.legacy.h \ $(NULL) diff --git a/src/lib/elementary/efl_ui_widget.c b/src/lib/elementary/efl_ui_widget.c index e6f95cf397..4bd900f0b4 100644 --- a/src/lib/elementary/efl_ui_widget.c +++ b/src/lib/elementary/efl_ui_widget.c @@ -5959,8 +5959,8 @@ ELM_PART_TEXT_DEFAULT_GET(efl_ui_widget, NULL) EFL_OBJECT_OP_FUNC(efl_canvas_object_is_frame_object_set, _efl_ui_widget_efl_canvas_object_is_frame_object_set), \ EFL_OBJECT_OP_FUNC(efl_dbg_info_get, _efl_ui_widget_efl_object_dbg_info_get) -#include "elm_widget_item.eo.c" -#include "elm_widget_item_container.eo.c" +#include "elm_widget_item_eo.c" +#include "elm_widget_item_container_eo.c" #include "efl_ui_widget.eo.c" #include "efl_ui_widget_eo.legacy.c" diff --git a/src/lib/elementary/elm_object_item.h b/src/lib/elementary/elm_object_item.h index 2956ff2278..76571bf621 100644 --- a/src/lib/elementary/elm_object_item.h +++ b/src/lib/elementary/elm_object_item.h @@ -22,7 +22,7 @@ typedef Eo Elm_Object_Item; typedef void (*Elm_Object_Item_Signal_Cb)(void *data, Elm_Object_Item *it, const char *emission, const char *source); #ifndef EFL_NOLEGACY_API_SUPPORT -#include "elm_widget_item.eo.legacy.h" +#include "elm_widget_item_eo.legacy.h" #endif #define elm_object_item_content_set(it, content) elm_object_item_part_content_set((it), NULL, (content)) diff --git a/src/lib/elementary/elm_priv.h b/src/lib/elementary/elm_priv.h index 0368de188a..bfba69ae58 100644 --- a/src/lib/elementary/elm_priv.h +++ b/src/lib/elementary/elm_priv.h @@ -66,7 +66,7 @@ # include "efl_ui_focus_parent_provider.eo.h" # include "efl_ui_widget_focus_manager.eo.h" # include "efl_ui_focus_parent_provider_standard.eo.h" -# include "elm_widget_item_static_focus.eo.h" +# include "elm_widget_item_static_focus_eo.h" # include "efl_ui_selection_manager.eo.h" # include "efl_datetime_manager.eo.h" # include "efl_ui_size_model.eo.h" diff --git a/src/lib/elementary/elm_widget.h b/src/lib/elementary/elm_widget.h index 015c100e30..0b8a5df5cb 100644 --- a/src/lib/elementary/elm_widget.h +++ b/src/lib/elementary/elm_widget.h @@ -305,7 +305,7 @@ typedef void (*Elm_Widget_Item_Signal_Cb)(void *data, Elm_Objec typedef void (*Elm_Access_On_Highlight_Cb)(void *data); #include "efl_ui_widget.eo.h" -#include "elm_widget_item_container.eo.h" +#include "elm_widget_item_container_eo.h" /** * @addtogroup Widget @@ -801,6 +801,6 @@ const char *efl_ui_widget_default_text_part_get(const Eo *obj); #define ELM_WIDGET_ITEM_PROTECTED -#include "elm_widget_item.eo.h" +#include "elm_widget_item_eo.h" #endif diff --git a/src/lib/elementary/elm_widget_item.eo b/src/lib/elementary/elm_widget_item.eo deleted file mode 100644 index 7f221e26d5..0000000000 --- a/src/lib/elementary/elm_widget_item.eo +++ /dev/null @@ -1,547 +0,0 @@ -import elm_general; -import efl_ui; - -type Elm_Tooltip_Item_Content_Cb: __undefined_type; [[Elementary tooltip item content callback type]] -type Elm_Object_Item_Signal_Cb: __undefined_type; [[Elementary object item signal callback type]] - -class Elm.Widget.Item extends Efl.Object implements Efl.Access.Object, - Efl.Access.Component -{ - [[Elementary widget item class]] - eo_prefix: elm_wdg_item; - legacy_prefix: elm_object_item; - methods { - @property tooltip_window_mode { - [[Control size restriction state of an object's tooltip - - This function returns whether a tooltip is allowed to expand beyond - its parent window's canvas. - It will instead be limited only by the size of the display.]] - get { - } - set { - return: bool; [[$false on failure, $true on success]] - } - values { - disable: bool; [[If $true, size restrictions are disabled]] - } - } - @property tooltip_style { - [[Control a different style for this item tooltip. - - Note: before you set a style you should define a tooltip with - @.tooltip_content_cb_set or - @.tooltip_text_set - - See: elm_object_tooltip_style_set() for more details.]] - get { - } - set { - } - values { - style: string; [[The theme style used/to use (default, transparent, ...)]] - } - } - @property cursor { - [[Control the type of mouse pointer/cursor decoration to be shown, - when the mouse pointer is over the given item - - This function works analogously as elm_object_cursor_set(), but - here the cursor's changing area is restricted to the item's - area, and not the whole widget's. Note that that item cursors - have precedence over widget cursors, so that a mouse over an - item with custom cursor set will always show that cursor. - - If this function is called twice for an object, a previously set - cursor will be unset on the second call.]] - get { - } - set { - } - values { - cursor: string; [[The cursor type's name]] - } - } - @property cursor_style { - [[Control a different $style for a given custom cursor set for an item. - - This function only makes sense when one is using custom mouse - cursor decorations defined in a theme file, which can have, - given a cursor name/type, alternate styles on it. It - works analogously as elm_object_cursor_style_set(), but here - applies only to item objects. - - Warning: Before you set a cursor style you should have defined a - custom cursor previously on the item, with @.cursor.set]] - get { - } - set { - } - values { - style: string; [[The theme style to use/in use (e.g. $"default", $"transparent", etc)]] - } - } - @property cursor_engine_only { - [[Control if the (custom)cursor for a given item should be - searched in its theme, also, or should only rely on the - rendering engine. - - Note: This call is of use only if you've set a custom cursor - for items, with @.cursor.set. - - Note: By default, cursors will only be looked for between those - provided by the rendering engine.]] - get { - } - set { - } - values { - engine_only: bool; [[Use $true to have cursors looked for only on those provided by the rendering engine, $false to have them searched on the widget's theme, as well.]] - } - } - @property part_content { - [[Control a content of an object item - - This sets a new object to an item as a content object. If any object was - already set as a content object in the same part, previous object will be - deleted automatically.]] - get { - } - set { - } - keys { - part: string @nullable; [[The content part name (NULL for the default content)]] - } - values { - content: Efl.Canvas.Object; [[The content of the object item]] - } - } - @property part_text { - [[Control a label of an object item - - Note: Elementary object items may have many labels]] - get { - } - set { - } - keys { - part: string @nullable; [[The text part name (NULL for the default label)]] - } - values { - label: string; [[Text of the label]] - } - } - @property part_text_custom @protected { - get { - [[Get additional text part content]] - legacy: null; - } - set { - [[Save additional text part content]] - legacy: null; - } - keys { - part: string; [[Part name]] - } - values { - label: string; [[Label name]] - } - } - @property item_focus { - [[Control the object item focused - - @since 1.10]] - get { - legacy: elm_object_item_focus_get; - } - set { - legacy: elm_object_item_focus_set; - } - values { - focused: bool; [[The focused state]] - } - } - @property style { - [[Control the style of an object item - - @since 1.9]] - get { - } - set { - } - values { - style: string; [[The style of object item]] - } - } - @property disabled { - [[Control the disabled state of a widget item. - - Elementary object item can be disabled, in which state they won't - receive input and, in general, will be themed differently from - their normal state, usually greyed out. Useful for contexts - where you don't want your users to interact with some of the - parts of you interface. - - This sets the state for the widget item, either disabling it or - enabling it back.]] - get { - } - set { - } - values { - disable: bool; [[$true, if the widget item is disabled, $false if it's enabled (or on errors)]] - } - } - access_order_get { - [[Get highlight order - - @since 1.8]] - return: const(list); [[List of evas canvas objects]] - } - access_order_set { - [[Set highlight order - - @since 1.8]] - params { - @in objs: list @owned; [[Order of objects to pass highlight]] - } - } - widget_get @const { - [[Get the widget object's handle which contains a given item - - Note: This returns the widget object itself that an item belongs to. - Note: Every elm_object_item supports this API]] - return: Efl.Canvas.Object; [[The widget object]] - } - pre_notify_del @protected { - [[notify deletion of widget item]] - legacy: null; - } - tooltip_text_set { - [[Set the text to be shown in a given object item's tooltips. - - Setup the text as tooltip to object. The item can have only one tooltip, - so any previous tooltip data - set with this function or - @.tooltip_content_cb_set - is removed. - - See: elm_object_tooltip_text_set() for more details.]] - params { - text: string; [[The text to set in the content.]] - } - } - tooltip_translatable_text_set @protected { - [[Set widget item tooltip as a text string]] - legacy: null; - params { - text: string; [[Tooltip text]] - } - } - tooltip_unset { - [[Unset tooltip from item. - - Remove tooltip from item. The callback provided as del_cb to - @.tooltip_content_cb_set will be called to notify - it is not used anymore. - - See: elm_object_tooltip_unset() for more details. - See: @.tooltip_content_cb_set]] - } - cursor_unset { - [[Unset any custom mouse pointer/cursor decoration set to be - shown, when the mouse pointer is over the given - item, thus making it show the default cursor again. - - Use this call to undo any custom settings on this item's cursor - decoration, bringing it back to defaults (no custom style set). - - See: elm_object_cursor_unset() - See: @.cursor.set]] - } - part_content_unset { - [[Unset a content of an object item - - Note: Elementary object items may have many contents]] - params { - part: string; [[The content part name to unset (NULL for the default content)]] - } - return: Efl.Canvas.Object; [[Content object]] - } - part_text_custom_update @protected { - [[Update additional text part content]] - legacy: null; - } - signal_callback_add { - [[Add a callback for a signal emitted by object item edje. - - This function connects a callback function to a signal emitted by the - edje object of the object item. - Globs can occur in either the emission or source name. - - @since 1.8]] - params { - emission: string; [[The signal's name.]] - source: string; [[The signal's source.]] - func: Elm_Object_Item_Signal_Cb; [[The callback function to be executed when the signal is emitted.]] - data: void_ptr; [[A pointer to data to pass to the callback function.]] - } - } - signal_callback_del { - [[Remove a signal-triggered callback from a object item edje object. - - This function removes the last callback, previously attached to - a signal emitted by an underlying Edje object of $it, whose - parameters $emission, $source and $func match exactly with - those passed to a previous call to - @.signal_callback_add. The data pointer that was passed - to this call will be returned. - - See: @.signal_callback_add - - @since 1.8]] - params { - emission: string; [[The signal's name.]] - source: string; [[The signal's source.]] - func: Elm_Object_Item_Signal_Cb; [[The callback function to be executed when the signal is emitted.]] - } - return: void_ptr; [[The data pointer of the signal callback or $NULL, on errors.]] - } - signal_emit { - [[Send a signal to the edje object of the widget item. - - This function sends a signal to the edje object of the obj item. An - edje program can respond to a signal by specifying matching - 'signal' and 'source' fields. - Don't use this unless you want to also handle resetting of part states to default on - every unrealize in case of genlist/gengrid.]] - params { - emission: string; [[The signal's name.]] - source: string; [[The signal's source.]] - } - } - access_info_set { - [[Set the text to read out when in accessibility mode]] - params { - txt: string; [[The text that describes the widget to people with poor or no vision]] - } - } - access_object_get @const { - [[Get an accessible object of the object item. - - @since 1.8]] - return: Efl.Canvas.Object; [[Accessible object of the object item or NULL for any error]] - } - domain_translatable_part_text_set { - [[Set the text for an object item's part, marking it as translatable. - - The string to set as $text must be the original one. Do not pass the - return of $gettext() here. Elementary will translate the string - internally and set it on the object item using - @.part_text.set, also storing the original string so that it - can be automatically translated when the language is changed with - elm_language_set(). The $domain will be stored along to find the - translation in the correct catalog. It can be NULL, in which case it will use - whatever domain was set by the application with $textdomain(). This is - useful in case you are building a library on top of Elementary that will have - its own translatable strings, that should not be mixed with those of programs - using the library. - - @since 1.8]] - params { - part: string; [[The name of the part to set]] - domain: string; [[The translation domain to use]] - label: string; [[The original, non-translated text to set]] - } - } - translatable_part_text_get @const { - [[Get the original string set as translatable for an object item. - - When setting translated strings, the function @.part_text.get - will return the translation returned by $gettext(). To get the original - string use this function. - - @since 1.8]] - params { - part: string; [[The name of the part that was set]] - } - return: string; [[The original, untranslated string]] - } - translate @protected { - [[Query translate]] - legacy: null; - } - domain_part_text_translatable_set { - [[Mark the part text to be translatable or not. - - Once you mark the part text to be translatable, the text will be translated - internally regardless of @.part_text.set and - @.domain_translatable_part_text_set. In other case, if you - set the Elementary policy that all text will be translatable in default, you - can set the part text to not be translated by calling this API. - - See: @.domain_translatable_part_text_set - See: @.part_text.set - See: elm_policy() - - @since 1.8]] - params { - part: string; [[The part name of the translatable text]] - domain: string; [[The translation domain to use]] - translatable: bool; [[$true, the part text will be translated internally. $false, otherwise.]] - } - } - track { - [[This returns track object of the item. - - Note: This gets a rectangle object that represents the object item's internal - object. If you want to check the geometry, visibility of the item, you - can call the evas apis such as evas_object_geometry_get(), - evas_object_visible_get() to the track object. Note that all of the - widget items may/may not have the internal object so this api may - return $NULL if the widget item doesn't have it. Additionally, the - widget item is managed/controlled by the widget, the widget item could - be changed(moved, resized even deleted) anytime by it's own widget's - decision. So please dont' change the track object as well as don't - keep the track object in your side as possible but get the track object - at the moment you need to refer. Otherwise, you need to add some - callbacks to the track object to track it's attributes changes. - - Warning: After use the track object, please call the - @.untrack() paired to elm_object_item_track - definitely to free the track object properly. Don't delete the - track object. - - See: @.untrack - See: @.track_get - - @since 1.8]] - return: Efl.Canvas.Object; [[The track object]] - } - untrack { - [[This retrieve the track object of the item. - - Note: This retrieves the track object that was returned from - @.track. - - See: @.track - See: @.track_get - - @since 1.8]] - } - track_get @const { - [[Get the track object reference count. - - Note: This gets the reference count for the track object. Whenever you call - the @.track, the reference count will be increased by - one. Likely the reference count will be decreased again when you call - the @.untrack. Unless the reference count reaches to - zero, the track object won't be deleted. So please be sure to call - @.untrack() paired to the elm_object_item_track call - count. - - See: @.track - See: @.track_get - - @since 1.8]] - return: int; [[Track object reference count]] - } - track_cancel @protected { - [[Query track_cancel]] - legacy: null; - } - del_cb_set { - [[Set the function to be called when an item from the widget is - freed. - - Note: Every elm_object_item supports this API]] - params { - del_cb: Evas_Smart_Cb @nullable; [[The function called]] - } - } - tooltip_content_cb_set { - [[Set the content to be shown in the tooltip item. - - Setup the tooltip to item. The item can have only one tooltip, - so any previous tooltip data is removed. $func(with $data) will - be called every time that need show the tooltip and it should - return a valid Evas_Object. This object is then managed fully by - tooltip system and is deleted when the tooltip is gone. - - See: elm_object_tooltip_content_cb_set() for more details.]] - params { - func: Elm_Tooltip_Item_Content_Cb @nullable; [[The function used to create the tooltip contents.]] - data: const(void_ptr) @optional; [[What to provide to $func as callback data/context.]] - del_cb: Evas_Smart_Cb @optional; [[Called when data is not needed anymore, either when another callback replaces $func, the tooltip is unset with @.tooltip_unset or the owner $item dies. This callback receives as the first parameter the given $data, and $event_info is the item.]] - - } - } - access_register { - [[Register object item as an accessible object. - - @since 1.8]] - return: Efl.Canvas.Object; [[Accessible object of the object item or NULL for any error]] - } - access_unregister { - [[Unregister accessible object of the object item. - - @since 1.8]] - } - access_order_unset { - [[Unset highlight order - - @since 1.8]] - } - disable @protected { - [[Disable widget item]] - legacy: null; - } - del_pre @protected { - [[Delete pre widget item]] - legacy: null; - } - focus_next_object_get @const { - [[Get the next object with specific focus direction. - - @since 1.16]] - params { - dir: Efl.Ui.Focus.Direction; [[Focus direction]] - } - return: Efl.Canvas.Object; [[Focus next object]] - } - focus_next_object_set { - [[Set the next object with specific focus direction. - - @since 1.16]] - params { - next: Efl.Canvas.Object @nullable; [[Focus next object]] - dir: Efl.Ui.Focus.Direction; [[Focus direction]] - } - } - focus_next_item_get @const { - [[Get the next object item with specific focus direction. - - @since 1.16]] - params { - dir: Efl.Ui.Focus.Direction; [[Focus direction]] - } - return: Elm.Widget.Item; [[Focus next object item]] - } - focus_next_item_set { - [[Set the next object item with specific focus direction. - - @since 1.16]] - params { - next_item: Elm.Widget.Item @nullable; [[Focus next object item]] - dir: Efl.Ui.Focus.Direction; [[Focus direction]] - } - } - } - implements { - Efl.Object.constructor; - Efl.Object.destructor; - Efl.Object.invalidate; - Efl.Access.Object.state_set { get; } - Efl.Access.Object.attributes { get; } - Efl.Access.Component.extents { get; set; } - Efl.Access.Component.focus_grab; - } -} diff --git a/src/lib/elementary/elm_widget_item_container.eo b/src/lib/elementary/elm_widget_item_container.eo deleted file mode 100644 index 7a0c33c148..0000000000 --- a/src/lib/elementary/elm_widget_item_container.eo +++ /dev/null @@ -1,10 +0,0 @@ -interface Elm.Widget_Item_Container { - methods { - @property focused_item { - get { - [[Get the focused widget item.]] - return: Elm.Widget.Item; [[Focused item]] - } - } - } -} diff --git a/src/lib/elementary/elm_widget_item_container_eo.c b/src/lib/elementary/elm_widget_item_container_eo.c new file mode 100644 index 0000000000..81ca07dc76 --- /dev/null +++ b/src/lib/elementary/elm_widget_item_container_eo.c @@ -0,0 +1,33 @@ +EOAPI EFL_FUNC_BODY_CONST(elm_widget_item_container_focused_item_get, Elm_Widget_Item *, NULL); + +static Eina_Bool +_elm_widget_item_container_class_initializer(Efl_Class *klass) +{ + const Efl_Object_Ops *opsp = NULL; + + const Efl_Object_Property_Reflection_Ops *ropsp = NULL; + +#ifndef ELM_WIDGET_ITEM_CONTAINER_EXTRA_OPS +#define ELM_WIDGET_ITEM_CONTAINER_EXTRA_OPS +#endif + + EFL_OPS_DEFINE(ops, + EFL_OBJECT_OP_FUNC(elm_widget_item_container_focused_item_get, NULL), + ELM_WIDGET_ITEM_CONTAINER_EXTRA_OPS + ); + opsp = &ops; + + return efl_class_functions_set(klass, opsp, ropsp); +} + +static const Efl_Class_Description _elm_widget_item_container_class_desc = { + EO_VERSION, + "Elm.Widget_Item_Container", + EFL_CLASS_TYPE_INTERFACE, + 0, + _elm_widget_item_container_class_initializer, + NULL, + NULL +}; + +EFL_DEFINE_CLASS(elm_widget_item_container_interface_get, &_elm_widget_item_container_class_desc, NULL, NULL); diff --git a/src/lib/elementary/elm_widget_item_container_eo.h b/src/lib/elementary/elm_widget_item_container_eo.h new file mode 100644 index 0000000000..066876e5cd --- /dev/null +++ b/src/lib/elementary/elm_widget_item_container_eo.h @@ -0,0 +1,31 @@ +#ifndef _ELM_WIDGET_ITEM_CONTAINER_EO_H_ +#define _ELM_WIDGET_ITEM_CONTAINER_EO_H_ + +#ifndef _ELM_WIDGET_ITEM_CONTAINER_EO_CLASS_TYPE +#define _ELM_WIDGET_ITEM_CONTAINER_EO_CLASS_TYPE + +typedef Eo Elm_Widget_Item_Container; + +#endif + +#ifndef _ELM_WIDGET_ITEM_CONTAINER_EO_TYPES +#define _ELM_WIDGET_ITEM_CONTAINER_EO_TYPES + + +#endif +#define ELM_WIDGET_ITEM_CONTAINER_INTERFACE elm_widget_item_container_interface_get() + +EWAPI const Efl_Class *elm_widget_item_container_interface_get(void); + +/** + * @brief Get the focused widget item. + * + * @param[in] obj The object. + * + * @return Focused item + * + * @ingroup Elm_Widget_Item_Container + */ +EOAPI Elm_Widget_Item *elm_widget_item_container_focused_item_get(const Eo *obj); + +#endif diff --git a/src/lib/elementary/elm_widget_item_container_eo.legacy.h b/src/lib/elementary/elm_widget_item_container_eo.legacy.h new file mode 100644 index 0000000000..1408d4f228 --- /dev/null +++ b/src/lib/elementary/elm_widget_item_container_eo.legacy.h @@ -0,0 +1,18 @@ +#ifndef _ELM_WIDGET_ITEM_CONTAINER_EO_LEGACY_H_ +#define _ELM_WIDGET_ITEM_CONTAINER_EO_LEGACY_H_ + +#ifndef _ELM_WIDGET_ITEM_CONTAINER_EO_CLASS_TYPE +#define _ELM_WIDGET_ITEM_CONTAINER_EO_CLASS_TYPE + +typedef Eo Elm_Widget_Item_Container; + +#endif + +#ifndef _ELM_WIDGET_ITEM_CONTAINER_EO_TYPES +#define _ELM_WIDGET_ITEM_CONTAINER_EO_TYPES + + +#endif + + +#endif diff --git a/src/lib/elementary/elm_widget_item_eo.c b/src/lib/elementary/elm_widget_item_eo.c new file mode 100644 index 0000000000..903a72fee5 --- /dev/null +++ b/src/lib/elementary/elm_widget_item_eo.c @@ -0,0 +1,558 @@ + +Eina_Bool _elm_widget_item_tooltip_window_mode_set(Eo *obj, Elm_Widget_Item_Data *pd, Eina_Bool disable); + + +static Eina_Error +__eolian_elm_widget_item_tooltip_window_mode_set_reflect(Eo *obj, Eina_Value val) +{ + Eina_Error r = 0; Eina_Bool cval; + if (!eina_value_bool_convert(&val, &cval)) + { + r = EINA_ERROR_VALUE_FAILED; + goto end; + } + elm_wdg_item_tooltip_window_mode_set(obj, cval); + end: + eina_value_flush(&val); + return r; +} + +EOAPI EFL_FUNC_BODYV(elm_wdg_item_tooltip_window_mode_set, Eina_Bool, 0, EFL_FUNC_CALL(disable), Eina_Bool disable); + +Eina_Bool _elm_widget_item_tooltip_window_mode_get(const Eo *obj, Elm_Widget_Item_Data *pd); + + +static Eina_Value +__eolian_elm_widget_item_tooltip_window_mode_get_reflect(Eo *obj) +{ + Eina_Bool val = elm_wdg_item_tooltip_window_mode_get(obj); + return eina_value_bool_init(val); +} + +EOAPI EFL_FUNC_BODY_CONST(elm_wdg_item_tooltip_window_mode_get, Eina_Bool, 0); + +void _elm_widget_item_tooltip_style_set(Eo *obj, Elm_Widget_Item_Data *pd, const char *style); + + +static Eina_Error +__eolian_elm_widget_item_tooltip_style_set_reflect(Eo *obj, Eina_Value val) +{ + Eina_Error r = 0; const char *cval; + if (!eina_value_string_convert(&val, &cval)) + { + r = EINA_ERROR_VALUE_FAILED; + goto end; + } + elm_wdg_item_tooltip_style_set(obj, cval); + end: + eina_value_flush(&val); + return r; +} + +EOAPI EFL_VOID_FUNC_BODYV(elm_wdg_item_tooltip_style_set, EFL_FUNC_CALL(style), const char *style); + +const char *_elm_widget_item_tooltip_style_get(const Eo *obj, Elm_Widget_Item_Data *pd); + + +static Eina_Value +__eolian_elm_widget_item_tooltip_style_get_reflect(Eo *obj) +{ + const char *val = elm_wdg_item_tooltip_style_get(obj); + return eina_value_string_init(val); +} + +EOAPI EFL_FUNC_BODY_CONST(elm_wdg_item_tooltip_style_get, const char *, NULL); + +void _elm_widget_item_cursor_set(Eo *obj, Elm_Widget_Item_Data *pd, const char *cursor); + + +static Eina_Error +__eolian_elm_widget_item_cursor_set_reflect(Eo *obj, Eina_Value val) +{ + Eina_Error r = 0; const char *cval; + if (!eina_value_string_convert(&val, &cval)) + { + r = EINA_ERROR_VALUE_FAILED; + goto end; + } + elm_wdg_item_cursor_set(obj, cval); + end: + eina_value_flush(&val); + return r; +} + +EOAPI EFL_VOID_FUNC_BODYV(elm_wdg_item_cursor_set, EFL_FUNC_CALL(cursor), const char *cursor); + +const char *_elm_widget_item_cursor_get(const Eo *obj, Elm_Widget_Item_Data *pd); + + +static Eina_Value +__eolian_elm_widget_item_cursor_get_reflect(Eo *obj) +{ + const char *val = elm_wdg_item_cursor_get(obj); + return eina_value_string_init(val); +} + +EOAPI EFL_FUNC_BODY_CONST(elm_wdg_item_cursor_get, const char *, NULL); + +void _elm_widget_item_cursor_style_set(Eo *obj, Elm_Widget_Item_Data *pd, const char *style); + + +static Eina_Error +__eolian_elm_widget_item_cursor_style_set_reflect(Eo *obj, Eina_Value val) +{ + Eina_Error r = 0; const char *cval; + if (!eina_value_string_convert(&val, &cval)) + { + r = EINA_ERROR_VALUE_FAILED; + goto end; + } + elm_wdg_item_cursor_style_set(obj, cval); + end: + eina_value_flush(&val); + return r; +} + +EOAPI EFL_VOID_FUNC_BODYV(elm_wdg_item_cursor_style_set, EFL_FUNC_CALL(style), const char *style); + +const char *_elm_widget_item_cursor_style_get(const Eo *obj, Elm_Widget_Item_Data *pd); + + +static Eina_Value +__eolian_elm_widget_item_cursor_style_get_reflect(Eo *obj) +{ + const char *val = elm_wdg_item_cursor_style_get(obj); + return eina_value_string_init(val); +} + +EOAPI EFL_FUNC_BODY_CONST(elm_wdg_item_cursor_style_get, const char *, NULL); + +void _elm_widget_item_cursor_engine_only_set(Eo *obj, Elm_Widget_Item_Data *pd, Eina_Bool engine_only); + + +static Eina_Error +__eolian_elm_widget_item_cursor_engine_only_set_reflect(Eo *obj, Eina_Value val) +{ + Eina_Error r = 0; Eina_Bool cval; + if (!eina_value_bool_convert(&val, &cval)) + { + r = EINA_ERROR_VALUE_FAILED; + goto end; + } + elm_wdg_item_cursor_engine_only_set(obj, cval); + end: + eina_value_flush(&val); + return r; +} + +EOAPI EFL_VOID_FUNC_BODYV(elm_wdg_item_cursor_engine_only_set, EFL_FUNC_CALL(engine_only), Eina_Bool engine_only); + +Eina_Bool _elm_widget_item_cursor_engine_only_get(const Eo *obj, Elm_Widget_Item_Data *pd); + + +static Eina_Value +__eolian_elm_widget_item_cursor_engine_only_get_reflect(Eo *obj) +{ + Eina_Bool val = elm_wdg_item_cursor_engine_only_get(obj); + return eina_value_bool_init(val); +} + +EOAPI EFL_FUNC_BODY_CONST(elm_wdg_item_cursor_engine_only_get, Eina_Bool, 0); + +void _elm_widget_item_part_content_set(Eo *obj, Elm_Widget_Item_Data *pd, const char *part, Efl_Canvas_Object *content); + +EOAPI EFL_VOID_FUNC_BODYV(elm_wdg_item_part_content_set, EFL_FUNC_CALL(part, content), const char *part, Efl_Canvas_Object *content); + +Efl_Canvas_Object *_elm_widget_item_part_content_get(const Eo *obj, Elm_Widget_Item_Data *pd, const char *part); + +EOAPI EFL_FUNC_BODYV_CONST(elm_wdg_item_part_content_get, Efl_Canvas_Object *, NULL, EFL_FUNC_CALL(part), const char *part); + +void _elm_widget_item_part_text_set(Eo *obj, Elm_Widget_Item_Data *pd, const char *part, const char *label); + +EOAPI EFL_VOID_FUNC_BODYV(elm_wdg_item_part_text_set, EFL_FUNC_CALL(part, label), const char *part, const char *label); + +const char *_elm_widget_item_part_text_get(const Eo *obj, Elm_Widget_Item_Data *pd, const char *part); + +EOAPI EFL_FUNC_BODYV_CONST(elm_wdg_item_part_text_get, const char *, NULL, EFL_FUNC_CALL(part), const char *part); + +void _elm_widget_item_part_text_custom_set(Eo *obj, Elm_Widget_Item_Data *pd, const char *part, const char *label); + +EOAPI EFL_VOID_FUNC_BODYV(elm_wdg_item_part_text_custom_set, EFL_FUNC_CALL(part, label), const char *part, const char *label); + +const char *_elm_widget_item_part_text_custom_get(const Eo *obj, Elm_Widget_Item_Data *pd, const char *part); + +EOAPI EFL_FUNC_BODYV_CONST(elm_wdg_item_part_text_custom_get, const char *, NULL, EFL_FUNC_CALL(part), const char *part); + +void _elm_widget_item_item_focus_set(Eo *obj, Elm_Widget_Item_Data *pd, Eina_Bool focused); + + +static Eina_Error +__eolian_elm_widget_item_item_focus_set_reflect(Eo *obj, Eina_Value val) +{ + Eina_Error r = 0; Eina_Bool cval; + if (!eina_value_bool_convert(&val, &cval)) + { + r = EINA_ERROR_VALUE_FAILED; + goto end; + } + elm_wdg_item_focus_set(obj, cval); + end: + eina_value_flush(&val); + return r; +} + +EOAPI EFL_VOID_FUNC_BODYV(elm_wdg_item_focus_set, EFL_FUNC_CALL(focused), Eina_Bool focused); + +Eina_Bool _elm_widget_item_item_focus_get(const Eo *obj, Elm_Widget_Item_Data *pd); + + +static Eina_Value +__eolian_elm_widget_item_item_focus_get_reflect(Eo *obj) +{ + Eina_Bool val = elm_wdg_item_focus_get(obj); + return eina_value_bool_init(val); +} + +EOAPI EFL_FUNC_BODY_CONST(elm_wdg_item_focus_get, Eina_Bool, 0); + +void _elm_widget_item_style_set(Eo *obj, Elm_Widget_Item_Data *pd, const char *style); + + +static Eina_Error +__eolian_elm_widget_item_style_set_reflect(Eo *obj, Eina_Value val) +{ + Eina_Error r = 0; const char *cval; + if (!eina_value_string_convert(&val, &cval)) + { + r = EINA_ERROR_VALUE_FAILED; + goto end; + } + elm_wdg_item_style_set(obj, cval); + end: + eina_value_flush(&val); + return r; +} + +EOAPI EFL_VOID_FUNC_BODYV(elm_wdg_item_style_set, EFL_FUNC_CALL(style), const char *style); + +const char *_elm_widget_item_style_get(const Eo *obj, Elm_Widget_Item_Data *pd); + + +static Eina_Value +__eolian_elm_widget_item_style_get_reflect(Eo *obj) +{ + const char *val = elm_wdg_item_style_get(obj); + return eina_value_string_init(val); +} + +EOAPI EFL_FUNC_BODY_CONST(elm_wdg_item_style_get, const char *, NULL); + +void _elm_widget_item_disabled_set(Eo *obj, Elm_Widget_Item_Data *pd, Eina_Bool disable); + + +static Eina_Error +__eolian_elm_widget_item_disabled_set_reflect(Eo *obj, Eina_Value val) +{ + Eina_Error r = 0; Eina_Bool cval; + if (!eina_value_bool_convert(&val, &cval)) + { + r = EINA_ERROR_VALUE_FAILED; + goto end; + } + elm_wdg_item_disabled_set(obj, cval); + end: + eina_value_flush(&val); + return r; +} + +EOAPI EFL_VOID_FUNC_BODYV(elm_wdg_item_disabled_set, EFL_FUNC_CALL(disable), Eina_Bool disable); + +Eina_Bool _elm_widget_item_disabled_get(const Eo *obj, Elm_Widget_Item_Data *pd); + + +static Eina_Value +__eolian_elm_widget_item_disabled_get_reflect(Eo *obj) +{ + Eina_Bool val = elm_wdg_item_disabled_get(obj); + return eina_value_bool_init(val); +} + +EOAPI EFL_FUNC_BODY_CONST(elm_wdg_item_disabled_get, Eina_Bool, 0); + +const Eina_List *_elm_widget_item_access_order_get(Eo *obj, Elm_Widget_Item_Data *pd); + +EOAPI EFL_FUNC_BODY(elm_wdg_item_access_order_get, const Eina_List *, NULL); + +void _elm_widget_item_access_order_set(Eo *obj, Elm_Widget_Item_Data *pd, Eina_List *objs); + +static void +_elm_wdg_item_access_order_set_ownership_fallback(Eina_List *objs) +{ + eina_list_free(objs); +} + +EOAPI EFL_VOID_FUNC_BODYV_FALLBACK(elm_wdg_item_access_order_set, _elm_wdg_item_access_order_set_ownership_fallback(objs);, EFL_FUNC_CALL(objs), Eina_List *objs); + +Efl_Canvas_Object *_elm_widget_item_widget_get(const Eo *obj, Elm_Widget_Item_Data *pd); + +EOAPI EFL_FUNC_BODY_CONST(elm_wdg_item_widget_get, Efl_Canvas_Object *, NULL); + +void _elm_widget_item_pre_notify_del(Eo *obj, Elm_Widget_Item_Data *pd); + +EOAPI EFL_VOID_FUNC_BODY(elm_wdg_item_pre_notify_del); + +void _elm_widget_item_tooltip_text_set(Eo *obj, Elm_Widget_Item_Data *pd, const char *text); + +EOAPI EFL_VOID_FUNC_BODYV(elm_wdg_item_tooltip_text_set, EFL_FUNC_CALL(text), const char *text); + +void _elm_widget_item_tooltip_translatable_text_set(Eo *obj, Elm_Widget_Item_Data *pd, const char *text); + +EOAPI EFL_VOID_FUNC_BODYV(elm_wdg_item_tooltip_translatable_text_set, EFL_FUNC_CALL(text), const char *text); + +void _elm_widget_item_tooltip_unset(Eo *obj, Elm_Widget_Item_Data *pd); + +EOAPI EFL_VOID_FUNC_BODY(elm_wdg_item_tooltip_unset); + +void _elm_widget_item_cursor_unset(Eo *obj, Elm_Widget_Item_Data *pd); + +EOAPI EFL_VOID_FUNC_BODY(elm_wdg_item_cursor_unset); + +Efl_Canvas_Object *_elm_widget_item_part_content_unset(Eo *obj, Elm_Widget_Item_Data *pd, const char *part); + +EOAPI EFL_FUNC_BODYV(elm_wdg_item_part_content_unset, Efl_Canvas_Object *, NULL, EFL_FUNC_CALL(part), const char *part); + +void _elm_widget_item_part_text_custom_update(Eo *obj, Elm_Widget_Item_Data *pd); + +EOAPI EFL_VOID_FUNC_BODY(elm_wdg_item_part_text_custom_update); + +void _elm_widget_item_signal_callback_add(Eo *obj, Elm_Widget_Item_Data *pd, const char *emission, const char *source, Elm_Object_Item_Signal_Cb func, void *data); + +EOAPI EFL_VOID_FUNC_BODYV(elm_wdg_item_signal_callback_add, EFL_FUNC_CALL(emission, source, func, data), const char *emission, const char *source, Elm_Object_Item_Signal_Cb func, void *data); + +void *_elm_widget_item_signal_callback_del(Eo *obj, Elm_Widget_Item_Data *pd, const char *emission, const char *source, Elm_Object_Item_Signal_Cb func); + +EOAPI EFL_FUNC_BODYV(elm_wdg_item_signal_callback_del, void *, NULL, EFL_FUNC_CALL(emission, source, func), const char *emission, const char *source, Elm_Object_Item_Signal_Cb func); + +void _elm_widget_item_signal_emit(Eo *obj, Elm_Widget_Item_Data *pd, const char *emission, const char *source); + +EOAPI EFL_VOID_FUNC_BODYV(elm_wdg_item_signal_emit, EFL_FUNC_CALL(emission, source), const char *emission, const char *source); + +void _elm_widget_item_access_info_set(Eo *obj, Elm_Widget_Item_Data *pd, const char *txt); + +EOAPI EFL_VOID_FUNC_BODYV(elm_wdg_item_access_info_set, EFL_FUNC_CALL(txt), const char *txt); + +Efl_Canvas_Object *_elm_widget_item_access_object_get(const Eo *obj, Elm_Widget_Item_Data *pd); + +EOAPI EFL_FUNC_BODY_CONST(elm_wdg_item_access_object_get, Efl_Canvas_Object *, NULL); + +void _elm_widget_item_domain_translatable_part_text_set(Eo *obj, Elm_Widget_Item_Data *pd, const char *part, const char *domain, const char *label); + +EOAPI EFL_VOID_FUNC_BODYV(elm_wdg_item_domain_translatable_part_text_set, EFL_FUNC_CALL(part, domain, label), const char *part, const char *domain, const char *label); + +const char *_elm_widget_item_translatable_part_text_get(const Eo *obj, Elm_Widget_Item_Data *pd, const char *part); + +EOAPI EFL_FUNC_BODYV_CONST(elm_wdg_item_translatable_part_text_get, const char *, NULL, EFL_FUNC_CALL(part), const char *part); + +void _elm_widget_item_translate(Eo *obj, Elm_Widget_Item_Data *pd); + +EOAPI EFL_VOID_FUNC_BODY(elm_wdg_item_translate); + +void _elm_widget_item_domain_part_text_translatable_set(Eo *obj, Elm_Widget_Item_Data *pd, const char *part, const char *domain, Eina_Bool translatable); + +EOAPI EFL_VOID_FUNC_BODYV(elm_wdg_item_domain_part_text_translatable_set, EFL_FUNC_CALL(part, domain, translatable), const char *part, const char *domain, Eina_Bool translatable); + +Efl_Canvas_Object *_elm_widget_item_track(Eo *obj, Elm_Widget_Item_Data *pd); + +EOAPI EFL_FUNC_BODY(elm_wdg_item_track, Efl_Canvas_Object *, NULL); + +void _elm_widget_item_untrack(Eo *obj, Elm_Widget_Item_Data *pd); + +EOAPI EFL_VOID_FUNC_BODY(elm_wdg_item_untrack); + +int _elm_widget_item_track_get(const Eo *obj, Elm_Widget_Item_Data *pd); + +EOAPI EFL_FUNC_BODY_CONST(elm_wdg_item_track_get, int, 0); + +void _elm_widget_item_track_cancel(Eo *obj, Elm_Widget_Item_Data *pd); + +EOAPI EFL_VOID_FUNC_BODY(elm_wdg_item_track_cancel); + +void _elm_widget_item_del_cb_set(Eo *obj, Elm_Widget_Item_Data *pd, Evas_Smart_Cb del_cb); + +EOAPI EFL_VOID_FUNC_BODYV(elm_wdg_item_del_cb_set, EFL_FUNC_CALL(del_cb), Evas_Smart_Cb del_cb); + +void _elm_widget_item_tooltip_content_cb_set(Eo *obj, Elm_Widget_Item_Data *pd, Elm_Tooltip_Item_Content_Cb func, const void *data, Evas_Smart_Cb del_cb); + +EOAPI EFL_VOID_FUNC_BODYV(elm_wdg_item_tooltip_content_cb_set, EFL_FUNC_CALL(func, data, del_cb), Elm_Tooltip_Item_Content_Cb func, const void *data, Evas_Smart_Cb del_cb); + +Efl_Canvas_Object *_elm_widget_item_access_register(Eo *obj, Elm_Widget_Item_Data *pd); + +EOAPI EFL_FUNC_BODY(elm_wdg_item_access_register, Efl_Canvas_Object *, NULL); + +void _elm_widget_item_access_unregister(Eo *obj, Elm_Widget_Item_Data *pd); + +EOAPI EFL_VOID_FUNC_BODY(elm_wdg_item_access_unregister); + +void _elm_widget_item_access_order_unset(Eo *obj, Elm_Widget_Item_Data *pd); + +EOAPI EFL_VOID_FUNC_BODY(elm_wdg_item_access_order_unset); + +void _elm_widget_item_disable(Eo *obj, Elm_Widget_Item_Data *pd); + +EOAPI EFL_VOID_FUNC_BODY(elm_wdg_item_disable); + +void _elm_widget_item_del_pre(Eo *obj, Elm_Widget_Item_Data *pd); + +EOAPI EFL_VOID_FUNC_BODY(elm_wdg_item_del_pre); + +Efl_Canvas_Object *_elm_widget_item_focus_next_object_get(const Eo *obj, Elm_Widget_Item_Data *pd, Efl_Ui_Focus_Direction dir); + +EOAPI EFL_FUNC_BODYV_CONST(elm_wdg_item_focus_next_object_get, Efl_Canvas_Object *, NULL, EFL_FUNC_CALL(dir), Efl_Ui_Focus_Direction dir); + +void _elm_widget_item_focus_next_object_set(Eo *obj, Elm_Widget_Item_Data *pd, Efl_Canvas_Object *next, Efl_Ui_Focus_Direction dir); + +EOAPI EFL_VOID_FUNC_BODYV(elm_wdg_item_focus_next_object_set, EFL_FUNC_CALL(next, dir), Efl_Canvas_Object *next, Efl_Ui_Focus_Direction dir); + +Elm_Widget_Item *_elm_widget_item_focus_next_item_get(const Eo *obj, Elm_Widget_Item_Data *pd, Efl_Ui_Focus_Direction dir); + +EOAPI EFL_FUNC_BODYV_CONST(elm_wdg_item_focus_next_item_get, Elm_Widget_Item *, NULL, EFL_FUNC_CALL(dir), Efl_Ui_Focus_Direction dir); + +void _elm_widget_item_focus_next_item_set(Eo *obj, Elm_Widget_Item_Data *pd, Elm_Widget_Item *next_item, Efl_Ui_Focus_Direction dir); + +EOAPI EFL_VOID_FUNC_BODYV(elm_wdg_item_focus_next_item_set, EFL_FUNC_CALL(next_item, dir), Elm_Widget_Item *next_item, Efl_Ui_Focus_Direction dir); + +Efl_Object *_elm_widget_item_efl_object_constructor(Eo *obj, Elm_Widget_Item_Data *pd); + + +void _elm_widget_item_efl_object_destructor(Eo *obj, Elm_Widget_Item_Data *pd); + + +void _elm_widget_item_efl_object_invalidate(Eo *obj, Elm_Widget_Item_Data *pd); + + +Efl_Access_State_Set _elm_widget_item_efl_access_object_state_set_get(const Eo *obj, Elm_Widget_Item_Data *pd); + + +Eina_List *_elm_widget_item_efl_access_object_attributes_get(const Eo *obj, Elm_Widget_Item_Data *pd); + + +Eina_Bool _elm_widget_item_efl_access_component_extents_set(Eo *obj, Elm_Widget_Item_Data *pd, Eina_Bool screen_coords, Eina_Rect rect); + + +Eina_Rect _elm_widget_item_efl_access_component_extents_get(const Eo *obj, Elm_Widget_Item_Data *pd, Eina_Bool screen_coords); + + +Eina_Bool _elm_widget_item_efl_access_component_focus_grab(Eo *obj, Elm_Widget_Item_Data *pd); + + +static Eina_Bool +_elm_widget_item_class_initializer(Efl_Class *klass) +{ + const Efl_Object_Ops *opsp = NULL; + + const Efl_Object_Property_Reflection_Ops *ropsp = NULL; + +#ifndef ELM_WIDGET_ITEM_EXTRA_OPS +#define ELM_WIDGET_ITEM_EXTRA_OPS +#endif + + EFL_OPS_DEFINE(ops, + EFL_OBJECT_OP_FUNC(elm_wdg_item_tooltip_window_mode_set, _elm_widget_item_tooltip_window_mode_set), + EFL_OBJECT_OP_FUNC(elm_wdg_item_tooltip_window_mode_get, _elm_widget_item_tooltip_window_mode_get), + EFL_OBJECT_OP_FUNC(elm_wdg_item_tooltip_style_set, _elm_widget_item_tooltip_style_set), + EFL_OBJECT_OP_FUNC(elm_wdg_item_tooltip_style_get, _elm_widget_item_tooltip_style_get), + EFL_OBJECT_OP_FUNC(elm_wdg_item_cursor_set, _elm_widget_item_cursor_set), + EFL_OBJECT_OP_FUNC(elm_wdg_item_cursor_get, _elm_widget_item_cursor_get), + EFL_OBJECT_OP_FUNC(elm_wdg_item_cursor_style_set, _elm_widget_item_cursor_style_set), + EFL_OBJECT_OP_FUNC(elm_wdg_item_cursor_style_get, _elm_widget_item_cursor_style_get), + EFL_OBJECT_OP_FUNC(elm_wdg_item_cursor_engine_only_set, _elm_widget_item_cursor_engine_only_set), + EFL_OBJECT_OP_FUNC(elm_wdg_item_cursor_engine_only_get, _elm_widget_item_cursor_engine_only_get), + EFL_OBJECT_OP_FUNC(elm_wdg_item_part_content_set, _elm_widget_item_part_content_set), + EFL_OBJECT_OP_FUNC(elm_wdg_item_part_content_get, _elm_widget_item_part_content_get), + EFL_OBJECT_OP_FUNC(elm_wdg_item_part_text_set, _elm_widget_item_part_text_set), + EFL_OBJECT_OP_FUNC(elm_wdg_item_part_text_get, _elm_widget_item_part_text_get), + EFL_OBJECT_OP_FUNC(elm_wdg_item_part_text_custom_set, _elm_widget_item_part_text_custom_set), + EFL_OBJECT_OP_FUNC(elm_wdg_item_part_text_custom_get, _elm_widget_item_part_text_custom_get), + EFL_OBJECT_OP_FUNC(elm_wdg_item_focus_set, _elm_widget_item_item_focus_set), + EFL_OBJECT_OP_FUNC(elm_wdg_item_focus_get, _elm_widget_item_item_focus_get), + EFL_OBJECT_OP_FUNC(elm_wdg_item_style_set, _elm_widget_item_style_set), + EFL_OBJECT_OP_FUNC(elm_wdg_item_style_get, _elm_widget_item_style_get), + EFL_OBJECT_OP_FUNC(elm_wdg_item_disabled_set, _elm_widget_item_disabled_set), + EFL_OBJECT_OP_FUNC(elm_wdg_item_disabled_get, _elm_widget_item_disabled_get), + EFL_OBJECT_OP_FUNC(elm_wdg_item_access_order_get, _elm_widget_item_access_order_get), + EFL_OBJECT_OP_FUNC(elm_wdg_item_access_order_set, _elm_widget_item_access_order_set), + EFL_OBJECT_OP_FUNC(elm_wdg_item_widget_get, _elm_widget_item_widget_get), + EFL_OBJECT_OP_FUNC(elm_wdg_item_pre_notify_del, _elm_widget_item_pre_notify_del), + EFL_OBJECT_OP_FUNC(elm_wdg_item_tooltip_text_set, _elm_widget_item_tooltip_text_set), + EFL_OBJECT_OP_FUNC(elm_wdg_item_tooltip_translatable_text_set, _elm_widget_item_tooltip_translatable_text_set), + EFL_OBJECT_OP_FUNC(elm_wdg_item_tooltip_unset, _elm_widget_item_tooltip_unset), + EFL_OBJECT_OP_FUNC(elm_wdg_item_cursor_unset, _elm_widget_item_cursor_unset), + EFL_OBJECT_OP_FUNC(elm_wdg_item_part_content_unset, _elm_widget_item_part_content_unset), + EFL_OBJECT_OP_FUNC(elm_wdg_item_part_text_custom_update, _elm_widget_item_part_text_custom_update), + EFL_OBJECT_OP_FUNC(elm_wdg_item_signal_callback_add, _elm_widget_item_signal_callback_add), + EFL_OBJECT_OP_FUNC(elm_wdg_item_signal_callback_del, _elm_widget_item_signal_callback_del), + EFL_OBJECT_OP_FUNC(elm_wdg_item_signal_emit, _elm_widget_item_signal_emit), + EFL_OBJECT_OP_FUNC(elm_wdg_item_access_info_set, _elm_widget_item_access_info_set), + EFL_OBJECT_OP_FUNC(elm_wdg_item_access_object_get, _elm_widget_item_access_object_get), + EFL_OBJECT_OP_FUNC(elm_wdg_item_domain_translatable_part_text_set, _elm_widget_item_domain_translatable_part_text_set), + EFL_OBJECT_OP_FUNC(elm_wdg_item_translatable_part_text_get, _elm_widget_item_translatable_part_text_get), + EFL_OBJECT_OP_FUNC(elm_wdg_item_translate, _elm_widget_item_translate), + EFL_OBJECT_OP_FUNC(elm_wdg_item_domain_part_text_translatable_set, _elm_widget_item_domain_part_text_translatable_set), + EFL_OBJECT_OP_FUNC(elm_wdg_item_track, _elm_widget_item_track), + EFL_OBJECT_OP_FUNC(elm_wdg_item_untrack, _elm_widget_item_untrack), + EFL_OBJECT_OP_FUNC(elm_wdg_item_track_get, _elm_widget_item_track_get), + EFL_OBJECT_OP_FUNC(elm_wdg_item_track_cancel, _elm_widget_item_track_cancel), + EFL_OBJECT_OP_FUNC(elm_wdg_item_del_cb_set, _elm_widget_item_del_cb_set), + EFL_OBJECT_OP_FUNC(elm_wdg_item_tooltip_content_cb_set, _elm_widget_item_tooltip_content_cb_set), + EFL_OBJECT_OP_FUNC(elm_wdg_item_access_register, _elm_widget_item_access_register), + EFL_OBJECT_OP_FUNC(elm_wdg_item_access_unregister, _elm_widget_item_access_unregister), + EFL_OBJECT_OP_FUNC(elm_wdg_item_access_order_unset, _elm_widget_item_access_order_unset), + EFL_OBJECT_OP_FUNC(elm_wdg_item_disable, _elm_widget_item_disable), + EFL_OBJECT_OP_FUNC(elm_wdg_item_del_pre, _elm_widget_item_del_pre), + EFL_OBJECT_OP_FUNC(elm_wdg_item_focus_next_object_get, _elm_widget_item_focus_next_object_get), + EFL_OBJECT_OP_FUNC(elm_wdg_item_focus_next_object_set, _elm_widget_item_focus_next_object_set), + EFL_OBJECT_OP_FUNC(elm_wdg_item_focus_next_item_get, _elm_widget_item_focus_next_item_get), + EFL_OBJECT_OP_FUNC(elm_wdg_item_focus_next_item_set, _elm_widget_item_focus_next_item_set), + EFL_OBJECT_OP_FUNC(efl_constructor, _elm_widget_item_efl_object_constructor), + EFL_OBJECT_OP_FUNC(efl_destructor, _elm_widget_item_efl_object_destructor), + EFL_OBJECT_OP_FUNC(efl_invalidate, _elm_widget_item_efl_object_invalidate), + EFL_OBJECT_OP_FUNC(efl_access_object_state_set_get, _elm_widget_item_efl_access_object_state_set_get), + EFL_OBJECT_OP_FUNC(efl_access_object_attributes_get, _elm_widget_item_efl_access_object_attributes_get), + EFL_OBJECT_OP_FUNC(efl_access_component_extents_set, _elm_widget_item_efl_access_component_extents_set), + EFL_OBJECT_OP_FUNC(efl_access_component_extents_get, _elm_widget_item_efl_access_component_extents_get), + EFL_OBJECT_OP_FUNC(efl_access_component_focus_grab, _elm_widget_item_efl_access_component_focus_grab), + ELM_WIDGET_ITEM_EXTRA_OPS + ); + opsp = &ops; + + static const Efl_Object_Property_Reflection refl_table[] = { + {"tooltip_window_mode", __eolian_elm_widget_item_tooltip_window_mode_set_reflect, __eolian_elm_widget_item_tooltip_window_mode_get_reflect}, + {"tooltip_style", __eolian_elm_widget_item_tooltip_style_set_reflect, __eolian_elm_widget_item_tooltip_style_get_reflect}, + {"cursor", __eolian_elm_widget_item_cursor_set_reflect, __eolian_elm_widget_item_cursor_get_reflect}, + {"cursor_style", __eolian_elm_widget_item_cursor_style_set_reflect, __eolian_elm_widget_item_cursor_style_get_reflect}, + {"cursor_engine_only", __eolian_elm_widget_item_cursor_engine_only_set_reflect, __eolian_elm_widget_item_cursor_engine_only_get_reflect}, + {"item_focus", __eolian_elm_widget_item_item_focus_set_reflect, __eolian_elm_widget_item_item_focus_get_reflect}, + {"style", __eolian_elm_widget_item_style_set_reflect, __eolian_elm_widget_item_style_get_reflect}, + {"disabled", __eolian_elm_widget_item_disabled_set_reflect, __eolian_elm_widget_item_disabled_get_reflect}, + }; + static const Efl_Object_Property_Reflection_Ops rops = { + refl_table, EINA_C_ARRAY_LENGTH(refl_table) + }; + ropsp = &rops; + + return efl_class_functions_set(klass, opsp, ropsp); +} + +static const Efl_Class_Description _elm_widget_item_class_desc = { + EO_VERSION, + "Elm.Widget.Item", + EFL_CLASS_TYPE_REGULAR, + sizeof(Elm_Widget_Item_Data), + _elm_widget_item_class_initializer, + NULL, + NULL +}; + +EFL_DEFINE_CLASS(elm_widget_item_class_get, &_elm_widget_item_class_desc, EFL_OBJECT_CLASS, EFL_ACCESS_OBJECT_MIXIN, EFL_ACCESS_COMPONENT_MIXIN, NULL); + +#include "elm_widget_item_eo.legacy.c" diff --git a/src/lib/elementary/elm_widget_item_eo.h b/src/lib/elementary/elm_widget_item_eo.h new file mode 100644 index 0000000000..c6b6bed171 --- /dev/null +++ b/src/lib/elementary/elm_widget_item_eo.h @@ -0,0 +1,883 @@ +#ifndef _ELM_WIDGET_ITEM_EO_H_ +#define _ELM_WIDGET_ITEM_EO_H_ + +#ifndef _ELM_WIDGET_ITEM_EO_CLASS_TYPE +#define _ELM_WIDGET_ITEM_EO_CLASS_TYPE + +typedef Eo Elm_Widget_Item; + +#endif + +#ifndef _ELM_WIDGET_ITEM_EO_TYPES +#define _ELM_WIDGET_ITEM_EO_TYPES + + +#endif +/** Elementary widget item class + * + * @ingroup Elm_Widget_Item + */ +#define ELM_WIDGET_ITEM_CLASS elm_widget_item_class_get() + +EWAPI const Efl_Class *elm_widget_item_class_get(void); + +/** + * @brief Control size restriction state of an object's tooltip + * + * This function returns whether a tooltip is allowed to expand beyond its + * parent window's canvas. It will instead be limited only by the size of the + * display. + * + * @param[in] obj The object. + * @param[in] disable If @c true, size restrictions are disabled + * + * @return @c false on failure, @c true on success + * + * @ingroup Elm_Widget_Item + */ +EOAPI Eina_Bool elm_wdg_item_tooltip_window_mode_set(Eo *obj, Eina_Bool disable); + +/** + * @brief Control size restriction state of an object's tooltip + * + * This function returns whether a tooltip is allowed to expand beyond its + * parent window's canvas. It will instead be limited only by the size of the + * display. + * + * @param[in] obj The object. + * + * @return If @c true, size restrictions are disabled + * + * @ingroup Elm_Widget_Item + */ +EOAPI Eina_Bool elm_wdg_item_tooltip_window_mode_get(const Eo *obj); + +/** + * @brief Control a different style for this item tooltip. + * + * @note before you set a style you should define a tooltip with + * @ref elm_wdg_item_tooltip_content_cb_set or + * @ref elm_wdg_item_tooltip_text_set + * + * See: elm_object_tooltip_style_set() for more details. + * + * @param[in] obj The object. + * @param[in] style The theme style used/to use (default, transparent, ...) + * + * @ingroup Elm_Widget_Item + */ +EOAPI void elm_wdg_item_tooltip_style_set(Eo *obj, const char *style); + +/** + * @brief Control a different style for this item tooltip. + * + * @note before you set a style you should define a tooltip with + * @ref elm_wdg_item_tooltip_content_cb_set or + * @ref elm_wdg_item_tooltip_text_set + * + * See: elm_object_tooltip_style_set() for more details. + * + * @param[in] obj The object. + * + * @return The theme style used/to use (default, transparent, ...) + * + * @ingroup Elm_Widget_Item + */ +EOAPI const char *elm_wdg_item_tooltip_style_get(const Eo *obj); + +/** + * @brief Control the type of mouse pointer/cursor decoration to be shown, when + * the mouse pointer is over the given item + * + * This function works analogously as elm_object_cursor_set(), but here the + * cursor's changing area is restricted to the item's area, and not the whole + * widget's. Note that that item cursors have precedence over widget cursors, + * so that a mouse over an item with custom cursor set will always show that + * cursor. + * + * If this function is called twice for an object, a previously set cursor will + * be unset on the second call. + * + * @param[in] obj The object. + * @param[in] cursor The cursor type's name + * + * @ingroup Elm_Widget_Item + */ +EOAPI void elm_wdg_item_cursor_set(Eo *obj, const char *cursor); + +/** + * @brief Control the type of mouse pointer/cursor decoration to be shown, when + * the mouse pointer is over the given item + * + * This function works analogously as elm_object_cursor_set(), but here the + * cursor's changing area is restricted to the item's area, and not the whole + * widget's. Note that that item cursors have precedence over widget cursors, + * so that a mouse over an item with custom cursor set will always show that + * cursor. + * + * If this function is called twice for an object, a previously set cursor will + * be unset on the second call. + * + * @param[in] obj The object. + * + * @return The cursor type's name + * + * @ingroup Elm_Widget_Item + */ +EOAPI const char *elm_wdg_item_cursor_get(const Eo *obj); + +/** + * @brief Control a different @c style for a given custom cursor set for an + * item. + * + * This function only makes sense when one is using custom mouse cursor + * decorations defined in a theme file, which can have, given a cursor + * name/type, alternate styles on it. It works analogously as + * elm_object_cursor_style_set(), but here applies only to item objects. + * + * @warning Before you set a cursor style you should have defined a custom + * cursor previously on the item, with @ref elm_wdg_item_cursor_set + * + * @param[in] obj The object. + * @param[in] style The theme style to use/in use (e.g. $"default", + * $"transparent", etc) + * + * @ingroup Elm_Widget_Item + */ +EOAPI void elm_wdg_item_cursor_style_set(Eo *obj, const char *style); + +/** + * @brief Control a different @c style for a given custom cursor set for an + * item. + * + * This function only makes sense when one is using custom mouse cursor + * decorations defined in a theme file, which can have, given a cursor + * name/type, alternate styles on it. It works analogously as + * elm_object_cursor_style_set(), but here applies only to item objects. + * + * @warning Before you set a cursor style you should have defined a custom + * cursor previously on the item, with @ref elm_wdg_item_cursor_set + * + * @param[in] obj The object. + * + * @return The theme style to use/in use (e.g. $"default", $"transparent", etc) + * + * @ingroup Elm_Widget_Item + */ +EOAPI const char *elm_wdg_item_cursor_style_get(const Eo *obj); + +/** + * @brief Control if the (custom)cursor for a given item should be searched in + * its theme, also, or should only rely on the rendering engine. + * + * @note This call is of use only if you've set a custom cursor for items, with + * @ref elm_wdg_item_cursor_set. + * + * @note By default, cursors will only be looked for between those provided by + * the rendering engine. + * + * @param[in] obj The object. + * @param[in] engine_only Use @c true to have cursors looked for only on those + * provided by the rendering engine, @c false to have them searched on the + * widget's theme, as well. + * + * @ingroup Elm_Widget_Item + */ +EOAPI void elm_wdg_item_cursor_engine_only_set(Eo *obj, Eina_Bool engine_only); + +/** + * @brief Control if the (custom)cursor for a given item should be searched in + * its theme, also, or should only rely on the rendering engine. + * + * @note This call is of use only if you've set a custom cursor for items, with + * @ref elm_wdg_item_cursor_set. + * + * @note By default, cursors will only be looked for between those provided by + * the rendering engine. + * + * @param[in] obj The object. + * + * @return Use @c true to have cursors looked for only on those provided by the + * rendering engine, @c false to have them searched on the widget's theme, as + * well. + * + * @ingroup Elm_Widget_Item + */ +EOAPI Eina_Bool elm_wdg_item_cursor_engine_only_get(const Eo *obj); + +/** + * @brief Control a content of an object item + * + * This sets a new object to an item as a content object. If any object was + * already set as a content object in the same part, previous object will be + * deleted automatically. + * + * @param[in] obj The object. + * @param[in] part The content part name (NULL for the default content) + * @param[in] content The content of the object item + * + * @ingroup Elm_Widget_Item + */ +EOAPI void elm_wdg_item_part_content_set(Eo *obj, const char *part, Efl_Canvas_Object *content); + +/** + * @brief Control a content of an object item + * + * This sets a new object to an item as a content object. If any object was + * already set as a content object in the same part, previous object will be + * deleted automatically. + * + * @param[in] obj The object. + * @param[in] part The content part name (NULL for the default content) + * + * @return The content of the object item + * + * @ingroup Elm_Widget_Item + */ +EOAPI Efl_Canvas_Object *elm_wdg_item_part_content_get(const Eo *obj, const char *part); + +/** + * @brief Control a label of an object item + * + * @note Elementary object items may have many labels + * + * @param[in] obj The object. + * @param[in] part The text part name (NULL for the default label) + * @param[in] label Text of the label + * + * @ingroup Elm_Widget_Item + */ +EOAPI void elm_wdg_item_part_text_set(Eo *obj, const char *part, const char *label); + +/** + * @brief Control a label of an object item + * + * @note Elementary object items may have many labels + * + * @param[in] obj The object. + * @param[in] part The text part name (NULL for the default label) + * + * @return Text of the label + * + * @ingroup Elm_Widget_Item + */ +EOAPI const char *elm_wdg_item_part_text_get(const Eo *obj, const char *part); + +#ifdef ELM_WIDGET_ITEM_PROTECTED +/** + * @brief Save additional text part content + * + * @param[in] obj The object. + * @param[in] part Part name + * @param[in] label Label name + * + * @ingroup Elm_Widget_Item + */ +EOAPI void elm_wdg_item_part_text_custom_set(Eo *obj, const char *part, const char *label); +#endif + +#ifdef ELM_WIDGET_ITEM_PROTECTED +/** + * @brief Get additional text part content + * + * @param[in] obj The object. + * @param[in] part Part name + * + * @return Label name + * + * @ingroup Elm_Widget_Item + */ +EOAPI const char *elm_wdg_item_part_text_custom_get(const Eo *obj, const char *part); +#endif + +/** + * @brief Control the object item focused + * + * @param[in] obj The object. + * @param[in] focused The focused state + * + * @since 1.10 + * + * @ingroup Elm_Widget_Item + */ +EOAPI void elm_wdg_item_focus_set(Eo *obj, Eina_Bool focused); + +/** + * @brief Control the object item focused + * + * @param[in] obj The object. + * + * @return The focused state + * + * @since 1.10 + * + * @ingroup Elm_Widget_Item + */ +EOAPI Eina_Bool elm_wdg_item_focus_get(const Eo *obj); + +/** + * @brief Control the style of an object item + * + * @param[in] obj The object. + * @param[in] style The style of object item + * + * @since 1.9 + * + * @ingroup Elm_Widget_Item + */ +EOAPI void elm_wdg_item_style_set(Eo *obj, const char *style); + +/** + * @brief Control the style of an object item + * + * @param[in] obj The object. + * + * @return The style of object item + * + * @since 1.9 + * + * @ingroup Elm_Widget_Item + */ +EOAPI const char *elm_wdg_item_style_get(const Eo *obj); + +/** + * @brief Control the disabled state of a widget item. + * + * Elementary object item can be disabled, in which state they won't receive + * input and, in general, will be themed differently from their normal state, + * usually greyed out. Useful for contexts where you don't want your users to + * interact with some of the parts of you interface. + * + * This sets the state for the widget item, either disabling it or enabling it + * back. + * + * @param[in] obj The object. + * @param[in] disable @c true, if the widget item is disabled, @c false if it's + * enabled (or on errors) + * + * @ingroup Elm_Widget_Item + */ +EOAPI void elm_wdg_item_disabled_set(Eo *obj, Eina_Bool disable); + +/** + * @brief Control the disabled state of a widget item. + * + * Elementary object item can be disabled, in which state they won't receive + * input and, in general, will be themed differently from their normal state, + * usually greyed out. Useful for contexts where you don't want your users to + * interact with some of the parts of you interface. + * + * This sets the state for the widget item, either disabling it or enabling it + * back. + * + * @param[in] obj The object. + * + * @return @c true, if the widget item is disabled, @c false if it's enabled + * (or on errors) + * + * @ingroup Elm_Widget_Item + */ +EOAPI Eina_Bool elm_wdg_item_disabled_get(const Eo *obj); + +/** + * @brief Get highlight order + * + * @param[in] obj The object. + * + * @return List of evas canvas objects + * + * @since 1.8 + * + * @ingroup Elm_Widget_Item + */ +EOAPI const Eina_List *elm_wdg_item_access_order_get(Eo *obj); + +/** + * @brief Set highlight order + * + * @param[in] obj The object. + * @param[in] objs Order of objects to pass highlight + * + * @since 1.8 + * + * @ingroup Elm_Widget_Item + */ +EOAPI void elm_wdg_item_access_order_set(Eo *obj, Eina_List *objs); + +/** + * @brief Get the widget object's handle which contains a given item + * + * @note This returns the widget object itself that an item belongs to. Note: + * Every elm_object_item supports this API + * + * @param[in] obj The object. + * + * @return The widget object + * + * @ingroup Elm_Widget_Item + */ +EOAPI Efl_Canvas_Object *elm_wdg_item_widget_get(const Eo *obj); + +#ifdef ELM_WIDGET_ITEM_PROTECTED +/** notify deletion of widget item + * + * @ingroup Elm_Widget_Item + */ +EOAPI void elm_wdg_item_pre_notify_del(Eo *obj); +#endif + +/** + * @brief Set the text to be shown in a given object item's tooltips. + * + * Setup the text as tooltip to object. The item can have only one tooltip, so + * any previous tooltip data - set with this function or + * @ref elm_wdg_item_tooltip_content_cb_set - is removed. + * + * See: elm_object_tooltip_text_set() for more details. + * + * @param[in] obj The object. + * @param[in] text The text to set in the content. + * + * @ingroup Elm_Widget_Item + */ +EOAPI void elm_wdg_item_tooltip_text_set(Eo *obj, const char *text); + +#ifdef ELM_WIDGET_ITEM_PROTECTED +/** + * @brief Set widget item tooltip as a text string + * + * @param[in] obj The object. + * @param[in] text Tooltip text + * + * @ingroup Elm_Widget_Item + */ +EOAPI void elm_wdg_item_tooltip_translatable_text_set(Eo *obj, const char *text); +#endif + +/** + * @brief Unset tooltip from item. + * + * Remove tooltip from item. The callback provided as del_cb to + * @ref elm_wdg_item_tooltip_content_cb_set will be called to notify it is not + * used anymore. + * + * See: elm_object_tooltip_unset() for more details. See: + * @ref elm_wdg_item_tooltip_content_cb_set + * @param[in] obj The object. + * + * @ingroup Elm_Widget_Item + */ +EOAPI void elm_wdg_item_tooltip_unset(Eo *obj); + +/** + * @brief Unset any custom mouse pointer/cursor decoration set to be shown, + * when the mouse pointer is over the given item, thus making it show the + * default cursor again. + * + * Use this call to undo any custom settings on this item's cursor decoration, + * bringing it back to defaults (no custom style set). + * + * See: elm_object_cursor_unset() See: @ref elm_wdg_item_cursor_set + * @param[in] obj The object. + * + * @ingroup Elm_Widget_Item + */ +EOAPI void elm_wdg_item_cursor_unset(Eo *obj); + +/** + * @brief Unset a content of an object item + * + * @note Elementary object items may have many contents + * + * @param[in] obj The object. + * @param[in] part The content part name to unset (NULL for the default + * content) + * + * @return Content object + * + * @ingroup Elm_Widget_Item + */ +EOAPI Efl_Canvas_Object *elm_wdg_item_part_content_unset(Eo *obj, const char *part); + +#ifdef ELM_WIDGET_ITEM_PROTECTED +/** Update additional text part content + * + * @ingroup Elm_Widget_Item + */ +EOAPI void elm_wdg_item_part_text_custom_update(Eo *obj); +#endif + +/** + * @brief Add a callback for a signal emitted by object item edje. + * + * This function connects a callback function to a signal emitted by the edje + * object of the object item. Globs can occur in either the emission or source + * name. + * + * @param[in] obj The object. + * @param[in] emission The signal's name. + * @param[in] source The signal's source. + * @param[in] func The callback function to be executed when the signal is + * emitted. + * @param[in] data A pointer to data to pass to the callback function. + * + * @since 1.8 + * + * @ingroup Elm_Widget_Item + */ +EOAPI void elm_wdg_item_signal_callback_add(Eo *obj, const char *emission, const char *source, Elm_Object_Item_Signal_Cb func, void *data); + +/** + * @brief Remove a signal-triggered callback from a object item edje object. + * + * This function removes the last callback, previously attached to a signal + * emitted by an underlying Edje object of @c it, whose parameters @c emission, + * @c source and @c func match exactly with those passed to a previous call to + * @ref elm_wdg_item_signal_callback_add. The data pointer that was passed to + * this call will be returned. + * + * See: @ref elm_wdg_item_signal_callback_add + * + * @param[in] obj The object. + * @param[in] emission The signal's name. + * @param[in] source The signal's source. + * @param[in] func The callback function to be executed when the signal is + * emitted. + * + * @return The data pointer of the signal callback or @c NULL, on errors. + * + * @since 1.8 + * + * @ingroup Elm_Widget_Item + */ +EOAPI void *elm_wdg_item_signal_callback_del(Eo *obj, const char *emission, const char *source, Elm_Object_Item_Signal_Cb func); + +/** + * @brief Send a signal to the edje object of the widget item. + * + * This function sends a signal to the edje object of the obj item. An edje + * program can respond to a signal by specifying matching 'signal' and 'source' + * fields. Don't use this unless you want to also handle resetting of part + * states to default on every unrealize in case of genlist/gengrid. + * + * @param[in] obj The object. + * @param[in] emission The signal's name. + * @param[in] source The signal's source. + * + * @ingroup Elm_Widget_Item + */ +EOAPI void elm_wdg_item_signal_emit(Eo *obj, const char *emission, const char *source); + +/** + * @brief Set the text to read out when in accessibility mode + * + * @param[in] obj The object. + * @param[in] txt The text that describes the widget to people with poor or no + * vision + * + * @ingroup Elm_Widget_Item + */ +EOAPI void elm_wdg_item_access_info_set(Eo *obj, const char *txt); + +/** + * @brief Get an accessible object of the object item. + * + * @param[in] obj The object. + * + * @return Accessible object of the object item or NULL for any error + * + * @since 1.8 + * + * @ingroup Elm_Widget_Item + */ +EOAPI Efl_Canvas_Object *elm_wdg_item_access_object_get(const Eo *obj); + +/** + * @brief Set the text for an object item's part, marking it as translatable. + * + * The string to set as @c text must be the original one. Do not pass the + * return of @c gettext() here. Elementary will translate the string internally + * and set it on the object item using @ref elm_wdg_item_part_text_set, also + * storing the original string so that it can be automatically translated when + * the language is changed with elm_language_set(). The @c domain will be + * stored along to find the translation in the correct catalog. It can be NULL, + * in which case it will use whatever domain was set by the application with + * @c textdomain(). This is useful in case you are building a library on top of + * Elementary that will have its own translatable strings, that should not be + * mixed with those of programs using the library. + * + * @param[in] obj The object. + * @param[in] part The name of the part to set + * @param[in] domain The translation domain to use + * @param[in] label The original, non-translated text to set + * + * @since 1.8 + * + * @ingroup Elm_Widget_Item + */ +EOAPI void elm_wdg_item_domain_translatable_part_text_set(Eo *obj, const char *part, const char *domain, const char *label); + +/** + * @brief Get the original string set as translatable for an object item. + * + * When setting translated strings, the function + * @ref elm_wdg_item_part_text_get will return the translation returned by + * @c gettext(). To get the original string use this function. + * + * @param[in] obj The object. + * @param[in] part The name of the part that was set + * + * @return The original, untranslated string + * + * @since 1.8 + * + * @ingroup Elm_Widget_Item + */ +EOAPI const char *elm_wdg_item_translatable_part_text_get(const Eo *obj, const char *part); + +#ifdef ELM_WIDGET_ITEM_PROTECTED +/** Query translate + * + * @ingroup Elm_Widget_Item + */ +EOAPI void elm_wdg_item_translate(Eo *obj); +#endif + +/** + * @brief Mark the part text to be translatable or not. + * + * Once you mark the part text to be translatable, the text will be translated + * internally regardless of @ref elm_wdg_item_part_text_set and + * @ref elm_wdg_item_domain_translatable_part_text_set. In other case, if you + * set the Elementary policy that all text will be translatable in default, you + * can set the part text to not be translated by calling this API. + * + * See: @ref elm_wdg_item_domain_translatable_part_text_set See: + * @ref elm_wdg_item_part_text_set See: elm_policy() + * + * @param[in] obj The object. + * @param[in] part The part name of the translatable text + * @param[in] domain The translation domain to use + * @param[in] translatable @c true, the part text will be translated + * internally. @c false, otherwise. + * + * @since 1.8 + * + * @ingroup Elm_Widget_Item + */ +EOAPI void elm_wdg_item_domain_part_text_translatable_set(Eo *obj, const char *part, const char *domain, Eina_Bool translatable); + +/** + * @brief This returns track object of the item. + * + * @note This gets a rectangle object that represents the object item's + * internal object. If you want to check the geometry, visibility of the item, + * you can call the evas apis such as evas_object_geometry_get(), + * evas_object_visible_get() to the track object. Note that all of the widget + * items may/may not have the internal object so this api may return @c NULL if + * the widget item doesn't have it. Additionally, the widget item is + * managed/controlled by the widget, the widget item could be changed(moved, + * resized even deleted) anytime by it's own widget's decision. So please dont' + * change the track object as well as don't keep the track object in your side + * as possible but get the track object at the moment you need to refer. + * Otherwise, you need to add some callbacks to the track object to track it's + * attributes changes. + * + * @warning After use the track object, please call the + * @ref elm_wdg_item_untrack() paired to elm_object_item_track definitely to + * free the track object properly. Don't delete the track object. + * + * See: @ref elm_wdg_item_untrack See: @ref elm_wdg_item_track_get + * + * @param[in] obj The object. + * + * @return The track object + * + * @since 1.8 + * + * @ingroup Elm_Widget_Item + */ +EOAPI Efl_Canvas_Object *elm_wdg_item_track(Eo *obj); + +/** + * @brief This retrieve the track object of the item. + * + * @note This retrieves the track object that was returned from + * @ref elm_wdg_item_track. + * + * See: @ref elm_wdg_item_track See: @ref elm_wdg_item_track_get + * + * @param[in] obj The object. + * + * @since 1.8 + * + * @ingroup Elm_Widget_Item + */ +EOAPI void elm_wdg_item_untrack(Eo *obj); + +/** + * @brief Get the track object reference count. + * + * @note This gets the reference count for the track object. Whenever you call + * the @ref elm_wdg_item_track, the reference count will be increased by one. + * Likely the reference count will be decreased again when you call the + * @ref elm_wdg_item_untrack. Unless the reference count reaches to zero, the + * track object won't be deleted. So please be sure to call + * @ref elm_wdg_item_untrack() paired to the elm_object_item_track call count. + * + * See: @ref elm_wdg_item_track See: @ref elm_wdg_item_track_get + * + * @param[in] obj The object. + * + * @return Track object reference count + * + * @since 1.8 + * + * @ingroup Elm_Widget_Item + */ +EOAPI int elm_wdg_item_track_get(const Eo *obj); + +#ifdef ELM_WIDGET_ITEM_PROTECTED +/** Query track_cancel + * + * @ingroup Elm_Widget_Item + */ +EOAPI void elm_wdg_item_track_cancel(Eo *obj); +#endif + +/** + * @brief Set the function to be called when an item from the widget is freed. + * + * @note Every elm_object_item supports this API + * + * @param[in] obj The object. + * @param[in] del_cb The function called + * + * @ingroup Elm_Widget_Item + */ +EOAPI void elm_wdg_item_del_cb_set(Eo *obj, Evas_Smart_Cb del_cb); + +/** + * @brief Set the content to be shown in the tooltip item. + * + * Setup the tooltip to item. The item can have only one tooltip, so any + * previous tooltip data is removed. @c func(with @c data) will be called every + * time that need show the tooltip and it should return a valid Evas_Object. + * This object is then managed fully by tooltip system and is deleted when the + * tooltip is gone. + * + * See: elm_object_tooltip_content_cb_set() for more details. + * + * @param[in] obj The object. + * @param[in] func The function used to create the tooltip contents. + * @param[in] data What to provide to @c func as callback data/context. + * @param[in] del_cb Called when data is not needed anymore, either when + * another callback replaces @c func, the tooltip is unset with + * @ref elm_wdg_item_tooltip_unset or the owner @c item dies. This callback + * receives as the first parameter the given @c data, and @c event_info is the + * item. + * + * @ingroup Elm_Widget_Item + */ +EOAPI void elm_wdg_item_tooltip_content_cb_set(Eo *obj, Elm_Tooltip_Item_Content_Cb func, const void *data, Evas_Smart_Cb del_cb); + +/** + * @brief Register object item as an accessible object. + * + * @param[in] obj The object. + * + * @return Accessible object of the object item or NULL for any error + * + * @since 1.8 + * + * @ingroup Elm_Widget_Item + */ +EOAPI Efl_Canvas_Object *elm_wdg_item_access_register(Eo *obj); + +/** Unregister accessible object of the object item. + * + * @since 1.8 + * + * @ingroup Elm_Widget_Item + */ +EOAPI void elm_wdg_item_access_unregister(Eo *obj); + +/** Unset highlight order + * + * @since 1.8 + * + * @ingroup Elm_Widget_Item + */ +EOAPI void elm_wdg_item_access_order_unset(Eo *obj); + +#ifdef ELM_WIDGET_ITEM_PROTECTED +/** Disable widget item + * + * @ingroup Elm_Widget_Item + */ +EOAPI void elm_wdg_item_disable(Eo *obj); +#endif + +#ifdef ELM_WIDGET_ITEM_PROTECTED +/** Delete pre widget item + * + * @ingroup Elm_Widget_Item + */ +EOAPI void elm_wdg_item_del_pre(Eo *obj); +#endif + +/** + * @brief Get the next object with specific focus direction. + * + * @param[in] obj The object. + * @param[in] dir Focus direction + * + * @return Focus next object + * + * @since 1.16 + * + * @ingroup Elm_Widget_Item + */ +EOAPI Efl_Canvas_Object *elm_wdg_item_focus_next_object_get(const Eo *obj, Efl_Ui_Focus_Direction dir); + +/** + * @brief Set the next object with specific focus direction. + * + * @param[in] obj The object. + * @param[in] next Focus next object + * @param[in] dir Focus direction + * + * @since 1.16 + * + * @ingroup Elm_Widget_Item + */ +EOAPI void elm_wdg_item_focus_next_object_set(Eo *obj, Efl_Canvas_Object *next, Efl_Ui_Focus_Direction dir); + +/** + * @brief Get the next object item with specific focus direction. + * + * @param[in] obj The object. + * @param[in] dir Focus direction + * + * @return Focus next object item + * + * @since 1.16 + * + * @ingroup Elm_Widget_Item + */ +EOAPI Elm_Widget_Item *elm_wdg_item_focus_next_item_get(const Eo *obj, Efl_Ui_Focus_Direction dir); + +/** + * @brief Set the next object item with specific focus direction. + * + * @param[in] obj The object. + * @param[in] next_item Focus next object item + * @param[in] dir Focus direction + * + * @since 1.16 + * + * @ingroup Elm_Widget_Item + */ +EOAPI void elm_wdg_item_focus_next_item_set(Eo *obj, Elm_Widget_Item *next_item, Efl_Ui_Focus_Direction dir); + +#endif diff --git a/src/lib/elementary/elm_widget_item_eo.legacy.c b/src/lib/elementary/elm_widget_item_eo.legacy.c new file mode 100644 index 0000000000..c50797f7cd --- /dev/null +++ b/src/lib/elementary/elm_widget_item_eo.legacy.c @@ -0,0 +1,282 @@ + +EAPI Eina_Bool +elm_object_item_tooltip_window_mode_set(Elm_Widget_Item *obj, Eina_Bool disable) +{ + return elm_wdg_item_tooltip_window_mode_set(obj, disable); +} + +EAPI Eina_Bool +elm_object_item_tooltip_window_mode_get(const Elm_Widget_Item *obj) +{ + return elm_wdg_item_tooltip_window_mode_get(obj); +} + +EAPI void +elm_object_item_tooltip_style_set(Elm_Widget_Item *obj, const char *style) +{ + elm_wdg_item_tooltip_style_set(obj, style); +} + +EAPI const char * +elm_object_item_tooltip_style_get(const Elm_Widget_Item *obj) +{ + return elm_wdg_item_tooltip_style_get(obj); +} + +EAPI void +elm_object_item_cursor_set(Elm_Widget_Item *obj, const char *cursor) +{ + elm_wdg_item_cursor_set(obj, cursor); +} + +EAPI const char * +elm_object_item_cursor_get(const Elm_Widget_Item *obj) +{ + return elm_wdg_item_cursor_get(obj); +} + +EAPI void +elm_object_item_cursor_style_set(Elm_Widget_Item *obj, const char *style) +{ + elm_wdg_item_cursor_style_set(obj, style); +} + +EAPI const char * +elm_object_item_cursor_style_get(const Elm_Widget_Item *obj) +{ + return elm_wdg_item_cursor_style_get(obj); +} + +EAPI void +elm_object_item_cursor_engine_only_set(Elm_Widget_Item *obj, Eina_Bool engine_only) +{ + elm_wdg_item_cursor_engine_only_set(obj, engine_only); +} + +EAPI Eina_Bool +elm_object_item_cursor_engine_only_get(const Elm_Widget_Item *obj) +{ + return elm_wdg_item_cursor_engine_only_get(obj); +} + +EAPI void +elm_object_item_part_content_set(Elm_Widget_Item *obj, const char *part, Efl_Canvas_Object *content) +{ + elm_wdg_item_part_content_set(obj, part, content); +} + +EAPI Efl_Canvas_Object * +elm_object_item_part_content_get(const Elm_Widget_Item *obj, const char *part) +{ + return elm_wdg_item_part_content_get(obj, part); +} + +EAPI void +elm_object_item_part_text_set(Elm_Widget_Item *obj, const char *part, const char *label) +{ + elm_wdg_item_part_text_set(obj, part, label); +} + +EAPI const char * +elm_object_item_part_text_get(const Elm_Widget_Item *obj, const char *part) +{ + return elm_wdg_item_part_text_get(obj, part); +} + +EAPI void +elm_object_item_focus_set(Elm_Widget_Item *obj, Eina_Bool focused) +{ + elm_wdg_item_focus_set(obj, focused); +} + +EAPI Eina_Bool +elm_object_item_focus_get(const Elm_Widget_Item *obj) +{ + return elm_wdg_item_focus_get(obj); +} + +EAPI void +elm_object_item_style_set(Elm_Widget_Item *obj, const char *style) +{ + elm_wdg_item_style_set(obj, style); +} + +EAPI const char * +elm_object_item_style_get(const Elm_Widget_Item *obj) +{ + return elm_wdg_item_style_get(obj); +} + +EAPI void +elm_object_item_disabled_set(Elm_Widget_Item *obj, Eina_Bool disable) +{ + elm_wdg_item_disabled_set(obj, disable); +} + +EAPI Eina_Bool +elm_object_item_disabled_get(const Elm_Widget_Item *obj) +{ + return elm_wdg_item_disabled_get(obj); +} + +EAPI const Eina_List * +elm_object_item_access_order_get(Elm_Widget_Item *obj) +{ + return elm_wdg_item_access_order_get(obj); +} + +EAPI void +elm_object_item_access_order_set(Elm_Widget_Item *obj, Eina_List *objs) +{ + elm_wdg_item_access_order_set(obj, objs); +} + +EAPI Efl_Canvas_Object * +elm_object_item_widget_get(const Elm_Widget_Item *obj) +{ + return elm_wdg_item_widget_get(obj); +} + +EAPI void +elm_object_item_tooltip_text_set(Elm_Widget_Item *obj, const char *text) +{ + elm_wdg_item_tooltip_text_set(obj, text); +} + +EAPI void +elm_object_item_tooltip_unset(Elm_Widget_Item *obj) +{ + elm_wdg_item_tooltip_unset(obj); +} + +EAPI void +elm_object_item_cursor_unset(Elm_Widget_Item *obj) +{ + elm_wdg_item_cursor_unset(obj); +} + +EAPI Efl_Canvas_Object * +elm_object_item_part_content_unset(Elm_Widget_Item *obj, const char *part) +{ + return elm_wdg_item_part_content_unset(obj, part); +} + +EAPI void +elm_object_item_signal_callback_add(Elm_Widget_Item *obj, const char *emission, const char *source, Elm_Object_Item_Signal_Cb func, void *data) +{ + elm_wdg_item_signal_callback_add(obj, emission, source, func, data); +} + +EAPI void * +elm_object_item_signal_callback_del(Elm_Widget_Item *obj, const char *emission, const char *source, Elm_Object_Item_Signal_Cb func) +{ + return elm_wdg_item_signal_callback_del(obj, emission, source, func); +} + +EAPI void +elm_object_item_signal_emit(Elm_Widget_Item *obj, const char *emission, const char *source) +{ + elm_wdg_item_signal_emit(obj, emission, source); +} + +EAPI void +elm_object_item_access_info_set(Elm_Widget_Item *obj, const char *txt) +{ + elm_wdg_item_access_info_set(obj, txt); +} + +EAPI Efl_Canvas_Object * +elm_object_item_access_object_get(const Elm_Widget_Item *obj) +{ + return elm_wdg_item_access_object_get(obj); +} + +EAPI void +elm_object_item_domain_translatable_part_text_set(Elm_Widget_Item *obj, const char *part, const char *domain, const char *label) +{ + elm_wdg_item_domain_translatable_part_text_set(obj, part, domain, label); +} + +EAPI const char * +elm_object_item_translatable_part_text_get(const Elm_Widget_Item *obj, const char *part) +{ + return elm_wdg_item_translatable_part_text_get(obj, part); +} + +EAPI void +elm_object_item_domain_part_text_translatable_set(Elm_Widget_Item *obj, const char *part, const char *domain, Eina_Bool translatable) +{ + elm_wdg_item_domain_part_text_translatable_set(obj, part, domain, translatable); +} + +EAPI Efl_Canvas_Object * +elm_object_item_track(Elm_Widget_Item *obj) +{ + return elm_wdg_item_track(obj); +} + +EAPI void +elm_object_item_untrack(Elm_Widget_Item *obj) +{ + elm_wdg_item_untrack(obj); +} + +EAPI int +elm_object_item_track_get(const Elm_Widget_Item *obj) +{ + return elm_wdg_item_track_get(obj); +} + +EAPI void +elm_object_item_del_cb_set(Elm_Widget_Item *obj, Evas_Smart_Cb del_cb) +{ + elm_wdg_item_del_cb_set(obj, del_cb); +} + +EAPI void +elm_object_item_tooltip_content_cb_set(Elm_Widget_Item *obj, Elm_Tooltip_Item_Content_Cb func, const void *data, Evas_Smart_Cb del_cb) +{ + elm_wdg_item_tooltip_content_cb_set(obj, func, data, del_cb); +} + +EAPI Efl_Canvas_Object * +elm_object_item_access_register(Elm_Widget_Item *obj) +{ + return elm_wdg_item_access_register(obj); +} + +EAPI void +elm_object_item_access_unregister(Elm_Widget_Item *obj) +{ + elm_wdg_item_access_unregister(obj); +} + +EAPI void +elm_object_item_access_order_unset(Elm_Widget_Item *obj) +{ + elm_wdg_item_access_order_unset(obj); +} + +EAPI Efl_Canvas_Object * +elm_object_item_focus_next_object_get(const Elm_Widget_Item *obj, Efl_Ui_Focus_Direction dir) +{ + return elm_wdg_item_focus_next_object_get(obj, dir); +} + +EAPI void +elm_object_item_focus_next_object_set(Elm_Widget_Item *obj, Efl_Canvas_Object *next, Efl_Ui_Focus_Direction dir) +{ + elm_wdg_item_focus_next_object_set(obj, next, dir); +} + +EAPI Elm_Widget_Item * +elm_object_item_focus_next_item_get(const Elm_Widget_Item *obj, Efl_Ui_Focus_Direction dir) +{ + return elm_wdg_item_focus_next_item_get(obj, dir); +} + +EAPI void +elm_object_item_focus_next_item_set(Elm_Widget_Item *obj, Elm_Widget_Item *next_item, Efl_Ui_Focus_Direction dir) +{ + elm_wdg_item_focus_next_item_set(obj, next_item, dir); +} diff --git a/src/lib/elementary/elm_widget_item_eo.legacy.h b/src/lib/elementary/elm_widget_item_eo.legacy.h new file mode 100644 index 0000000000..a48f446141 --- /dev/null +++ b/src/lib/elementary/elm_widget_item_eo.legacy.h @@ -0,0 +1,799 @@ +#ifndef _ELM_WIDGET_ITEM_EO_LEGACY_H_ +#define _ELM_WIDGET_ITEM_EO_LEGACY_H_ + +#ifndef _ELM_WIDGET_ITEM_EO_CLASS_TYPE +#define _ELM_WIDGET_ITEM_EO_CLASS_TYPE + +typedef Eo Elm_Widget_Item; + +#endif + +#ifndef _ELM_WIDGET_ITEM_EO_TYPES +#define _ELM_WIDGET_ITEM_EO_TYPES + + +#endif + +/** + * @brief Control size restriction state of an object's tooltip + * + * This function returns whether a tooltip is allowed to expand beyond its + * parent window's canvas. It will instead be limited only by the size of the + * display. + * + * @param[in] obj The object. + * @param[in] disable If @c true, size restrictions are disabled + * + * @return @c false on failure, @c true on success + * + * @ingroup Elm_Object_Item_Group + */ +EAPI Eina_Bool elm_object_item_tooltip_window_mode_set(Elm_Widget_Item *obj, Eina_Bool disable); + +/** + * @brief Control size restriction state of an object's tooltip + * + * This function returns whether a tooltip is allowed to expand beyond its + * parent window's canvas. It will instead be limited only by the size of the + * display. + * + * @param[in] obj The object. + * + * @return If @c true, size restrictions are disabled + * + * @ingroup Elm_Object_Item_Group + */ +EAPI Eina_Bool elm_object_item_tooltip_window_mode_get(const Elm_Widget_Item *obj); + +/** + * @brief Control a different style for this item tooltip. + * + * @note before you set a style you should define a tooltip with + * @ref elm_object_item_tooltip_content_cb_set or + * @ref elm_object_item_tooltip_text_set + * + * See: elm_object_tooltip_style_set() for more details. + * + * @param[in] obj The object. + * @param[in] style The theme style used/to use (default, transparent, ...) + * + * @ingroup Elm_Object_Item_Group + */ +EAPI void elm_object_item_tooltip_style_set(Elm_Widget_Item *obj, const char *style); + +/** + * @brief Control a different style for this item tooltip. + * + * @note before you set a style you should define a tooltip with + * @ref elm_object_item_tooltip_content_cb_set or + * @ref elm_object_item_tooltip_text_set + * + * See: elm_object_tooltip_style_set() for more details. + * + * @param[in] obj The object. + * + * @return The theme style used/to use (default, transparent, ...) + * + * @ingroup Elm_Object_Item_Group + */ +EAPI const char *elm_object_item_tooltip_style_get(const Elm_Widget_Item *obj); + +/** + * @brief Control the type of mouse pointer/cursor decoration to be shown, when + * the mouse pointer is over the given item + * + * This function works analogously as elm_object_cursor_set(), but here the + * cursor's changing area is restricted to the item's area, and not the whole + * widget's. Note that that item cursors have precedence over widget cursors, + * so that a mouse over an item with custom cursor set will always show that + * cursor. + * + * If this function is called twice for an object, a previously set cursor will + * be unset on the second call. + * + * @param[in] obj The object. + * @param[in] cursor The cursor type's name + * + * @ingroup Elm_Object_Item_Group + */ +EAPI void elm_object_item_cursor_set(Elm_Widget_Item *obj, const char *cursor); + +/** + * @brief Control the type of mouse pointer/cursor decoration to be shown, when + * the mouse pointer is over the given item + * + * This function works analogously as elm_object_cursor_set(), but here the + * cursor's changing area is restricted to the item's area, and not the whole + * widget's. Note that that item cursors have precedence over widget cursors, + * so that a mouse over an item with custom cursor set will always show that + * cursor. + * + * If this function is called twice for an object, a previously set cursor will + * be unset on the second call. + * + * @param[in] obj The object. + * + * @return The cursor type's name + * + * @ingroup Elm_Object_Item_Group + */ +EAPI const char *elm_object_item_cursor_get(const Elm_Widget_Item *obj); + +/** + * @brief Control a different @c style for a given custom cursor set for an + * item. + * + * This function only makes sense when one is using custom mouse cursor + * decorations defined in a theme file, which can have, given a cursor + * name/type, alternate styles on it. It works analogously as + * elm_object_cursor_style_set(), but here applies only to item objects. + * + * @warning Before you set a cursor style you should have defined a custom + * cursor previously on the item, with @ref elm_object_item_cursor_set + * + * @param[in] obj The object. + * @param[in] style The theme style to use/in use (e.g. $"default", + * $"transparent", etc) + * + * @ingroup Elm_Object_Item_Group + */ +EAPI void elm_object_item_cursor_style_set(Elm_Widget_Item *obj, const char *style); + +/** + * @brief Control a different @c style for a given custom cursor set for an + * item. + * + * This function only makes sense when one is using custom mouse cursor + * decorations defined in a theme file, which can have, given a cursor + * name/type, alternate styles on it. It works analogously as + * elm_object_cursor_style_set(), but here applies only to item objects. + * + * @warning Before you set a cursor style you should have defined a custom + * cursor previously on the item, with @ref elm_object_item_cursor_set + * + * @param[in] obj The object. + * + * @return The theme style to use/in use (e.g. $"default", $"transparent", etc) + * + * @ingroup Elm_Object_Item_Group + */ +EAPI const char *elm_object_item_cursor_style_get(const Elm_Widget_Item *obj); + +/** + * @brief Control if the (custom)cursor for a given item should be searched in + * its theme, also, or should only rely on the rendering engine. + * + * @note This call is of use only if you've set a custom cursor for items, with + * @ref elm_object_item_cursor_set. + * + * @note By default, cursors will only be looked for between those provided by + * the rendering engine. + * + * @param[in] obj The object. + * @param[in] engine_only Use @c true to have cursors looked for only on those + * provided by the rendering engine, @c false to have them searched on the + * widget's theme, as well. + * + * @ingroup Elm_Object_Item_Group + */ +EAPI void elm_object_item_cursor_engine_only_set(Elm_Widget_Item *obj, Eina_Bool engine_only); + +/** + * @brief Control if the (custom)cursor for a given item should be searched in + * its theme, also, or should only rely on the rendering engine. + * + * @note This call is of use only if you've set a custom cursor for items, with + * @ref elm_object_item_cursor_set. + * + * @note By default, cursors will only be looked for between those provided by + * the rendering engine. + * + * @param[in] obj The object. + * + * @return Use @c true to have cursors looked for only on those provided by the + * rendering engine, @c false to have them searched on the widget's theme, as + * well. + * + * @ingroup Elm_Object_Item_Group + */ +EAPI Eina_Bool elm_object_item_cursor_engine_only_get(const Elm_Widget_Item *obj); + +/** + * @brief Control a content of an object item + * + * This sets a new object to an item as a content object. If any object was + * already set as a content object in the same part, previous object will be + * deleted automatically. + * + * @param[in] obj The object. + * @param[in] part The content part name (NULL for the default content) + * @param[in] content The content of the object item + * + * @ingroup Elm_Object_Item_Group + */ +EAPI void elm_object_item_part_content_set(Elm_Widget_Item *obj, const char *part, Efl_Canvas_Object *content); + +/** + * @brief Control a content of an object item + * + * This sets a new object to an item as a content object. If any object was + * already set as a content object in the same part, previous object will be + * deleted automatically. + * + * @param[in] obj The object. + * @param[in] part The content part name (NULL for the default content) + * + * @return The content of the object item + * + * @ingroup Elm_Object_Item_Group + */ +EAPI Efl_Canvas_Object *elm_object_item_part_content_get(const Elm_Widget_Item *obj, const char *part); + +/** + * @brief Control a label of an object item + * + * @note Elementary object items may have many labels + * + * @param[in] obj The object. + * @param[in] part The text part name (NULL for the default label) + * @param[in] label Text of the label + * + * @ingroup Elm_Object_Item_Group + */ +EAPI void elm_object_item_part_text_set(Elm_Widget_Item *obj, const char *part, const char *label); + +/** + * @brief Control a label of an object item + * + * @note Elementary object items may have many labels + * + * @param[in] obj The object. + * @param[in] part The text part name (NULL for the default label) + * + * @return Text of the label + * + * @ingroup Elm_Object_Item_Group + */ +EAPI const char *elm_object_item_part_text_get(const Elm_Widget_Item *obj, const char *part); + + + +/** + * @brief Control the object item focused + * + * @param[in] obj The object. + * @param[in] focused The focused state + * + * @since 1.10 + * + * @ingroup Elm_Object_Item_Group + */ +EAPI void elm_object_item_focus_set(Elm_Widget_Item *obj, Eina_Bool focused); + +/** + * @brief Control the object item focused + * + * @param[in] obj The object. + * + * @return The focused state + * + * @since 1.10 + * + * @ingroup Elm_Object_Item_Group + */ +EAPI Eina_Bool elm_object_item_focus_get(const Elm_Widget_Item *obj); + +/** + * @brief Control the style of an object item + * + * @param[in] obj The object. + * @param[in] style The style of object item + * + * @since 1.9 + * + * @ingroup Elm_Object_Item_Group + */ +EAPI void elm_object_item_style_set(Elm_Widget_Item *obj, const char *style); + +/** + * @brief Control the style of an object item + * + * @param[in] obj The object. + * + * @return The style of object item + * + * @since 1.9 + * + * @ingroup Elm_Object_Item_Group + */ +EAPI const char *elm_object_item_style_get(const Elm_Widget_Item *obj); + +/** + * @brief Control the disabled state of a widget item. + * + * Elementary object item can be disabled, in which state they won't receive + * input and, in general, will be themed differently from their normal state, + * usually greyed out. Useful for contexts where you don't want your users to + * interact with some of the parts of you interface. + * + * This sets the state for the widget item, either disabling it or enabling it + * back. + * + * @param[in] obj The object. + * @param[in] disable @c true, if the widget item is disabled, @c false if it's + * enabled (or on errors) + * + * @ingroup Elm_Object_Item_Group + */ +EAPI void elm_object_item_disabled_set(Elm_Widget_Item *obj, Eina_Bool disable); + +/** + * @brief Control the disabled state of a widget item. + * + * Elementary object item can be disabled, in which state they won't receive + * input and, in general, will be themed differently from their normal state, + * usually greyed out. Useful for contexts where you don't want your users to + * interact with some of the parts of you interface. + * + * This sets the state for the widget item, either disabling it or enabling it + * back. + * + * @param[in] obj The object. + * + * @return @c true, if the widget item is disabled, @c false if it's enabled + * (or on errors) + * + * @ingroup Elm_Object_Item_Group + */ +EAPI Eina_Bool elm_object_item_disabled_get(const Elm_Widget_Item *obj); + +/** + * @brief Get highlight order + * + * @param[in] obj The object. + * + * @return List of evas canvas objects + * + * @since 1.8 + * + * @ingroup Elm_Object_Item_Group + */ +EAPI const Eina_List *elm_object_item_access_order_get(Elm_Widget_Item *obj); + +/** + * @brief Set highlight order + * + * @param[in] obj The object. + * @param[in] objs Order of objects to pass highlight + * + * @since 1.8 + * + * @ingroup Elm_Object_Item_Group + */ +EAPI void elm_object_item_access_order_set(Elm_Widget_Item *obj, Eina_List *objs); + +/** + * @brief Get the widget object's handle which contains a given item + * + * @note This returns the widget object itself that an item belongs to. Note: + * Every elm_object_item supports this API + * + * @param[in] obj The object. + * + * @return The widget object + * + * @ingroup Elm_Object_Item_Group + */ +EAPI Efl_Canvas_Object *elm_object_item_widget_get(const Elm_Widget_Item *obj); + + +/** + * @brief Set the text to be shown in a given object item's tooltips. + * + * Setup the text as tooltip to object. The item can have only one tooltip, so + * any previous tooltip data - set with this function or + * @ref elm_object_item_tooltip_content_cb_set - is removed. + * + * See: elm_object_tooltip_text_set() for more details. + * + * @param[in] obj The object. + * @param[in] text The text to set in the content. + * + * @ingroup Elm_Object_Item_Group + */ +EAPI void elm_object_item_tooltip_text_set(Elm_Widget_Item *obj, const char *text); + + +/** + * @brief Unset tooltip from item. + * + * Remove tooltip from item. The callback provided as del_cb to + * @ref elm_object_item_tooltip_content_cb_set will be called to notify it is + * not used anymore. + * + * See: elm_object_tooltip_unset() for more details. See: + * @ref elm_object_item_tooltip_content_cb_set + * @param[in] obj The object. + * + * @ingroup Elm_Object_Item_Group + */ +EAPI void elm_object_item_tooltip_unset(Elm_Widget_Item *obj); + +/** + * @brief Unset any custom mouse pointer/cursor decoration set to be shown, + * when the mouse pointer is over the given item, thus making it show the + * default cursor again. + * + * Use this call to undo any custom settings on this item's cursor decoration, + * bringing it back to defaults (no custom style set). + * + * See: elm_object_cursor_unset() See: @ref elm_object_item_cursor_set + * @param[in] obj The object. + * + * @ingroup Elm_Object_Item_Group + */ +EAPI void elm_object_item_cursor_unset(Elm_Widget_Item *obj); + +/** + * @brief Unset a content of an object item + * + * @note Elementary object items may have many contents + * + * @param[in] obj The object. + * @param[in] part The content part name to unset (NULL for the default + * content) + * + * @return Content object + * + * @ingroup Elm_Object_Item_Group + */ +EAPI Efl_Canvas_Object *elm_object_item_part_content_unset(Elm_Widget_Item *obj, const char *part); + + +/** + * @brief Add a callback for a signal emitted by object item edje. + * + * This function connects a callback function to a signal emitted by the edje + * object of the object item. Globs can occur in either the emission or source + * name. + * + * @param[in] obj The object. + * @param[in] emission The signal's name. + * @param[in] source The signal's source. + * @param[in] func The callback function to be executed when the signal is + * emitted. + * @param[in] data A pointer to data to pass to the callback function. + * + * @since 1.8 + * + * @ingroup Elm_Object_Item_Group + */ +EAPI void elm_object_item_signal_callback_add(Elm_Widget_Item *obj, const char *emission, const char *source, Elm_Object_Item_Signal_Cb func, void *data); + +/** + * @brief Remove a signal-triggered callback from a object item edje object. + * + * This function removes the last callback, previously attached to a signal + * emitted by an underlying Edje object of @c it, whose parameters @c emission, + * @c source and @c func match exactly with those passed to a previous call to + * @ref elm_object_item_signal_callback_add. The data pointer that was passed + * to this call will be returned. + * + * See: @ref elm_object_item_signal_callback_add + * + * @param[in] obj The object. + * @param[in] emission The signal's name. + * @param[in] source The signal's source. + * @param[in] func The callback function to be executed when the signal is + * emitted. + * + * @return The data pointer of the signal callback or @c NULL, on errors. + * + * @since 1.8 + * + * @ingroup Elm_Object_Item_Group + */ +EAPI void *elm_object_item_signal_callback_del(Elm_Widget_Item *obj, const char *emission, const char *source, Elm_Object_Item_Signal_Cb func); + +/** + * @brief Send a signal to the edje object of the widget item. + * + * This function sends a signal to the edje object of the obj item. An edje + * program can respond to a signal by specifying matching 'signal' and 'source' + * fields. Don't use this unless you want to also handle resetting of part + * states to default on every unrealize in case of genlist/gengrid. + * + * @param[in] obj The object. + * @param[in] emission The signal's name. + * @param[in] source The signal's source. + * + * @ingroup Elm_Object_Item_Group + */ +EAPI void elm_object_item_signal_emit(Elm_Widget_Item *obj, const char *emission, const char *source); + +/** + * @brief Set the text to read out when in accessibility mode + * + * @param[in] obj The object. + * @param[in] txt The text that describes the widget to people with poor or no + * vision + * + * @ingroup Elm_Object_Item_Group + */ +EAPI void elm_object_item_access_info_set(Elm_Widget_Item *obj, const char *txt); + +/** + * @brief Get an accessible object of the object item. + * + * @param[in] obj The object. + * + * @return Accessible object of the object item or NULL for any error + * + * @since 1.8 + * + * @ingroup Elm_Object_Item_Group + */ +EAPI Efl_Canvas_Object *elm_object_item_access_object_get(const Elm_Widget_Item *obj); + +/** + * @brief Set the text for an object item's part, marking it as translatable. + * + * The string to set as @c text must be the original one. Do not pass the + * return of @c gettext() here. Elementary will translate the string internally + * and set it on the object item using @ref elm_object_item_part_text_set, also + * storing the original string so that it can be automatically translated when + * the language is changed with elm_language_set(). The @c domain will be + * stored along to find the translation in the correct catalog. It can be NULL, + * in which case it will use whatever domain was set by the application with + * @c textdomain(). This is useful in case you are building a library on top of + * Elementary that will have its own translatable strings, that should not be + * mixed with those of programs using the library. + * + * @param[in] obj The object. + * @param[in] part The name of the part to set + * @param[in] domain The translation domain to use + * @param[in] label The original, non-translated text to set + * + * @since 1.8 + * + * @ingroup Elm_Object_Item_Group + */ +EAPI void elm_object_item_domain_translatable_part_text_set(Elm_Widget_Item *obj, const char *part, const char *domain, const char *label); + +/** + * @brief Get the original string set as translatable for an object item. + * + * When setting translated strings, the function + * @ref elm_object_item_part_text_get will return the translation returned by + * @c gettext(). To get the original string use this function. + * + * @param[in] obj The object. + * @param[in] part The name of the part that was set + * + * @return The original, untranslated string + * + * @since 1.8 + * + * @ingroup Elm_Object_Item_Group + */ +EAPI const char *elm_object_item_translatable_part_text_get(const Elm_Widget_Item *obj, const char *part); + + +/** + * @brief Mark the part text to be translatable or not. + * + * Once you mark the part text to be translatable, the text will be translated + * internally regardless of @ref elm_object_item_part_text_set and + * @ref elm_object_item_domain_translatable_part_text_set. In other case, if + * you set the Elementary policy that all text will be translatable in default, + * you can set the part text to not be translated by calling this API. + * + * See: @ref elm_object_item_domain_translatable_part_text_set See: + * @ref elm_object_item_part_text_set See: elm_policy() + * + * @param[in] obj The object. + * @param[in] part The part name of the translatable text + * @param[in] domain The translation domain to use + * @param[in] translatable @c true, the part text will be translated + * internally. @c false, otherwise. + * + * @since 1.8 + * + * @ingroup Elm_Object_Item_Group + */ +EAPI void elm_object_item_domain_part_text_translatable_set(Elm_Widget_Item *obj, const char *part, const char *domain, Eina_Bool translatable); + +/** + * @brief This returns track object of the item. + * + * @note This gets a rectangle object that represents the object item's + * internal object. If you want to check the geometry, visibility of the item, + * you can call the evas apis such as evas_object_geometry_get(), + * evas_object_visible_get() to the track object. Note that all of the widget + * items may/may not have the internal object so this api may return @c NULL if + * the widget item doesn't have it. Additionally, the widget item is + * managed/controlled by the widget, the widget item could be changed(moved, + * resized even deleted) anytime by it's own widget's decision. So please dont' + * change the track object as well as don't keep the track object in your side + * as possible but get the track object at the moment you need to refer. + * Otherwise, you need to add some callbacks to the track object to track it's + * attributes changes. + * + * @warning After use the track object, please call the + * @ref elm_object_item_untrack() paired to elm_object_item_track definitely to + * free the track object properly. Don't delete the track object. + * + * See: @ref elm_object_item_untrack See: @ref elm_object_item_track_get + * + * @param[in] obj The object. + * + * @return The track object + * + * @since 1.8 + * + * @ingroup Elm_Object_Item_Group + */ +EAPI Efl_Canvas_Object *elm_object_item_track(Elm_Widget_Item *obj); + +/** + * @brief This retrieve the track object of the item. + * + * @note This retrieves the track object that was returned from + * @ref elm_object_item_track. + * + * See: @ref elm_object_item_track See: @ref elm_object_item_track_get + * + * @param[in] obj The object. + * + * @since 1.8 + * + * @ingroup Elm_Object_Item_Group + */ +EAPI void elm_object_item_untrack(Elm_Widget_Item *obj); + +/** + * @brief Get the track object reference count. + * + * @note This gets the reference count for the track object. Whenever you call + * the @ref elm_object_item_track, the reference count will be increased by + * one. Likely the reference count will be decreased again when you call the + * @ref elm_object_item_untrack. Unless the reference count reaches to zero, + * the track object won't be deleted. So please be sure to call + * @ref elm_object_item_untrack() paired to the elm_object_item_track call + * count. + * + * See: @ref elm_object_item_track See: @ref elm_object_item_track_get + * + * @param[in] obj The object. + * + * @return Track object reference count + * + * @since 1.8 + * + * @ingroup Elm_Object_Item_Group + */ +EAPI int elm_object_item_track_get(const Elm_Widget_Item *obj); + + +/** + * @brief Set the function to be called when an item from the widget is freed. + * + * @note Every elm_object_item supports this API + * + * @param[in] obj The object. + * @param[in] del_cb The function called + * + * @ingroup Elm_Object_Item_Group + */ +EAPI void elm_object_item_del_cb_set(Elm_Widget_Item *obj, Evas_Smart_Cb del_cb); + +/** + * @brief Set the content to be shown in the tooltip item. + * + * Setup the tooltip to item. The item can have only one tooltip, so any + * previous tooltip data is removed. @c func(with @c data) will be called every + * time that need show the tooltip and it should return a valid Evas_Object. + * This object is then managed fully by tooltip system and is deleted when the + * tooltip is gone. + * + * See: elm_object_tooltip_content_cb_set() for more details. + * + * @param[in] obj The object. + * @param[in] func The function used to create the tooltip contents. + * @param[in] data What to provide to @c func as callback data/context. + * @param[in] del_cb Called when data is not needed anymore, either when + * another callback replaces @c func, the tooltip is unset with + * @ref elm_object_item_tooltip_unset or the owner @c item dies. This callback + * receives as the first parameter the given @c data, and @c event_info is the + * item. + * + * @ingroup Elm_Object_Item_Group + */ +EAPI void elm_object_item_tooltip_content_cb_set(Elm_Widget_Item *obj, Elm_Tooltip_Item_Content_Cb func, const void *data, Evas_Smart_Cb del_cb); + +/** + * @brief Register object item as an accessible object. + * + * @param[in] obj The object. + * + * @return Accessible object of the object item or NULL for any error + * + * @since 1.8 + * + * @ingroup Elm_Object_Item_Group + */ +EAPI Efl_Canvas_Object *elm_object_item_access_register(Elm_Widget_Item *obj); + +/** Unregister accessible object of the object item. + * + * @since 1.8 + * + * @ingroup Elm_Object_Item_Group + */ +EAPI void elm_object_item_access_unregister(Elm_Widget_Item *obj); + +/** Unset highlight order + * + * @since 1.8 + * + * @ingroup Elm_Object_Item_Group + */ +EAPI void elm_object_item_access_order_unset(Elm_Widget_Item *obj); + + + +/** + * @brief Get the next object with specific focus direction. + * + * @param[in] obj The object. + * @param[in] dir Focus direction + * + * @return Focus next object + * + * @since 1.16 + * + * @ingroup Elm_Object_Item_Group + */ +EAPI Efl_Canvas_Object *elm_object_item_focus_next_object_get(const Elm_Widget_Item *obj, Efl_Ui_Focus_Direction dir); + +/** + * @brief Set the next object with specific focus direction. + * + * @param[in] obj The object. + * @param[in] next Focus next object + * @param[in] dir Focus direction + * + * @since 1.16 + * + * @ingroup Elm_Object_Item_Group + */ +EAPI void elm_object_item_focus_next_object_set(Elm_Widget_Item *obj, Efl_Canvas_Object *next, Efl_Ui_Focus_Direction dir); + +/** + * @brief Get the next object item with specific focus direction. + * + * @param[in] obj The object. + * @param[in] dir Focus direction + * + * @return Focus next object item + * + * @since 1.16 + * + * @ingroup Elm_Object_Item_Group + */ +EAPI Elm_Widget_Item *elm_object_item_focus_next_item_get(const Elm_Widget_Item *obj, Efl_Ui_Focus_Direction dir); + +/** + * @brief Set the next object item with specific focus direction. + * + * @param[in] obj The object. + * @param[in] next_item Focus next object item + * @param[in] dir Focus direction + * + * @since 1.16 + * + * @ingroup Elm_Object_Item_Group + */ +EAPI void elm_object_item_focus_next_item_set(Elm_Widget_Item *obj, Elm_Widget_Item *next_item, Efl_Ui_Focus_Direction dir); + +#endif diff --git a/src/lib/elementary/elm_widget_item_static_focus.c b/src/lib/elementary/elm_widget_item_static_focus.c index 3e4dea910a..a94e80fb19 100644 --- a/src/lib/elementary/elm_widget_item_static_focus.c +++ b/src/lib/elementary/elm_widget_item_static_focus.c @@ -183,4 +183,4 @@ _elm_widget_item_static_focus_efl_object_destructor(Eo *obj, Elm_Widget_Item_Sta } -#include "elm_widget_item_static_focus.eo.c" +#include "elm_widget_item_static_focus_eo.c" diff --git a/src/lib/elementary/elm_widget_item_static_focus.eo b/src/lib/elementary/elm_widget_item_static_focus.eo deleted file mode 100644 index f82ebe4681..0000000000 --- a/src/lib/elementary/elm_widget_item_static_focus.eo +++ /dev/null @@ -1,9 +0,0 @@ -class Elm.Widget.Item.Static_Focus extends Elm.Widget.Item implements Efl.Ui.Focus.Object -{ - [[A class that ensures that at least ONE focusable target is behind this widget item. If there is none registered to it after a prepare call it will register the view of the item as item.]] - implements { - Efl.Object.constructor; - Efl.Object.destructor; - Efl.Ui.Focus.Object.setup_order_non_recursive; - } -} diff --git a/src/lib/elementary/elm_widget_item_static_focus_eo.c b/src/lib/elementary/elm_widget_item_static_focus_eo.c new file mode 100644 index 0000000000..646d5e1dcf --- /dev/null +++ b/src/lib/elementary/elm_widget_item_static_focus_eo.c @@ -0,0 +1,43 @@ + +Efl_Object *_elm_widget_item_static_focus_efl_object_constructor(Eo *obj, Elm_Widget_Item_Static_Focus_Data *pd); + + +void _elm_widget_item_static_focus_efl_object_destructor(Eo *obj, Elm_Widget_Item_Static_Focus_Data *pd); + + +void _elm_widget_item_static_focus_efl_ui_focus_object_setup_order_non_recursive(Eo *obj, Elm_Widget_Item_Static_Focus_Data *pd); + + +static Eina_Bool +_elm_widget_item_static_focus_class_initializer(Efl_Class *klass) +{ + const Efl_Object_Ops *opsp = NULL; + + const Efl_Object_Property_Reflection_Ops *ropsp = NULL; + +#ifndef ELM_WIDGET_ITEM_STATIC_FOCUS_EXTRA_OPS +#define ELM_WIDGET_ITEM_STATIC_FOCUS_EXTRA_OPS +#endif + + EFL_OPS_DEFINE(ops, + EFL_OBJECT_OP_FUNC(efl_constructor, _elm_widget_item_static_focus_efl_object_constructor), + EFL_OBJECT_OP_FUNC(efl_destructor, _elm_widget_item_static_focus_efl_object_destructor), + EFL_OBJECT_OP_FUNC(efl_ui_focus_object_setup_order_non_recursive, _elm_widget_item_static_focus_efl_ui_focus_object_setup_order_non_recursive), + ELM_WIDGET_ITEM_STATIC_FOCUS_EXTRA_OPS + ); + opsp = &ops; + + return efl_class_functions_set(klass, opsp, ropsp); +} + +static const Efl_Class_Description _elm_widget_item_static_focus_class_desc = { + EO_VERSION, + "Elm.Widget.Item.Static_Focus", + EFL_CLASS_TYPE_REGULAR, + sizeof(Elm_Widget_Item_Static_Focus_Data), + _elm_widget_item_static_focus_class_initializer, + NULL, + NULL +}; + +EFL_DEFINE_CLASS(elm_widget_item_static_focus_class_get, &_elm_widget_item_static_focus_class_desc, ELM_WIDGET_ITEM_CLASS, EFL_UI_FOCUS_OBJECT_MIXIN, NULL); diff --git a/src/lib/elementary/elm_widget_item_static_focus_eo.h b/src/lib/elementary/elm_widget_item_static_focus_eo.h new file mode 100644 index 0000000000..c1f058f042 --- /dev/null +++ b/src/lib/elementary/elm_widget_item_static_focus_eo.h @@ -0,0 +1,26 @@ +#ifndef _ELM_WIDGET_ITEM_STATIC_FOCUS_EO_H_ +#define _ELM_WIDGET_ITEM_STATIC_FOCUS_EO_H_ + +#ifndef _ELM_WIDGET_ITEM_STATIC_FOCUS_EO_CLASS_TYPE +#define _ELM_WIDGET_ITEM_STATIC_FOCUS_EO_CLASS_TYPE + +typedef Eo Elm_Widget_Item_Static_Focus; + +#endif + +#ifndef _ELM_WIDGET_ITEM_STATIC_FOCUS_EO_TYPES +#define _ELM_WIDGET_ITEM_STATIC_FOCUS_EO_TYPES + + +#endif +/** A class that ensures that at least ONE focusable target is behind this + * widget item. If there is none registered to it after a prepare call it will + * register the view of the item as item. + * + * @ingroup Elm_Widget_Item_Static_Focus + */ +#define ELM_WIDGET_ITEM_STATIC_FOCUS_CLASS elm_widget_item_static_focus_class_get() + +EWAPI const Efl_Class *elm_widget_item_static_focus_class_get(void); + +#endif diff --git a/src/lib/elementary/elm_widget_item_static_focus_eo.legacy.h b/src/lib/elementary/elm_widget_item_static_focus_eo.legacy.h new file mode 100644 index 0000000000..804806b9eb --- /dev/null +++ b/src/lib/elementary/elm_widget_item_static_focus_eo.legacy.h @@ -0,0 +1,17 @@ +#ifndef _ELM_WIDGET_ITEM_STATIC_FOCUS_EO_LEGACY_H_ +#define _ELM_WIDGET_ITEM_STATIC_FOCUS_EO_LEGACY_H_ + +#ifndef _ELM_WIDGET_ITEM_STATIC_FOCUS_EO_CLASS_TYPE +#define _ELM_WIDGET_ITEM_STATIC_FOCUS_EO_CLASS_TYPE + +typedef Eo Elm_Widget_Item_Static_Focus; + +#endif + +#ifndef _ELM_WIDGET_ITEM_STATIC_FOCUS_EO_TYPES +#define _ELM_WIDGET_ITEM_STATIC_FOCUS_EO_TYPES + + +#endif + +#endif diff --git a/src/lib/elementary/meson.build b/src/lib/elementary/meson.build index 88583b3ea7..43e67b47dc 100644 --- a/src/lib/elementary/meson.build +++ b/src/lib/elementary/meson.build @@ -1,6 +1,5 @@ pub_legacy_eo_files = [ 'efl_ui_clock_legacy.eo', - 'elm_widget_item_static_focus.eo', 'elm_ctxpopup_part.eo', 'elm_dayselector_part.eo', 'elm_entry_part.eo', @@ -170,13 +169,11 @@ pub_eo_files = [ 'efl_ui_radio_legacy_part.eo', 'efl_ui_check_legacy_part.eo', 'efl_ui_progressbar_legacy_part.eo', - 'elm_widget_item_container.eo', 'elm_multibuttonentry_part.eo', 'elm_interface_scrollable.eo', 'elm_atspi_bridge.eo', 'elm_atspi_app_object.eo', 'efl_ui_image_zoomable_pan.eo', - 'elm_widget_item.eo', 'efl_ui_text_part.eo', 'efl_ui_caching_factory.eo', 'efl_ui_widget_factory.eo', @@ -807,6 +804,12 @@ elementary_pub_headers = [ 'elm_view_list_eo.legacy.h', 'elm_web_eo.h', 'elm_web_eo.legacy.h', + 'elm_widget_item_container_eo.h', + 'elm_widget_item_container_eo.legacy.h', + 'elm_widget_item_eo.h', + 'elm_widget_item_eo.legacy.h', + 'elm_widget_item_static_focus_eo.h', + 'elm_widget_item_static_focus_eo.legacy.h', ] elementary_header_src = [