2016-11-03 03:51:14 -07:00
|
|
|
type Elm_Slideshow_Item_Class: __undefined_type; [[Elementary slideshow item class type]]
|
2016-04-19 08:57:00 -07:00
|
|
|
|
2017-08-07 19:48:31 -07:00
|
|
|
class Elm.Slideshow (Efl.Ui.Layout, Elm.Interface.Atspi_Widget_Action)
|
2014-03-26 02:53:31 -07:00
|
|
|
{
|
2016-11-24 05:57:29 -08:00
|
|
|
[[Elementary slideshow class]]
|
2014-03-26 02:53:31 -07:00
|
|
|
eo_prefix: elm_obj_slideshow;
|
2016-05-12 09:06:04 -07:00
|
|
|
legacy_prefix: elm_slideshow;
|
2016-05-17 09:14:47 -07:00
|
|
|
event_prefix: elm_slideshow;
|
2015-05-07 09:32:53 -07:00
|
|
|
methods {
|
|
|
|
@property cache_after {
|
2014-03-26 02:53:31 -07:00
|
|
|
set {
|
2015-08-07 05:50:21 -07:00
|
|
|
[[Set the number of items to cache, on a given slideshow widget,
|
|
|
|
after the current item.
|
2014-03-26 02:53:31 -07:00
|
|
|
|
2015-08-07 05:50:21 -07:00
|
|
|
The default value for this property is 2. See
|
|
|
|
\@ref Slideshow_Caching "slideshow caching" for more details.
|
|
|
|
]]
|
2014-03-26 02:53:31 -07:00
|
|
|
}
|
|
|
|
get {
|
2015-08-07 05:50:21 -07:00
|
|
|
[[Get the number of items to cache, on a given slideshow widget,
|
|
|
|
after the current item.
|
|
|
|
]]
|
2014-03-26 02:53:31 -07:00
|
|
|
}
|
|
|
|
values {
|
2015-08-07 05:50:21 -07:00
|
|
|
count: int; [[Number of items to cache after the current one.]]
|
2014-03-26 02:53:31 -07:00
|
|
|
}
|
|
|
|
}
|
2015-05-07 09:32:53 -07:00
|
|
|
@property cache_before {
|
2014-03-26 02:53:31 -07:00
|
|
|
set {
|
2015-08-07 05:50:21 -07:00
|
|
|
[[Set the number of items to cache, on a given slideshow widget,
|
|
|
|
before the current item.
|
2014-03-26 02:53:31 -07:00
|
|
|
|
2015-08-07 05:50:21 -07:00
|
|
|
The default value for this property is 2. See
|
|
|
|
\@ref Slideshow_Caching "slideshow caching" for more details.
|
|
|
|
]]
|
2014-03-26 02:53:31 -07:00
|
|
|
}
|
|
|
|
get {
|
2015-08-07 05:50:21 -07:00
|
|
|
[[Get the number of items to cache, on a given slideshow widget,
|
|
|
|
before the current item.
|
|
|
|
]]
|
2014-03-26 02:53:31 -07:00
|
|
|
}
|
|
|
|
values {
|
2015-08-07 05:50:21 -07:00
|
|
|
count: int; [[Number of items to cache before the current one.]]
|
2014-03-26 02:53:31 -07:00
|
|
|
}
|
|
|
|
}
|
2015-05-07 09:32:53 -07:00
|
|
|
@property layout {
|
2014-03-26 02:53:31 -07:00
|
|
|
set {
|
2015-08-07 05:50:21 -07:00
|
|
|
[[Set the current slide layout in use for a given slideshow widget
|
2014-03-26 02:53:31 -07:00
|
|
|
|
2015-08-07 05:50:21 -07:00
|
|
|
If $layout is implemented in $obj's theme (i.e., is contained
|
|
|
|
in the list returned by elm_slideshow_layouts_get()), this new
|
|
|
|
images layout will be used on the widget.
|
2014-03-26 02:53:31 -07:00
|
|
|
|
2015-08-07 05:50:21 -07:00
|
|
|
See @.layouts.get for more details.
|
|
|
|
]]
|
2014-03-26 02:53:31 -07:00
|
|
|
}
|
|
|
|
get {
|
2015-08-07 05:50:21 -07:00
|
|
|
[[Get the current slide layout in use for a given slideshow widget.]]
|
2014-03-26 02:53:31 -07:00
|
|
|
}
|
|
|
|
values {
|
2016-05-31 08:02:26 -07:00
|
|
|
layout: string; [[The new layout's name string.]]
|
2014-03-26 02:53:31 -07:00
|
|
|
}
|
|
|
|
}
|
2015-05-07 09:32:53 -07:00
|
|
|
@property transition {
|
2014-03-26 02:53:31 -07:00
|
|
|
set {
|
2015-08-07 05:50:21 -07:00
|
|
|
[[Set the current slide transition/effect in use for a given
|
|
|
|
slideshow widget.
|
2014-03-26 02:53:31 -07:00
|
|
|
|
2015-08-07 05:50:21 -07:00
|
|
|
If $transition is implemented in $obj's theme (i.e., is
|
|
|
|
contained in the list returned by @.transitions.get), this
|
|
|
|
new sliding effect will be used on the widget.
|
|
|
|
]]
|
2014-03-26 02:53:31 -07:00
|
|
|
}
|
|
|
|
get {
|
2015-08-07 05:50:21 -07:00
|
|
|
[[Get the current slide transition/effect in use for a given
|
|
|
|
slideshow widget.
|
|
|
|
]]
|
2014-03-26 02:53:31 -07:00
|
|
|
}
|
|
|
|
values {
|
2016-05-31 08:02:26 -07:00
|
|
|
transition: string @nullable; [[The new transition's name string.]]
|
2014-03-26 02:53:31 -07:00
|
|
|
}
|
|
|
|
}
|
2015-05-07 09:32:53 -07:00
|
|
|
@property loop {
|
2014-03-26 02:53:31 -07:00
|
|
|
set {
|
2016-05-23 10:46:59 -07:00
|
|
|
[[Set if the slideshow items should be displayed cyclically or not,
|
|
|
|
so when the end is reached it will restart from the first item.
|
2014-03-26 02:53:31 -07:00
|
|
|
|
2016-05-23 10:46:59 -07:00
|
|
|
Note: This will affect the "automatic" slidshow behaviour and the
|
|
|
|
@.next and @.previous functions as well.
|
2015-08-07 05:50:21 -07:00
|
|
|
]]
|
2014-03-26 02:53:31 -07:00
|
|
|
}
|
|
|
|
get {
|
2015-08-07 05:50:21 -07:00
|
|
|
[[Get if, after a slideshow is started, for a given slideshow
|
|
|
|
widget, its items are to be displayed cyclically or not.
|
|
|
|
]]
|
2014-03-26 02:53:31 -07:00
|
|
|
}
|
|
|
|
values {
|
2015-08-07 05:50:21 -07:00
|
|
|
loop: bool; [[Use $true to make it cycle through items or
|
|
|
|
$false for it to stop at the end of $obj's
|
|
|
|
internal list of items.]]
|
2014-03-26 02:53:31 -07:00
|
|
|
}
|
|
|
|
}
|
2015-05-07 09:32:53 -07:00
|
|
|
@property timeout {
|
2014-03-26 02:53:31 -07:00
|
|
|
set {
|
2015-08-07 05:50:21 -07:00
|
|
|
[[Set the interval between each image transition on a given
|
|
|
|
slideshow widget and start the slideshow itself.
|
|
|
|
|
|
|
|
After this call, the slideshow widget will start cycling its
|
|
|
|
view, sequentially and automatically, with the images of the
|
|
|
|
items it has. The time between each new image displayed is
|
|
|
|
going to be $timeout, in seconds. If a different timeout was
|
|
|
|
set previously and an slideshow was in progress, it will
|
|
|
|
continue with the new time between transitions, after this call.
|
|
|
|
|
|
|
|
Note: A value less than or equal to 0 on $timeout will disable
|
|
|
|
the widget's internal timer, thus halting any slideshow which
|
|
|
|
could be happening on $obj.
|
|
|
|
]]
|
2014-03-26 02:53:31 -07:00
|
|
|
}
|
|
|
|
get {
|
2015-08-07 05:50:21 -07:00
|
|
|
[[Get the interval set for image transitions on a given
|
|
|
|
slideshow widget.
|
|
|
|
]]
|
2014-03-26 02:53:31 -07:00
|
|
|
}
|
|
|
|
values {
|
2015-08-07 05:50:21 -07:00
|
|
|
timeout: double; [[The new displaying timeout for images.]]
|
2014-03-26 02:53:31 -07:00
|
|
|
}
|
|
|
|
}
|
2015-05-07 09:32:53 -07:00
|
|
|
@property items {
|
2014-03-26 02:53:31 -07:00
|
|
|
get {
|
2015-08-07 05:50:21 -07:00
|
|
|
[[Get the internal list of items in a given slideshow widget.
|
|
|
|
|
|
|
|
This list is not to be modified in any way and must not be
|
|
|
|
freed.
|
|
|
|
|
|
|
|
Warning: This list is only valid until $obj object's internal
|
|
|
|
items list is changed. It should be fetched again with another
|
|
|
|
call to this function when changes happen.
|
|
|
|
]]
|
2016-05-23 07:41:28 -07:00
|
|
|
return: const(list<Elm.Widget.Item>); [[
|
2016-05-12 03:21:36 -07:00
|
|
|
The list of items (#Elm.Widget.Item as data) or $null on
|
2015-08-07 05:50:21 -07:00
|
|
|
errors.
|
|
|
|
]]
|
2014-03-26 02:53:31 -07:00
|
|
|
}
|
|
|
|
}
|
2015-05-07 09:32:53 -07:00
|
|
|
@property transitions {
|
2014-03-26 02:53:31 -07:00
|
|
|
get {
|
2015-08-07 05:50:21 -07:00
|
|
|
[[Returns the list of sliding transition/effect names available,
|
|
|
|
for a given slideshow widget.
|
|
|
|
|
|
|
|
The transitions, which come from $obj's theme, must be an EDC
|
|
|
|
data item named $"transitions" on the theme file, with (prefix)
|
|
|
|
names of EDC programs actually implementing them.
|
|
|
|
|
|
|
|
The available transitions for slideshows on the default theme
|
|
|
|
are "fade" (the current item fades out, while the new one
|
|
|
|
fades in to the slideshow's viewport), "black_fade" (the
|
|
|
|
current item fades to black, and just then, the new item
|
|
|
|
will fade in), "horizontal" (the current item slides
|
|
|
|
horizontally, until it gets out of the slideshow's viewport,
|
|
|
|
while the new item comes from the left to take its place),
|
|
|
|
"vertical" (the current item slides vertically, until it
|
|
|
|
gets out of the slideshow's viewport, while the new item
|
|
|
|
comes from the bottom to take its place), "square" (the
|
|
|
|
new item starts to appear from the middle of the current
|
|
|
|
one, but with a tiny size, growing until its target (full)
|
|
|
|
size and covering the old one.
|
|
|
|
|
|
|
|
Warning: The stringshared strings get no new references
|
|
|
|
exclusive to the user grabbing the list, here, so if you'd
|
|
|
|
like to use them out of this call's context, you'd better
|
|
|
|
\@ref eina_stringshare_ref them. Also the list is an internal
|
|
|
|
list and so is only valid for as long as the slideshow object
|
|
|
|
is valid and has not internally changed its list for some
|
|
|
|
reason, so make a copy if you need it around.
|
|
|
|
]]
|
2016-05-31 08:02:26 -07:00
|
|
|
return: const(list<string>); [[
|
2015-08-07 05:50:21 -07:00
|
|
|
The list of transitions (list of stringshared strings
|
|
|
|
as data).
|
|
|
|
]]
|
2014-03-26 02:53:31 -07:00
|
|
|
}
|
|
|
|
}
|
2015-05-07 09:32:53 -07:00
|
|
|
@property count {
|
2014-03-26 02:53:31 -07:00
|
|
|
get {
|
2015-08-07 05:50:21 -07:00
|
|
|
[[Get the number of items stored in a given slideshow widget.]]
|
|
|
|
return: uint; [[The number of items on $obj, at the moment of this call.]]
|
2014-03-26 02:53:31 -07:00
|
|
|
}
|
|
|
|
}
|
2015-05-07 09:32:53 -07:00
|
|
|
@property item_current {
|
2014-03-26 02:53:31 -07:00
|
|
|
get {
|
2015-08-07 05:50:21 -07:00
|
|
|
[[Returns the currently displayed item, in a given slideshow widget.]]
|
2016-05-23 07:41:28 -07:00
|
|
|
return: Elm.Widget.Item; [[A handle to the item being displayed
|
2015-08-07 05:50:21 -07:00
|
|
|
in $obj or $null, if none is (and
|
|
|
|
on errors)]]
|
2014-03-26 02:53:31 -07:00
|
|
|
}
|
|
|
|
}
|
2015-05-07 09:32:53 -07:00
|
|
|
@property layouts {
|
2014-03-26 02:53:31 -07:00
|
|
|
get {
|
2015-08-07 05:50:21 -07:00
|
|
|
[[Returns the list of layout names available, for a given
|
|
|
|
slideshow widget.
|
|
|
|
|
|
|
|
Slideshow layouts will change how the widget is to dispose
|
|
|
|
each image item in its viewport, with regard to cropping,
|
|
|
|
scaling, etc.
|
|
|
|
|
|
|
|
The layouts, which come from $obj's theme, must be an EDC
|
|
|
|
data item name $"layouts" on the theme file, with (prefix)
|
|
|
|
names of EDC programs actually implementing them.
|
|
|
|
|
|
|
|
The available layouts for slideshows on the default theme are
|
|
|
|
"fullscreen" (item images with original aspect, scaled to
|
|
|
|
touch top and down slideshow borders or, if the image's height
|
|
|
|
is not enough, left and right slideshow borders) and
|
|
|
|
"not_fullscreen" (the same behavior as the "fullscreen"
|
|
|
|
one, but always leaving 10% of the slideshow's dimensions of
|
|
|
|
distance between the item image's borders and the slideshow
|
|
|
|
borders, for each axis)-
|
|
|
|
|
|
|
|
Warning: The stringshared strings get no new references
|
|
|
|
exclusive to the user grabbing the list, here, so if you'd
|
|
|
|
like to use them out of this call's context, you'd better
|
|
|
|
\@ref eina_stringshare_ref them.
|
|
|
|
]]
|
2016-05-31 08:02:26 -07:00
|
|
|
return: const(list<string>); [[
|
2015-08-07 05:50:21 -07:00
|
|
|
The list of layouts (list of stringshared strings as data)
|
|
|
|
]]
|
2014-03-26 02:53:31 -07:00
|
|
|
}
|
|
|
|
}
|
|
|
|
previous {
|
2015-08-07 05:50:21 -07:00
|
|
|
[[Slide to the previous item, in a given slideshow widget
|
2014-03-26 02:53:31 -07:00
|
|
|
|
2015-08-07 05:50:21 -07:00
|
|
|
The sliding animation $obj is set to use will be the
|
|
|
|
transition effect used, after this call is issued.
|
2014-03-26 02:53:31 -07:00
|
|
|
|
2015-08-07 05:50:21 -07:00
|
|
|
Note: If the beginning of the slideshow's internal list of items
|
|
|
|
is reached, it'll wrap around to the list's end, again.
|
|
|
|
]]
|
2014-03-26 02:53:31 -07:00
|
|
|
}
|
2014-07-22 09:13:52 -07:00
|
|
|
item_nth_get @const {
|
2015-08-07 05:50:21 -07:00
|
|
|
[[Get the the item, in a given slideshow widget, placed at
|
|
|
|
position $nth, in its internal items list.
|
|
|
|
]]
|
2016-05-23 07:41:28 -07:00
|
|
|
return: Elm.Widget.Item; [[The item stored in $obj at position
|
2015-08-07 05:50:21 -07:00
|
|
|
$nth or $null if there's no item with
|
|
|
|
that index (and on errors).]]
|
2014-03-26 02:53:31 -07:00
|
|
|
params {
|
2015-08-07 05:50:21 -07:00
|
|
|
@in nth: uint; [[The number of the item to grab a handle to
|
|
|
|
(0 being the first).]]
|
2014-03-26 02:53:31 -07:00
|
|
|
}
|
|
|
|
}
|
|
|
|
next {
|
2015-08-07 05:50:21 -07:00
|
|
|
[[Slide to the next item, in a given slideshow widget.
|
2014-03-26 02:53:31 -07:00
|
|
|
|
2015-08-07 05:50:21 -07:00
|
|
|
The sliding animation $obj is set to use will be the
|
|
|
|
transition effect used, after this call is issued.
|
2014-03-26 02:53:31 -07:00
|
|
|
|
2015-08-07 05:50:21 -07:00
|
|
|
Note: If the end of the slideshow's internal list of items is
|
|
|
|
reached, it'll wrap around to the list's beginning, again.
|
|
|
|
]]
|
2014-03-26 02:53:31 -07:00
|
|
|
}
|
|
|
|
clear {
|
2015-08-07 05:50:21 -07:00
|
|
|
[[Remove all items from a given slideshow widget.
|
2014-03-26 02:53:31 -07:00
|
|
|
|
2015-08-07 05:50:21 -07:00
|
|
|
This removes (and deletes) all items in $obj, leaving it empty.
|
|
|
|
]]
|
2014-03-26 02:53:31 -07:00
|
|
|
}
|
|
|
|
item_add {
|
2015-08-07 05:50:21 -07:00
|
|
|
[[Add (append) a new item in a given slideshow widget.
|
|
|
|
|
|
|
|
Add a new item to $obj's internal list of items, appending it.
|
|
|
|
The item's class must contain the function really fetching the
|
|
|
|
image object to show for this item, which could be an Evas image
|
|
|
|
object or an Elementary photo, for example. The $data
|
|
|
|
parameter is going to be passed to both class functions of the
|
|
|
|
item.
|
|
|
|
]]
|
2016-05-23 07:41:28 -07:00
|
|
|
return: Elm.Widget.Item; [[A handle to the item added or $null on errors.]]
|
2014-03-26 02:53:31 -07:00
|
|
|
params {
|
2016-11-10 06:53:25 -08:00
|
|
|
@in itc: ptr(const(Elm_Slideshow_Item_Class)); [[The item class for the item.]]
|
2016-06-02 04:54:59 -07:00
|
|
|
@in data: const(void_ptr); [[The item's data.]]
|
2014-03-26 02:53:31 -07:00
|
|
|
}
|
|
|
|
}
|
|
|
|
item_sorted_insert {
|
2015-08-07 05:50:21 -07:00
|
|
|
[[Insert a new item into the given slideshow widget, using the
|
|
|
|
$func function to sort items (by item handles).
|
|
|
|
|
|
|
|
Add a new item to $obj's internal list of items, in a position
|
|
|
|
determined by the $func comparing function. The item's class
|
|
|
|
must contain the function really fetching the image object to
|
|
|
|
show for this item, which could be an Evas image object or an
|
|
|
|
Elementary photo, for example. The $data parameter is going to
|
|
|
|
be passed to both class functions of the item.
|
|
|
|
]]
|
2016-05-23 07:41:28 -07:00
|
|
|
return: Elm.Widget.Item; [[Returns The slideshow item handle,
|
2015-08-07 05:50:21 -07:00
|
|
|
on success, or $null on errors.]]
|
2014-03-26 02:53:31 -07:00
|
|
|
params {
|
2016-11-10 06:53:25 -08:00
|
|
|
@in itc: ptr(const(Elm_Slideshow_Item_Class)); [[The item class for the item.]]
|
2016-06-02 04:54:59 -07:00
|
|
|
@in data: const(void_ptr); [[The item's data.]]
|
2015-08-07 05:50:21 -07:00
|
|
|
@in func: Eina_Compare_Cb; [[The comparing function to be used to sort the slideshow
|
|
|
|
items by #Elm_Slideshow_Item_Class item handles.]]
|
2014-03-26 02:53:31 -07:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
implements {
|
2014-06-20 02:47:39 -07:00
|
|
|
class.constructor;
|
2016-08-10 07:23:04 -07:00
|
|
|
Efl.Object.constructor;
|
2015-04-22 04:33:10 -07:00
|
|
|
Elm.Widget.focus_next_manager_is;
|
|
|
|
Elm.Widget.focus_direction_manager_is;
|
2017-01-01 23:48:17 -08:00
|
|
|
Elm.Widget.widget_event;
|
2016-12-27 10:15:41 -08:00
|
|
|
Elm.Interface.Atspi_Widget_Action.elm_actions { get; }
|
2014-03-26 02:53:31 -07:00
|
|
|
}
|
|
|
|
events {
|
2016-11-24 05:57:29 -08:00
|
|
|
changed; [[Called when slideshow widget changed]]
|
|
|
|
transition,end; [[Called on transition end]]
|
2014-03-26 02:53:31 -07:00
|
|
|
}
|
|
|
|
}
|