2015-05-20 04:15:49 -07:00
|
|
|
import elm_general;
|
2017-05-16 19:29:11 -07:00
|
|
|
import elm_gengrid_item;
|
2015-05-20 04:15:49 -07:00
|
|
|
|
2017-08-31 08:29:31 -07:00
|
|
|
type @extern Ecore_Pos_Map: __undefined_type; [[External ecore position map]]
|
2017-05-17 23:46:54 -07:00
|
|
|
|
2015-08-13 23:21:02 -07:00
|
|
|
enum Elm.Gengrid.Reorder_Type
|
|
|
|
{
|
2016-10-25 06:09:59 -07:00
|
|
|
[[Gengrid reorder modes]]
|
|
|
|
normal, [[Normal reorder type]]
|
|
|
|
swap [[Swap reorder type]]
|
2015-08-13 23:21:02 -07:00
|
|
|
}
|
|
|
|
|
2017-08-07 19:48:31 -07:00
|
|
|
class Elm.Gengrid (Efl.Ui.Layout, Elm.Interface_Scrollable,
|
2016-06-10 01:29:40 -07:00
|
|
|
Efl.Ui.Clickable, Elm.Interface.Atspi_Widget_Action,
|
2016-05-12 03:37:43 -07:00
|
|
|
Elm.Interface.Atspi.Selection)
|
2014-04-01 04:50:40 -07:00
|
|
|
{
|
2016-11-18 02:18:27 -08:00
|
|
|
[[Elementary gengrid class]]
|
2016-05-12 09:06:04 -07:00
|
|
|
legacy_prefix: elm_gengrid;
|
2014-04-01 04:50:40 -07:00
|
|
|
eo_prefix: elm_obj_gengrid;
|
2016-05-17 09:14:47 -07:00
|
|
|
event_prefix: elm_gengrid;
|
2015-05-07 09:32:53 -07:00
|
|
|
methods {
|
|
|
|
@property align {
|
2014-04-01 04:50:40 -07:00
|
|
|
set {
|
2015-08-13 08:05:38 -07:00
|
|
|
[[Set the items grid's alignment within a given gengrid widget.
|
2014-04-01 04:50:40 -07:00
|
|
|
|
2015-08-13 08:05:38 -07:00
|
|
|
This sets the alignment of the whole grid of items of a gengrid
|
|
|
|
within its given viewport. By default, those values are both
|
|
|
|
0.5, meaning that the gengrid will have its items grid placed
|
|
|
|
exactly in the middle of its viewport.
|
2014-04-01 04:50:40 -07:00
|
|
|
|
2015-08-13 08:05:38 -07:00
|
|
|
Note: If given alignment values are out of the cited ranges,
|
|
|
|
they'll be changed to the nearest boundary values on the valid
|
|
|
|
ranges.
|
|
|
|
]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
get {
|
2015-08-13 08:05:38 -07:00
|
|
|
[[Get the items grid's alignment values within a given gengrid
|
|
|
|
widget.
|
2014-04-01 04:50:40 -07:00
|
|
|
|
2015-08-13 08:05:38 -07:00
|
|
|
Note: Use $null pointers on the alignment values you're not
|
|
|
|
interested in: they'll be ignored by the function.
|
|
|
|
]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
values {
|
2015-08-13 08:05:38 -07:00
|
|
|
align_x: double; [[Alignment in the horizontal axis (0 <= align_x <= 1).]]
|
|
|
|
align_y: double; [[Alignment in the vertical axis (0 <= align_y <= 1).]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
}
|
2015-05-07 09:32:53 -07:00
|
|
|
@property filled {
|
2014-04-01 04:50:40 -07:00
|
|
|
set {
|
2015-08-13 08:05:38 -07:00
|
|
|
[[Set how the items grid's filled within a given gengrid widget
|
2014-04-01 04:50:40 -07:00
|
|
|
|
2015-08-13 08:05:38 -07:00
|
|
|
This sets the fill state of the whole grid of items of a
|
|
|
|
gengrid within its given viewport. By default, this value
|
|
|
|
is false, meaning that if the first line of items grid's
|
|
|
|
isn't filled, the items are centered with the alignment.
|
|
|
|
]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
get {
|
2015-08-13 08:05:38 -07:00
|
|
|
[[Get how the items grid's filled within a given gengrid widget
|
2014-04-01 04:50:40 -07:00
|
|
|
|
2015-08-13 08:05:38 -07:00
|
|
|
Note: Use $null pointers on the alignment values you're not
|
|
|
|
interested in: they'll be ignored by the function.
|
|
|
|
]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
values {
|
2016-11-18 02:18:27 -08:00
|
|
|
fill: bool; [[$true if the grid is filled, $false otherwise]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
}
|
2015-05-07 09:32:53 -07:00
|
|
|
@property page_relative {
|
2015-08-13 08:05:38 -07:00
|
|
|
[[Control a given gengrid widget's scrolling page size, relative
|
|
|
|
to its viewport size.
|
|
|
|
]]
|
|
|
|
set {}
|
|
|
|
get {}
|
2014-04-01 04:50:40 -07:00
|
|
|
values {
|
2016-11-18 02:18:27 -08:00
|
|
|
h_pagerel: double; [[Page relation horizontal]]
|
|
|
|
v_pagerel: double; [[Page relation vertical]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
}
|
2015-05-07 09:32:53 -07:00
|
|
|
@property multi_select {
|
2014-04-01 04:50:40 -07:00
|
|
|
set {
|
2015-08-13 08:05:38 -07:00
|
|
|
[[Enable or disable multi-selection in a given gengrid widget.
|
2014-04-01 04:50:40 -07:00
|
|
|
|
2015-08-13 08:05:38 -07:00
|
|
|
Multi-selection is the ability to have more than one item
|
|
|
|
selected, on a given gengrid, simultaneously. When it is
|
|
|
|
enabled, a sequence of clicks on different items will make
|
|
|
|
them all selected, progressively. A click on an already
|
|
|
|
selected item will unselect it. If interacting via the
|
|
|
|
keyboard, multi-selection is enabled while holding the
|
|
|
|
"Shift" key.
|
2014-04-01 04:50:40 -07:00
|
|
|
|
2015-08-13 08:05:38 -07:00
|
|
|
Note: By default, multi-selection is disabled on gengrids.
|
|
|
|
]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
get {
|
2015-08-13 08:05:38 -07:00
|
|
|
[[Get whether multi-selection is enabled or disabled for a given
|
|
|
|
gengrid widget.
|
|
|
|
]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
values {
|
2016-11-18 02:18:27 -08:00
|
|
|
multi: bool; [[$true if multislect is enabled, $false otherwise]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
}
|
2015-05-07 09:32:53 -07:00
|
|
|
@property group_item_size {
|
2014-04-01 04:50:40 -07:00
|
|
|
set {
|
2015-08-13 08:05:38 -07:00
|
|
|
[[Set the size for the group items of a given gengrid widget.
|
2014-04-01 04:50:40 -07:00
|
|
|
|
2015-08-13 08:05:38 -07:00
|
|
|
A gengrid, after creation, has still no information on the size
|
|
|
|
to give to each of its cells. So, you most probably will end up
|
|
|
|
with squares one \@ref Fingers "finger" wide, the default
|
|
|
|
size. Use this function to force a custom size for you group
|
|
|
|
items, making them as big as you wish.
|
|
|
|
]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
get {
|
2015-08-13 08:05:38 -07:00
|
|
|
[[Get the size set for the group items of a given gengrid widget.
|
2014-04-01 04:50:40 -07:00
|
|
|
|
2015-08-13 08:05:38 -07:00
|
|
|
Note: Use $null pointers on the size values you're not
|
|
|
|
interested in: they'll be ignored by the function.
|
|
|
|
]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
values {
|
2017-05-15 01:23:11 -07:00
|
|
|
w: int; [[The group items' width.]]
|
|
|
|
h: int; [[The group items' height.]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
}
|
2015-05-07 09:32:53 -07:00
|
|
|
@property select_mode {
|
2014-04-01 04:50:40 -07:00
|
|
|
set {
|
2015-08-13 08:05:38 -07:00
|
|
|
[[Set the gengrid select mode.
|
|
|
|
|
|
|
|
This changes item select mode in the gengrid widget.
|
|
|
|
#ELM_OBJECT_SELECT_MODE_DEFAULT means that items will only
|
|
|
|
call their selection func and callback when first becoming
|
|
|
|
selected. Any further clicks will do nothing, unless you set
|
|
|
|
always select mode. #ELM_OBJECT_SELECT_MODE_ALWAYS 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.
|
|
|
|
]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
get {
|
2015-08-13 08:05:38 -07:00
|
|
|
[[Get the gengrid select mode.]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
values {
|
2015-08-13 08:05:38 -07:00
|
|
|
mode: Elm.Object.Select_Mode(Elm.Object.Select_Mode.max); [[The select mode.]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
}
|
2015-05-07 09:32:53 -07:00
|
|
|
@property reorder_mode {
|
2014-04-01 04:50:40 -07:00
|
|
|
set {
|
2015-08-13 08:05:38 -07:00
|
|
|
[[Set whether a given gengrid widget is or not able have items
|
|
|
|
reordered.
|
|
|
|
|
|
|
|
If a gengrid is set to allow reordering, a click held for more
|
|
|
|
than 0.5 over a given item will highlight it specially,
|
|
|
|
signaling the gengrid has entered the reordering state. From
|
|
|
|
that time on, the user will be able to, while still holding the
|
|
|
|
mouse button down, move the item freely in the gengrid's
|
|
|
|
viewport, replacing to said item to the locations it goes to.
|
|
|
|
The replacements will be animated and, whenever the user
|
|
|
|
releases the mouse button, the item being replaced gets a new
|
|
|
|
definitive place in the grid.
|
|
|
|
]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
get {
|
2015-08-13 08:05:38 -07:00
|
|
|
[[Get whether a given gengrid widget is or not able have items
|
|
|
|
reordered.
|
|
|
|
]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
values {
|
2015-08-13 08:05:38 -07:00
|
|
|
reorder_mode: bool; [[Use $true to turn reordering on,
|
|
|
|
$false to turn it off.]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
}
|
2015-05-07 09:32:53 -07:00
|
|
|
@property highlight_mode {
|
2015-08-13 08:05:38 -07:00
|
|
|
[[Control whether the gengrid items' should be highlighted when
|
|
|
|
item selected.
|
|
|
|
]]
|
|
|
|
set {}
|
|
|
|
get {}
|
2014-04-01 04:50:40 -07:00
|
|
|
values {
|
2016-11-18 02:18:27 -08:00
|
|
|
highlight: bool; [[$true if item will be highlighted, $false otherwise]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
}
|
2015-08-13 23:21:02 -07:00
|
|
|
@property reorder_type {
|
|
|
|
set {
|
|
|
|
[[ Set the Gengrid reorder type
|
|
|
|
@since 1.11
|
|
|
|
]]
|
|
|
|
}
|
|
|
|
values {
|
|
|
|
type: Elm.Gengrid.Reorder_Type; [[ Reorder type value ]]
|
|
|
|
}
|
|
|
|
}
|
2015-05-07 09:32:53 -07:00
|
|
|
@property item_size {
|
2014-04-01 04:50:40 -07:00
|
|
|
set {
|
2015-08-13 08:05:38 -07:00
|
|
|
[[Set the size for the items of a given gengrid widget.
|
2014-04-01 04:50:40 -07:00
|
|
|
|
2015-08-13 08:05:38 -07:00
|
|
|
A gengrid, after creation, has still no information on the size
|
|
|
|
to give to each of its cells. So, you most probably will end up
|
|
|
|
with squares one \@ref Fingers "finger" wide, the default
|
|
|
|
size. Use this function to force a custom size for you items,
|
|
|
|
making them as big as you wish.
|
|
|
|
]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
get {
|
2015-08-13 08:05:38 -07:00
|
|
|
[[Get the size set for the items of a given gengrid widget.
|
2014-04-01 04:50:40 -07:00
|
|
|
|
2015-08-13 08:05:38 -07:00
|
|
|
Note: Use $null pointers on the size values you're not
|
|
|
|
interested in: they'll be ignored by the function.
|
|
|
|
]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
values {
|
2017-05-15 01:23:11 -07:00
|
|
|
w: int; [[The items' width.]]
|
|
|
|
h: int; [[The items' height.]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
}
|
2015-05-07 09:32:53 -07:00
|
|
|
@property multi_select_mode {
|
2014-04-01 04:50:40 -07:00
|
|
|
set {
|
2015-08-13 08:05:38 -07:00
|
|
|
[[Set the gengrid multi select mode.
|
2014-04-01 04:50:40 -07:00
|
|
|
|
2015-08-13 08:05:38 -07:00
|
|
|
#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.
|
2014-04-01 04:50:40 -07:00
|
|
|
|
2015-08-13 08:05:38 -07:00
|
|
|
@since 1.8
|
|
|
|
]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
get {
|
2015-08-13 08:05:38 -07:00
|
|
|
[[Get the gengrid multi select mode.
|
2014-04-01 04:50:40 -07:00
|
|
|
|
2015-08-13 08:05:38 -07:00
|
|
|
If getting mode fails, it returns
|
|
|
|
#ELM_OBJECT_MULTI_SELECT_MODE_MAX.
|
2014-04-01 04:50:40 -07:00
|
|
|
|
2015-08-13 08:05:38 -07:00
|
|
|
@since 1.8
|
|
|
|
]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
values {
|
2015-08-13 08:05:38 -07:00
|
|
|
mode: Elm.Object.Multi_Select_Mode(Elm.Object.Multi_Select_Mode.max); [[The multi select mode.]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
}
|
2015-05-07 09:32:53 -07:00
|
|
|
@property horizontal {
|
2014-04-01 04:50:40 -07:00
|
|
|
set {
|
2015-08-13 08:05:38 -07:00
|
|
|
[[Set the direction in which a given gengrid widget will
|
|
|
|
expand while placing its items.
|
2014-04-01 04:50:40 -07:00
|
|
|
|
2015-08-13 08:05:38 -07:00
|
|
|
When in "horizontal mode" ($true), items will be placed in
|
|
|
|
columns, from top to bottom and, when the space for a column
|
|
|
|
is filled, another one is started on the right, thus expanding
|
|
|
|
the grid horizontally. When in "vertical mode" ($false),
|
|
|
|
though, items will be placed in rows, from left to right
|
|
|
|
and, when the space for a row is filled, another one is
|
|
|
|
started below, thus expanding the grid vertically.
|
2014-04-01 04:50:40 -07:00
|
|
|
|
2015-08-13 08:05:38 -07:00
|
|
|
Note: By default, gengrid is in vertical mode, $false.
|
|
|
|
]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
get {
|
2015-08-13 08:05:38 -07:00
|
|
|
[[Get for what direction a given gengrid widget will expand while
|
|
|
|
placing its items.
|
|
|
|
]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
values {
|
2015-08-13 08:05:38 -07:00
|
|
|
horizontal: bool; [[$true to make the gengrid expand horizontally,
|
|
|
|
$false to expand vertically.]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
}
|
2015-05-07 09:32:53 -07:00
|
|
|
@property page_size {
|
2014-04-01 04:50:40 -07:00
|
|
|
set {
|
2015-08-13 08:05:38 -07:00
|
|
|
[[Set a given gengrid widget's scrolling page size.]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
values {
|
2017-05-15 01:23:11 -07:00
|
|
|
h_pagesize: int; [[Page size horizontal]]
|
|
|
|
v_pagesize: int; [[Page size vertical]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
}
|
2015-05-07 09:32:53 -07:00
|
|
|
@property selected_item {
|
2014-04-01 04:50:40 -07:00
|
|
|
get {
|
2015-08-13 08:05:38 -07:00
|
|
|
[[Get the selected item in a given gengrid widget.
|
2014-04-01 04:50:40 -07:00
|
|
|
|
2015-08-13 08:05:38 -07:00
|
|
|
This returns the selected item in $obj. If multi selection is
|
|
|
|
enabled on $obj (See @.multi_select.set), only the first item
|
|
|
|
in the list is selected, which might not be very useful. For
|
|
|
|
that case, see @.selected_items.get.
|
|
|
|
]]
|
2016-05-23 07:41:28 -07:00
|
|
|
return: Elm.Widget.Item; [[The selected item's handle or $null
|
2015-08-13 08:05:38 -07:00
|
|
|
if none is selected at the moment
|
|
|
|
(and on errors).]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
}
|
2015-05-07 09:32:53 -07:00
|
|
|
@property realized_items {
|
2014-04-01 04:50:40 -07:00
|
|
|
get {
|
2015-08-13 08:05:38 -07:00
|
|
|
[[Get a list of realized items in gengrid.
|
|
|
|
|
|
|
|
This returns a list of the realized items in the gengrid. The
|
|
|
|
list contains gengrid item pointers. The list must be freed by
|
|
|
|
the caller when done with eina_list_free(). The item pointers
|
|
|
|
in the list are only valid so long as those items are not
|
|
|
|
deleted or the gengrid is not deleted.
|
|
|
|
]]
|
2016-11-09 06:57:56 -08:00
|
|
|
return: free(own(list<ptr(Elm_Gen_Item)>), eina_list_free) @warn_unused; [[
|
2015-08-13 08:05:38 -07:00
|
|
|
The list of realized items or $null if none are realized.
|
|
|
|
]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
}
|
2015-05-07 09:32:53 -07:00
|
|
|
@property first_item {
|
2014-04-01 04:50:40 -07:00
|
|
|
get {
|
2015-08-13 08:05:38 -07:00
|
|
|
[[Get the first item in a given gengrid widget.
|
2014-04-01 04:50:40 -07:00
|
|
|
|
2015-08-13 08:05:38 -07:00
|
|
|
This returns the first item in the $obj's internal list of
|
|
|
|
items.
|
|
|
|
]]
|
2016-05-23 07:41:28 -07:00
|
|
|
return: Elm.Widget.Item; [[
|
2015-08-13 08:05:38 -07:00
|
|
|
The first item's handle or $null, if there are no
|
|
|
|
items in $obj (and on errors)
|
|
|
|
]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
}
|
2015-05-07 09:32:53 -07:00
|
|
|
@property selected_items {
|
2014-04-01 04:50:40 -07:00
|
|
|
get {
|
2015-08-13 08:05:38 -07:00
|
|
|
[[Get a list of selected items in a given gengrid.
|
|
|
|
|
|
|
|
This returns a list of the selected items, in the order that
|
|
|
|
they appear in the grid. This list is only valid as long as no
|
|
|
|
more items are selected or unselected (or unselected implicitly
|
|
|
|
by deletion). The list contains Gengrid item pointers as
|
|
|
|
data, naturally.
|
|
|
|
]]
|
2016-05-23 07:41:28 -07:00
|
|
|
return: const(list<Elm.Widget.Item>); [[
|
2015-08-13 08:05:38 -07:00
|
|
|
The list of selected items or $null, if none is
|
|
|
|
selected at the moment (and on errors).
|
|
|
|
]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
}
|
2015-05-07 09:32:53 -07:00
|
|
|
@property last_item {
|
2014-04-01 04:50:40 -07:00
|
|
|
get {
|
2015-08-13 08:05:38 -07:00
|
|
|
[[Get the last item in a given gengrid widget.
|
2014-04-01 04:50:40 -07:00
|
|
|
|
2015-08-13 08:05:38 -07:00
|
|
|
This returns the last item in the $obj's internal list of
|
|
|
|
items.
|
|
|
|
]]
|
2016-05-23 07:41:28 -07:00
|
|
|
return: Elm.Widget.Item; [[The last item's handle or $null
|
2015-08-13 08:05:38 -07:00
|
|
|
if there are no items in $obj
|
|
|
|
(and on errors).]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
}
|
2015-05-07 09:32:53 -07:00
|
|
|
@property wheel_disabled {
|
2014-04-26 21:43:37 -07:00
|
|
|
set {
|
2015-08-13 08:05:38 -07:00
|
|
|
[[Enable or disable mouse wheel to be used to scroll the gengrid.
|
2014-04-26 21:43:37 -07:00
|
|
|
|
2015-08-13 08:05:38 -07:00
|
|
|
Mouse wheel can be used for the user to scroll up and down
|
|
|
|
the gengrid.
|
2014-04-26 21:43:37 -07:00
|
|
|
|
2015-08-13 08:05:38 -07:00
|
|
|
Wheel is enabled by default.
|
|
|
|
]]
|
2014-04-26 21:43:37 -07:00
|
|
|
}
|
|
|
|
get {
|
2015-08-13 08:05:38 -07:00
|
|
|
[[Get a value whether mouse wheel is enabled or not.
|
2014-04-26 21:43:37 -07:00
|
|
|
|
2015-08-13 08:05:38 -07:00
|
|
|
Mouse wheel can be used for the user to scroll up and down
|
|
|
|
the gengrid.
|
|
|
|
]]
|
2014-04-26 21:43:37 -07:00
|
|
|
}
|
|
|
|
values {
|
2015-08-13 08:05:38 -07:00
|
|
|
disabled: bool; [[Use $true to disable mouse wheel or $false
|
|
|
|
to enable it.]]
|
2014-04-26 21:43:37 -07:00
|
|
|
}
|
|
|
|
}
|
2014-04-01 04:50:40 -07:00
|
|
|
item_insert_before {
|
2015-08-13 08:05:38 -07:00
|
|
|
[[Insert an item before another in a gengrid widget.
|
2014-04-01 04:50:40 -07:00
|
|
|
|
2015-08-13 08:05:38 -07:00
|
|
|
This inserts an item before another in the gengrid.
|
|
|
|
]]
|
2016-05-23 07:41:28 -07:00
|
|
|
return: Elm.Widget.Item; [[A handle to the item added or $null on errors.]]
|
2014-04-01 04:50:40 -07:00
|
|
|
params {
|
2016-11-09 06:57:56 -08:00
|
|
|
@in itc: ptr(const(Elm.Gengrid.Item.Class)); [[The item class for the item.]]
|
2016-06-02 04:54:59 -07:00
|
|
|
@in data: const(void_ptr); [[The item data.]]
|
2016-05-23 07:41:28 -07:00
|
|
|
@in relative: Elm.Widget.Item; [[The item to place this new one before.]]
|
2015-08-13 08:05:38 -07:00
|
|
|
@in func: Evas_Smart_Cb @optional; [[Convenience function called
|
|
|
|
when the item is selected.]]
|
2016-06-02 04:54:59 -07:00
|
|
|
@in func_data: const(void_ptr) @optional; [[Data to be passed to $func.]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
}
|
|
|
|
realized_items_update {
|
2015-08-13 08:05:38 -07:00
|
|
|
[[Update the contents of all realized items.
|
2014-04-01 04:50:40 -07:00
|
|
|
|
2015-08-13 08:05:38 -07:00
|
|
|
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.
|
2014-04-01 04:50:40 -07:00
|
|
|
|
2015-08-13 08:05:38 -07:00
|
|
|
To update just one item, use \@ref elm_gengrid_item_update.
|
|
|
|
]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
item_insert_after {
|
2015-08-13 08:05:38 -07:00
|
|
|
[[Insert an item after another in a gengrid widget.
|
2014-04-01 04:50:40 -07:00
|
|
|
|
2015-08-13 08:05:38 -07:00
|
|
|
This inserts an item after another in the gengrid.
|
|
|
|
]]
|
2016-05-23 07:41:28 -07:00
|
|
|
return: Elm.Widget.Item; [[A handle to the item added or $null on error.]]
|
2014-04-01 04:50:40 -07:00
|
|
|
params {
|
2016-11-09 06:57:56 -08:00
|
|
|
@in itc: ptr(const(Elm.Gengrid.Item.Class)); [[The item class for the item.]]
|
2016-06-02 04:54:59 -07:00
|
|
|
@in data: const(void_ptr); [[The item data.]]
|
2016-05-23 07:41:28 -07:00
|
|
|
@in relative: Elm.Widget.Item; [[The item to place this new one after.]]
|
2015-08-13 08:05:38 -07:00
|
|
|
@in func: Evas_Smart_Cb @optional; [[Convenience function called
|
|
|
|
when the item is selected.]]
|
2016-06-02 04:54:59 -07:00
|
|
|
@in func_data: const(void_ptr) @optional; [[Data to be passed to $func.]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
}
|
2014-07-22 09:13:52 -07:00
|
|
|
items_count @const {
|
2015-08-13 08:05:38 -07:00
|
|
|
[[Return how many items are currently in a list
|
2014-04-01 04:50:40 -07:00
|
|
|
|
2015-08-13 08:05:38 -07:00
|
|
|
This behavior is O(1) and includes items which may or may not
|
|
|
|
be realized.
|
|
|
|
]]
|
2016-11-18 02:18:27 -08:00
|
|
|
return: uint; [[Items in list]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
2014-07-22 09:13:52 -07:00
|
|
|
at_xy_item_get @const {
|
2015-08-13 08:05:38 -07:00
|
|
|
[[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 $xposret is not $null, the
|
|
|
|
integer pointed to is set to a value of -1, 0 or 1, depending if
|
|
|
|
the coordinate is on the left portion of that item (-1), on the
|
|
|
|
middle section (0) or on the right part (1).
|
|
|
|
|
|
|
|
If $yposret 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 gengrid.
|
|
|
|
]]
|
2016-05-23 07:41:28 -07:00
|
|
|
return: Elm.Widget.Item; [[The item at the coordinates or $null if none.]]
|
2014-04-01 04:50:40 -07:00
|
|
|
params {
|
2017-05-15 01:23:11 -07:00
|
|
|
@in x: int; [[The input x coordinate.]]
|
|
|
|
@in y: int; [[The input y coordinate.]]
|
2015-08-13 08:05:38 -07:00
|
|
|
@out xposret: int; [[The position relative to the item returned here.]]
|
|
|
|
@out yposret: int; [[The position relative to the item returned here.]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
}
|
|
|
|
item_append {
|
2015-08-13 08:05:38 -07:00
|
|
|
[[Append a new item in a given gengrid widget.
|
2014-04-01 04:50:40 -07:00
|
|
|
|
2015-08-13 08:05:38 -07:00
|
|
|
This adds an item to the beginning of the gengrid.
|
|
|
|
]]
|
2016-05-23 07:41:28 -07:00
|
|
|
return: Elm.Widget.Item; [[A handle to the item added or $null on errors.]]
|
2014-04-01 04:50:40 -07:00
|
|
|
params {
|
2016-11-09 06:57:56 -08:00
|
|
|
@in itc: ptr(const(Elm.Gengrid.Item.Class)); [[The item class for the item.]]
|
2016-06-02 04:54:59 -07:00
|
|
|
@in data: const(void_ptr); [[The item data.]]
|
2015-08-13 08:05:38 -07:00
|
|
|
@in func: Evas_Smart_Cb @optional; [[Convenience function called
|
|
|
|
when the item is selected.]]
|
2016-06-02 04:54:59 -07:00
|
|
|
@in func_data: const(void_ptr) @optional; [[Data to be passed to $func.]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
}
|
|
|
|
item_prepend {
|
2015-08-13 08:05:38 -07:00
|
|
|
[[Prepend a new item in a given gengrid widget.
|
2014-04-01 04:50:40 -07:00
|
|
|
|
2015-08-13 08:05:38 -07:00
|
|
|
This adds an item to the end of the gengrid.
|
|
|
|
]]
|
2016-05-23 07:41:28 -07:00
|
|
|
return: Elm.Widget.Item; [[A handle to the item added or $null on errors.]]
|
2014-04-01 04:50:40 -07:00
|
|
|
params {
|
2016-11-09 06:57:56 -08:00
|
|
|
@in itc: ptr(const(Elm.Gengrid.Item.Class)); [[The item class for the item.]]
|
2016-06-02 04:54:59 -07:00
|
|
|
@in data: const(void_ptr); [[The item data.]]
|
2015-08-13 08:05:38 -07:00
|
|
|
@in func: Evas_Smart_Cb @optional; [[Convenience function called
|
|
|
|
when the item is selected.]]
|
2016-06-02 04:54:59 -07:00
|
|
|
@in func_data: const(void_ptr) @optional; [[Data to be passed to $func.]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
}
|
|
|
|
clear {
|
2015-08-13 08:05:38 -07:00
|
|
|
[[Remove all items from a given gengrid widget.
|
2014-04-01 04:50:40 -07:00
|
|
|
|
2015-08-13 08:05:38 -07:00
|
|
|
This removes (and deletes) all items in $obj, leaving it empty.
|
2014-04-01 04:50:40 -07:00
|
|
|
|
2015-08-13 08:05:38 -07:00
|
|
|
See \@ref elm_gengrid_item_del to remove just one item.
|
|
|
|
]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
item_sorted_insert {
|
2015-08-13 08:05:38 -07:00
|
|
|
[[Insert an item in a gengrid widget using a user-defined sort
|
|
|
|
function.
|
|
|
|
|
|
|
|
This inserts an item in the gengrid based on user defined
|
|
|
|
comparison function. The two arguments passed to the function
|
|
|
|
$func are gengrid item handles to compare.
|
|
|
|
]]
|
2016-05-23 07:41:28 -07:00
|
|
|
return: Elm.Widget.Item; [[A handle to the item added or $null on errors.]]
|
2014-04-01 04:50:40 -07:00
|
|
|
params {
|
2016-11-09 06:57:56 -08:00
|
|
|
@in itc: ptr(const(Elm.Gengrid.Item.Class)); [[The item class for the item.]]
|
2016-06-02 04:54:59 -07:00
|
|
|
@in data: const(void_ptr); [[The item data.]]
|
2015-08-13 08:05:38 -07:00
|
|
|
@in comp: Eina_Compare_Cb; [[User defined comparison function
|
|
|
|
that defines the sort order based
|
|
|
|
on gengrid item and its data.
|
|
|
|
]]
|
|
|
|
@in func: Evas_Smart_Cb @optional; [[Convenience function called when the item is selected.]]
|
2016-06-02 04:54:59 -07:00
|
|
|
@in func_data: const(void_ptr) @optional; [[Data to be passed to $func.]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
2014-07-22 19:35:20 -07:00
|
|
|
}
|
2014-07-23 20:41:33 -07:00
|
|
|
search_by_text_item_get {
|
2015-08-13 08:05:38 -07:00
|
|
|
[[Get gengrid item by given string.
|
2014-07-23 20:41:33 -07:00
|
|
|
|
2015-08-13 08:05:38 -07:00
|
|
|
It takes pointer to the gengrid item that will be used to start
|
|
|
|
search from it.
|
2014-07-23 20:41:33 -07:00
|
|
|
|
2015-08-13 08:05:38 -07:00
|
|
|
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.
|
2014-07-23 20:41:33 -07:00
|
|
|
|
2015-08-13 08:05:38 -07:00
|
|
|
@since 1.11
|
|
|
|
]]
|
2016-05-23 07:41:28 -07:00
|
|
|
return: Elm.Widget.Item; [[Pointer to the gengrid item which matches
|
2015-08-13 08:05:38 -07:00
|
|
|
search_string in case of success,
|
|
|
|
otherwise $null.]]
|
2014-07-22 19:35:20 -07:00
|
|
|
params {
|
2016-05-23 07:41:28 -07:00
|
|
|
@in item_to_search_from: Elm.Widget.Item @optional; [[
|
2015-08-13 08:05:38 -07:00
|
|
|
Pointer to item to start search from. If $null, search will
|
|
|
|
be started from the first item of the gengrid.
|
|
|
|
]]
|
2017-01-26 00:54:30 -08:00
|
|
|
@in part_name: string; [[Name of the TEXT part of gengrid item to search string in. If $null, search by "elm.text" parts.]]
|
2016-05-31 08:02:26 -07:00
|
|
|
@in pattern: string; [[The search pattern.]]
|
2016-01-22 13:42:58 -08:00
|
|
|
@in flags: Elm.Glob.Match_Flags; [[Search flags.]]
|
2014-07-22 19:35:20 -07:00
|
|
|
}
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
2015-08-13 23:21:02 -07:00
|
|
|
reorder_mode_start {
|
|
|
|
[[
|
|
|
|
Starts the reorder mode of Gengrid
|
|
|
|
@since 1.10
|
|
|
|
]]
|
|
|
|
params {
|
2017-05-25 03:12:08 -07:00
|
|
|
@in tween_mode: Ecore_Pos_Map; [[ Position mappings for animation ]]
|
2015-08-13 23:21:02 -07:00
|
|
|
}
|
|
|
|
}
|
|
|
|
reorder_mode_stop {
|
|
|
|
[[
|
|
|
|
Stops the reorder mode of Gengrid
|
|
|
|
@since 1.10
|
|
|
|
]]
|
|
|
|
}
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
implements {
|
2014-06-20 02:47:39 -07:00
|
|
|
class.constructor;
|
2016-08-10 07:23:04 -07:00
|
|
|
Efl.Object.constructor;
|
2016-12-27 10:15:41 -08:00
|
|
|
Efl.Gfx.position { set; }
|
|
|
|
Efl.Gfx.size { set; }
|
2016-06-17 01:26:08 -07:00
|
|
|
Efl.Canvas.Group.group_member_add;
|
2015-04-22 04:33:10 -07:00
|
|
|
Elm.Widget.theme_apply;
|
|
|
|
Elm.Widget.focus_next_manager_is;
|
|
|
|
Elm.Widget.focus_direction_manager_is;
|
2017-08-23 23:31:05 -07:00
|
|
|
Elm.Widget.on_access_update;
|
2015-04-22 04:33:10 -07:00
|
|
|
Elm.Widget.focus_next;
|
2015-09-24 23:24:53 -07:00
|
|
|
Elm.Widget.focus_direction;
|
2015-04-22 04:33:10 -07:00
|
|
|
Elm.Widget.on_focus;
|
2017-08-28 22:18:50 -07:00
|
|
|
Elm.Widget.focus_region { get; }
|
2017-01-01 23:48:17 -08:00
|
|
|
Elm.Widget.widget_event;
|
2017-08-28 23:59:40 -07:00
|
|
|
Elm.Widget.focus_highlight_geometry { get; }
|
2016-12-27 10:15:41 -08:00
|
|
|
Elm.Widget.focused_item { get; }
|
2017-08-30 00:15:34 -07:00
|
|
|
Elm.Interface_Scrollable.item_loop_enabled { get; set; }
|
2016-12-27 10:15:41 -08:00
|
|
|
Elm.Interface_Scrollable.bounce_allow { set; }
|
2017-01-11 07:35:03 -08:00
|
|
|
Elm.Interface_Scrollable.policy { get; set; }
|
2016-12-27 10:15:41 -08:00
|
|
|
Elm.Interface.Atspi_Accessible.children { get; }
|
|
|
|
Elm.Interface.Atspi_Accessible.state_set { get; }
|
|
|
|
Elm.Interface.Atspi_Widget_Action.elm_actions { get; }
|
|
|
|
Elm.Interface.Atspi.Selection.selected_children_count { get; }
|
|
|
|
Elm.Interface.Atspi.Selection.selected_child { get; }
|
2016-05-12 03:37:43 -07:00
|
|
|
Elm.Interface.Atspi.Selection.selected_child_deselect;
|
|
|
|
Elm.Interface.Atspi.Selection.child_select;
|
|
|
|
Elm.Interface.Atspi.Selection.child_deselect;
|
|
|
|
Elm.Interface.Atspi.Selection.is_child_selected;
|
|
|
|
Elm.Interface.Atspi.Selection.all_children_select;
|
|
|
|
Elm.Interface.Atspi.Selection.clear;
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
events {
|
2016-11-18 02:18:27 -08:00
|
|
|
realized; [[Called when gengrid realized]]
|
|
|
|
unrealized; [[Called when gengrid unrealized]]
|
|
|
|
index,update; [[Called on gengrid index update]]
|
|
|
|
scroll,page,changed; [[Called when scroll page changed]]
|
|
|
|
edge,bottom; [[Called when bottom edge is reached]]
|
|
|
|
edge,top; [[Called when top edge is reached]]
|
|
|
|
edge,right; [[Called when right edge is reached]]
|
|
|
|
edge,left; [[Called when left edge is reached]]
|
|
|
|
item,focused; [[Called when item got focus]]
|
|
|
|
item,unfocused; [[Called when item no longer has focus]]
|
|
|
|
item,reorder,anim,start; [[Called when item reorder animation started]]
|
|
|
|
item,reorder,anim,stop; [[Called when item reorder animation stopped]]
|
|
|
|
activated; [[Called when gengrid got activated]]
|
|
|
|
highlighted; [[Called when gengrid is highlighted]]
|
|
|
|
unhighlighted; [[Called when gengrid is no longer highlighted]]
|
|
|
|
released; [[Called when gengrid is released]]
|
2014-04-01 04:50:40 -07:00
|
|
|
}
|
|
|
|
}
|