elm_genlist*: remove all legacy usage from eo files

this takes the current generated output from eolian for legacy code in
efl and adds it to the tree, then removes legacy references from the
corresponding eo files. in the case where the entire eo file was for
a legacy object, that eo file has been removed from the tree

ref T7724

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D8171
This commit is contained in:
Mike Blumenkrantz 2019-03-05 17:00:37 -05:00 committed by Cedric BAIL
parent bb85bb6b1d
commit c4fdda1fb0
27 changed files with 4381 additions and 1083 deletions

View File

@ -173,9 +173,9 @@ lib/elementary/elm_web.eo.cs \
lib/elementary/elm_map.eo.cs \
lib/elementary/elm_combobox.eo.cs \
lib/elementary/elm_list.eo.cs \
lib/elementary/elm_genlist.eo.cs \
lib/elementary/elm_genlist_eo.cs \
lib/elementary/elm_view_list.eo.cs \
lib/elementary/elm_genlist_item.eo.cs \
lib/elementary/elm_genlist_item_eo.cs \
lib/elementary/elm_gengrid_eo.cs \
lib/elementary/elm_glview.eo.cs

View File

@ -187,8 +187,6 @@ elm_private_eolian_files = \
elm_legacy_eolian_files = \
lib/elementary/efl_ui_clock_legacy.eo \
lib/elementary/elm_interface_fileselector.eo \
lib/elementary/elm_genlist.eo \
lib/elementary/elm_genlist_pan.eo \
lib/elementary/elm_gesture_layer.eo \
lib/elementary/elm_glview.eo \
lib/elementary/elm_hover.eo \
@ -212,7 +210,6 @@ elm_legacy_eolian_files = \
lib/elementary/elm_menu_item.eo \
lib/elementary/elm_index_item.eo \
lib/elementary/elm_widget_item_static_focus.eo \
lib/elementary/elm_genlist_item.eo \
lib/elementary/elm_list_item.eo \
lib/elementary/elm_popup_item.eo \
lib/elementary/elm_ctxpopup_part.eo \
@ -351,6 +348,11 @@ lib/elementary/elm_gengrid_eo.c \
lib/elementary/elm_gengrid_item_eo.legacy.c \
lib/elementary/elm_gengrid_item_eo.c \
lib/elementary/elm_gengrid_pan_eo.c \
lib/elementary/elm_genlist_eo.legacy.c \
lib/elementary/elm_genlist_eo.c \
lib/elementary/elm_genlist_item_eo.legacy.c \
lib/elementary/elm_genlist_item_eo.c \
lib/elementary/elm_genlist_pan_eo.c \
lib/elementary/elm_hoversel_eo.c \
lib/elementary/elm_hoversel_item_eo.c \
lib/elementary/elm_hoversel_item_eo.legacy.c
@ -452,6 +454,14 @@ lib/elementary/elm_gengrid_item_eo.h \
lib/elementary/elm_gengrid_item_eo.legacy.h \
lib/elementary/elm_gengrid_pan_eo.h \
lib/elementary/elm_gengrid_pan_eo.legacy.h \
lib/elementary/elm_gengrid_pan_eo.h \
lib/elementary/elm_gengrid_pan_eo.legacy.h \
lib/elementary/elm_genlist_eo.h \
lib/elementary/elm_genlist_eo.legacy.h \
lib/elementary/elm_genlist_item_eo.h \
lib/elementary/elm_genlist_item_eo.legacy.h \
lib/elementary/elm_genlist_pan_eo.h \
lib/elementary/elm_genlist_pan_eo.legacy.h \
lib/elementary/elm_hoversel_eo.h \
lib/elementary/elm_hoversel_eo.legacy.h \
lib/elementary/elm_hoversel_item_eo.h \

View File

@ -11,7 +11,7 @@
#include "elm_priv.h"
#include "elm_widget_combobox.h"
#include "elm_entry_eo.h"
#include "elm_genlist.eo.h"
#include "elm_genlist_eo.h"
#include "elm_hover.eo.h"
EOAPI void elm_obj_combobox_hover_begin(Eo *obj);

View File

@ -23,7 +23,7 @@
#include "elm_widget_fileselector.h"
#include "elm_entry_eo.h"
#include "elm_fileselector_eo.h"
#include "elm_genlist.eo.h"
#include "elm_genlist_eo.h"
#include "elm_gengrid_eo.h"
#include "elm_fileselector_part.eo.h"

View File

@ -12,7 +12,7 @@
#include "elm_widget_layout.h"
#include "elm_widget_plug.h"
#include "elm_scroller.eo.h"
#include "elm_genlist.eo.h"
#include "elm_genlist_eo.h"
#include "elm_conformant_eo.h"
#define MY_CLASS ELM_CONFORMANT_CLASS

View File

@ -6,7 +6,7 @@
#include "elm_priv.h"
//we need those for legacy compatible code
#include "elm_genlist.eo.h"
#include "elm_genlist_eo.h"
#include "elm_gengrid_eo.h"
#define API_ENTRY()\

View File

@ -18,9 +18,9 @@
#include "elm_interface_scrollable.h"
#include "efl_ui_focus_parent_provider_gen.eo.h"
#include "efl_ui_focus_composition_adapter.eo.h"
#include "elm_genlist_item.eo.h"
#include "elm_genlist_pan.eo.h"
#include "elm_genlist.eo.h"
#include "elm_genlist_item_eo.h"
#include "elm_genlist_pan_eo.h"
#include "elm_genlist_eo.h"
#define MY_PAN_CLASS ELM_GENLIST_PAN_CLASS
@ -8953,6 +8953,6 @@ ELM_WIDGET_KEY_DOWN_DEFAULT_IMPLEMENT(elm_genlist, Elm_Genlist_Data)
#define ELM_GENLIST_PAN_EXTRA_OPS \
EFL_CANVAS_GROUP_DEL_OPS(elm_genlist_pan)
#include "elm_genlist.eo.c"
#include "elm_genlist_pan.eo.c"
#include "elm_genlist_item.eo.c"
#include "elm_genlist_eo.c"
#include "elm_genlist_pan_eo.c"
#include "elm_genlist_item_eo.c"

View File

