2019-08-22 05:41:58 -07:00
|
|
|
import efl_ui_layout_orientable;
|
|
|
|
|
2019-03-08 06:55:43 -08:00
|
|
|
enum @beta Efl.Ui.Scrollbar_Mode
|
2017-12-18 04:08:25 -08:00
|
|
|
{
|
2019-07-08 07:56:49 -07:00
|
|
|
[[When should the scrollbar be shown.]]
|
2019-09-02 02:57:27 -07:00
|
|
|
auto = 0, [[Visible if necessary.]]
|
|
|
|
on, [[Always visible.]]
|
|
|
|
off, [[Always invisible.]]
|
|
|
|
last [[For internal use only.]]
|
2017-12-18 04:08:25 -08:00
|
|
|
}
|
|
|
|
|
2019-02-14 08:37:02 -08:00
|
|
|
interface @beta Efl.Ui.Scrollbar
|
2017-12-18 04:08:25 -08:00
|
|
|
{
|
2019-07-08 07:56:49 -07:00
|
|
|
[[Interface used by widgets which can display scrollbars, enabling them to contain more content
|
|
|
|
than actually fits inside them.]]
|
2017-12-18 04:08:25 -08:00
|
|
|
methods {
|
|
|
|
@property bar_mode {
|
|
|
|
[[Scrollbar visibility policy]]
|
|
|
|
set {
|
|
|
|
}
|
|
|
|
get {
|
|
|
|
}
|
|
|
|
values {
|
2019-07-08 07:56:49 -07:00
|
|
|
hbar: Efl.Ui.Scrollbar_Mode; [[Horizontal scrollbar.]]
|
|
|
|
vbar: Efl.Ui.Scrollbar_Mode; [[Vertical scrollbar.]]
|
2017-12-18 04:08:25 -08:00
|
|
|
}
|
|
|
|
}
|
|
|
|
@property bar_size {
|
|
|
|
[[Scrollbar size.
|
|
|
|
It is calculated based on viewport size-content sizes.
|
2019-07-08 07:56:49 -07:00
|
|
|
]] // TODO: This needs more details. What does 1.0 mean?
|
2017-12-18 04:08:25 -08:00
|
|
|
get {
|
|
|
|
}
|
|
|
|
values {
|
2019-07-08 07:56:49 -07:00
|
|
|
width: double; [[Value between 0.0 and 1.0.]]
|
|
|
|
height: double; [[Value between 0.0 and 1.0.]]
|
2017-12-18 04:08:25 -08:00
|
|
|
}
|
|
|
|
}
|
|
|
|
@property bar_position {
|
|
|
|
[[Scrollbar position.
|
|
|
|
It is calculated based on current position-maximum positions.
|
|
|
|
]]
|
|
|
|
set {
|
|
|
|
}
|
|
|
|
get {
|
|
|
|
}
|
|
|
|
values {
|
2019-07-08 07:56:49 -07:00
|
|
|
posx: double; [[Value between 0.0 and 1.0.]]
|
|
|
|
posy: double; [[Value between 0.0 and 1.0.]]
|
2017-12-18 04:08:25 -08:00
|
|
|
}
|
|
|
|
}
|
|
|
|
bar_visibility_update @protected @beta{
|
2019-07-08 07:56:49 -07:00
|
|
|
[[Update bar visibility.
|
2017-12-18 04:08:25 -08:00
|
|
|
|
2019-07-08 07:56:49 -07:00
|
|
|
The object will call this function whenever the bar
|
|
|
|
needs to be shown or hidden.
|
2017-12-18 04:08:25 -08:00
|
|
|
]]
|
|
|
|
}
|
|
|
|
}
|
|
|
|
events {
|
2019-09-20 03:42:50 -07:00
|
|
|
bar,pressed: Efl.Ui.Layout_Orientation; [[Called when bar is pressed.]]
|
|
|
|
bar,unpressed: Efl.Ui.Layout_Orientation; [[Called when bar is unpressed.]]
|
|
|
|
bar,dragged: Efl.Ui.Layout_Orientation; [[Called when bar is dragged.]]
|
2019-07-08 07:56:49 -07:00
|
|
|
bar,size,changed: void; [[Called when bar size is changed.]]
|
|
|
|
bar,pos,changed: void; [[Called when bar position is changed.]]
|
2019-08-22 05:41:58 -07:00
|
|
|
bar,show: Efl.Ui.Layout_Orientation; [[Callend when bar is shown.]]
|
|
|
|
bar,hide: Efl.Ui.Layout_Orientation; [[Called when bar is hidden.]]
|
2017-12-18 04:08:25 -08:00
|
|
|
}
|
|
|
|
}
|