forked from enlightenment/efl
55 lines
1.9 KiB
Plaintext
55 lines
1.9 KiB
Plaintext
import eina_types;
|
|
|
|
mixin @beta Efl.Ui.Widget.Scrollable_Content requires Efl.Object
|
|
{
|
|
[[Efl widget scrollable content mixin
|
|
|
|
This can be used to provide scrollable contents and text for widgets.
|
|
|
|
Widgets can set the "__efl_scrollable_content_scroller_style" key data during
|
|
their constructor to apply a style to the internal scroller widget.
|
|
]]
|
|
c_prefix: efl_ui_widget;
|
|
event_prefix: efl_ui_widget_scrollable_content;
|
|
data: Efl_Ui_Widget_Scrollable_Content_Data;
|
|
methods {
|
|
@property scrollable_content_did_group_calc @protected @beta {
|
|
[[Widgets can call this function during their @Efl.Canvas.Group.group_calculate
|
|
implementation after the super call to determine whether the internal scroller
|
|
has performed sizing calculations.
|
|
|
|
The @.optimal_size,calc event will have been emitted during the super call if
|
|
this method returns $true.
|
|
|
|
In the case that this returns $true, it's likely that the widget should be completing
|
|
its internal sizing calculations from the @.optimal_size,calc callback using
|
|
|
|
`efl_canvas_group_calculate(efl_super(ev->object, EFL_UI_WIDGET_SCROLLABLE_CONTENT_MIXIN));`
|
|
|
|
in order to skip the scrollable sizing calc.
|
|
]]
|
|
get {}
|
|
values {
|
|
did_group_calc: bool; [[Whether the internal scroller has done sizing calcs.]]
|
|
}
|
|
}
|
|
@property scrollable_content {
|
|
[[This is the content which will be placed in the internal scroller.
|
|
]]
|
|
set {
|
|
return: bool; [[True on success]]
|
|
}
|
|
get {}
|
|
values {
|
|
content: Efl.Canvas.Object; [[The content object.]]
|
|
}
|
|
}
|
|
}
|
|
events {
|
|
optimal_size,calc: Eina.Size2D; [[The optimal size for the widget based on scrollable content.]]
|
|
}
|
|
implements {
|
|
Efl.Object.destructor;
|
|
}
|
|
}
|