@ -1,598 +0,0 @@
import elm_general;
class Elm.Genlist extends Efl.Ui.Layout_Base implements Elm.Interface_Scrollable, Efl.Ui.Clickable,
Efl.Access.Widget.Action, Efl.Access.Selection,
Efl.Ui.Selectable, Efl.Ui.Legacy, Elm.Widget_Item_Container
{
[[Elementary genlist class]]
legacy_prefix: elm_genlist;
eo_prefix: elm_obj_genlist;
event_prefix: elm_genlist;
methods {
@property homogeneous {
set {
[[Enable/disable homogeneous mode.
This will enable the homogeneous mode where items are of the
same height and width so that genlist may do the lazy-loading
at its maximum (which increases the performance for scrolling
the list). In the normal mode, genlist will pre-calculate all
the items' sizes even though they are not in use. So items'
callbacks are called many times than expected. But homogeneous
mode will skip the item size pre-calculation process so
items' callbacks are called only when the item is needed.
Note: This also works well with group index.
]]
}
get {
[[Get whether the homogeneous mode is enabled.]]
}
values {
homogeneous: bool; [[Assume the items within the genlist are of
the same height and width. Default is $false.]]
}
}
@property select_mode {
set {
[[Set the genlist select mode.
#ELM_OBJECT_SELECT_MODE_DEFAULT means that items will call
their selection func and callback once when first becoming
selected. Any further clicks will do nothing, unless you set
always select mode. ELM_OBJECT_SELECT_MODE_ALWAYS means that
even if selected, every click will make the selected callbacks
be called. #ELM_OBJECT_SELECT_MODE_NONE will turn off the
ability to select items entirely and they will neither appear
selected nor call selected callback functions.
]]
}
get {
[[Get the genlist select mode.]]
}
values {
mode: Elm.Object.Select_Mode(Elm.Object.Select_Mode.max); [[The select mode.]]
}
}
@property focus_on_selection {
set {
[[Set focus upon items selection mode
When enabled, every selection of an item inside the genlist
will automatically set focus to its first focusable widget
from the left. This is true of course if the selection was
made by clicking an unfocusable area in an item or selecting
it with a key movement. Clicking on a focusable widget inside
an item will cause this particular item to get focus as usual.
]]
}
get {
[[Get whether focus upon item's selection mode is enabled.]]
}
values {
enabled: bool; [[The tree effect status.]]
}
}
@property longpress_timeout {
set {
[[Set the timeout in seconds for the longpress event.
This option will change how long it takes to send an event
"longpressed" after the mouse down signal is sent to the list.
If this event occurs, no "clicked" event will be sent.
Warning: If you set the longpress timeout value with this API,
your genlist will not be affected by the longpress value of
elementary config value later.
]]
}
get {
[[Get the timeout in seconds for the longpress event.]]
}
values {
timeout: double; [[Timeout in seconds. Default is elm config value (1.0).]]
}
}
@property multi_select {
set {
[[Enable or disable multi-selection in the genlist.
This enables ($true) or disables ($false) multi-selection in
the list. This allows more than 1 item to be selected. To
retrieve the list of selected items, use @.selected_items.get.
]]
}
get {
[[Get if multi-selection in genlist is enabled or disabled.]]
}
values {
multi: bool; [[Multi-select enable/disable. Default is disabled.]]
}
}
@property reorder_mode {
set {
[[Set reorder mode.
After turning on the reorder mode, longpress on normal item
will trigger reordering of the item. You can move the item
up and down. However, reorder does not work with group item.
]]
}
get {
[[Get the reorder mode.]]
}
values {
reorder_mode: bool; [[The reorder mode.]]
}
}
@property decorate_mode {
set {
[[Set Genlist decorate mode.
This sets Genlist decorate mode to all items.
]]
}
get {
[[Get Genlist decorate mode.]]
}
values {
decorated: bool; [[The decorate mode status.]]
}
}
@property multi_select_mode {
set {
[[Set the genlist multi select mode.
#ELM_OBJECT_MULTI_SELECT_MODE_DEFAULT means that
select/unselect items whenever each item is clicked.
#ELM_OBJECT_MULTI_SELECT_MODE_WITH_CONTROL means that only
one item will be selected although multi-selection is enabled,
if clicked without pressing control key. This mode is only
available with multi-selection.
@since 1.8
]]
}
get {
[[Get the genlist multi select mode.
@since 1.8
]]
}
values {
mode: Elm.Object.Multi_Select_Mode(Elm.Object.Multi_Select_Mode.max); [[The multi select mode]]
}
}
@property block_count {
set {
[[Set the maximum number of items within an item block.
This will configure the block count to tune to the target
with particular performance matrix.
A block of objects will be used to reduce the number of
operations due to many objects in the screen. It can
determine the visibility, or if the object has changed,
it theme needs to be updated, etc. doing this kind of
calculation to the entire block, instead of per object.
The default value for the block count is enough for most
lists, so unless you know you will have a lot of objects
visible in the screen at the same time, don't try to
change this.
]]
}
get {
[[Get the maximum number of items within an item block.]]
}
values {
count: int; [[Maximum number of items within an item block. Default is 32.]]
}
}
@property tree_effect_enabled {
[[Control genlist tree effect.]]
set {}
get {}
values {
enabled: bool; [[The tree effect status.]]
}
}
@property highlight_mode {
set {
[[Set whether the genlist items should be highlighted on item
selection.
This will turn on/off the highlight effect on item selection.
The selected and clicked callback functions will still be
called.
Highlight is enabled by default.
]]
}
get {
[[Get whether the genlist items' should be highlighted when
item selected.
]]
}
values {
highlight: bool; [[$true to enable highlighting or $false to
disable it.]]
}
}
@property mode {
set {
[[This sets the horizontal stretching mode.
This sets the mode used for sizing items horizontally. Valid
modes are @Elm.List.Mode.limit, @Elm.List.Mode.scroll, and
@Elm.List.Mode.compress. The default is @Elm.List.Mode.scroll. This mode
means that if items are too wide to fit, the scroller will
scroll horizontally. Otherwise items are expanded to fill
the width of the viewport of the scroller. If it is
@Elm.List.Mode.limit, items will be expanded to the viewport width
and limited to that size. If it is @Elm.List.Mode.compress, the
item width will be fixed (restricted to a minimum of) to the
list width when calculating its size in order to allow the
height to be calculated based on it. This allows, for
instance, text block to wrap lines if the Edje part is
configured with "text.min: 0 1".
Note: @Elm.List.Mode.compress will make list resize slower as it
will have to recalculate every item height again whenever
the list width changes!
Note: Homogeneous mode gives all items in the genlist the
same width/height. With @Elm.List.Mode.compress, genlist items
initialize fast, but there cannot be any sub-objects in the genlist
which require on-the-fly resizing (such as TEXTBLOCK).
In this case some dynamic resizable objects in the genlist might not
diplay properly.
]]
}
get {
[[Get the horizontal stretching mode.]]
}
values {
mode: Elm.List.Mode(Elm.List.Mode.last); [[The mode to use (one of @Elm.List.Mode.scroll or @Elm.List.Mode.limit).]]
}
}
@property decorated_item {
get {
[[Get active genlist mode item.
This function returns the item that was activated with a mode,
by the function @.decorate_mode.set.
]]
return: Elm.Widget.Item; [[The active item for that current mode.
Or $null if no item is activated with any mode.]]
}
}
@property selected_item {
get {
[[Get the selected item in the genlist.
This gets the selected item in the list (if multi-selection
is enabled, only the item that was first selected in the list
is returned - which is not very useful, so see
@.selected_items.get for when multi-selection is used).
If no item is selected, $null is returned.
]]
return: Elm.Widget.Item; [[The selected item, or $null if none is selected.]]
}
}
@property first_item {
get {
[[Get the first item in the genlist.
This returns the first item in the list.
If filter is set on genlist, it returns
the first filtered item in the list.
]]
return: Elm.Widget.Item; [[The first item or $null.]]
}
}
@property realized_items {
get {
[[Get a list of realized items in genlist.
This returns a list of the realized items in the genlist.
The list contains genlist item pointers. The list must be
freed by the caller when done with \@ref eina_list_free. The
item pointers in the list are only valid so long as those
items are not deleted or the genlist is not deleted.
]]
return: list<ptr(Elm_Gen_Item)> @owned @warn_unused; [[List of realized items]]
}
}
@property selected_items {
get {
[[Get a list of selected items in the genlist.
It returns a list of the selected items. This list pointer
is only valid so long as the selection doesn't change (no
items are selected or unselected, or unselected implicitl
by deletion). The list contains genlist items pointers. The
order of the items in this list is the order which they were
selected, i.e. the first item in this list is the first item
that was selected, and so on.
Note: If not in multi-select mode, consider using function
@.selected_item.get instead.
]]
return: const(list<Elm.Widget.Item>); [[List of selected items]]
}
}
@property last_item {
get {
[[Get the last item in the genlist
This returns the last item in the list.
If filter is set to genlist, it returns
last filtered item in the list.
]]
return: Elm.Widget.Item; [[Last item in list]]
}
}
item_insert_before {
[[Insert an item before another in a genlist widget
This inserts an item before another in the list. It will be in
the same tree level or group as the item it is inserted before.
]]
return: Elm.Widget.Item; [[Handle to inserted item]]
params {
@cref itc: Elm.Genlist.Item.Class; [[The item class for the item.]]
@in data: const(void_ptr); [[The item data.]]
@in parent: Elm.Widget.Item @nullable; [[The parent item, or $null if none.]]
@in before_it: Elm.Widget.Item; [[The item to place this new one before.]]
@in type: Elm.Genlist.Item.Type; [[Item type.]]
@in func: Evas_Smart_Cb @optional; [[Convenience function called when the item is selected.]]
@in func_data: const(void_ptr) @optional; [[Data passed to $func above.]]
}
}
realized_items_update {
[[Update the contents of all realized items.
This updates all realized items by calling all the item class
functions again to get the contents, texts and states. Use this
when the original item data has changed and the changes are
desired to be reflected.
To update just one item, use \@ref elm_genlist_item_update.
]]
}
item_insert_after {
[[Insert an item after another in a genlist widget
This inserts an item after another in the list. It will be in the
same tree level or group as the item it is inserted after.
]]
return: Elm.Widget.Item; [[Handle to inserted item]]
params {
@cref itc: Elm.Genlist.Item.Class; [[The item class for the item.]]
@in data: const(void_ptr); [[The item data.]]
@in parent: Elm.Widget.Item @nullable; [[The parent item, or $null if none.]]
@in after_it: Elm.Widget.Item; [[The item to place this new one after.]]
@in type: Elm.Genlist.Item.Type; [[Item type.]]
@in func: Evas_Smart_Cb @optional; [[Convenience function called when the item is selected.]]
@in func_data: const(void_ptr) @optional; [[Data passed to $func above.]]
}
}
at_xy_item_get @const {
[[Get the item that is at the x, y canvas coords.
This returns the item at the given coordinates (which are canvas
relative, not object-relative). If an item is at that coordinate,
that item handle is returned, and if $posret is not NULL, the
integer pointed to is set to a value of -1, 0 or 1, depending if
the coordinate is on the upper portion of that item (-1), on the
middle section (0) or on the lower part (1). If NULL is returned
as an item (no item found there), then posret may indicate -1 or
1 based if the coordinate is above or below all items
respectively in the genlist.
]]
return: Elm.Widget.Item; [[Item at position]]
params {
@in x: int; [[The input x coordinate.]]
@in y: int; [[The input y coordinate.]]
@out posret: int; [[The position relative to the item returned here.]]
}
}
@property filter {
set {
[[Set filter mode with key.
This initiates the filter mode of genlist with user/application
provided key. If key is NULL, the filter mode is turned off.
The filter data passed has to be managed by application itself and
should not be deleted before genlist is deleted(or while filtering
is not done.
]]
}
values {
key: void_ptr; [[Filter key]]
}
}
filter_iterator_new {
[[Returns an iterator over the list of filtered items.
Return NULL if filter is not set. Application must take care
of the case while calling the API. Must be freed after use.
]]
return: iterator<ptr(Elm_Gen_Item)> @owned; [[Iterator on genlist]]
}
filtered_items_count @const {
[[Return how many items have passed the filter currently.
This behaviour is O(1) and returns the count of items which
are currently passed by the filter. After "filter,done", the
call returns total count of the filtered items.
@since 1.18
]]
return: uint; [[Count of items passing the filter]]
}
items_count @const {
[[Return how many items are currently in a list.
This behavior is O(1) and includes items which may or may not
be realized.
]]
return: uint; [[Item in list]]
}
item_prepend {
[[Prepend a new item in a given genlist widget.
This adds an item to the beginning of the list or beginning of
the children of the parent if given.
]]
return: Elm.Widget.Item; [[Handle to prepended item]]
params {
@cref itc: Elm.Genlist.Item.Class; [[The item class for the item.]]
@in data: const(void_ptr); [[The item data.]]
@in parent: Elm.Widget.Item @nullable; [[The parent item, or $null if none.]]
@in type: Elm.Genlist.Item.Type; [[Item type.]]
@in func: Evas_Smart_Cb @optional; [[Convenience function called when the item is selected.]]
@in func_data: const(void_ptr) @optional; [[Data passed to $func above.]]
}
}
clear {
[[Remove all items from a given genlist widget.
This removes (and deletes) all items in $obj, leaving it empty.
]]
}
item_append {
[[Append a new item in a given genlist widget.
This adds the given item to the end of the list or the end of
the children list if the $parent is given.
]]
return: Elm.Widget.Item; [[Handle to appended item]]
params {
@cref itc: Elm.Genlist.Item.Class; [[The item class for the item.]]
@in data: const(void_ptr); [[The item data.]]
@in parent: Elm.Widget.Item @nullable; [[The parent item, or $null if none.]]
@in type: Elm.Genlist.Item.Type; [[Item type.]]
@in func: Evas_Smart_Cb @optional; [[Convenience function called when the item is selected.]]
@in func_data: const(void_ptr) @optional; [[Data passed to $func above.]]
}
}
item_sorted_insert {
[[Insert a new item into the sorted genlist object
This inserts an item in the genlist based on user defined
comparison function. The two arguments passed to the function
$func are genlist item handles to compare.
]]
return: Elm.Widget.Item; [[Handle to inserted item]]
params {
@cref itc: Elm.Genlist.Item.Class; [[The item class for the item.]]
@in data: const(void_ptr); [[The item data.]]
@in parent: Elm.Widget.Item @nullable; [[The parent item, or $null if none.]]
@in type: Elm.Genlist.Item.Type; [[Item type.]]
@in comp: Eina_Compare_Cb; [[The function called for the sort.]]
@in func: Evas_Smart_Cb @optional; [[Convenience function called when the item is selected.]]
@in func_data: const(void_ptr) @optional; [[Data passed to $func above.]]
}
}
search_by_text_item_get {
[[Get genlist item by given string.
It takes pointer to the genlist item that will be used to start
search from it.
This function uses globs (like "*.jpg") for searching and takes
search flags as last parameter That is a bitfield with values
to be ored together or 0 for no flags.
@since 1.11
]]
return: Elm.Widget.Item; [[Searched item]]
params {
@in item_to_search_from: Elm.Widget.Item @optional; [[
Pointer to item to start search from. If $null, search
will be started from the first item of the genlist.
]]
@in part_name: string; [[Name of the TEXT part of genlist item to search string in.]]
@in pattern: string; [[The search pattern.]]
@in flags: Elm.Glob.Match_Flags; [[Search flags.]]
}
}
}
implements {
class.constructor;
Efl.Object.constructor;
Efl.Gfx.Entity.position { set; }
Efl.Gfx.Entity.size { set; }
Efl.Canvas.Group.group_member_add;
Efl.Object.provider_find;
Efl.Ui.Widget.theme_apply;
Efl.Ui.Widget.widget_sub_object_add;
Efl.Ui.Widget.on_access_update;
Efl.Ui.Widget.focus_highlight_geometry { get; }
Efl.Ui.Focus.Object.on_focus_update;
Efl.Ui.Widget.widget_sub_object_del;
Efl.Ui.Widget.widget_input_event_handler;
Elm.Widget_Item_Container.focused_item { get; }
Elm.Interface_Scrollable.item_loop_enabled { get; set; }
Elm.Interface_Scrollable.bounce_allow { get; set; }
Elm.Interface_Scrollable.policy { get; set; }
Efl.Access.Object.access_children { get; }
Efl.Access.Object.state_set { get; }
Efl.Access.Widget.Action.elm_actions { get; }
Efl.Access.Selection.selected_children_count { get; }
Efl.Access.Selection.selected_child { get; }
Efl.Access.Selection.selected_child_deselect;
Efl.Access.Selection.child_select;
Efl.Access.Selection.child_deselect;
Efl.Access.Selection.is_child_selected;
Efl.Access.Selection.all_children_select;
Efl.Access.Selection.access_selection_clear;
Efl.Ui.Widget.focus_state_apply;
Efl.Ui.Focus.Manager.setup_on_first_touch;
Efl.Ui.Focus.Manager.manager_focus { get; }
Efl.Ui.Focus.Manager.move;
}
events {
item,focused: Efl.Object; [[Called when genlist item got focus]]
item,unfocused: Efl.Object; [[Called when genlist item lost focus]]
vbar,drag: void; [[Called when vertical bar is dragged]]
vbar,press: void; [[Called when vertical bar is pressed]]
vbar,unpress: void; [[Called when vertical bar is no longer pressed]]
hbar,drag: void; [[Called when horizontal bar is dragged]]
hbar,press: void; [[Called when horizontal bar is pressed]]
hbar,unpress: void; [[Called when horizontal bar is no longer pressed]]
edge,top: void; [[Called when top edge is reached]]
edge,bottom: void; [[Called when bottom edge is reached]]
edge,left: void; [[Called when left edge is reached]]
edge,right: void; [[Called when right edge is reached]]
moved: Efl.Object; [[Called when genlist item moved]]
moved,before: Efl.Object; [[Called when genlist item moved before]]
moved,after: Efl.Object; [[Called when genlist item moved after]]
swipe: Efl.Object; [[Called when swipe is detected]]
multi,pinch,in: Efl.Object; [[Called when multitouch pinch in detected]]
multi,pinch,out: Efl.Object; [[Called when multitouch pinch out detected]]
multi,swipe,down: Efl.Object; [[Called when multitouch swipe down detected]]
multi,swipe,up: Efl.Object; [[Called when multitouch swipe up detected]]
multi,swipe,right: Efl.Object; [[Called when multitouch swipe right detected]]
multi,swipe,left: Efl.Object; [[Called when multitouch swipe left detected]]
released: Efl.Object; [[Called when genlist is released]]
activated: Efl.Object; [[called when genlist is activated]]
highlighted: Efl.Object; [[Called when genlist is highlighted]]
unhighlighted: Efl.Object; [[Called when genlist is no longer highlighted]]
realized: Efl.Object; [[Called when genlist is realized]]
unrealized: Efl.Object; [[Called when genlist is unrealized]]
contract,request: Efl.Object; [[Called when contract is requested]]
expand,request: Efl.Object; [[Called when expand is requested]]
contracted: Efl.Object; [[called when genlist is contracted]]
expanded: Efl.Object; [[Called when genlist is expanded]]
index,update: Efl.Object; [[Called when genlist index updated]]
tree,effect,finished: void; [[Called when genlist tree effect finished]]
filter,done: void; [[Called when genlist filter is done]]
}
}

View File

@ -0,0 +1,686 @@
EWAPI const Efl_Event_Description _ELM_GENLIST_EVENT_ITEM_FOCUSED =
EFL_EVENT_DESCRIPTION("item,focused");
EWAPI const Efl_Event_Description _ELM_GENLIST_EVENT_ITEM_UNFOCUSED =
EFL_EVENT_DESCRIPTION("item,unfocused");
EWAPI const Efl_Event_Description _ELM_GENLIST_EVENT_VBAR_DRAG =
EFL_EVENT_DESCRIPTION("vbar,drag");
EWAPI const Efl_Event_Description _ELM_GENLIST_EVENT_VBAR_PRESS =
EFL_EVENT_DESCRIPTION("vbar,press");
EWAPI const Efl_Event_Description _ELM_GENLIST_EVENT_VBAR_UNPRESS =
EFL_EVENT_DESCRIPTION("vbar,unpress");
EWAPI const Efl_Event_Description _ELM_GENLIST_EVENT_HBAR_DRAG =
EFL_EVENT_DESCRIPTION("hbar,drag");
EWAPI const Efl_Event_Description _ELM_GENLIST_EVENT_HBAR_PRESS =
EFL_EVENT_DESCRIPTION("hbar,press");
EWAPI const Efl_Event_Description _ELM_GENLIST_EVENT_HBAR_UNPRESS =
EFL_EVENT_DESCRIPTION("hbar,unpress");
EWAPI const Efl_Event_Description _ELM_GENLIST_EVENT_EDGE_TOP =
EFL_EVENT_DESCRIPTION("edge,top");
EWAPI const Efl_Event_Description _ELM_GENLIST_EVENT_EDGE_BOTTOM =
EFL_EVENT_DESCRIPTION("edge,bottom");
EWAPI const Efl_Event_Description _ELM_GENLIST_EVENT_EDGE_LEFT =
EFL_EVENT_DESCRIPTION("edge,left");
EWAPI const Efl_Event_Description _ELM_GENLIST_EVENT_EDGE_RIGHT =
EFL_EVENT_DESCRIPTION("edge,right");
EWAPI const Efl_Event_Description _ELM_GENLIST_EVENT_MOVED =
EFL_EVENT_DESCRIPTION("moved");
EWAPI const Efl_Event_Description _ELM_GENLIST_EVENT_MOVED_BEFORE =
EFL_EVENT_DESCRIPTION("moved,before");
EWAPI const Efl_Event_Description _ELM_GENLIST_EVENT_MOVED_AFTER =
EFL_EVENT_DESCRIPTION("moved,after");
EWAPI const Efl_Event_Description _ELM_GENLIST_EVENT_SWIPE =
EFL_EVENT_DESCRIPTION("swipe");
EWAPI const Efl_Event_Description _ELM_GENLIST_EVENT_MULTI_PINCH_IN =
EFL_EVENT_DESCRIPTION("multi,pinch,in");
EWAPI const Efl_Event_Description _ELM_GENLIST_EVENT_MULTI_PINCH_OUT =
EFL_EVENT_DESCRIPTION("multi,pinch,out");
EWAPI const Efl_Event_Description _ELM_GENLIST_EVENT_MULTI_SWIPE_DOWN =
EFL_EVENT_DESCRIPTION("multi,swipe,down");
EWAPI const Efl_Event_Description _ELM_GENLIST_EVENT_MULTI_SWIPE_UP =
EFL_EVENT_DESCRIPTION("multi,swipe,up");
EWAPI const Efl_Event_Description _ELM_GENLIST_EVENT_MULTI_SWIPE_RIGHT =
EFL_EVENT_DESCRIPTION("multi,swipe,right");
EWAPI const Efl_Event_Description _ELM_GENLIST_EVENT_MULTI_SWIPE_LEFT =
EFL_EVENT_DESCRIPTION("multi,swipe,left");
EWAPI const Efl_Event_Description _ELM_GENLIST_EVENT_RELEASED =
EFL_EVENT_DESCRIPTION("released");
EWAPI const Efl_Event_Description _ELM_GENLIST_EVENT_ACTIVATED =
EFL_EVENT_DESCRIPTION("activated");
EWAPI const Efl_Event_Description _ELM_GENLIST_EVENT_HIGHLIGHTED =
EFL_EVENT_DESCRIPTION("highlighted");
EWAPI const Efl_Event_Description _ELM_GENLIST_EVENT_UNHIGHLIGHTED =
EFL_EVENT_DESCRIPTION("unhighlighted");
EWAPI const Efl_Event_Description _ELM_GENLIST_EVENT_REALIZED =
EFL_EVENT_DESCRIPTION("realized");
EWAPI const Efl_Event_Description _ELM_GENLIST_EVENT_UNREALIZED =
EFL_EVENT_DESCRIPTION("unrealized");
EWAPI const Efl_Event_Description _ELM_GENLIST_EVENT_CONTRACT_REQUEST =
EFL_EVENT_DESCRIPTION("contract,request");
EWAPI const Efl_Event_Description _ELM_GENLIST_EVENT_EXPAND_REQUEST =
EFL_EVENT_DESCRIPTION("expand,request");
EWAPI const Efl_Event_Description _ELM_GENLIST_EVENT_CONTRACTED =
EFL_EVENT_DESCRIPTION("contracted");
EWAPI const Efl_Event_Description _ELM_GENLIST_EVENT_EXPANDED =
EFL_EVENT_DESCRIPTION("expanded");
EWAPI const Efl_Event_Description _ELM_GENLIST_EVENT_INDEX_UPDATE =
EFL_EVENT_DESCRIPTION("index,update");
EWAPI const Efl_Event_Description _ELM_GENLIST_EVENT_TREE_EFFECT_FINISHED =
EFL_EVENT_DESCRIPTION("tree,effect,finished");
EWAPI const Efl_Event_Description _ELM_GENLIST_EVENT_FILTER_DONE =
EFL_EVENT_DESCRIPTION("filter,done");
void _elm_genlist_homogeneous_set(Eo *obj, Elm_Genlist_Data *pd, Eina_Bool homogeneous);
static Eina_Error
__eolian_elm_genlist_homogeneous_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_obj_genlist_homogeneous_set(obj, cval);
end:
eina_value_flush(&val);
return r;
}
EOAPI EFL_VOID_FUNC_BODYV(elm_obj_genlist_homogeneous_set, EFL_FUNC_CALL(homogeneous), Eina_Bool homogeneous);
Eina_Bool _elm_genlist_homogeneous_get(const Eo *obj, Elm_Genlist_Data *pd);
static Eina_Value
__eolian_elm_genlist_homogeneous_get_reflect(Eo *obj)
{
Eina_Bool val = elm_obj_genlist_homogeneous_get(obj);
return eina_value_bool_init(val);
}
EOAPI EFL_FUNC_BODY_CONST(elm_obj_genlist_homogeneous_get, Eina_Bool, 0);
void _elm_genlist_select_mode_set(Eo *obj, Elm_Genlist_Data *pd, Elm_Object_Select_Mode mode);
EOAPI EFL_VOID_FUNC_BODYV(elm_obj_genlist_select_mode_set, EFL_FUNC_CALL(mode), Elm_Object_Select_Mode mode);
Elm_Object_Select_Mode _elm_genlist_select_mode_get(const Eo *obj, Elm_Genlist_Data *pd);
EOAPI EFL_FUNC_BODY_CONST(elm_obj_genlist_select_mode_get, Elm_Object_Select_Mode, 4 /* Elm.Object.Select_Mode.max */);
void _elm_genlist_focus_on_selection_set(Eo *obj, Elm_Genlist_Data *pd, Eina_Bool enabled);
static Eina_Error
__eolian_elm_genlist_focus_on_selection_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_obj_genlist_focus_on_selection_set(obj, cval);
end:
eina_value_flush(&val);
return r;
}
EOAPI EFL_VOID_FUNC_BODYV(elm_obj_genlist_focus_on_selection_set, EFL_FUNC_CALL(enabled), Eina_Bool enabled);
Eina_Bool _elm_genlist_focus_on_selection_get(const Eo *obj, Elm_Genlist_Data *pd);
static Eina_Value
__eolian_elm_genlist_focus_on_selection_get_reflect(Eo *obj)
{
Eina_Bool val = elm_obj_genlist_focus_on_selection_get(obj);
return eina_value_bool_init(val);
}
EOAPI EFL_FUNC_BODY_CONST(elm_obj_genlist_focus_on_selection_get, Eina_Bool, 0);
void _elm_genlist_longpress_timeout_set(Eo *obj, Elm_Genlist_Data *pd, double timeout);
static Eina_Error
__eolian_elm_genlist_longpress_timeout_set_reflect(Eo *obj, Eina_Value val)
{
Eina_Error r = 0; double cval;
if (!eina_value_double_convert(&val, &cval))
{
r = EINA_ERROR_VALUE_FAILED;
goto end;
}
elm_obj_genlist_longpress_timeout_set(obj, cval);
end:
eina_value_flush(&val);
return r;
}
EOAPI EFL_VOID_FUNC_BODYV(elm_obj_genlist_longpress_timeout_set, EFL_FUNC_CALL(timeout), double timeout);
double _elm_genlist_longpress_timeout_get(const Eo *obj, Elm_Genlist_Data *pd);
static Eina_Value
__eolian_elm_genlist_longpress_timeout_get_reflect(Eo *obj)
{
double val = elm_obj_genlist_longpress_timeout_get(obj);
return eina_value_double_init(val);
}
EOAPI EFL_FUNC_BODY_CONST(elm_obj_genlist_longpress_timeout_get, double, 0);
void _elm_genlist_multi_select_set(Eo *obj, Elm_Genlist_Data *pd, Eina_Bool multi);
static Eina_Error
__eolian_elm_genlist_multi_select_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_obj_genlist_multi_select_set(obj, cval);
end:
eina_value_flush(&val);
return r;
}
EOAPI EFL_VOID_FUNC_BODYV(elm_obj_genlist_multi_select_set, EFL_FUNC_CALL(multi), Eina_Bool multi);
Eina_Bool _elm_genlist_multi_select_get(const Eo *obj, Elm_Genlist_Data *pd);
static Eina_Value
__eolian_elm_genlist_multi_select_get_reflect(Eo *obj)
{
Eina_Bool val = elm_obj_genlist_multi_select_get(obj);
return eina_value_bool_init(val);
}
EOAPI EFL_FUNC_BODY_CONST(elm_obj_genlist_multi_select_get, Eina_Bool, 0);
void _elm_genlist_reorder_mode_set(Eo *obj, Elm_Genlist_Data *pd, Eina_Bool reorder_mode);
static Eina_Error
__eolian_elm_genlist_reorder_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_obj_genlist_reorder_mode_set(obj, cval);
end:
eina_value_flush(&val);
return r;
}
EOAPI EFL_VOID_FUNC_BODYV(elm_obj_genlist_reorder_mode_set, EFL_FUNC_CALL(reorder_mode), Eina_Bool reorder_mode);
Eina_Bool _elm_genlist_reorder_mode_get(const Eo *obj, Elm_Genlist_Data *pd);
static Eina_Value
__eolian_elm_genlist_reorder_mode_get_reflect(Eo *obj)
{
Eina_Bool val = elm_obj_genlist_reorder_mode_get(obj);
return eina_value_bool_init(val);
}
EOAPI EFL_FUNC_BODY_CONST(elm_obj_genlist_reorder_mode_get, Eina_Bool, 0);
void _elm_genlist_decorate_mode_set(Eo *obj, Elm_Genlist_Data *pd, Eina_Bool decorated);
static Eina_Error
__eolian_elm_genlist_decorate_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_obj_genlist_decorate_mode_set(obj, cval);
end:
eina_value_flush(&val);
return r;
}
EOAPI EFL_VOID_FUNC_BODYV(elm_obj_genlist_decorate_mode_set, EFL_FUNC_CALL(decorated), Eina_Bool decorated);
Eina_Bool _elm_genlist_decorate_mode_get(const Eo *obj, Elm_Genlist_Data *pd);
static Eina_Value
__eolian_elm_genlist_decorate_mode_get_reflect(Eo *obj)
{
Eina_Bool val = elm_obj_genlist_decorate_mode_get(obj);
return eina_value_bool_init(val);
}
EOAPI EFL_FUNC_BODY_CONST(elm_obj_genlist_decorate_mode_get, Eina_Bool, 0);
void _elm_genlist_multi_select_mode_set(Eo *obj, Elm_Genlist_Data *pd, Elm_Object_Multi_Select_Mode mode);
EOAPI EFL_VOID_FUNC_BODYV(elm_obj_genlist_multi_select_mode_set, EFL_FUNC_CALL(mode), Elm_Object_Multi_Select_Mode mode);
Elm_Object_Multi_Select_Mode _elm_genlist_multi_select_mode_get(const Eo *obj, Elm_Genlist_Data *pd);
EOAPI EFL_FUNC_BODY_CONST(elm_obj_genlist_multi_select_mode_get, Elm_Object_Multi_Select_Mode, 2 /* Elm.Object.Multi_Select_Mode.max */);
void _elm_genlist_block_count_set(Eo *obj, Elm_Genlist_Data *pd, int count);
static Eina_Error
__eolian_elm_genlist_block_count_set_reflect(Eo *obj, Eina_Value val)
{
Eina_Error r = 0; int cval;
if (!eina_value_int_convert(&val, &cval))
{
r = EINA_ERROR_VALUE_FAILED;
goto end;
}
elm_obj_genlist_block_count_set(obj, cval);
end:
eina_value_flush(&val);
return r;
}
EOAPI EFL_VOID_FUNC_BODYV(elm_obj_genlist_block_count_set, EFL_FUNC_CALL(count), int count);
int _elm_genlist_block_count_get(const Eo *obj, Elm_Genlist_Data *pd);
static Eina_Value
__eolian_elm_genlist_block_count_get_reflect(Eo *obj)
{
int val = elm_obj_genlist_block_count_get(obj);
return eina_value_int_init(val);
}
EOAPI EFL_FUNC_BODY_CONST(elm_obj_genlist_block_count_get, int, 0);
void _elm_genlist_tree_effect_enabled_set(Eo *obj, Elm_Genlist_Data *pd, Eina_Bool enabled);
static Eina_Error
__eolian_elm_genlist_tree_effect_enabled_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_obj_genlist_tree_effect_enabled_set(obj, cval);
end:
eina_value_flush(&val);
return r;
}
EOAPI EFL_VOID_FUNC_BODYV(elm_obj_genlist_tree_effect_enabled_set, EFL_FUNC_CALL(enabled), Eina_Bool enabled);
Eina_Bool _elm_genlist_tree_effect_enabled_get(const Eo *obj, Elm_Genlist_Data *pd);
static Eina_Value
__eolian_elm_genlist_tree_effect_enabled_get_reflect(Eo *obj)
{
Eina_Bool val = elm_obj_genlist_tree_effect_enabled_get(obj);
return eina_value_bool_init(val);
}
EOAPI EFL_FUNC_BODY_CONST(elm_obj_genlist_tree_effect_enabled_get, Eina_Bool, 0);
void _elm_genlist_highlight_mode_set(Eo *obj, Elm_Genlist_Data *pd, Eina_Bool highlight);
static Eina_Error
__eolian_elm_genlist_highlight_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_obj_genlist_highlight_mode_set(obj, cval);
end:
eina_value_flush(&val);
return r;
}
EOAPI EFL_VOID_FUNC_BODYV(elm_obj_genlist_highlight_mode_set, EFL_FUNC_CALL(highlight), Eina_Bool highlight);
Eina_Bool _elm_genlist_highlight_mode_get(const Eo *obj, Elm_Genlist_Data *pd);
static Eina_Value
__eolian_elm_genlist_highlight_mode_get_reflect(Eo *obj)
{
Eina_Bool val = elm_obj_genlist_highlight_mode_get(obj);
return eina_value_bool_init(val);
}
EOAPI EFL_FUNC_BODY_CONST(elm_obj_genlist_highlight_mode_get, Eina_Bool, 0);
void _elm_genlist_mode_set(Eo *obj, Elm_Genlist_Data *pd, Elm_List_Mode mode);
EOAPI EFL_VOID_FUNC_BODYV(elm_obj_genlist_mode_set, EFL_FUNC_CALL(mode), Elm_List_Mode mode);
Elm_List_Mode _elm_genlist_mode_get(const Eo *obj, Elm_Genlist_Data *pd);
EOAPI EFL_FUNC_BODY_CONST(elm_obj_genlist_mode_get, Elm_List_Mode, 4 /* Elm.List.Mode.last */);
Elm_Widget_Item *_elm_genlist_decorated_item_get(const Eo *obj, Elm_Genlist_Data *pd);
EOAPI EFL_FUNC_BODY_CONST(elm_obj_genlist_decorated_item_get, Elm_Widget_Item *, NULL);
Elm_Widget_Item *_elm_genlist_selected_item_get(const Eo *obj, Elm_Genlist_Data *pd);
EOAPI EFL_FUNC_BODY_CONST(elm_obj_genlist_selected_item_get, Elm_Widget_Item *, NULL);
Elm_Widget_Item *_elm_genlist_first_item_get(const Eo *obj, Elm_Genlist_Data *pd);
EOAPI EFL_FUNC_BODY_CONST(elm_obj_genlist_first_item_get, Elm_Widget_Item *, NULL);
Eina_List *_elm_genlist_realized_items_get(const Eo *obj, Elm_Genlist_Data *pd);
EOAPI EFL_FUNC_BODY_CONST(elm_obj_genlist_realized_items_get, Eina_List *, NULL);
const Eina_List *_elm_genlist_selected_items_get(const Eo *obj, Elm_Genlist_Data *pd);
EOAPI EFL_FUNC_BODY_CONST(elm_obj_genlist_selected_items_get, const Eina_List *, NULL);
Elm_Widget_Item *_elm_genlist_last_item_get(const Eo *obj, Elm_Genlist_Data *pd);
EOAPI EFL_FUNC_BODY_CONST(elm_obj_genlist_last_item_get, Elm_Widget_Item *, NULL);
Elm_Widget_Item *_elm_genlist_item_insert_before(Eo *obj, Elm_Genlist_Data *pd, const Elm_Genlist_Item_Class *itc, const void *data, Elm_Widget_Item *parent, Elm_Widget_Item *before_it, Elm_Genlist_Item_Type type, Evas_Smart_Cb func, const void *func_data);
EOAPI EFL_FUNC_BODYV(elm_obj_genlist_item_insert_before, Elm_Widget_Item *, NULL, EFL_FUNC_CALL(itc, data, parent, before_it, type, func, func_data), const Elm_Genlist_Item_Class *itc, const void *data, Elm_Widget_Item *parent, Elm_Widget_Item *before_it, Elm_Genlist_Item_Type type, Evas_Smart_Cb func, const void *func_data);
void _elm_genlist_realized_items_update(Eo *obj, Elm_Genlist_Data *pd);
EOAPI EFL_VOID_FUNC_BODY(elm_obj_genlist_realized_items_update);
Elm_Widget_Item *_elm_genlist_item_insert_after(Eo *obj, Elm_Genlist_Data *pd, const Elm_Genlist_Item_Class *itc, const void *data, Elm_Widget_Item *parent, Elm_Widget_Item *after_it, Elm_Genlist_Item_Type type, Evas_Smart_Cb func, const void *func_data);
EOAPI EFL_FUNC_BODYV(elm_obj_genlist_item_insert_after, Elm_Widget_Item *, NULL, EFL_FUNC_CALL(itc, data, parent, after_it, type, func, func_data), const Elm_Genlist_Item_Class *itc, const void *data, Elm_Widget_Item *parent, Elm_Widget_Item *after_it, Elm_Genlist_Item_Type type, Evas_Smart_Cb func, const void *func_data);
Elm_Widget_Item *_elm_genlist_at_xy_item_get(const Eo *obj, Elm_Genlist_Data *pd, int x, int y, int *posret);
EOAPI EFL_FUNC_BODYV_CONST(elm_obj_genlist_at_xy_item_get, Elm_Widget_Item *, NULL, EFL_FUNC_CALL(x, y, posret), int x, int y, int *posret);
void _elm_genlist_filter_set(Eo *obj, Elm_Genlist_Data *pd, void *key);
EOAPI EFL_VOID_FUNC_BODYV(elm_obj_genlist_filter_set, EFL_FUNC_CALL(key), void *key);
Eina_Iterator *_elm_genlist_filter_iterator_new(Eo *obj, Elm_Genlist_Data *pd);
EOAPI EFL_FUNC_BODY(elm_obj_genlist_filter_iterator_new, Eina_Iterator *, NULL);
unsigned int _elm_genlist_filtered_items_count(const Eo *obj, Elm_Genlist_Data *pd);
EOAPI EFL_FUNC_BODY_CONST(elm_obj_genlist_filtered_items_count, unsigned int, 0);
unsigned int _elm_genlist_items_count(const Eo *obj, Elm_Genlist_Data *pd);
EOAPI EFL_FUNC_BODY_CONST(elm_obj_genlist_items_count, unsigned int, 0);
Elm_Widget_Item *_elm_genlist_item_prepend(Eo *obj, Elm_Genlist_Data *pd, const Elm_Genlist_Item_Class *itc, const void *data, Elm_Widget_Item *parent, Elm_Genlist_Item_Type type, Evas_Smart_Cb func, const void *func_data);
EOAPI EFL_FUNC_BODYV(elm_obj_genlist_item_prepend, Elm_Widget_Item *, NULL, EFL_FUNC_CALL(itc, data, parent, type, func, func_data), const Elm_Genlist_Item_Class *itc, const void *data, Elm_Widget_Item *parent, Elm_Genlist_Item_Type type, Evas_Smart_Cb func, const void *func_data);
void _elm_genlist_clear(Eo *obj, Elm_Genlist_Data *pd);
EOAPI EFL_VOID_FUNC_BODY(elm_obj_genlist_clear);
Elm_Widget_Item *_elm_genlist_item_append(Eo *obj, Elm_Genlist_Data *pd, const Elm_Genlist_Item_Class *itc, const void *data, Elm_Widget_Item *parent, Elm_Genlist_Item_Type type, Evas_Smart_Cb func, const void *func_data);
EOAPI EFL_FUNC_BODYV(elm_obj_genlist_item_append, Elm_Widget_Item *, NULL, EFL_FUNC_CALL(itc, data, parent, type, func, func_data), const Elm_Genlist_Item_Class *itc, const void *data, Elm_Widget_Item *parent, Elm_Genlist_Item_Type type, Evas_Smart_Cb func, const void *func_data);
Elm_Widget_Item *_elm_genlist_item_sorted_insert(Eo *obj, Elm_Genlist_Data *pd, const Elm_Genlist_Item_Class *itc, const void *data, Elm_Widget_Item *parent, Elm_Genlist_Item_Type type, Eina_Compare_Cb comp, Evas_Smart_Cb func, const void *func_data);
EOAPI EFL_FUNC_BODYV(elm_obj_genlist_item_sorted_insert, Elm_Widget_Item *, NULL, EFL_FUNC_CALL(itc, data, parent, type, comp, func, func_data), const Elm_Genlist_Item_Class *itc, const void *data, Elm_Widget_Item *parent, Elm_Genlist_Item_Type type, Eina_Compare_Cb comp, Evas_Smart_Cb func, const void *func_data);
Elm_Widget_Item *_elm_genlist_search_by_text_item_get(Eo *obj, Elm_Genlist_Data *pd, Elm_Widget_Item *item_to_search_from, const char *part_name, const char *pattern, Elm_Glob_Match_Flags flags);
EOAPI EFL_FUNC_BODYV(elm_obj_genlist_search_by_text_item_get, Elm_Widget_Item *, NULL, EFL_FUNC_CALL(item_to_search_from, part_name, pattern, flags), Elm_Widget_Item *item_to_search_from, const char *part_name, const char *pattern, Elm_Glob_Match_Flags flags);
Efl_Object *_elm_genlist_efl_object_constructor(Eo *obj, Elm_Genlist_Data *pd);
void _elm_genlist_efl_gfx_entity_position_set(Eo *obj, Elm_Genlist_Data *pd, Eina_Position2D pos);
void _elm_genlist_efl_gfx_entity_size_set(Eo *obj, Elm_Genlist_Data *pd, Eina_Size2D size);
void _elm_genlist_efl_canvas_group_group_member_add(Eo *obj, Elm_Genlist_Data *pd, Efl_Canvas_Object *sub_obj);
Efl_Object *_elm_genlist_efl_object_provider_find(const Eo *obj, Elm_Genlist_Data *pd, const Efl_Class *klass);
Eina_Error _elm_genlist_efl_ui_widget_theme_apply(Eo *obj, Elm_Genlist_Data *pd);
Eina_Bool _elm_genlist_efl_ui_widget_widget_sub_object_add(Eo *obj, Elm_Genlist_Data *pd, Efl_Canvas_Object *sub_obj);
void _elm_genlist_efl_ui_widget_on_access_update(Eo *obj, Elm_Genlist_Data *pd, Eina_Bool enable);
Eina_Rect _elm_genlist_efl_ui_widget_focus_highlight_geometry_get(const Eo *obj, Elm_Genlist_Data *pd);
Eina_Bool _elm_genlist_efl_ui_focus_object_on_focus_update(Eo *obj, Elm_Genlist_Data *pd);
Eina_Bool _elm_genlist_efl_ui_widget_widget_sub_object_del(Eo *obj, Elm_Genlist_Data *pd, Efl_Canvas_Object *sub_obj);
Eina_Bool _elm_genlist_efl_ui_widget_widget_input_event_handler(Eo *obj, Elm_Genlist_Data *pd, const Efl_Event *eo_event, Efl_Canvas_Object *source);
Elm_Widget_Item *_elm_genlist_elm_widget_item_container_focused_item_get(const Eo *obj, Elm_Genlist_Data *pd);
void _elm_genlist_elm_interface_scrollable_item_loop_enabled_set(Eo *obj, Elm_Genlist_Data *pd, Eina_Bool enable);
Eina_Bool _elm_genlist_elm_interface_scrollable_item_loop_enabled_get(const Eo *obj, Elm_Genlist_Data *pd);
void _elm_genlist_elm_interface_scrollable_bounce_allow_set(Eo *obj, Elm_Genlist_Data *pd, Eina_Bool horiz, Eina_Bool vert);
void _elm_genlist_elm_interface_scrollable_bounce_allow_get(const Eo *obj, Elm_Genlist_Data *pd, Eina_Bool *horiz, Eina_Bool *vert);
void _elm_genlist_elm_interface_scrollable_policy_set(Eo *obj, Elm_Genlist_Data *pd, Elm_Scroller_Policy hbar, Elm_Scroller_Policy vbar);
void _elm_genlist_elm_interface_scrollable_policy_get(const Eo *obj, Elm_Genlist_Data *pd, Elm_Scroller_Policy *hbar, Elm_Scroller_Policy *vbar);
Eina_List *_elm_genlist_efl_access_object_access_children_get(const Eo *obj, Elm_Genlist_Data *pd);
Efl_Access_State_Set _elm_genlist_efl_access_object_state_set_get(const Eo *obj, Elm_Genlist_Data *pd);
const Efl_Access_Action_Data *_elm_genlist_efl_access_widget_action_elm_actions_get(const Eo *obj, Elm_Genlist_Data *pd);
int _elm_genlist_efl_access_selection_selected_children_count_get(const Eo *obj, Elm_Genlist_Data *pd);
Efl_Object *_elm_genlist_efl_access_selection_selected_child_get(const Eo *obj, Elm_Genlist_Data *pd, int selected_child_index);
Eina_Bool _elm_genlist_efl_access_selection_selected_child_deselect(Eo *obj, Elm_Genlist_Data *pd, int child_index);
Eina_Bool _elm_genlist_efl_access_selection_child_select(Eo *obj, Elm_Genlist_Data *pd, int child_index);
Eina_Bool _elm_genlist_efl_access_selection_child_deselect(Eo *obj, Elm_Genlist_Data *pd, int child_index);
Eina_Bool _elm_genlist_efl_access_selection_is_child_selected(Eo *obj, Elm_Genlist_Data *pd, int child_index);
Eina_Bool _elm_genlist_efl_access_selection_all_children_select(Eo *obj, Elm_Genlist_Data *pd);
Eina_Bool _elm_genlist_efl_access_selection_access_selection_clear(Eo *obj, Elm_Genlist_Data *pd);
Eina_Bool _elm_genlist_efl_ui_widget_focus_state_apply(Eo *obj, Elm_Genlist_Data *pd, Efl_Ui_Widget_Focus_State current_state, Efl_Ui_Widget_Focus_State *configured_state, Efl_Ui_Widget *redirect);
void _elm_genlist_efl_ui_focus_manager_setup_on_first_touch(Eo *obj, Elm_Genlist_Data *pd, Efl_Ui_Focus_Direction direction, Efl_Ui_Focus_Object *entry);
Efl_Ui_Focus_Object *_elm_genlist_efl_ui_focus_manager_manager_focus_get(const Eo *obj, Elm_Genlist_Data *pd);
Efl_Ui_Focus_Object *_elm_genlist_efl_ui_focus_manager_move(Eo *obj, Elm_Genlist_Data *pd, Efl_Ui_Focus_Direction direction);
static Eina_Bool
_elm_genlist_class_initializer(Efl_Class *klass)
{
const Efl_Object_Ops *opsp = NULL;
const Efl_Object_Property_Reflection_Ops *ropsp = NULL;
#ifndef ELM_GENLIST_EXTRA_OPS
#define ELM_GENLIST_EXTRA_OPS
#endif
EFL_OPS_DEFINE(ops,
EFL_OBJECT_OP_FUNC(elm_obj_genlist_homogeneous_set, _elm_genlist_homogeneous_set),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_homogeneous_get, _elm_genlist_homogeneous_get),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_select_mode_set, _elm_genlist_select_mode_set),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_select_mode_get, _elm_genlist_select_mode_get),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_focus_on_selection_set, _elm_genlist_focus_on_selection_set),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_focus_on_selection_get, _elm_genlist_focus_on_selection_get),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_longpress_timeout_set, _elm_genlist_longpress_timeout_set),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_longpress_timeout_get, _elm_genlist_longpress_timeout_get),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_multi_select_set, _elm_genlist_multi_select_set),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_multi_select_get, _elm_genlist_multi_select_get),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_reorder_mode_set, _elm_genlist_reorder_mode_set),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_reorder_mode_get, _elm_genlist_reorder_mode_get),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_decorate_mode_set, _elm_genlist_decorate_mode_set),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_decorate_mode_get, _elm_genlist_decorate_mode_get),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_multi_select_mode_set, _elm_genlist_multi_select_mode_set),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_multi_select_mode_get, _elm_genlist_multi_select_mode_get),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_block_count_set, _elm_genlist_block_count_set),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_block_count_get, _elm_genlist_block_count_get),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_tree_effect_enabled_set, _elm_genlist_tree_effect_enabled_set),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_tree_effect_enabled_get, _elm_genlist_tree_effect_enabled_get),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_highlight_mode_set, _elm_genlist_highlight_mode_set),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_highlight_mode_get, _elm_genlist_highlight_mode_get),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_mode_set, _elm_genlist_mode_set),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_mode_get, _elm_genlist_mode_get),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_decorated_item_get, _elm_genlist_decorated_item_get),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_selected_item_get, _elm_genlist_selected_item_get),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_first_item_get, _elm_genlist_first_item_get),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_realized_items_get, _elm_genlist_realized_items_get),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_selected_items_get, _elm_genlist_selected_items_get),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_last_item_get, _elm_genlist_last_item_get),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_item_insert_before, _elm_genlist_item_insert_before),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_realized_items_update, _elm_genlist_realized_items_update),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_item_insert_after, _elm_genlist_item_insert_after),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_at_xy_item_get, _elm_genlist_at_xy_item_get),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_filter_set, _elm_genlist_filter_set),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_filter_iterator_new, _elm_genlist_filter_iterator_new),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_filtered_items_count, _elm_genlist_filtered_items_count),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_items_count, _elm_genlist_items_count),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_item_prepend, _elm_genlist_item_prepend),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_clear, _elm_genlist_clear),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_item_append, _elm_genlist_item_append),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_item_sorted_insert, _elm_genlist_item_sorted_insert),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_search_by_text_item_get, _elm_genlist_search_by_text_item_get),
EFL_OBJECT_OP_FUNC(efl_constructor, _elm_genlist_efl_object_constructor),
EFL_OBJECT_OP_FUNC(efl_gfx_entity_position_set, _elm_genlist_efl_gfx_entity_position_set),
EFL_OBJECT_OP_FUNC(efl_gfx_entity_size_set, _elm_genlist_efl_gfx_entity_size_set),
EFL_OBJECT_OP_FUNC(efl_canvas_group_member_add, _elm_genlist_efl_canvas_group_group_member_add),
EFL_OBJECT_OP_FUNC(efl_provider_find, _elm_genlist_efl_object_provider_find),
EFL_OBJECT_OP_FUNC(efl_ui_widget_theme_apply, _elm_genlist_efl_ui_widget_theme_apply),
EFL_OBJECT_OP_FUNC(efl_ui_widget_sub_object_add, _elm_genlist_efl_ui_widget_widget_sub_object_add),
EFL_OBJECT_OP_FUNC(efl_ui_widget_on_access_update, _elm_genlist_efl_ui_widget_on_access_update),
EFL_OBJECT_OP_FUNC(efl_ui_widget_focus_highlight_geometry_get, _elm_genlist_efl_ui_widget_focus_highlight_geometry_get),
EFL_OBJECT_OP_FUNC(efl_ui_focus_object_on_focus_update, _elm_genlist_efl_ui_focus_object_on_focus_update),
EFL_OBJECT_OP_FUNC(efl_ui_widget_sub_object_del, _elm_genlist_efl_ui_widget_widget_sub_object_del),
EFL_OBJECT_OP_FUNC(efl_ui_widget_input_event_handler, _elm_genlist_efl_ui_widget_widget_input_event_handler),
EFL_OBJECT_OP_FUNC(elm_widget_item_container_focused_item_get, _elm_genlist_elm_widget_item_container_focused_item_get),
EFL_OBJECT_OP_FUNC(elm_interface_scrollable_item_loop_enabled_set, _elm_genlist_elm_interface_scrollable_item_loop_enabled_set),
EFL_OBJECT_OP_FUNC(elm_interface_scrollable_item_loop_enabled_get, _elm_genlist_elm_interface_scrollable_item_loop_enabled_get),
EFL_OBJECT_OP_FUNC(elm_interface_scrollable_bounce_allow_set, _elm_genlist_elm_interface_scrollable_bounce_allow_set),
EFL_OBJECT_OP_FUNC(elm_interface_scrollable_bounce_allow_get, _elm_genlist_elm_interface_scrollable_bounce_allow_get),
EFL_OBJECT_OP_FUNC(elm_interface_scrollable_policy_set, _elm_genlist_elm_interface_scrollable_policy_set),
EFL_OBJECT_OP_FUNC(elm_interface_scrollable_policy_get, _elm_genlist_elm_interface_scrollable_policy_get),
EFL_OBJECT_OP_FUNC(efl_access_object_access_children_get, _elm_genlist_efl_access_object_access_children_get),
EFL_OBJECT_OP_FUNC(efl_access_object_state_set_get, _elm_genlist_efl_access_object_state_set_get),
EFL_OBJECT_OP_FUNC(efl_access_widget_action_elm_actions_get, _elm_genlist_efl_access_widget_action_elm_actions_get),
EFL_OBJECT_OP_FUNC(efl_access_selection_selected_children_count_get, _elm_genlist_efl_access_selection_selected_children_count_get),
EFL_OBJECT_OP_FUNC(efl_access_selection_selected_child_get, _elm_genlist_efl_access_selection_selected_child_get),
EFL_OBJECT_OP_FUNC(efl_access_selection_selected_child_deselect, _elm_genlist_efl_access_selection_selected_child_deselect),
EFL_OBJECT_OP_FUNC(efl_access_selection_child_select, _elm_genlist_efl_access_selection_child_select),
EFL_OBJECT_OP_FUNC(efl_access_selection_child_deselect, _elm_genlist_efl_access_selection_child_deselect),
EFL_OBJECT_OP_FUNC(efl_access_selection_is_child_selected, _elm_genlist_efl_access_selection_is_child_selected),
EFL_OBJECT_OP_FUNC(efl_access_selection_all_children_select, _elm_genlist_efl_access_selection_all_children_select),
EFL_OBJECT_OP_FUNC(efl_access_selection_clear, _elm_genlist_efl_access_selection_access_selection_clear),
EFL_OBJECT_OP_FUNC(efl_ui_widget_focus_state_apply, _elm_genlist_efl_ui_widget_focus_state_apply),
EFL_OBJECT_OP_FUNC(efl_ui_focus_manager_setup_on_first_touch, _elm_genlist_efl_ui_focus_manager_setup_on_first_touch),
EFL_OBJECT_OP_FUNC(efl_ui_focus_manager_focus_get, _elm_genlist_efl_ui_focus_manager_manager_focus_get),
EFL_OBJECT_OP_FUNC(efl_ui_focus_manager_move, _elm_genlist_efl_ui_focus_manager_move),
ELM_GENLIST_EXTRA_OPS
);
opsp = &ops;
static const Efl_Object_Property_Reflection refl_table[] = {
{"homogeneous", __eolian_elm_genlist_homogeneous_set_reflect, __eolian_elm_genlist_homogeneous_get_reflect},
{"focus_on_selection", __eolian_elm_genlist_focus_on_selection_set_reflect, __eolian_elm_genlist_focus_on_selection_get_reflect},
{"longpress_timeout", __eolian_elm_genlist_longpress_timeout_set_reflect, __eolian_elm_genlist_longpress_timeout_get_reflect},
{"multi_select", __eolian_elm_genlist_multi_select_set_reflect, __eolian_elm_genlist_multi_select_get_reflect},
{"reorder_mode", __eolian_elm_genlist_reorder_mode_set_reflect, __eolian_elm_genlist_reorder_mode_get_reflect},
{"decorate_mode", __eolian_elm_genlist_decorate_mode_set_reflect, __eolian_elm_genlist_decorate_mode_get_reflect},
{"block_count", __eolian_elm_genlist_block_count_set_reflect, __eolian_elm_genlist_block_count_get_reflect},
{"tree_effect_enabled", __eolian_elm_genlist_tree_effect_enabled_set_reflect, __eolian_elm_genlist_tree_effect_enabled_get_reflect},
{"highlight_mode", __eolian_elm_genlist_highlight_mode_set_reflect, __eolian_elm_genlist_highlight_mode_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_genlist_class_desc = {
EO_VERSION,
"Elm.Genlist",
EFL_CLASS_TYPE_REGULAR,
sizeof(Elm_Genlist_Data),
_elm_genlist_class_initializer,
_elm_genlist_class_constructor,
NULL
};
EFL_DEFINE_CLASS(elm_genlist_class_get, &_elm_genlist_class_desc, EFL_UI_LAYOUT_BASE_CLASS, ELM_INTERFACE_SCROLLABLE_MIXIN, EFL_UI_CLICKABLE_INTERFACE, EFL_ACCESS_WIDGET_ACTION_MIXIN, EFL_ACCESS_SELECTION_INTERFACE, EFL_UI_SELECTABLE_INTERFACE, EFL_UI_LEGACY_INTERFACE, ELM_WIDGET_ITEM_CONTAINER_INTERFACE, NULL);
#include "elm_genlist_eo.legacy.c"

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,258 @@
EAPI void
elm_genlist_homogeneous_set(Elm_Genlist *obj, Eina_Bool homogeneous)
{
elm_obj_genlist_homogeneous_set(obj, homogeneous);
}
EAPI Eina_Bool
elm_genlist_homogeneous_get(const Elm_Genlist *obj)
{
return elm_obj_genlist_homogeneous_get(obj);
}
EAPI void
elm_genlist_select_mode_set(Elm_Genlist *obj, Elm_Object_Select_Mode mode)
{
elm_obj_genlist_select_mode_set(obj, mode);
}
EAPI Elm_Object_Select_Mode
elm_genlist_select_mode_get(const Elm_Genlist *obj)
{
return elm_obj_genlist_select_mode_get(obj);
}
EAPI void
elm_genlist_focus_on_selection_set(Elm_Genlist *obj, Eina_Bool enabled)
{
elm_obj_genlist_focus_on_selection_set(obj, enabled);
}
EAPI Eina_Bool
elm_genlist_focus_on_selection_get(const Elm_Genlist *obj)
{
return elm_obj_genlist_focus_on_selection_get(obj);
}
EAPI void
elm_genlist_longpress_timeout_set(Elm_Genlist *obj, double timeout)
{
elm_obj_genlist_longpress_timeout_set(obj, timeout);
}
EAPI double
elm_genlist_longpress_timeout_get(const Elm_Genlist *obj)
{
return elm_obj_genlist_longpress_timeout_get(obj);
}
EAPI void
elm_genlist_multi_select_set(Elm_Genlist *obj, Eina_Bool multi)
{
elm_obj_genlist_multi_select_set(obj, multi);
}
EAPI Eina_Bool
elm_genlist_multi_select_get(const Elm_Genlist *obj)
{
return elm_obj_genlist_multi_select_get(obj);
}
EAPI void
elm_genlist_reorder_mode_set(Elm_Genlist *obj, Eina_Bool reorder_mode)
{
elm_obj_genlist_reorder_mode_set(obj, reorder_mode);
}
EAPI Eina_Bool
elm_genlist_reorder_mode_get(const Elm_Genlist *obj)
{
return elm_obj_genlist_reorder_mode_get(obj);
}
EAPI void
elm_genlist_decorate_mode_set(Elm_Genlist *obj, Eina_Bool decorated)
{
elm_obj_genlist_decorate_mode_set(obj, decorated);
}
EAPI Eina_Bool
elm_genlist_decorate_mode_get(const Elm_Genlist *obj)
{
return elm_obj_genlist_decorate_mode_get(obj);
}
EAPI void
elm_genlist_multi_select_mode_set(Elm_Genlist *obj, Elm_Object_Multi_Select_Mode mode)
{
elm_obj_genlist_multi_select_mode_set(obj, mode);
}
EAPI Elm_Object_Multi_Select_Mode
elm_genlist_multi_select_mode_get(const Elm_Genlist *obj)
{
return elm_obj_genlist_multi_select_mode_get(obj);
}
EAPI void
elm_genlist_block_count_set(Elm_Genlist *obj, int count)
{
elm_obj_genlist_block_count_set(obj, count);
}
EAPI int
elm_genlist_block_count_get(const Elm_Genlist *obj)
{
return elm_obj_genlist_block_count_get(obj);
}
EAPI void
elm_genlist_tree_effect_enabled_set(Elm_Genlist *obj, Eina_Bool enabled)
{
elm_obj_genlist_tree_effect_enabled_set(obj, enabled);
}
EAPI Eina_Bool
elm_genlist_tree_effect_enabled_get(const Elm_Genlist *obj)
{
return elm_obj_genlist_tree_effect_enabled_get(obj);
}
EAPI void
elm_genlist_highlight_mode_set(Elm_Genlist *obj, Eina_Bool highlight)
{
elm_obj_genlist_highlight_mode_set(obj, highlight);
}
EAPI Eina_Bool
elm_genlist_highlight_mode_get(const Elm_Genlist *obj)
{
return elm_obj_genlist_highlight_mode_get(obj);
}
EAPI void
elm_genlist_mode_set(Elm_Genlist *obj, Elm_List_Mode mode)
{
elm_obj_genlist_mode_set(obj, mode);
}
EAPI Elm_List_Mode
elm_genlist_mode_get(const Elm_Genlist *obj)
{
return elm_obj_genlist_mode_get(obj);
}
EAPI Elm_Widget_Item *
elm_genlist_decorated_item_get(const Elm_Genlist *obj)
{
return elm_obj_genlist_decorated_item_get(obj);
}
EAPI Elm_Widget_Item *
elm_genlist_selected_item_get(const Elm_Genlist *obj)
{
return elm_obj_genlist_selected_item_get(obj);
}
EAPI Elm_Widget_Item *
elm_genlist_first_item_get(const Elm_Genlist *obj)
{
return elm_obj_genlist_first_item_get(obj);
}
EAPI Eina_List *
elm_genlist_realized_items_get(const Elm_Genlist *obj)
{
return elm_obj_genlist_realized_items_get(obj);
}
EAPI const Eina_List *
elm_genlist_selected_items_get(const Elm_Genlist *obj)
{
return elm_obj_genlist_selected_items_get(obj);
}
EAPI Elm_Widget_Item *
elm_genlist_last_item_get(const Elm_Genlist *obj)
{
return elm_obj_genlist_last_item_get(obj);
}
EAPI Elm_Widget_Item *
elm_genlist_item_insert_before(Elm_Genlist *obj, const Elm_Genlist_Item_Class *itc, const void *data, Elm_Widget_Item *parent, Elm_Widget_Item *before_it, Elm_Genlist_Item_Type type, Evas_Smart_Cb func, const void *func_data)
{
return elm_obj_genlist_item_insert_before(obj, itc, data, parent, before_it, type, func, func_data);
}
EAPI void
elm_genlist_realized_items_update(Elm_Genlist *obj)
{
elm_obj_genlist_realized_items_update(obj);
}
EAPI Elm_Widget_Item *
elm_genlist_item_insert_after(Elm_Genlist *obj, const Elm_Genlist_Item_Class *itc, const void *data, Elm_Widget_Item *parent, Elm_Widget_Item *after_it, Elm_Genlist_Item_Type type, Evas_Smart_Cb func, const void *func_data)
{
return elm_obj_genlist_item_insert_after(obj, itc, data, parent, after_it, type, func, func_data);
}
EAPI Elm_Widget_Item *
elm_genlist_at_xy_item_get(const Elm_Genlist *obj, int x, int y, int *posret)
{
return elm_obj_genlist_at_xy_item_get(obj, x, y, posret);
}
EAPI void
elm_genlist_filter_set(Elm_Genlist *obj, void *key)
{
elm_obj_genlist_filter_set(obj, key);
}
EAPI Eina_Iterator *
elm_genlist_filter_iterator_new(Elm_Genlist *obj)
{
return elm_obj_genlist_filter_iterator_new(obj);
}
EAPI unsigned int
elm_genlist_filtered_items_count(const Elm_Genlist *obj)
{
return elm_obj_genlist_filtered_items_count(obj);
}
EAPI unsigned int
elm_genlist_items_count(const Elm_Genlist *obj)
{
return elm_obj_genlist_items_count(obj);
}
EAPI Elm_Widget_Item *
elm_genlist_item_prepend(Elm_Genlist *obj, const Elm_Genlist_Item_Class *itc, const void *data, Elm_Widget_Item *parent, Elm_Genlist_Item_Type type, Evas_Smart_Cb func, const void *func_data)
{
return elm_obj_genlist_item_prepend(obj, itc, data, parent, type, func, func_data);
}
EAPI void
elm_genlist_clear(Elm_Genlist *obj)
{
elm_obj_genlist_clear(obj);
}
EAPI Elm_Widget_Item *
elm_genlist_item_append(Elm_Genlist *obj, const Elm_Genlist_Item_Class *itc, const void *data, Elm_Widget_Item *parent, Elm_Genlist_Item_Type type, Evas_Smart_Cb func, const void *func_data)
{
return elm_obj_genlist_item_append(obj, itc, data, parent, type, func, func_data);
}
EAPI Elm_Widget_Item *
elm_genlist_item_sorted_insert(Elm_Genlist *obj, const Elm_Genlist_Item_Class *itc, const void *data, Elm_Widget_Item *parent, Elm_Genlist_Item_Type type, Eina_Compare_Cb comp, Evas_Smart_Cb func, const void *func_data)
{
return elm_obj_genlist_item_sorted_insert(obj, itc, data, parent, type, comp, func, func_data);
}
EAPI Elm_Widget_Item *
elm_genlist_search_by_text_item_get(Elm_Genlist *obj, Elm_Widget_Item *item_to_search_from, const char *part_name, const char *pattern, Elm_Glob_Match_Flags flags)
{
return elm_obj_genlist_search_by_text_item_get(obj, item_to_search_from, part_name, pattern, flags);
}

View File

@ -0,0 +1,704 @@
#ifndef _ELM_GENLIST_EO_LEGACY_H_
#define _ELM_GENLIST_EO_LEGACY_H_
#ifndef _ELM_GENLIST_EO_CLASS_TYPE
#define _ELM_GENLIST_EO_CLASS_TYPE
typedef Eo Elm_Genlist;
#endif
#ifndef _ELM_GENLIST_EO_TYPES
#define _ELM_GENLIST_EO_TYPES
#endif
/**
* @brief Enable/disable homogeneous mode.
*
* This will enable the homogeneous mode where items are of the same height and
* width so that genlist may do the lazy-loading at its maximum (which
* increases the performance for scrolling the list). In the normal mode,
* genlist will pre-calculate all the items' sizes even though they are not in
* use. So items' callbacks are called many times than expected. But
* homogeneous mode will skip the item size pre-calculation process so items'
* callbacks are called only when the item is needed.
*
* @note This also works well with group index.
*
* @param[in] obj The object.
* @param[in] homogeneous Assume the items within the genlist are of the same
* height and width. Default is @c false.
*
* @ingroup Elm_Genlist_Group
*/
EAPI void elm_genlist_homogeneous_set(Elm_Genlist *obj, Eina_Bool homogeneous);
/**
* @brief Get whether the homogeneous mode is enabled.
*
* @param[in] obj The object.
*
* @return Assume the items within the genlist are of the same height and
* width. Default is @c false.
*
* @ingroup Elm_Genlist_Group
*/
EAPI Eina_Bool elm_genlist_homogeneous_get(const Elm_Genlist *obj);
/**
* @brief Set the genlist select mode.
*
* #ELM_OBJECT_SELECT_MODE_DEFAULT means that items will call their selection
* func and callback once when first becoming selected. Any further clicks will
* do nothing, unless you set always select mode. ELM_OBJECT_SELECT_MODE_ALWAYS
* means that even if selected, every click will make the selected callbacks be
* called. #ELM_OBJECT_SELECT_MODE_NONE will turn off the ability to select
* items entirely and they will neither appear selected nor call selected
* callback functions.
*
* @param[in] obj The object.
* @param[in] mode The select mode.
*
* @ingroup Elm_Genlist_Group
*/
EAPI void elm_genlist_select_mode_set(Elm_Genlist *obj, Elm_Object_Select_Mode mode);
/**
* @brief Get the genlist select mode.
*
* @param[in] obj The object.
*
* @return The select mode.
*
* @ingroup Elm_Genlist_Group
*/
EAPI Elm_Object_Select_Mode elm_genlist_select_mode_get(const Elm_Genlist *obj);
/**
* @brief Set focus upon items selection mode
*
* When enabled, every selection of an item inside the genlist will
* automatically set focus to its first focusable widget from the left. This is
* true of course if the selection was made by clicking an unfocusable area in
* an item or selecting it with a key movement. Clicking on a focusable widget
* inside an item will cause this particular item to get focus as usual.
*
* @param[in] obj The object.
* @param[in] enabled The tree effect status.
*
* @ingroup Elm_Genlist_Group
*/
EAPI void elm_genlist_focus_on_selection_set(Elm_Genlist *obj, Eina_Bool enabled);
/**
* @brief Get whether focus upon item's selection mode is enabled.
*
* @param[in] obj The object.
*
* @return The tree effect status.
*
* @ingroup Elm_Genlist_Group
*/
EAPI Eina_Bool elm_genlist_focus_on_selection_get(const Elm_Genlist *obj);
/**
* @brief Set the timeout in seconds for the longpress event.
*
* This option will change how long it takes to send an event "longpressed"
* after the mouse down signal is sent to the list. If this event occurs, no
* "clicked" event will be sent.
*
* @warning If you set the longpress timeout value with this API, your genlist
* will not be affected by the longpress value of elementary config value
* later.
*
* @param[in] obj The object.
* @param[in] timeout Timeout in seconds. Default is elm config value (1.0).
*
* @ingroup Elm_Genlist_Group
*/
EAPI void elm_genlist_longpress_timeout_set(Elm_Genlist *obj, double timeout);
/**
* @brief Get the timeout in seconds for the longpress event.
*
* @param[in] obj The object.
*
* @return Timeout in seconds. Default is elm config value (1.0).
*
* @ingroup Elm_Genlist_Group
*/
EAPI double elm_genlist_longpress_timeout_get(const Elm_Genlist *obj);
/**
* @brief Enable or disable multi-selection in the genlist.
*
* This enables ($true) or disables ($false) multi-selection in the list. This
* allows more than 1 item to be selected. To retrieve the list of selected
* items, use @ref elm_genlist_selected_items_get.
*
* @param[in] obj The object.
* @param[in] multi Multi-select enable/disable. Default is disabled.
*
* @ingroup Elm_Genlist_Group
*/
EAPI void elm_genlist_multi_select_set(Elm_Genlist *obj, Eina_Bool multi);
/**
* @brief Get if multi-selection in genlist is enabled or disabled.
*
* @param[in] obj The object.
*
* @return Multi-select enable/disable. Default is disabled.
*
* @ingroup Elm_Genlist_Group
*/
EAPI Eina_Bool elm_genlist_multi_select_get(const Elm_Genlist *obj);
/**
* @brief Set reorder mode.
*
* After turning on the reorder mode, longpress on normal item will trigger
* reordering of the item. You can move the item up and down. However, reorder
* does not work with group item.
*
* @param[in] obj The object.
* @param[in] reorder_mode The reorder mode.
*
* @ingroup Elm_Genlist_Group
*/
EAPI void elm_genlist_reorder_mode_set(Elm_Genlist *obj, Eina_Bool reorder_mode);
/**
* @brief Get the reorder mode.
*
* @param[in] obj The object.
*
* @return The reorder mode.
*
* @ingroup Elm_Genlist_Group
*/
EAPI Eina_Bool elm_genlist_reorder_mode_get(const Elm_Genlist *obj);
/**
* @brief Set Genlist decorate mode.
*
* This sets Genlist decorate mode to all items.
*
* @param[in] obj The object.
* @param[in] decorated The decorate mode status.
*
* @ingroup Elm_Genlist_Group
*/
EAPI void elm_genlist_decorate_mode_set(Elm_Genlist *obj, Eina_Bool decorated);
/**
* @brief Get Genlist decorate mode.
*
* @param[in] obj The object.
*
* @return The decorate mode status.
*
* @ingroup Elm_Genlist_Group
*/
EAPI Eina_Bool elm_genlist_decorate_mode_get(const Elm_Genlist *obj);
/**
* @brief Set the genlist multi select mode.
*
* #ELM_OBJECT_MULTI_SELECT_MODE_DEFAULT means that select/unselect items
* whenever each item is clicked. #ELM_OBJECT_MULTI_SELECT_MODE_WITH_CONTROL
* means that only one item will be selected although multi-selection is
* enabled, if clicked without pressing control key. This mode is only
* available with multi-selection.
*
* @param[in] obj The object.
* @param[in] mode The multi select mode
*
* @since 1.8
*
* @ingroup Elm_Genlist_Group
*/
EAPI void elm_genlist_multi_select_mode_set(Elm_Genlist *obj, Elm_Object_Multi_Select_Mode mode);
/**
* @brief Get the genlist multi select mode.
*
* @param[in] obj The object.
*
* @return The multi select mode
*
* @since 1.8
*
* @ingroup Elm_Genlist_Group
*/
EAPI Elm_Object_Multi_Select_Mode elm_genlist_multi_select_mode_get(const Elm_Genlist *obj);
/**
* @brief Set the maximum number of items within an item block.
*
* This will configure the block count to tune to the target with particular
* performance matrix.
*
* A block of objects will be used to reduce the number of operations due to
* many objects in the screen. It can determine the visibility, or if the
* object has changed, it theme needs to be updated, etc. doing this kind of
* calculation to the entire block, instead of per object.
*
* The default value for the block count is enough for most lists, so unless
* you know you will have a lot of objects visible in the screen at the same
* time, don't try to change this.
*
* @param[in] obj The object.
* @param[in] count Maximum number of items within an item block. Default is
* 32.
*
* @ingroup Elm_Genlist_Group
*/
EAPI void elm_genlist_block_count_set(Elm_Genlist *obj, int count);
/**
* @brief Get the maximum number of items within an item block.
*
* @param[in] obj The object.
*
* @return Maximum number of items within an item block. Default is 32.
*
* @ingroup Elm_Genlist_Group
*/
EAPI int elm_genlist_block_count_get(const Elm_Genlist *obj);
/**
* @brief Control genlist tree effect.
*
* @param[in] obj The object.
* @param[in] enabled The tree effect status.
*
* @ingroup Elm_Genlist_Group
*/
EAPI void elm_genlist_tree_effect_enabled_set(Elm_Genlist *obj, Eina_Bool enabled);
/**
* @brief Control genlist tree effect.
*
* @param[in] obj The object.
*
* @return The tree effect status.
*
* @ingroup Elm_Genlist_Group
*/
EAPI Eina_Bool elm_genlist_tree_effect_enabled_get(const Elm_Genlist *obj);
/**
* @brief Set whether the genlist items should be highlighted on item
* selection.
*
* This will turn on/off the highlight effect on item selection. The selected
* and clicked callback functions will still be called.
*
* Highlight is enabled by default.
*
* @param[in] obj The object.
* @param[in] highlight @c true to enable highlighting or @c false to disable
* it.
*
* @ingroup Elm_Genlist_Group
*/
EAPI void elm_genlist_highlight_mode_set(Elm_Genlist *obj, Eina_Bool highlight);
/**
* @brief Get whether the genlist items' should be highlighted when item
* selected.
*
* @param[in] obj The object.
*
* @return @c true to enable highlighting or @c false to disable it.
*
* @ingroup Elm_Genlist_Group
*/
EAPI Eina_Bool elm_genlist_highlight_mode_get(const Elm_Genlist *obj);
/**
* @brief This sets the horizontal stretching mode.
*
* This sets the mode used for sizing items horizontally. Valid modes are
* @ref ELM_LIST_LIMIT, @ref ELM_LIST_SCROLL, and @ref ELM_LIST_COMPRESS. The
* default is @ref ELM_LIST_SCROLL. This mode means that if items are too wide
* to fit, the scroller will scroll horizontally. Otherwise items are expanded
* to fill the width of the viewport of the scroller. If it is
* @ref ELM_LIST_LIMIT, items will be expanded to the viewport width and
* limited to that size. If it is @ref ELM_LIST_COMPRESS, the item width will
* be fixed (restricted to a minimum of) to the list width when calculating its
* size in order to allow the height to be calculated based on it. This allows,
* for instance, text block to wrap lines if the Edje part is configured with
* "text.min: 0 1".
*
* @note @ref ELM_LIST_COMPRESS will make list resize slower as it will have to
* recalculate every item height again whenever the list width changes!
*
* @note Homogeneous mode gives all items in the genlist the same width/height.
* With @ref ELM_LIST_COMPRESS, genlist items initialize fast, but there cannot
* be any sub-objects in the genlist which require on-the-fly resizing (such as
* TEXTBLOCK). In this case some dynamic resizable objects in the genlist might
* not diplay properly.
*
* @param[in] obj The object.
* @param[in] mode The mode to use (one of @ref ELM_LIST_SCROLL or
* @ref ELM_LIST_LIMIT).
*
* @ingroup Elm_Genlist_Group
*/
EAPI void elm_genlist_mode_set(Elm_Genlist *obj, Elm_List_Mode mode);
/**
* @brief Get the horizontal stretching mode.
*
* @param[in] obj The object.
*
* @return The mode to use (one of @ref ELM_LIST_SCROLL or
* @ref ELM_LIST_LIMIT).
*
* @ingroup Elm_Genlist_Group
*/
EAPI Elm_List_Mode elm_genlist_mode_get(const Elm_Genlist *obj);
/**
* @brief Get active genlist mode item.
*
* This function returns the item that was activated with a mode, by the
* function @ref elm_genlist_decorate_mode_set.
*
* @param[in] obj The object.
*
* @return The active item for that current mode. Or @c null if no item is
* activated with any mode.
*
* @ingroup Elm_Genlist_Group
*/
EAPI Elm_Widget_Item *elm_genlist_decorated_item_get(const Elm_Genlist *obj);
/**
* @brief Get the selected item in the genlist.
*
* This gets the selected item in the list (if multi-selection is enabled, only
* the item that was first selected in the list is returned - which is not very
* useful, so see @ref elm_genlist_selected_items_get for when multi-selection
* is used).
*
* If no item is selected, @c null is returned.
*
* @param[in] obj The object.
*
* @return The selected item, or @c null if none is selected.
*
* @ingroup Elm_Genlist_Group
*/
EAPI Elm_Widget_Item *elm_genlist_selected_item_get(const Elm_Genlist *obj);
/**
* @brief Get the first item in the genlist.
*
* This returns the first item in the list.
*
* If filter is set on genlist, it returns the first filtered item in the list.
*
* @param[in] obj The object.
*
* @return The first item or @c null.
*
* @ingroup Elm_Genlist_Group
*/
EAPI Elm_Widget_Item *elm_genlist_first_item_get(const Elm_Genlist *obj);
/**
* @brief Get a list of realized items in genlist.
*
* This returns a list of the realized items in the genlist. The list contains
* genlist item pointers. The list must be freed by the caller when done with
* @ref eina_list_free. The item pointers in the list are only valid so long as
* those items are not deleted or the genlist is not deleted.
*
* @param[in] obj The object.
*
* @return List of realized items
*
* @ingroup Elm_Genlist_Group
*/
EAPI Eina_List *elm_genlist_realized_items_get(const Elm_Genlist *obj) EINA_WARN_UNUSED_RESULT;
/**
* @brief Get a list of selected items in the genlist.
*
* It returns a list of the selected items. This list pointer is only valid so
* long as the selection doesn't change (no items are selected or unselected,
* or unselected implicitl by deletion). The list contains genlist items
* pointers. The order of the items in this list is the order which they were
* selected, i.e. the first item in this list is the first item that was
* selected, and so on.
*
* @note If not in multi-select mode, consider using function
* @ref elm_genlist_selected_item_get instead.
*
* @param[in] obj The object.
*
* @return List of selected items
*
* @ingroup Elm_Genlist_Group
*/
EAPI const Eina_List *elm_genlist_selected_items_get(const Elm_Genlist *obj);
/**
* @brief Get the last item in the genlist
*
* This returns the last item in the list.
*
* If filter is set to genlist, it returns last filtered item in the list.
*
* @param[in] obj The object.
*
* @return Last item in list
*
* @ingroup Elm_Genlist_Group
*/
EAPI Elm_Widget_Item *elm_genlist_last_item_get(const Elm_Genlist *obj);
/**
* @brief Insert an item before another in a genlist widget
*
* This inserts an item before another in the list. It will be in the same tree
* level or group as the item it is inserted before.
*
* @param[in] obj The object.
* @param[in] itc The item class for the item.
* @param[in] data The item data.
* @param[in] parent The parent item, or @c null if none.
* @param[in] before_it The item to place this new one before.
* @param[in] type Item type.
* @param[in] func Convenience function called when the item is selected.
* @param[in] func_data Data passed to @c func above.
*
* @return Handle to inserted item
*
* @ingroup Elm_Genlist_Group
*/
EAPI Elm_Widget_Item *elm_genlist_item_insert_before(Elm_Genlist *obj, const Elm_Genlist_Item_Class *itc, const void *data, Elm_Widget_Item *parent, Elm_Widget_Item *before_it, Elm_Genlist_Item_Type type, Evas_Smart_Cb func, const void *func_data);
/**
* @brief Update the contents of all realized items.
*
* This updates all realized items by calling all the item class functions
* again to get the contents, texts and states. Use this when the original item
* data has changed and the changes are desired to be reflected.
*
* To update just one item, use @ref elm_genlist_item_update.
* @param[in] obj The object.
*
* @ingroup Elm_Genlist_Group
*/
EAPI void elm_genlist_realized_items_update(Elm_Genlist *obj);
/**
* @brief Insert an item after another in a genlist widget
*
* This inserts an item after another in the list. It will be in the same tree
* level or group as the item it is inserted after.
*
* @param[in] obj The object.
* @param[in] itc The item class for the item.
* @param[in] data The item data.
* @param[in] parent The parent item, or @c null if none.
* @param[in] after_it The item to place this new one after.
* @param[in] type Item type.
* @param[in] func Convenience function called when the item is selected.
* @param[in] func_data Data passed to @c func above.
*
* @return Handle to inserted item
*
* @ingroup Elm_Genlist_Group
*/
EAPI Elm_Widget_Item *elm_genlist_item_insert_after(Elm_Genlist *obj, const Elm_Genlist_Item_Class *itc, const void *data, Elm_Widget_Item *parent, Elm_Widget_Item *after_it, Elm_Genlist_Item_Type type, Evas_Smart_Cb func, const void *func_data);
/**
* @brief Get the item that is at the x, y canvas coords.
*
* This returns the item at the given coordinates (which are canvas relative,
* not object-relative). If an item is at that coordinate, that item handle is
* returned, and if @c posret is not NULL, the integer pointed to is set to a
* value of -1, 0 or 1, depending if the coordinate is on the upper portion of
* that item (-1), on the middle section (0) or on the lower part (1). If NULL
* is returned as an item (no item found there), then posret may indicate -1 or
* 1 based if the coordinate is above or below all items respectively in the
* genlist.
*
* @param[in] obj The object.
* @param[in] x The input x coordinate.
* @param[in] y The input y coordinate.
* @param[out] posret The position relative to the item returned here.
*
* @return Item at position
*
* @ingroup Elm_Genlist_Group
*/
EAPI Elm_Widget_Item *elm_genlist_at_xy_item_get(const Elm_Genlist *obj, int x, int y, int *posret);
/**
* @brief Set filter mode with key.
*
* This initiates the filter mode of genlist with user/application provided
* key. If key is NULL, the filter mode is turned off.
*
* The filter data passed has to be managed by application itself and should
* not be deleted before genlist is deleted(or while filtering is not done.
*
* @param[in] obj The object.
* @param[in] key Filter key
*
* @ingroup Elm_Genlist_Group
*/
EAPI void elm_genlist_filter_set(Elm_Genlist *obj, void *key);
/**
* @brief Returns an iterator over the list of filtered items.
*
* Return NULL if filter is not set. Application must take care of the case
* while calling the API. Must be freed after use.
*
* @param[in] obj The object.
*
* @return Iterator on genlist
*
* @ingroup Elm_Genlist_Group
*/
EAPI Eina_Iterator *elm_genlist_filter_iterator_new(Elm_Genlist *obj);
/**
* @brief Return how many items have passed the filter currently.
*
* This behaviour is O(1) and returns the count of items which are currently
* passed by the filter. After "filter,done", the call returns total count of
* the filtered items.
*
* @param[in] obj The object.
*
* @return Count of items passing the filter
*
* @since 1.18
*
* @ingroup Elm_Genlist_Group
*/
EAPI unsigned int elm_genlist_filtered_items_count(const Elm_Genlist *obj);
/**
* @brief Return how many items are currently in a list.
*
* This behavior is O(1) and includes items which may or may not be realized.
*
* @param[in] obj The object.
*
* @return Item in list
*
* @ingroup Elm_Genlist_Group
*/
EAPI unsigned int elm_genlist_items_count(const Elm_Genlist *obj);
/**
* @brief Prepend a new item in a given genlist widget.
*
* This adds an item to the beginning of the list or beginning of the children
* of the parent if given.
*
* @param[in] obj The object.
* @param[in] itc The item class for the item.
* @param[in] data The item data.
* @param[in] parent The parent item, or @c null if none.
* @param[in] type Item type.
* @param[in] func Convenience function called when the item is selected.
* @param[in] func_data Data passed to @c func above.
*
* @return Handle to prepended item
*
* @ingroup Elm_Genlist_Group
*/
EAPI Elm_Widget_Item *elm_genlist_item_prepend(Elm_Genlist *obj, const Elm_Genlist_Item_Class *itc, const void *data, Elm_Widget_Item *parent, Elm_Genlist_Item_Type type, Evas_Smart_Cb func, const void *func_data);
/**
* @brief Remove all items from a given genlist widget.
*
* This removes (and deletes) all items in @c obj, leaving it empty.
* @param[in] obj The object.
*
* @ingroup Elm_Genlist_Group
*/
EAPI void elm_genlist_clear(Elm_Genlist *obj);
/**
* @brief Append a new item in a given genlist widget.
*
* This adds the given item to the end of the list or the end of the children
* list if the @c parent is given.
*
* @param[in] obj The object.
* @param[in] itc The item class for the item.
* @param[in] data The item data.
* @param[in] parent The parent item, or @c null if none.
* @param[in] type Item type.
* @param[in] func Convenience function called when the item is selected.
* @param[in] func_data Data passed to @c func above.
*
* @return Handle to appended item
*
* @ingroup Elm_Genlist_Group
*/
EAPI Elm_Widget_Item *elm_genlist_item_append(Elm_Genlist *obj, const Elm_Genlist_Item_Class *itc, const void *data, Elm_Widget_Item *parent, Elm_Genlist_Item_Type type, Evas_Smart_Cb func, const void *func_data);
/**
* @brief Insert a new item into the sorted genlist object
*
* This inserts an item in the genlist based on user defined comparison
* function. The two arguments passed to the function @c func are genlist item
* handles to compare.
*
* @param[in] obj The object.
* @param[in] itc The item class for the item.
* @param[in] data The item data.
* @param[in] parent The parent item, or @c null if none.
* @param[in] type Item type.
* @param[in] comp The function called for the sort.
* @param[in] func Convenience function called when the item is selected.
* @param[in] func_data Data passed to @c func above.
*
* @return Handle to inserted item
*
* @ingroup Elm_Genlist_Group
*/
EAPI Elm_Widget_Item *elm_genlist_item_sorted_insert(Elm_Genlist *obj, const Elm_Genlist_Item_Class *itc, const void *data, Elm_Widget_Item *parent, Elm_Genlist_Item_Type type, Eina_Compare_Cb comp, Evas_Smart_Cb func, const void *func_data);
/**
* @brief Get genlist item by given string.
*
* It takes pointer to the genlist item that will be used to start search from
* it.
*
* This function uses globs (like "*.jpg") for searching and takes search flags
* as last parameter That is a bitfield with values to be ored together or 0
* for no flags.
*
* @param[in] obj The object.
* @param[in] item_to_search_from Pointer to item to start search from. If
* @c null, search will be started from the first item of the genlist.
* @param[in] part_name Name of the TEXT part of genlist item to search string
* in.
* @param[in] pattern The search pattern.
* @param[in] flags Search flags.
*
* @return Searched item
*
* @since 1.11
*
* @ingroup Elm_Genlist_Group
*/
EAPI Elm_Widget_Item *elm_genlist_search_by_text_item_get(Elm_Genlist *obj, Elm_Widget_Item *item_to_search_from, const char *part_name, const char *pattern, Elm_Glob_Match_Flags flags);
#endif

View File

@ -1,437 +0,0 @@
import elm_general;
class Elm.Genlist.Item extends Elm.Widget.Item.Static_Focus implements Efl.Ui.Legacy
{
[[Elementary genlist item class]]
legacy_prefix: elm_genlist_item;
eo_prefix: elm_obj_genlist_item;
data: Elm_Gen_Item;
methods {
@property prev {
get {
[[Get the previous item in a genlist widget's internal
list of items, given a handle to one of those items.
This returns the item placed before the $item, on
the container genlist.
If filter is set on genlist, this returns the filtered
item placed before $item in the list.
Note that parent / child relationship is not taken into
account, the previous visual item is always returned,
could it be a parent, a child or a group item.
NULL is returned if called on the first item.
]]
}
values {
item: Elm.Widget.Item; [[The item before $item, or $null if there's none (and on errors).]]
}
}
@property next {
get {
[[Get the next item in a genlist widget's internal lis
of items, given a handle to one of those items.
This returns the item placed after the $item, on
the container genlist.
If filter is set on genlist, this returns the filtered
item placed after $item in the list.
Note that parent / child relationship is not taken into
account, the next visual item is always returned, could
it be a parent, a child or a group item.
NULL is returned if called on the last item.
]]
}
values {
item: Elm.Widget.Item; [[The item after $item, or $null if there's none (and on errors).]]
}
}
@property parent_item {
get {
[[Get the parent item of the given item
This returns the item that was specified as parent
of the item $it on \@ref elm_genlist_item_append
and insertion related functions.
]]
legacy: elm_genlist_item_parent_get;
}
values {
item: Elm.Widget.Item; [[The parent of the item or $null if it has no parent.]]
}
}
@property subitems {
get {
[[Get the list of subitems of a given item
This returns the list of subitems that an item
possesses. It cannot be changed.
@since 1.9
]]
}
values {
subitems: const(list<Elm.Widget.Item>); [[The list of subitems, $null on error.]]
}
}
@property selected {
get {
[[Get whether a given genlist item is selected or not.]]
}
set {
[[Set whether a given genlist item is selected or not
This sets the selected state of an item. If multi
selection is not enabled on the containing genlist
and $selected is $true, any other previously selected
items will get unselected in favor of this new one.
]]
}
values {
selected: bool; [[The selected state ($true selected, $false not selected).]]
}
}
@property expanded {
get {
[[Get the expanded state of an item
This gets the expanded state of an item.
]]
}
set {
[[Sets the expanded state of an item.
This function flags the item of type
#ELM_GENLIST_ITEM_TREE as expanded or not.
The theme will respond to this change visually, and
a signal "expanded" or "contracted" will be sent
from the genlist with a pointer to the item that
has been expanded/contracted.
Calling this function won't show or hide any child
of this item (if it is a parent). You must manually
delete and create them on the callbacks of
the "expanded" or "contracted" signals.
]]
}
values {
expanded: bool; [[The expanded state ($true expanded, $false not expanded).]]
}
}
@property expanded_depth {
get {
[[Get the depth of expanded item.]]
}
values {
depth: int; [[The depth of expanded item.]]
}
}
@property item_class {
get {
[[Get the Genlist Item class for the given Genlist Item.
This returns the Genlist_Item_Class for the given item.
It can be used to examine the function pointers and
item_style.
]]
}
values {
@cref itc: Elm.Genlist.Item.Class; [[Genlist Item class for the given item.]]
}
}
@property index {
get {
[[Get the index of the item. It is only valid once displayed.
The index start from 1.
]]
}
values {
index: int(-1); [[The position inside the list of item.]]
}
}
@property decorate_mode {
get {
[[Get the item's decorate mode.
This function just returns the name of the item's
decorate mode.
]]
}
values {
decorate_it_type: string; [[Name of the item's decorate mode.]]
}
}
@property flip {
get {
[[Get the flip state of a given genlist item.
This function returns the flip state of a given
genlist item. If the parameter is invalid, it
returns $false.
]]
}
set {
[[Set the flip state of a given genlist item.
This function sets the flip state of a given genlist
item. Flip mode overrides current item object.
It can be used for on-the-fly item replace.
Flip mode can be used with/without decorate mode.
]]
}
values {
flip: bool; [[The flip mode.]]
}
}
@property select_mode {
get {
[[Get the genlist item's select mode.
It's ELM_OBJECT_SELECT_MODE_MAX on failure.
]]
}
set {
[[Set the genlist item's select mode.
ELM_OBJECT_SELECT_MODE_DEFAULT means that the item
will only call their selection func and callback
when first becoming selected. Any further clicks will
do nothing, unless you set always select mode.
ELM_OBJECT_SELECT_MODE_ALWAYS means that even if
selected, every click will make the selected
callbacks be called.
ELM_OBJECT_SELECT_MODE_NONE will turn off the ability
to select the item entirely and they will neither
appear selected nor call selected callback functions.
ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY will apply
no-finger-size rule with ELM_OBJECT_SELECT_MODE_NONE.
No-finger-size rule makes an item can be smaller
than lower limit. Clickable objects should be bigger
than human touch point device (your finger) for
some touch or small screen devices. So it is
enabled, the item can be shrink than predefined
finger-size value. And the item will be updated.
]]
}
values {
mode: Elm.Object.Select_Mode(Elm.Object.Select_Mode.max); [[The selected mode.]]
}
}
@property type {
get {
[[Get the Item's type.
This function returns the item's type. Normally the
item's type. If it failed, return value is
ELM_GENLIST_ITEM_MAX.
]]
}
values {
type: Elm.Genlist.Item.Type(Elm.Genlist.Item.Type.max); [[Item type.]]
}
}
@property pin {
get {
[[Get whether a given genlist item is pinned or not.]]
}
set {
[[Set whether a given genlist item is pinned or not
This sets a genlist item as pinned so that it will be always available in
the viewport available for user interaction. Group items cannot be pinned.
Also when a new item is pinned, the current pinned item will get unpinned.
Item pinning cannot be done in reorder mode too.
]]
}
values {
pin: bool; [[The item pin state state ($true pin item, $false unpin item).]]
}
}
/* init { FIXME
params {
Evas_Smart_Cb func;
const(void_ptr) data;
}
}*/
subitems_count {
[[Get the number of subitems of a given item.
This returns the number of subitems that an item possesses.
@since 1.9
]]
return: uint; [[The number of subitems, 0 on error.]]
}
subitems_clear{
[[Remove all sub-items (children) of the given item.
This removes all items that are children (and their
descendants) of the given item $it.
]]
}
promote {
[[Promote an item to the top of the list.]]
}
demote {
[[Demote an item to the end of the list.]]
}
show {
[[Show the portion of a genlist's internal list containing
a given item, immediately.
This causes genlist to jump to the given item $it and
show it (by jumping to that position), if it is not
fully visible.
]]
params {
@in type: Elm.Genlist.Item.Scrollto_Type; [[The position to bring in, the given item to.
\@ref Elm_Genlist_Item_Scrollto_Type.]]
}
}
bring_in {
[[Animatedly bring in, to the visible area of a genlist, a
given item on it.
This causes genlist to jump to the given item $it and
show it (by animatedly scrolling), if it is not fully
visible. This may use animation and take a some time
to do so.
]]
params {
@in type: Elm.Genlist.Item.Scrollto_Type; [[The position to bring in, the given item to.
\@ref Elm_Genlist_Item_Scrollto_Type.]]
}
}
all_contents_unset {
[[Unset all contents fetched by the item class.
This instructs genlist to release references to contents
in the item, meaning that they will no longer be managed
by genlist and are floating "orphans" that can be re-used
elsewhere if the user wants to.
]]
params {
@out l: list<Efl.Canvas.Object> @owned; [[The contents list to return.]]
}
}
update {
[[Update all the contents of an item.
This updates an item by calling all the item class
functions again to get the contents, texts and states.
Use this when the original item data has changed and the
changes are desired to be reflected.
Use elm_genlist_realized_items_update() to update all
already realized items.
Note: This also updates internal genlist item object
(edje_object as of now). So when this is called between
mouse down and mouse up, mouse up event will be ignored
because edje_object is deleted and created again by this
API. If you want to avoid this, please use
\@ref elm_genlist_item_fields_update.
]]
}
fields_update {
[[Update the part of an item.
This updates an item's part by calling item's fetching
functions again to get the contents, texts and states.
Use this when the original item data has changed and the
changes are desired to be reflected. Second part
argument is used for globbing to match '*', '?', and '.'
It can be used at updating multi fields.
Use \@ref elm_genlist_realized_items_update to update an
item's all property.
]]
params {
@in parts: string; [[The name of item's part.]]
@in itf: Elm.Genlist.Item.Field_Type; [[The type of item's part type.]]
}
}
item_class_update {
[[Update the item class of an item.
This sets another class of the item, changing the way
that it is displayed. After changing the item class
@.update is called on the item $it.
]]
params {
@cref itc: Elm.Genlist.Item.Class; [[The item class for the item.]]
}
}
decorate_mode_set {
[[Activate a genlist mode on an item.
A genlist mode is a different way of selecting an item.
Once a mode is activated on an item, any other selected
item is immediately unselected. This feature provides an
easy way of implementing a new kind of animation for
selecting an item, without having to entirely rewrite
the item style theme. However, the elm_genlist_selected_*
API can't be used to get what item is activate for a mode.
The current item style will still be used, but applying
a genlist mode to an item will select it using a
different kind of animation.
The current active item for a mode can be found by
\@ref elm_genlist_decorated_item_get.
Only one mode can be active at any time, and for only one
item. Genlist handles deactivating other items when one
item is activated. A mode is defined in the genlist theme
(edc), and more modes can easily be added. A mode style
and the genlist item style are different things. They
can be combined to provide a default style to the item,
with some kind of animation for that item when the mode
is activated.
When a mode is activated on an item, a new view for that
item is created. The theme of this mode defines the
animation that will be used to transit the item from
the old view to the new view. This second (new) view will
be active for that item while the mode is active on the
item, and will be destroyed after the mode is totally
deactivated from that item.
]]
params {
@in decorate_it_type: string; [[Mode name.]]
@in decorate_it_set: bool; [[Boolean to define set or unset mode.]]
}
}
}
implements {
Efl.Object.constructor;
Elm.Widget.Item.del_pre;
Elm.Widget.Item.disable;
Elm.Widget.Item.signal_emit;
Elm.Widget.Item.style { get; set; }
Elm.Widget.Item.item_focus { get; set; }
Elm.Widget.Item.part_text { get; }
Elm.Widget.Item.part_content { get; }
Elm.Widget.Item.tooltip_text_set;
Elm.Widget.Item.tooltip_style { get; set; }
Elm.Widget.Item.tooltip_window_mode { get; set; }
Elm.Widget.Item.tooltip_content_cb_set;
Elm.Widget.Item.tooltip_unset;
Elm.Widget.Item.cursor { set; }
Elm.Widget.Item.cursor_unset;
Efl.Access.Object.i18n_name { get; }
Efl.Access.Object.state_set { get; }
Efl.Ui.Focus.Object.setup_order_non_recursive;
Efl.Ui.Focus.Object.focus_parent { get; }
}
}

View File

@ -0,0 +1,409 @@
Elm_Widget_Item *_elm_genlist_item_prev_get(const Eo *obj, Elm_Gen_Item *pd);
EOAPI EFL_FUNC_BODY_CONST(elm_obj_genlist_item_prev_get, Elm_Widget_Item *, NULL);
Elm_Widget_Item *_elm_genlist_item_next_get(const Eo *obj, Elm_Gen_Item *pd);
EOAPI EFL_FUNC_BODY_CONST(elm_obj_genlist_item_next_get, Elm_Widget_Item *, NULL);
Elm_Widget_Item *_elm_genlist_item_parent_item_get(const Eo *obj, Elm_Gen_Item *pd);
EOAPI EFL_FUNC_BODY_CONST(elm_obj_genlist_item_parent_item_get, Elm_Widget_Item *, NULL);
const Eina_List *_elm_genlist_item_subitems_get(const Eo *obj, Elm_Gen_Item *pd);
EOAPI EFL_FUNC_BODY_CONST(elm_obj_genlist_item_subitems_get, const Eina_List *, NULL);
void _elm_genlist_item_selected_set(Eo *obj, Elm_Gen_Item *pd, Eina_Bool selected);
static Eina_Error
__eolian_elm_genlist_item_selected_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_obj_genlist_item_selected_set(obj, cval);
end:
eina_value_flush(&val);
return r;
}
EOAPI EFL_VOID_FUNC_BODYV(elm_obj_genlist_item_selected_set, EFL_FUNC_CALL(selected), Eina_Bool selected);
Eina_Bool _elm_genlist_item_selected_get(const Eo *obj, Elm_Gen_Item *pd);
static Eina_Value
__eolian_elm_genlist_item_selected_get_reflect(Eo *obj)
{
Eina_Bool val = elm_obj_genlist_item_selected_get(obj);
return eina_value_bool_init(val);
}
EOAPI EFL_FUNC_BODY_CONST(elm_obj_genlist_item_selected_get, Eina_Bool, 0);
void _elm_genlist_item_expanded_set(Eo *obj, Elm_Gen_Item *pd, Eina_Bool expanded);
static Eina_Error
__eolian_elm_genlist_item_expanded_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_obj_genlist_item_expanded_set(obj, cval);
end:
eina_value_flush(&val);
return r;
}
EOAPI EFL_VOID_FUNC_BODYV(elm_obj_genlist_item_expanded_set, EFL_FUNC_CALL(expanded), Eina_Bool expanded);
Eina_Bool _elm_genlist_item_expanded_get(const Eo *obj, Elm_Gen_Item *pd);
static Eina_Value
__eolian_elm_genlist_item_expanded_get_reflect(Eo *obj)
{
Eina_Bool val = elm_obj_genlist_item_expanded_get(obj);
return eina_value_bool_init(val);
}
EOAPI EFL_FUNC_BODY_CONST(elm_obj_genlist_item_expanded_get, Eina_Bool, 0);
int _elm_genlist_item_expanded_depth_get(const Eo *obj, Elm_Gen_Item *pd);
static Eina_Value
__eolian_elm_genlist_item_expanded_depth_get_reflect(Eo *obj)
{
int val = elm_obj_genlist_item_expanded_depth_get(obj);
return eina_value_int_init(val);
}
EOAPI EFL_FUNC_BODY_CONST(elm_obj_genlist_item_expanded_depth_get, int, 0);
const Elm_Genlist_Item_Class *_elm_genlist_item_item_class_get(const Eo *obj, Elm_Gen_Item *pd);
EOAPI EFL_FUNC_BODY_CONST(elm_obj_genlist_item_class_get, const Elm_Genlist_Item_Class *, NULL);
int _elm_genlist_item_index_get(const Eo *obj, Elm_Gen_Item *pd);
static Eina_Value
__eolian_elm_genlist_item_index_get_reflect(Eo *obj)
{
int val = elm_obj_genlist_item_index_get(obj);
return eina_value_int_init(val);
}
EOAPI EFL_FUNC_BODY_CONST(elm_obj_genlist_item_index_get, int, -1 /* +1 */);
const char *_elm_genlist_item_decorate_mode_get(const Eo *obj, Elm_Gen_Item *pd);
static Eina_Value
__eolian_elm_genlist_item_decorate_mode_get_reflect(Eo *obj)
{
const char *val = elm_obj_genlist_item_decorate_mode_get(obj);
return eina_value_string_init(val);
}
EOAPI EFL_FUNC_BODY_CONST(elm_obj_genlist_item_decorate_mode_get, const char *, NULL);
void _elm_genlist_item_flip_set(Eo *obj, Elm_Gen_Item *pd, Eina_Bool flip);
static Eina_Error
__eolian_elm_genlist_item_flip_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_obj_genlist_item_flip_set(obj, cval);
end:
eina_value_flush(&val);
return r;
}
EOAPI EFL_VOID_FUNC_BODYV(elm_obj_genlist_item_flip_set, EFL_FUNC_CALL(flip), Eina_Bool flip);
Eina_Bool _elm_genlist_item_flip_get(const Eo *obj, Elm_Gen_Item *pd);
static Eina_Value
__eolian_elm_genlist_item_flip_get_reflect(Eo *obj)
{
Eina_Bool val = elm_obj_genlist_item_flip_get(obj);
return eina_value_bool_init(val);
}
EOAPI EFL_FUNC_BODY_CONST(elm_obj_genlist_item_flip_get, Eina_Bool, 0);
void _elm_genlist_item_select_mode_set(Eo *obj, Elm_Gen_Item *pd, Elm_Object_Select_Mode mode);
EOAPI EFL_VOID_FUNC_BODYV(elm_obj_genlist_item_select_mode_set, EFL_FUNC_CALL(mode), Elm_Object_Select_Mode mode);
Elm_Object_Select_Mode _elm_genlist_item_select_mode_get(const Eo *obj, Elm_Gen_Item *pd);
EOAPI EFL_FUNC_BODY_CONST(elm_obj_genlist_item_select_mode_get, Elm_Object_Select_Mode, 4 /* Elm.Object.Select_Mode.max */);
Elm_Genlist_Item_Type _elm_genlist_item_type_get(const Eo *obj, Elm_Gen_Item *pd);
EOAPI EFL_FUNC_BODY_CONST(elm_obj_genlist_item_type_get, Elm_Genlist_Item_Type, 4 /* Elm.Genlist.Item.Type.max */);
void _elm_genlist_item_pin_set(Eo *obj, Elm_Gen_Item *pd, Eina_Bool pin);
static Eina_Error
__eolian_elm_genlist_item_pin_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_obj_genlist_item_pin_set(obj, cval);
end:
eina_value_flush(&val);
return r;
}
EOAPI EFL_VOID_FUNC_BODYV(elm_obj_genlist_item_pin_set, EFL_FUNC_CALL(pin), Eina_Bool pin);
Eina_Bool _elm_genlist_item_pin_get(const Eo *obj, Elm_Gen_Item *pd);
static Eina_Value
__eolian_elm_genlist_item_pin_get_reflect(Eo *obj)
{
Eina_Bool val = elm_obj_genlist_item_pin_get(obj);
return eina_value_bool_init(val);
}
EOAPI EFL_FUNC_BODY_CONST(elm_obj_genlist_item_pin_get, Eina_Bool, 0);
unsigned int _elm_genlist_item_subitems_count(Eo *obj, Elm_Gen_Item *pd);
EOAPI EFL_FUNC_BODY(elm_obj_genlist_item_subitems_count, unsigned int, 0);
void _elm_genlist_item_subitems_clear(Eo *obj, Elm_Gen_Item *pd);
EOAPI EFL_VOID_FUNC_BODY(elm_obj_genlist_item_subitems_clear);
void _elm_genlist_item_promote(Eo *obj, Elm_Gen_Item *pd);
EOAPI EFL_VOID_FUNC_BODY(elm_obj_genlist_item_promote);
void _elm_genlist_item_demote(Eo *obj, Elm_Gen_Item *pd);
EOAPI EFL_VOID_FUNC_BODY(elm_obj_genlist_item_demote);
void _elm_genlist_item_show(Eo *obj, Elm_Gen_Item *pd, Elm_Genlist_Item_Scrollto_Type type);
EOAPI EFL_VOID_FUNC_BODYV(elm_obj_genlist_item_show, EFL_FUNC_CALL(type), Elm_Genlist_Item_Scrollto_Type type);
void _elm_genlist_item_bring_in(Eo *obj, Elm_Gen_Item *pd, Elm_Genlist_Item_Scrollto_Type type);
EOAPI EFL_VOID_FUNC_BODYV(elm_obj_genlist_item_bring_in, EFL_FUNC_CALL(type), Elm_Genlist_Item_Scrollto_Type type);
void _elm_genlist_item_all_contents_unset(Eo *obj, Elm_Gen_Item *pd, Eina_List **l);
EOAPI EFL_VOID_FUNC_BODYV(elm_obj_genlist_item_all_contents_unset, EFL_FUNC_CALL(l), Eina_List **l);
void _elm_genlist_item_update(Eo *obj, Elm_Gen_Item *pd);
EOAPI EFL_VOID_FUNC_BODY(elm_obj_genlist_item_update);
void _elm_genlist_item_fields_update(Eo *obj, Elm_Gen_Item *pd, const char *parts, Elm_Genlist_Item_Field_Type itf);
EOAPI EFL_VOID_FUNC_BODYV(elm_obj_genlist_item_fields_update, EFL_FUNC_CALL(parts, itf), const char *parts, Elm_Genlist_Item_Field_Type itf);
void _elm_genlist_item_item_class_update(Eo *obj, Elm_Gen_Item *pd, const Elm_Genlist_Item_Class *itc);
EOAPI EFL_VOID_FUNC_BODYV(elm_obj_genlist_item_class_update, EFL_FUNC_CALL(itc), const Elm_Genlist_Item_Class *itc);
void _elm_genlist_item_decorate_mode_set(Eo *obj, Elm_Gen_Item *pd, const char *decorate_it_type, Eina_Bool decorate_it_set);
EOAPI EFL_VOID_FUNC_BODYV(elm_obj_genlist_item_decorate_mode_set, EFL_FUNC_CALL(decorate_it_type, decorate_it_set), const char *decorate_it_type, Eina_Bool decorate_it_set);
Efl_Object *_elm_genlist_item_efl_object_constructor(Eo *obj, Elm_Gen_Item *pd);
void _elm_genlist_item_elm_widget_item_del_pre(Eo *obj, Elm_Gen_Item *pd);
void _elm_genlist_item_elm_widget_item_disable(Eo *obj, Elm_Gen_Item *pd);
void _elm_genlist_item_elm_widget_item_signal_emit(Eo *obj, Elm_Gen_Item *pd, const char *emission, const char *source);
void _elm_genlist_item_elm_widget_item_style_set(Eo *obj, Elm_Gen_Item *pd, const char *style);
const char *_elm_genlist_item_elm_widget_item_style_get(const Eo *obj, Elm_Gen_Item *pd);
void _elm_genlist_item_elm_widget_item_item_focus_set(Eo *obj, Elm_Gen_Item *pd, Eina_Bool focused);
Eina_Bool _elm_genlist_item_elm_widget_item_item_focus_get(const Eo *obj, Elm_Gen_Item *pd);
const char *_elm_genlist_item_elm_widget_item_part_text_get(const Eo *obj, Elm_Gen_Item *pd, const char *part);
Efl_Canvas_Object *_elm_genlist_item_elm_widget_item_part_content_get(const Eo *obj, Elm_Gen_Item *pd, const char *part);
void _elm_genlist_item_elm_widget_item_tooltip_text_set(Eo *obj, Elm_Gen_Item *pd, const char *text);
void _elm_genlist_item_elm_widget_item_tooltip_style_set(Eo *obj, Elm_Gen_Item *pd, const char *style);
const char *_elm_genlist_item_elm_widget_item_tooltip_style_get(const Eo *obj, Elm_Gen_Item *pd);
Eina_Bool _elm_genlist_item_elm_widget_item_tooltip_window_mode_set(Eo *obj, Elm_Gen_Item *pd, Eina_Bool disable);
Eina_Bool _elm_genlist_item_elm_widget_item_tooltip_window_mode_get(const Eo *obj, Elm_Gen_Item *pd);
void _elm_genlist_item_elm_widget_item_tooltip_content_cb_set(Eo *obj, Elm_Gen_Item *pd, Elm_Tooltip_Item_Content_Cb func, const void *data, Evas_Smart_Cb del_cb);
void _elm_genlist_item_elm_widget_item_tooltip_unset(Eo *obj, Elm_Gen_Item *pd);
void _elm_genlist_item_elm_widget_item_cursor_set(Eo *obj, Elm_Gen_Item *pd, const char *cursor);
void _elm_genlist_item_elm_widget_item_cursor_unset(Eo *obj, Elm_Gen_Item *pd);
const char *_elm_genlist_item_efl_access_object_i18n_name_get(const Eo *obj, Elm_Gen_Item *pd);
Efl_Access_State_Set _elm_genlist_item_efl_access_object_state_set_get(const Eo *obj, Elm_Gen_Item *pd);
void _elm_genlist_item_efl_ui_focus_object_setup_order_non_recursive(Eo *obj, Elm_Gen_Item *pd);
Efl_Ui_Focus_Object *_elm_genlist_item_efl_ui_focus_object_focus_parent_get(const Eo *obj, Elm_Gen_Item *pd);
static Eina_Bool
_elm_genlist_item_class_initializer(Efl_Class *klass)
{
const Efl_Object_Ops *opsp = NULL;
const Efl_Object_Property_Reflection_Ops *ropsp = NULL;
#ifndef ELM_GENLIST_ITEM_EXTRA_OPS
#define ELM_GENLIST_ITEM_EXTRA_OPS
#endif
EFL_OPS_DEFINE(ops,
EFL_OBJECT_OP_FUNC(elm_obj_genlist_item_prev_get, _elm_genlist_item_prev_get),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_item_next_get, _elm_genlist_item_next_get),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_item_parent_item_get, _elm_genlist_item_parent_item_get),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_item_subitems_get, _elm_genlist_item_subitems_get),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_item_selected_set, _elm_genlist_item_selected_set),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_item_selected_get, _elm_genlist_item_selected_get),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_item_expanded_set, _elm_genlist_item_expanded_set),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_item_expanded_get, _elm_genlist_item_expanded_get),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_item_expanded_depth_get, _elm_genlist_item_expanded_depth_get),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_item_class_get, _elm_genlist_item_item_class_get),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_item_index_get, _elm_genlist_item_index_get),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_item_decorate_mode_get, _elm_genlist_item_decorate_mode_get),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_item_flip_set, _elm_genlist_item_flip_set),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_item_flip_get, _elm_genlist_item_flip_get),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_item_select_mode_set, _elm_genlist_item_select_mode_set),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_item_select_mode_get, _elm_genlist_item_select_mode_get),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_item_type_get, _elm_genlist_item_type_get),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_item_pin_set, _elm_genlist_item_pin_set),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_item_pin_get, _elm_genlist_item_pin_get),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_item_subitems_count, _elm_genlist_item_subitems_count),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_item_subitems_clear, _elm_genlist_item_subitems_clear),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_item_promote, _elm_genlist_item_promote),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_item_demote, _elm_genlist_item_demote),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_item_show, _elm_genlist_item_show),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_item_bring_in, _elm_genlist_item_bring_in),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_item_all_contents_unset, _elm_genlist_item_all_contents_unset),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_item_update, _elm_genlist_item_update),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_item_fields_update, _elm_genlist_item_fields_update),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_item_class_update, _elm_genlist_item_item_class_update),
EFL_OBJECT_OP_FUNC(elm_obj_genlist_item_decorate_mode_set, _elm_genlist_item_decorate_mode_set),
EFL_OBJECT_OP_FUNC(efl_constructor, _elm_genlist_item_efl_object_constructor),
EFL_OBJECT_OP_FUNC(elm_wdg_item_del_pre, _elm_genlist_item_elm_widget_item_del_pre),
EFL_OBJECT_OP_FUNC(elm_wdg_item_disable, _elm_genlist_item_elm_widget_item_disable),
EFL_OBJECT_OP_FUNC(elm_wdg_item_signal_emit, _elm_genlist_item_elm_widget_item_signal_emit),
EFL_OBJECT_OP_FUNC(elm_wdg_item_style_set, _elm_genlist_item_elm_widget_item_style_set),
EFL_OBJECT_OP_FUNC(elm_wdg_item_style_get, _elm_genlist_item_elm_widget_item_style_get),
EFL_OBJECT_OP_FUNC(elm_wdg_item_focus_set, _elm_genlist_item_elm_widget_item_item_focus_set),
EFL_OBJECT_OP_FUNC(elm_wdg_item_focus_get, _elm_genlist_item_elm_widget_item_item_focus_get),
EFL_OBJECT_OP_FUNC(elm_wdg_item_part_text_get, _elm_genlist_item_elm_widget_item_part_text_get),
EFL_OBJECT_OP_FUNC(elm_wdg_item_part_content_get, _elm_genlist_item_elm_widget_item_part_content_get),
EFL_OBJECT_OP_FUNC(elm_wdg_item_tooltip_text_set, _elm_genlist_item_elm_widget_item_tooltip_text_set),
EFL_OBJECT_OP_FUNC(elm_wdg_item_tooltip_style_set, _elm_genlist_item_elm_widget_item_tooltip_style_set),
EFL_OBJECT_OP_FUNC(elm_wdg_item_tooltip_style_get, _elm_genlist_item_elm_widget_item_tooltip_style_get),
EFL_OBJECT_OP_FUNC(elm_wdg_item_tooltip_window_mode_set, _elm_genlist_item_elm_widget_item_tooltip_window_mode_set),
EFL_OBJECT_OP_FUNC(elm_wdg_item_tooltip_window_mode_get, _elm_genlist_item_elm_widget_item_tooltip_window_mode_get),
EFL_OBJECT_OP_FUNC(elm_wdg_item_tooltip_content_cb_set, _elm_genlist_item_elm_widget_item_tooltip_content_cb_set),
EFL_OBJECT_OP_FUNC(elm_wdg_item_tooltip_unset, _elm_genlist_item_elm_widget_item_tooltip_unset),
EFL_OBJECT_OP_FUNC(elm_wdg_item_cursor_set, _elm_genlist_item_elm_widget_item_cursor_set),
EFL_OBJECT_OP_FUNC(elm_wdg_item_cursor_unset, _elm_genlist_item_elm_widget_item_cursor_unset),
EFL_OBJECT_OP_FUNC(efl_access_object_i18n_name_get, _elm_genlist_item_efl_access_object_i18n_name_get),
EFL_OBJECT_OP_FUNC(efl_access_object_state_set_get, _elm_genlist_item_efl_access_object_state_set_get),
EFL_OBJECT_OP_FUNC(efl_ui_focus_object_setup_order_non_recursive, _elm_genlist_item_efl_ui_focus_object_setup_order_non_recursive),
EFL_OBJECT_OP_FUNC(efl_ui_focus_object_focus_parent_get, _elm_genlist_item_efl_ui_focus_object_focus_parent_get),
ELM_GENLIST_ITEM_EXTRA_OPS
);
opsp = &ops;
static const Efl_Object_Property_Reflection refl_table[] = {
{"selected", __eolian_elm_genlist_item_selected_set_reflect, __eolian_elm_genlist_item_selected_get_reflect},
{"expanded", __eolian_elm_genlist_item_expanded_set_reflect, __eolian_elm_genlist_item_expanded_get_reflect},
{"expanded_depth", NULL, __eolian_elm_genlist_item_expanded_depth_get_reflect},
{"index", NULL, __eolian_elm_genlist_item_index_get_reflect},
{"decorate_mode", NULL, __eolian_elm_genlist_item_decorate_mode_get_reflect},
{"flip", __eolian_elm_genlist_item_flip_set_reflect, __eolian_elm_genlist_item_flip_get_reflect},
{"pin", __eolian_elm_genlist_item_pin_set_reflect, __eolian_elm_genlist_item_pin_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_genlist_item_class_desc = {
EO_VERSION,
"Elm.Genlist.Item",
EFL_CLASS_TYPE_REGULAR,
sizeof(Elm_Gen_Item),
_elm_genlist_item_class_initializer,
NULL,
NULL
};
EFL_DEFINE_CLASS(elm_genlist_item_class_get, &_elm_genlist_item_class_desc, ELM_WIDGET_ITEM_STATIC_FOCUS_CLASS, EFL_UI_LEGACY_INTERFACE, NULL);
#include "elm_genlist_item_eo.legacy.c"

View File

@ -0,0 +1,496 @@
#ifndef _ELM_GENLIST_ITEM_EO_H_
#define _ELM_GENLIST_ITEM_EO_H_
#ifndef _ELM_GENLIST_ITEM_EO_CLASS_TYPE
#define _ELM_GENLIST_ITEM_EO_CLASS_TYPE
typedef Eo Elm_Genlist_Item;
#endif
#ifndef _ELM_GENLIST_ITEM_EO_TYPES
#define _ELM_GENLIST_ITEM_EO_TYPES
#endif
/** Elementary genlist item class
*
* @ingroup Elm_Genlist_Item
*/
#define ELM_GENLIST_ITEM_CLASS elm_genlist_item_class_get()
EWAPI const Efl_Class *elm_genlist_item_class_get(void);
/**
* @brief Get the previous item in a genlist widget's internal list of items,
* given a handle to one of those items.
*
* This returns the item placed before the @c item, on the container genlist.
*
* If filter is set on genlist, this returns the filtered item placed before
* @c item in the list.
*
* Note that parent / child relationship is not taken into account, the
* previous visual item is always returned, could it be a parent, a child or a
* group item.
*
* NULL is returned if called on the first item.
*
* @param[in] obj The object.
*
* @return The item before @c item, or @c null if there's none (and on errors).
*
* @ingroup Elm_Genlist_Item
*/
EOAPI Elm_Widget_Item *elm_obj_genlist_item_prev_get(const Eo *obj);
/**
* @brief Get the next item in a genlist widget's internal lis of items, given
* a handle to one of those items.
*
* This returns the item placed after the @c item, on the container genlist.
*
* If filter is set on genlist, this returns the filtered item placed after
* @c item in the list.
*
* Note that parent / child relationship is not taken into account, the next
* visual item is always returned, could it be a parent, a child or a group
* item.
*
* NULL is returned if called on the last item.
*
* @param[in] obj The object.
*
* @return The item after @c item, or @c null if there's none (and on errors).
*
* @ingroup Elm_Genlist_Item
*/
EOAPI Elm_Widget_Item *elm_obj_genlist_item_next_get(const Eo *obj);
/**
* @brief Get the parent item of the given item
*
* This returns the item that was specified as parent of the item @c it on @ref
* elm_genlist_item_append and insertion related functions.
*
* @param[in] obj The object.
*
* @return The parent of the item or @c null if it has no parent.
*
* @ingroup Elm_Genlist_Item
*/
EOAPI Elm_Widget_Item *elm_obj_genlist_item_parent_item_get(const Eo *obj);
/**
* @brief Get the list of subitems of a given item
*
* This returns the list of subitems that an item possesses. It cannot be
* changed.
*
* @param[in] obj The object.
*
* @return The list of subitems, @c null on error.
*
* @since 1.9
*
* @ingroup Elm_Genlist_Item
*/
EOAPI const Eina_List *elm_obj_genlist_item_subitems_get(const Eo *obj);
/**
* @brief Set whether a given genlist item is selected or not
*
* This sets the selected state of an item. If multi selection is not enabled
* on the containing genlist and @c selected is @c true, any other previously
* selected items will get unselected in favor of this new one.
*
* @param[in] obj The object.
* @param[in] selected The selected state ($true selected, @c false not
* selected).
*
* @ingroup Elm_Genlist_Item
*/
EOAPI void elm_obj_genlist_item_selected_set(Eo *obj, Eina_Bool selected);
/**
* @brief Get whether a given genlist item is selected or not.
*
* @param[in] obj The object.
*
* @return The selected state ($true selected, @c false not selected).
*
* @ingroup Elm_Genlist_Item
*/
EOAPI Eina_Bool elm_obj_genlist_item_selected_get(const Eo *obj);
/**
* @brief Sets the expanded state of an item.
*
* This function flags the item of type #ELM_GENLIST_ITEM_TREE as expanded or
* not.
*
* The theme will respond to this change visually, and a signal "expanded" or
* "contracted" will be sent from the genlist with a pointer to the item that
* has been expanded/contracted.
*
* Calling this function won't show or hide any child of this item (if it is a
* parent). You must manually delete and create them on the callbacks of the
* "expanded" or "contracted" signals.
*
* @param[in] obj The object.
* @param[in] expanded The expanded state ($true expanded, @c false not
* expanded).
*
* @ingroup Elm_Genlist_Item
*/
EOAPI void elm_obj_genlist_item_expanded_set(Eo *obj, Eina_Bool expanded);
/**
* @brief Get the expanded state of an item
*
* This gets the expanded state of an item.
*
* @param[in] obj The object.
*
* @return The expanded state ($true expanded, @c false not expanded).
*
* @ingroup Elm_Genlist_Item
*/
EOAPI Eina_Bool elm_obj_genlist_item_expanded_get(const Eo *obj);
/**
* @brief Get the depth of expanded item.
*
* @param[in] obj The object.
*
* @return The depth of expanded item.
*
* @ingroup Elm_Genlist_Item
*/
EOAPI int elm_obj_genlist_item_expanded_depth_get(const Eo *obj);
/**
* @brief Get the Genlist Item class for the given Genlist Item.
*
* This returns the Genlist_Item_Class for the given item. It can be used to
* examine the function pointers and item_style.
*
* @param[in] obj The object.
*
* @return Genlist Item class for the given item.
*
* @ingroup Elm_Genlist_Item
*/
EOAPI const Elm_Genlist_Item_Class *elm_obj_genlist_item_class_get(const Eo *obj);
/**
* @brief Get the index of the item. It is only valid once displayed.
*
* The index start from 1.
*
* @param[in] obj The object.
*
* @return The position inside the list of item.
*
* @ingroup Elm_Genlist_Item
*/
EOAPI int elm_obj_genlist_item_index_get(const Eo *obj);
/**
* @brief Get the item's decorate mode.
*
* This function just returns the name of the item's decorate mode.
*
* @param[in] obj The object.
*
* @return Name of the item's decorate mode.
*
* @ingroup Elm_Genlist_Item
*/
EOAPI const char *elm_obj_genlist_item_decorate_mode_get(const Eo *obj);
/**
* @brief Set the flip state of a given genlist item.
*
* This function sets the flip state of a given genlist item. Flip mode
* overrides current item object. It can be used for on-the-fly item replace.
* Flip mode can be used with/without decorate mode.
*
* @param[in] obj The object.
* @param[in] flip The flip mode.
*
* @ingroup Elm_Genlist_Item
*/
EOAPI void elm_obj_genlist_item_flip_set(Eo *obj, Eina_Bool flip);
/**
* @brief Get the flip state of a given genlist item.
*
* This function returns the flip state of a given genlist item. If the
* parameter is invalid, it returns @c false.
*
* @param[in] obj The object.
*
* @return The flip mode.
*
* @ingroup Elm_Genlist_Item
*/
EOAPI Eina_Bool elm_obj_genlist_item_flip_get(const Eo *obj);
/**
* @brief Set the genlist item's select mode.
*
* ELM_OBJECT_SELECT_MODE_DEFAULT means that the item will only call their
* selection func and callback when first becoming selected. Any further clicks
* will do nothing, unless you set always select mode.
*
* ELM_OBJECT_SELECT_MODE_ALWAYS means that even if selected, every click will
* make the selected callbacks be called.
*
* ELM_OBJECT_SELECT_MODE_NONE will turn off the ability to select the item
* entirely and they will neither appear selected nor call selected callback
* functions.
*
* ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY will apply no-finger-size rule with
* ELM_OBJECT_SELECT_MODE_NONE. No-finger-size rule makes an item can be
* smaller than lower limit. Clickable objects should be bigger than human
* touch point device (your finger) for some touch or small screen devices. So
* it is enabled, the item can be shrink than predefined finger-size value. And
* the item will be updated.
*
* @param[in] obj The object.
* @param[in] mode The selected mode.
*
* @ingroup Elm_Genlist_Item
*/
EOAPI void elm_obj_genlist_item_select_mode_set(Eo *obj, Elm_Object_Select_Mode mode);
/**
* @brief Get the genlist item's select mode.
*
* It's ELM_OBJECT_SELECT_MODE_MAX on failure.
*
* @param[in] obj The object.
*
* @return The selected mode.
*
* @ingroup Elm_Genlist_Item
*/
EOAPI Elm_Object_Select_Mode elm_obj_genlist_item_select_mode_get(const Eo *obj);
/**
* @brief Get the Item's type.
*
* This function returns the item's type. Normally the item's type. If it
* failed, return value is ELM_GENLIST_ITEM_MAX.
*
* @param[in] obj The object.
*
* @return Item type.
*
* @ingroup Elm_Genlist_Item
*/
EOAPI Elm_Genlist_Item_Type elm_obj_genlist_item_type_get(const Eo *obj);
/**
* @brief Set whether a given genlist item is pinned or not
*
* This sets a genlist item as pinned so that it will be always available in
* the viewport available for user interaction. Group items cannot be pinned.
* Also when a new item is pinned, the current pinned item will get unpinned.
* Item pinning cannot be done in reorder mode too.
*
* @param[in] obj The object.
* @param[in] pin The item pin state state ($true pin item, @c false unpin
* item).
*
* @ingroup Elm_Genlist_Item
*/
EOAPI void elm_obj_genlist_item_pin_set(Eo *obj, Eina_Bool pin);
/**
* @brief Get whether a given genlist item is pinned or not.
*
* @param[in] obj The object.
*
* @return The item pin state state ($true pin item, @c false unpin item).
*
* @ingroup Elm_Genlist_Item
*/
EOAPI Eina_Bool elm_obj_genlist_item_pin_get(const Eo *obj);
/**
* @brief Get the number of subitems of a given item.
*
* This returns the number of subitems that an item possesses.
*
* @param[in] obj The object.
*
* @return The number of subitems, 0 on error.
*
* @since 1.9
*
* @ingroup Elm_Genlist_Item
*/
EOAPI unsigned int elm_obj_genlist_item_subitems_count(Eo *obj);
/**
* @brief Remove all sub-items (children) of the given item.
*
* This removes all items that are children (and their descendants) of the
* given item @c it.
* @param[in] obj The object.
*
* @ingroup Elm_Genlist_Item
*/
EOAPI void elm_obj_genlist_item_subitems_clear(Eo *obj);
/** Promote an item to the top of the list.
*
* @ingroup Elm_Genlist_Item
*/
EOAPI void elm_obj_genlist_item_promote(Eo *obj);
/** Demote an item to the end of the list.
*
* @ingroup Elm_Genlist_Item
*/
EOAPI void elm_obj_genlist_item_demote(Eo *obj);
/**
* @brief Show the portion of a genlist's internal list containing a given
* item, immediately.
*
* This causes genlist to jump to the given item @c it and show it (by jumping
* to that position), if it is not fully visible.
*
* @param[in] obj The object.
* @param[in] type The position to bring in, the given item to. @ref
* Elm_Genlist_Item_Scrollto_Type.
*
* @ingroup Elm_Genlist_Item
*/
EOAPI void elm_obj_genlist_item_show(Eo *obj, Elm_Genlist_Item_Scrollto_Type type);
/**
* @brief Animatedly bring in, to the visible area of a genlist, a given item
* on it.
*
* This causes genlist to jump to the given item @c it and show it (by
* animatedly scrolling), if it is not fully visible. This may use animation
* and take a some time to do so.
*
* @param[in] obj The object.
* @param[in] type The position to bring in, the given item to. @ref
* Elm_Genlist_Item_Scrollto_Type.
*
* @ingroup Elm_Genlist_Item
*/
EOAPI void elm_obj_genlist_item_bring_in(Eo *obj, Elm_Genlist_Item_Scrollto_Type type);
/**
* @brief Unset all contents fetched by the item class.
*
* This instructs genlist to release references to contents in the item,
* meaning that they will no longer be managed by genlist and are floating
* "orphans" that can be re-used elsewhere if the user wants to.
*
* @param[in] obj The object.
* @param[out] l The contents list to return.
*
* @ingroup Elm_Genlist_Item
*/
EOAPI void elm_obj_genlist_item_all_contents_unset(Eo *obj, Eina_List **l);
/**
* @brief Update all the contents of an item.
*
* This updates an item by calling all the item class functions again to get
* the contents, texts and states. Use this when the original item data has
* changed and the changes are desired to be reflected.
*
* Use elm_genlist_realized_items_update() to update all already realized
* items.
*
* @note This also updates internal genlist item object (edje_object as of
* now). So when this is called between mouse down and mouse up, mouse up event
* will be ignored because edje_object is deleted and created again by this
* API. If you want to avoid this, please use @ref
* elm_genlist_item_fields_update.
* @param[in] obj The object.
*
* @ingroup Elm_Genlist_Item
*/
EOAPI void elm_obj_genlist_item_update(Eo *obj);
/**
* @brief Update the part of an item.
*
* This updates an item's part by calling item's fetching functions again to
* get the contents, texts and states. Use this when the original item data has
* changed and the changes are desired to be reflected. Second part argument is
* used for globbing to match '*', '?', and '.' It can be used at updating
* multi fields.
*
* Use @ref elm_genlist_realized_items_update to update an item's all property.
*
* @param[in] obj The object.
* @param[in] parts The name of item's part.
* @param[in] itf The type of item's part type.
*
* @ingroup Elm_Genlist_Item
*/
EOAPI void elm_obj_genlist_item_fields_update(Eo *obj, const char *parts, Elm_Genlist_Item_Field_Type itf);
/**
* @brief Update the item class of an item.
*
* This sets another class of the item, changing the way that it is displayed.
* After changing the item class @ref elm_obj_genlist_item_update is called on
* the item @c it.
*
* @param[in] obj The object.
* @param[in] itc The item class for the item.
*
* @ingroup Elm_Genlist_Item
*/
EOAPI void elm_obj_genlist_item_class_update(Eo *obj, const Elm_Genlist_Item_Class *itc);
/**
* @brief Activate a genlist mode on an item.
*
* A genlist mode is a different way of selecting an item. Once a mode is
* activated on an item, any other selected item is immediately unselected.
* This feature provides an easy way of implementing a new kind of animation
* for selecting an item, without having to entirely rewrite the item style
* theme. However, the elm_genlist_selected_* API can't be used to get what
* item is activate for a mode.
*
* The current item style will still be used, but applying a genlist mode to an
* item will select it using a different kind of animation.
*
* The current active item for a mode can be found by @ref
* elm_genlist_decorated_item_get.
*
* Only one mode can be active at any time, and for only one item. Genlist
* handles deactivating other items when one item is activated. A mode is
* defined in the genlist theme (edc), and more modes can easily be added. A
* mode style and the genlist item style are different things. They can be
* combined to provide a default style to the item, with some kind of animation
* for that item when the mode is activated.
*
* When a mode is activated on an item, a new view for that item is created.
* The theme of this mode defines the animation that will be used to transit
* the item from the old view to the new view. This second (new) view will be
* active for that item while the mode is active on the item, and will be
* destroyed after the mode is totally deactivated from that item.
*
* @param[in] obj The object.
* @param[in] decorate_it_type Mode name.
* @param[in] decorate_it_set Boolean to define set or unset mode.
*
* @ingroup Elm_Genlist_Item
*/
EOAPI void elm_obj_genlist_item_decorate_mode_set(Eo *obj, const char *decorate_it_type, Eina_Bool decorate_it_set);
#endif

View File

@ -0,0 +1,180 @@
EAPI Elm_Widget_Item *
elm_genlist_item_prev_get(const Elm_Genlist_Item *obj)
{
return elm_obj_genlist_item_prev_get(obj);
}
EAPI Elm_Widget_Item *
elm_genlist_item_next_get(const Elm_Genlist_Item *obj)
{
return elm_obj_genlist_item_next_get(obj);
}
EAPI Elm_Widget_Item *
elm_genlist_item_parent_get(const Elm_Genlist_Item *obj)
{
return elm_obj_genlist_item_parent_item_get(obj);
}
EAPI const Eina_List *
elm_genlist_item_subitems_get(const Elm_Genlist_Item *obj)
{
return elm_obj_genlist_item_subitems_get(obj);
}
EAPI void
elm_genlist_item_selected_set(Elm_Genlist_Item *obj, Eina_Bool selected)
{
elm_obj_genlist_item_selected_set(obj, selected);
}
EAPI Eina_Bool
elm_genlist_item_selected_get(const Elm_Genlist_Item *obj)
{
return elm_obj_genlist_item_selected_get(obj);
}
EAPI void
elm_genlist_item_expanded_set(Elm_Genlist_Item *obj, Eina_Bool expanded)
{
elm_obj_genlist_item_expanded_set(obj, expanded);
}
EAPI Eina_Bool
elm_genlist_item_expanded_get(const Elm_Genlist_Item *obj)
{
return elm_obj_genlist_item_expanded_get(obj);
}
EAPI int
elm_genlist_item_expanded_depth_get(const Elm_Genlist_Item *obj)
{
return elm_obj_genlist_item_expanded_depth_get(obj);
}
EAPI const Elm_Genlist_Item_Class *
elm_genlist_item_item_class_get(const Elm_Genlist_Item *obj)
{
return elm_obj_genlist_item_class_get(obj);
}
EAPI int
elm_genlist_item_index_get(const Elm_Genlist_Item *obj)
{
return elm_obj_genlist_item_index_get(obj);
}
EAPI const char *
elm_genlist_item_decorate_mode_get(const Elm_Genlist_Item *obj)
{
return elm_obj_genlist_item_decorate_mode_get(obj);
}
EAPI void
elm_genlist_item_flip_set(Elm_Genlist_Item *obj, Eina_Bool flip)
{
elm_obj_genlist_item_flip_set(obj, flip);
}
EAPI Eina_Bool
elm_genlist_item_flip_get(const Elm_Genlist_Item *obj)
{
return elm_obj_genlist_item_flip_get(obj);
}
EAPI void
elm_genlist_item_select_mode_set(Elm_Genlist_Item *obj, Elm_Object_Select_Mode mode)
{
elm_obj_genlist_item_select_mode_set(obj, mode);
}
EAPI Elm_Object_Select_Mode
elm_genlist_item_select_mode_get(const Elm_Genlist_Item *obj)
{
return elm_obj_genlist_item_select_mode_get(obj);
}
EAPI Elm_Genlist_Item_Type
elm_genlist_item_type_get(const Elm_Genlist_Item *obj)
{
return elm_obj_genlist_item_type_get(obj);
}
EAPI void
elm_genlist_item_pin_set(Elm_Genlist_Item *obj, Eina_Bool pin)
{
elm_obj_genlist_item_pin_set(obj, pin);
}
EAPI Eina_Bool
elm_genlist_item_pin_get(const Elm_Genlist_Item *obj)
{
return elm_obj_genlist_item_pin_get(obj);
}
EAPI unsigned int
elm_genlist_item_subitems_count(Elm_Genlist_Item *obj)
{
return elm_obj_genlist_item_subitems_count(obj);
}
EAPI void
elm_genlist_item_subitems_clear(Elm_Genlist_Item *obj)
{
elm_obj_genlist_item_subitems_clear(obj);
}
EAPI void
elm_genlist_item_promote(Elm_Genlist_Item *obj)
{
elm_obj_genlist_item_promote(obj);
}
EAPI void
elm_genlist_item_demote(Elm_Genlist_Item *obj)
{
elm_obj_genlist_item_demote(obj);
}
EAPI void
elm_genlist_item_show(Elm_Genlist_Item *obj, Elm_Genlist_Item_Scrollto_Type type)
{
elm_obj_genlist_item_show(obj, type);
}
EAPI void
elm_genlist_item_bring_in(Elm_Genlist_Item *obj, Elm_Genlist_Item_Scrollto_Type type)
{
elm_obj_genlist_item_bring_in(obj, type);
}
EAPI void
elm_genlist_item_all_contents_unset(Elm_Genlist_Item *obj, Eina_List **l)
{
elm_obj_genlist_item_all_contents_unset(obj, l);
}
EAPI void
elm_genlist_item_update(Elm_Genlist_Item *obj)
{
elm_obj_genlist_item_update(obj);
}
EAPI void
elm_genlist_item_fields_update(Elm_Genlist_Item *obj, const char *parts, Elm_Genlist_Item_Field_Type itf)
{
elm_obj_genlist_item_fields_update(obj, parts, itf);
}
EAPI void
elm_genlist_item_item_class_update(Elm_Genlist_Item *obj, const Elm_Genlist_Item_Class *itc)
{
elm_obj_genlist_item_class_update(obj, itc);
}
EAPI void
elm_genlist_item_decorate_mode_set(Elm_Genlist_Item *obj, const char *decorate_it_type, Eina_Bool decorate_it_set)
{
elm_obj_genlist_item_decorate_mode_set(obj, decorate_it_type, decorate_it_set);
}

View File

@ -0,0 +1,489 @@
#ifndef _ELM_GENLIST_ITEM_EO_LEGACY_H_
#define _ELM_GENLIST_ITEM_EO_LEGACY_H_
#ifndef _ELM_GENLIST_ITEM_EO_CLASS_TYPE
#define _ELM_GENLIST_ITEM_EO_CLASS_TYPE
typedef Eo Elm_Genlist_Item;
#endif
#ifndef _ELM_GENLIST_ITEM_EO_TYPES
#define _ELM_GENLIST_ITEM_EO_TYPES
#endif
/**
* @brief Get the previous item in a genlist widget's internal list of items,
* given a handle to one of those items.
*
* This returns the item placed before the @c item, on the container genlist.
*
* If filter is set on genlist, this returns the filtered item placed before
* @c item in the list.
*
* Note that parent / child relationship is not taken into account, the
* previous visual item is always returned, could it be a parent, a child or a
* group item.
*
* NULL is returned if called on the first item.
*
* @param[in] obj The object.
*
* @return The item before @c item, or @c null if there's none (and on errors).
*
* @ingroup Elm_Genlist_Item_Group
*/
EAPI Elm_Widget_Item *elm_genlist_item_prev_get(const Elm_Genlist_Item *obj);
/**
* @brief Get the next item in a genlist widget's internal lis of items, given
* a handle to one of those items.
*
* This returns the item placed after the @c item, on the container genlist.
*
* If filter is set on genlist, this returns the filtered item placed after
* @c item in the list.
*
* Note that parent / child relationship is not taken into account, the next
* visual item is always returned, could it be a parent, a child or a group
* item.
*
* NULL is returned if called on the last item.
*
* @param[in] obj The object.
*
* @return The item after @c item, or @c null if there's none (and on errors).
*
* @ingroup Elm_Genlist_Item_Group
*/
EAPI Elm_Widget_Item *elm_genlist_item_next_get(const Elm_Genlist_Item *obj);
/**
* @brief Get the parent item of the given item
*
* This returns the item that was specified as parent of the item @c it on @ref
* elm_genlist_item_append and insertion related functions.
*
* @param[in] obj The object.
*
* @return The parent of the item or @c null if it has no parent.
*
* @ingroup Elm_Genlist_Item_Group
*/
EAPI Elm_Widget_Item *elm_genlist_item_parent_get(const Elm_Genlist_Item *obj);
/**
* @brief Get the list of subitems of a given item
*
* This returns the list of subitems that an item possesses. It cannot be
* changed.
*
* @param[in] obj The object.
*
* @return The list of subitems, @c null on error.
*
* @since 1.9
*
* @ingroup Elm_Genlist_Item_Group
*/
EAPI const Eina_List *elm_genlist_item_subitems_get(const Elm_Genlist_Item *obj);
/**
* @brief Set whether a given genlist item is selected or not
*
* This sets the selected state of an item. If multi selection is not enabled
* on the containing genlist and @c selected is @c true, any other previously
* selected items will get unselected in favor of this new one.
*
* @param[in] obj The object.
* @param[in] selected The selected state ($true selected, @c false not
* selected).
*
* @ingroup Elm_Genlist_Item_Group
*/
EAPI void elm_genlist_item_selected_set(Elm_Genlist_Item *obj, Eina_Bool selected);
/**
* @brief Get whether a given genlist item is selected or not.
*
* @param[in] obj The object.
*
* @return The selected state ($true selected, @c false not selected).
*
* @ingroup Elm_Genlist_Item_Group
*/
EAPI Eina_Bool elm_genlist_item_selected_get(const Elm_Genlist_Item *obj);
/**
* @brief Sets the expanded state of an item.
*
* This function flags the item of type #ELM_GENLIST_ITEM_TREE as expanded or
* not.
*
* The theme will respond to this change visually, and a signal "expanded" or
* "contracted" will be sent from the genlist with a pointer to the item that
* has been expanded/contracted.
*
* Calling this function won't show or hide any child of this item (if it is a
* parent). You must manually delete and create them on the callbacks of the
* "expanded" or "contracted" signals.
*
* @param[in] obj The object.
* @param[in] expanded The expanded state ($true expanded, @c false not
* expanded).
*
* @ingroup Elm_Genlist_Item_Group
*/
EAPI void elm_genlist_item_expanded_set(Elm_Genlist_Item *obj, Eina_Bool expanded);
/**
* @brief Get the expanded state of an item
*
* This gets the expanded state of an item.
*
* @param[in] obj The object.
*
* @return The expanded state ($true expanded, @c false not expanded).
*
* @ingroup Elm_Genlist_Item_Group
*/
EAPI Eina_Bool elm_genlist_item_expanded_get(const Elm_Genlist_Item *obj);
/**
* @brief Get the depth of expanded item.
*
* @param[in] obj The object.
*
* @return The depth of expanded item.
*
* @ingroup Elm_Genlist_Item_Group
*/
EAPI int elm_genlist_item_expanded_depth_get(const Elm_Genlist_Item *obj);
/**
* @brief Get the Genlist Item class for the given Genlist Item.
*
* This returns the Genlist_Item_Class for the given item. It can be used to
* examine the function pointers and item_style.
*
* @param[in] obj The object.
*
* @return Genlist Item class for the given item.
*
* @ingroup Elm_Genlist_Item_Group
*/
EAPI const Elm_Genlist_Item_Class *elm_genlist_item_item_class_get(const Elm_Genlist_Item *obj);
/**
* @brief Get the index of the item. It is only valid once displayed.
*
* The index start from 1.
*
* @param[in] obj The object.
*
* @return The position inside the list of item.
*
* @ingroup Elm_Genlist_Item_Group
*/
EAPI int elm_genlist_item_index_get(const Elm_Genlist_Item *obj);
/**
* @brief Get the item's decorate mode.
*
* This function just returns the name of the item's decorate mode.
*
* @param[in] obj The object.
*
* @return Name of the item's decorate mode.
*
* @ingroup Elm_Genlist_Item_Group
*/
EAPI const char *elm_genlist_item_decorate_mode_get(const Elm_Genlist_Item *obj);
/**
* @brief Set the flip state of a given genlist item.
*
* This function sets the flip state of a given genlist item. Flip mode
* overrides current item object. It can be used for on-the-fly item replace.
* Flip mode can be used with/without decorate mode.
*
* @param[in] obj The object.
* @param[in] flip The flip mode.
*
* @ingroup Elm_Genlist_Item_Group
*/
EAPI void elm_genlist_item_flip_set(Elm_Genlist_Item *obj, Eina_Bool flip);
/**
* @brief Get the flip state of a given genlist item.
*
* This function returns the flip state of a given genlist item. If the
* parameter is invalid, it returns @c false.
*
* @param[in] obj The object.
*
* @return The flip mode.
*
* @ingroup Elm_Genlist_Item_Group
*/
EAPI Eina_Bool elm_genlist_item_flip_get(const Elm_Genlist_Item *obj);
/**
* @brief Set the genlist item's select mode.
*
* ELM_OBJECT_SELECT_MODE_DEFAULT means that the item will only call their
* selection func and callback when first becoming selected. Any further clicks
* will do nothing, unless you set always select mode.
*
* ELM_OBJECT_SELECT_MODE_ALWAYS means that even if selected, every click will
* make the selected callbacks be called.
*
* ELM_OBJECT_SELECT_MODE_NONE will turn off the ability to select the item
* entirely and they will neither appear selected nor call selected callback
* functions.
*
* ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY will apply no-finger-size rule with
* ELM_OBJECT_SELECT_MODE_NONE. No-finger-size rule makes an item can be
* smaller than lower limit. Clickable objects should be bigger than human
* touch point device (your finger) for some touch or small screen devices. So
* it is enabled, the item can be shrink than predefined finger-size value. And
* the item will be updated.
*
* @param[in] obj The object.
* @param[in] mode The selected mode.
*
* @ingroup Elm_Genlist_Item_Group
*/
EAPI void elm_genlist_item_select_mode_set(Elm_Genlist_Item *obj, Elm_Object_Select_Mode mode);
/**
* @brief Get the genlist item's select mode.
*
* It's ELM_OBJECT_SELECT_MODE_MAX on failure.
*
* @param[in] obj The object.
*
* @return The selected mode.
*
* @ingroup Elm_Genlist_Item_Group
*/
EAPI Elm_Object_Select_Mode elm_genlist_item_select_mode_get(const Elm_Genlist_Item *obj);
/**
* @brief Get the Item's type.
*
* This function returns the item's type. Normally the item's type. If it
* failed, return value is ELM_GENLIST_ITEM_MAX.
*
* @param[in] obj The object.
*
* @return Item type.
*
* @ingroup Elm_Genlist_Item_Group
*/
EAPI Elm_Genlist_Item_Type elm_genlist_item_type_get(const Elm_Genlist_Item *obj);
/**
* @brief Set whether a given genlist item is pinned or not
*
* This sets a genlist item as pinned so that it will be always available in
* the viewport available for user interaction. Group items cannot be pinned.
* Also when a new item is pinned, the current pinned item will get unpinned.
* Item pinning cannot be done in reorder mode too.
*
* @param[in] obj The object.
* @param[in] pin The item pin state state ($true pin item, @c false unpin
* item).
*
* @ingroup Elm_Genlist_Item_Group
*/
EAPI void elm_genlist_item_pin_set(Elm_Genlist_Item *obj, Eina_Bool pin);
/**
* @brief Get whether a given genlist item is pinned or not.
*
* @param[in] obj The object.
*
* @return The item pin state state ($true pin item, @c false unpin item).
*
* @ingroup Elm_Genlist_Item_Group
*/
EAPI Eina_Bool elm_genlist_item_pin_get(const Elm_Genlist_Item *obj);
/**
* @brief Get the number of subitems of a given item.
*
* This returns the number of subitems that an item possesses.
*
* @param[in] obj The object.
*
* @return The number of subitems, 0 on error.
*
* @since 1.9
*
* @ingroup Elm_Genlist_Item_Group
*/
EAPI unsigned int elm_genlist_item_subitems_count(Elm_Genlist_Item *obj);
/**
* @brief Remove all sub-items (children) of the given item.
*
* This removes all items that are children (and their descendants) of the
* given item @c it.
* @param[in] obj The object.
*
* @ingroup Elm_Genlist_Item_Group
*/
EAPI void elm_genlist_item_subitems_clear(Elm_Genlist_Item *obj);
/** Promote an item to the top of the list.
*
* @ingroup Elm_Genlist_Item_Group
*/
EAPI void elm_genlist_item_promote(Elm_Genlist_Item *obj);
/** Demote an item to the end of the list.
*
* @ingroup Elm_Genlist_Item_Group
*/
EAPI void elm_genlist_item_demote(Elm_Genlist_Item *obj);
/**
* @brief Show the portion of a genlist's internal list containing a given
* item, immediately.
*
* This causes genlist to jump to the given item @c it and show it (by jumping
* to that position), if it is not fully visible.
*
* @param[in] obj The object.
* @param[in] type The position to bring in, the given item to. @ref
* Elm_Genlist_Item_Scrollto_Type.
*
* @ingroup Elm_Genlist_Item_Group
*/
EAPI void elm_genlist_item_show(Elm_Genlist_Item *obj, Elm_Genlist_Item_Scrollto_Type type);
/**
* @brief Animatedly bring in, to the visible area of a genlist, a given item
* on it.
*
* This causes genlist to jump to the given item @c it and show it (by
* animatedly scrolling), if it is not fully visible. This may use animation
* and take a some time to do so.
*
* @param[in] obj The object.
* @param[in] type The position to bring in, the given item to. @ref
* Elm_Genlist_Item_Scrollto_Type.
*
* @ingroup Elm_Genlist_Item_Group
*/
EAPI void elm_genlist_item_bring_in(Elm_Genlist_Item *obj, Elm_Genlist_Item_Scrollto_Type type);
/**
* @brief Unset all contents fetched by the item class.
*
* This instructs genlist to release references to contents in the item,
* meaning that they will no longer be managed by genlist and are floating
* "orphans" that can be re-used elsewhere if the user wants to.
*
* @param[in] obj The object.
* @param[out] l The contents list to return.
*
* @ingroup Elm_Genlist_Item_Group
*/
EAPI void elm_genlist_item_all_contents_unset(Elm_Genlist_Item *obj, Eina_List **l);
/**
* @brief Update all the contents of an item.
*
* This updates an item by calling all the item class functions again to get
* the contents, texts and states. Use this when the original item data has
* changed and the changes are desired to be reflected.
*
* Use elm_genlist_realized_items_update() to update all already realized
* items.
*
* @note This also updates internal genlist item object (edje_object as of
* now). So when this is called between mouse down and mouse up, mouse up event
* will be ignored because edje_object is deleted and created again by this
* API. If you want to avoid this, please use @ref
* elm_genlist_item_fields_update.
* @param[in] obj The object.
*
* @ingroup Elm_Genlist_Item_Group
*/
EAPI void elm_genlist_item_update(Elm_Genlist_Item *obj);
/**
* @brief Update the part of an item.
*
* This updates an item's part by calling item's fetching functions again to
* get the contents, texts and states. Use this when the original item data has
* changed and the changes are desired to be reflected. Second part argument is
* used for globbing to match '*', '?', and '.' It can be used at updating
* multi fields.
*
* Use @ref elm_genlist_realized_items_update to update an item's all property.
*
* @param[in] obj The object.
* @param[in] parts The name of item's part.
* @param[in] itf The type of item's part type.
*
* @ingroup Elm_Genlist_Item_Group
*/
EAPI void elm_genlist_item_fields_update(Elm_Genlist_Item *obj, const char *parts, Elm_Genlist_Item_Field_Type itf);
/**
* @brief Update the item class of an item.
*
* This sets another class of the item, changing the way that it is displayed.
* After changing the item class @ref elm_genlist_item_update is called on the
* item @c it.
*
* @param[in] obj The object.
* @param[in] itc The item class for the item.
*
* @ingroup Elm_Genlist_Item_Group
*/
EAPI void elm_genlist_item_item_class_update(Elm_Genlist_Item *obj, const Elm_Genlist_Item_Class *itc);
/**
* @brief Activate a genlist mode on an item.
*
* A genlist mode is a different way of selecting an item. Once a mode is
* activated on an item, any other selected item is immediately unselected.
* This feature provides an easy way of implementing a new kind of animation
* for selecting an item, without having to entirely rewrite the item style
* theme. However, the elm_genlist_selected_* API can't be used to get what
* item is activate for a mode.
*
* The current item style will still be used, but applying a genlist mode to an
* item will select it using a different kind of animation.
*
* The current active item for a mode can be found by @ref
* elm_genlist_decorated_item_get.
*
* Only one mode can be active at any time, and for only one item. Genlist
* handles deactivating other items when one item is activated. A mode is
* defined in the genlist theme (edc), and more modes can easily be added. A
* mode style and the genlist item style are different things. They can be
* combined to provide a default style to the item, with some kind of animation
* for that item when the mode is activated.
*
* When a mode is activated on an item, a new view for that item is created.
* The theme of this mode defines the animation that will be used to transit
* the item from the old view to the new view. This second (new) view will be
* active for that item while the mode is active on the item, and will be
* destroyed after the mode is totally deactivated from that item.
*
* @param[in] obj The object.
* @param[in] decorate_it_type Mode name.
* @param[in] decorate_it_set Boolean to define set or unset mode.
*
* @ingroup Elm_Genlist_Item_Group
*/
EAPI void elm_genlist_item_decorate_mode_set(Elm_Genlist_Item *obj, const char *decorate_it_type, Eina_Bool decorate_it_set);
#endif

View File

@ -31,5 +31,5 @@ EAPI Evas_Object *elm_genlist_add(Evas_Object *parent);
EAPI Elm_Object_Item *
elm_genlist_nth_item_get(const Evas_Object *obj, unsigned int nth);
#include "elm_genlist_item.eo.legacy.h"
#include "elm_genlist.eo.legacy.h"
#include "elm_genlist_item_eo.legacy.h"
#include "elm_genlist_eo.legacy.h"

View File

@ -1,24 +0,0 @@
class Elm.Genlist.Pan extends Elm.Pan
{
[[Elementary genlist pan class]]
legacy_prefix: elm_genlist_pan;
eo_prefix: elm_obj_genlist_pan;
event_prefix: elm_genlist_pan;
implements {
class.constructor;
Efl.Object.destructor;
Efl.Gfx.Entity.position { set; }
Efl.Gfx.Entity.size { set; }
Efl.Canvas.Group.group_calculate;
Elm.Pan.content_size { get; }
Elm.Pan.pos { get; set; }
Elm.Pan.pos_min { get; }
Elm.Pan.pos_max { get; }
}
events {
/* FIXME: Nobody emits these
item,focused; [[Called when item got focus]]
item,unfocused; [[Called when item lost focus]]
*/
}
}

View File

@ -0,0 +1,67 @@
void _elm_genlist_pan_efl_object_destructor(Eo *obj, Elm_Genlist_Pan_Data *pd);
void _elm_genlist_pan_efl_gfx_entity_position_set(Eo *obj, Elm_Genlist_Pan_Data *pd, Eina_Position2D pos);
void _elm_genlist_pan_efl_gfx_entity_size_set(Eo *obj, Elm_Genlist_Pan_Data *pd, Eina_Size2D size);
void _elm_genlist_pan_efl_canvas_group_group_calculate(Eo *obj, Elm_Genlist_Pan_Data *pd);
void _elm_genlist_pan_elm_pan_content_size_get(const Eo *obj, Elm_Genlist_Pan_Data *pd, int *w, int *h);
void _elm_genlist_pan_elm_pan_pos_set(Eo *obj, Elm_Genlist_Pan_Data *pd, int x, int y);
void _elm_genlist_pan_elm_pan_pos_get(const Eo *obj, Elm_Genlist_Pan_Data *pd, int *x, int *y);
void _elm_genlist_pan_elm_pan_pos_min_get(const Eo *obj, Elm_Genlist_Pan_Data *pd, int *x, int *y);
void _elm_genlist_pan_elm_pan_pos_max_get(const Eo *obj, Elm_Genlist_Pan_Data *pd, int *x, int *y);
static Eina_Bool
_elm_genlist_pan_class_initializer(Efl_Class *klass)
{
const Efl_Object_Ops *opsp = NULL;
const Efl_Object_Property_Reflection_Ops *ropsp = NULL;
#ifndef ELM_GENLIST_PAN_EXTRA_OPS
#define ELM_GENLIST_PAN_EXTRA_OPS
#endif
EFL_OPS_DEFINE(ops,
EFL_OBJECT_OP_FUNC(efl_destructor, _elm_genlist_pan_efl_object_destructor),
EFL_OBJECT_OP_FUNC(efl_gfx_entity_position_set, _elm_genlist_pan_efl_gfx_entity_position_set),
EFL_OBJECT_OP_FUNC(efl_gfx_entity_size_set, _elm_genlist_pan_efl_gfx_entity_size_set),
EFL_OBJECT_OP_FUNC(efl_canvas_group_calculate, _elm_genlist_pan_efl_canvas_group_group_calculate),
EFL_OBJECT_OP_FUNC(elm_obj_pan_content_size_get, _elm_genlist_pan_elm_pan_content_size_get),
EFL_OBJECT_OP_FUNC(elm_obj_pan_pos_set, _elm_genlist_pan_elm_pan_pos_set),
EFL_OBJECT_OP_FUNC(elm_obj_pan_pos_get, _elm_genlist_pan_elm_pan_pos_get),
EFL_OBJECT_OP_FUNC(elm_obj_pan_pos_min_get, _elm_genlist_pan_elm_pan_pos_min_get),
EFL_OBJECT_OP_FUNC(elm_obj_pan_pos_max_get, _elm_genlist_pan_elm_pan_pos_max_get),
ELM_GENLIST_PAN_EXTRA_OPS
);
opsp = &ops;
return efl_class_functions_set(klass, opsp, ropsp);
}
static const Efl_Class_Description _elm_genlist_pan_class_desc = {
EO_VERSION,
"Elm.Genlist.Pan",
EFL_CLASS_TYPE_REGULAR,
sizeof(Elm_Genlist_Pan_Data),
_elm_genlist_pan_class_initializer,
_elm_genlist_pan_class_constructor,
NULL
};
EFL_DEFINE_CLASS(elm_genlist_pan_class_get, &_elm_genlist_pan_class_desc, ELM_PAN_CLASS, NULL);

View File

@ -0,0 +1,24 @@
#ifndef _ELM_GENLIST_PAN_EO_H_
#define _ELM_GENLIST_PAN_EO_H_
#ifndef _ELM_GENLIST_PAN_EO_CLASS_TYPE
#define _ELM_GENLIST_PAN_EO_CLASS_TYPE
typedef Eo Elm_Genlist_Pan;
#endif
#ifndef _ELM_GENLIST_PAN_EO_TYPES
#define _ELM_GENLIST_PAN_EO_TYPES
#endif
/** Elementary genlist pan class
*
* @ingroup Elm_Genlist_Pan
*/
#define ELM_GENLIST_PAN_CLASS elm_genlist_pan_class_get()
EWAPI const Efl_Class *elm_genlist_pan_class_get(void);
#endif

View File

@ -0,0 +1,17 @@
#ifndef _ELM_GENLIST_PAN_EO_LEGACY_H_
#define _ELM_GENLIST_PAN_EO_LEGACY_H_
#ifndef _ELM_GENLIST_PAN_EO_CLASS_TYPE
#define _ELM_GENLIST_PAN_EO_CLASS_TYPE
typedef Eo Elm_Genlist_Pan;
#endif
#ifndef _ELM_GENLIST_PAN_EO_TYPES
#define _ELM_GENLIST_PAN_EO_TYPES
#endif
#endif

View File

@ -25,7 +25,7 @@
#include "elm_interface_scrollable.h"
//we need those for legacy compatible code
#include "elm_genlist.eo.h"
#include "elm_genlist_eo.h"
#include "elm_gengrid_eo.h"
#include "elm_widget_gengrid.h"

View File

@ -6,7 +6,7 @@
#include <Elementary_Cursor.h>
#include "elm_priv.h"
#include "elm_genlist.eo.h"
#include "elm_genlist_eo.h"
typedef struct _Elm_Store_Filesystem Elm_Store_Filesystem;
typedef struct _Elm_Store_Item_Filesystem Elm_Store_Item_Filesystem;

View File

@ -6,7 +6,7 @@
#include <Elementary.h>
#include "elm_priv.h"
#include "elm_genlist.eo.h"
#include "elm_genlist_eo.h"
#include <assert.h>

View File

@ -7,7 +7,7 @@
#define MY_CLASS ELM_WIDGET_ITEM_STATIC_FOCUS_CLASS
#include <Elementary.h>
#include "elm_genlist.eo.h"
#include "elm_genlist_eo.h"
#include "elm_gengrid_eo.h"
#include "elm_priv.h"
#include "efl_ui_focus_composition_adapter.eo.h"

View File

@ -1,8 +1,6 @@
pub_legacy_eo_files = [
'efl_ui_clock_legacy.eo',
'elm_interface_fileselector.eo',
'elm_genlist.eo',
'elm_genlist_pan.eo',
'elm_gesture_layer.eo',
'elm_glview.eo',
'elm_hover.eo',
@ -26,7 +24,6 @@ pub_legacy_eo_files = [
'elm_menu_item.eo',
'elm_index_item.eo',
'elm_widget_item_static_focus.eo',
'elm_genlist_item.eo',
'elm_list_item.eo',
'elm_popup_item.eo',
'elm_ctxpopup_part.eo',
@ -749,6 +746,12 @@ elementary_pub_headers = [
'elm_gengrid_item_eo.legacy.h',
'elm_gengrid_pan_eo.h',
'elm_gengrid_pan_eo.legacy.h',
'elm_genlist_eo.h',
'elm_genlist_eo.legacy.h',
'elm_genlist_item_eo.h',
'elm_genlist_item_eo.legacy.h',
'elm_genlist_pan_eo.h',
'elm_genlist_pan_eo.legacy.h',
'elm_hoversel_eo.h',
'elm_hoversel_eo.legacy.h',
'elm_hoversel_item_eo.h',