65 lines
2.7 KiB
Plaintext
65 lines
2.7 KiB
Plaintext
class Efl.Ui.Box extends Efl.Ui.Widget implements Efl.Pack_Linear, Efl.Pack_Layout,
|
|
Efl.Ui.Layout_Orientable, Efl.Gfx.Arrangement
|
|
{
|
|
[[A container that arranges children widgets in a vertical or horizontal fashion.
|
|
|
|
The Box widget is the most basic (and the most used) of the container widgets.
|
|
Other widgets are added to the Box through the @Efl.Pack_Linear interface, and the
|
|
layout direction (either vertical or horizontal) is controlled through the
|
|
@Efl.Ui.Layout_Orientable.orientation property.
|
|
|
|
The Box widget itself is invisible, as are most container widgets: Their purpose is
|
|
to handle the position and size of all their children so you don't have to.
|
|
|
|
All widgets inside a vertical Box container will have the same width as the container,
|
|
and their heights will be automatically chosen so that they cover the whole surface of
|
|
the container from top to bottom (Imagine a stack of pizza boxes neatly fitting inside
|
|
your oven). The @Efl.Ui.Box.homogeneous property then controls whether all widgets have
|
|
the same height (homogeneous) or not.
|
|
|
|
A horizontal Box container example would be the button toolbar at the top of most word
|
|
processing programs.
|
|
|
|
Precise layout can be further customized through the @Efl.Gfx.Arrangement interface on
|
|
the Box itself, or through the @Efl.Gfx.Hint interface on each of the children widgets.
|
|
]]
|
|
methods {
|
|
@property homogeneous {
|
|
[[In homogeneous mode all children of a vertical Box have the same height, equal to
|
|
the height of the tallest widget. Children of a horizontal Box have the same width,
|
|
equal to the width of the widest widget. Otherwise, individual widget sizes are not
|
|
modified.
|
|
]]
|
|
values {
|
|
homogeneous: bool; [[$true if the Box is homogeneous, $false otherwise.]]
|
|
}
|
|
}
|
|
}
|
|
implements {
|
|
Efl.Object.constructor;
|
|
Efl.Object.invalidate;
|
|
Efl.Canvas.Group.group_calculate;
|
|
Efl.Gfx.Entity.position { set; }
|
|
Efl.Gfx.Entity.size { set; }
|
|
Efl.Container.content_iterate;
|
|
Efl.Container.content_count;
|
|
Efl.Ui.Layout_Orientable.orientation { get; set; }
|
|
Efl.Pack.pack_clear;
|
|
Efl.Pack.unpack_all;
|
|
Efl.Pack.unpack;
|
|
Efl.Pack.pack;
|
|
Efl.Gfx.Arrangement.content_padding { get; set; }
|
|
Efl.Gfx.Arrangement.content_align { get; set; }
|
|
Efl.Pack_Linear.pack_begin;
|
|
Efl.Pack_Linear.pack_end;
|
|
Efl.Pack_Linear.pack_before;
|
|
Efl.Pack_Linear.pack_after;
|
|
Efl.Pack_Linear.pack_at;
|
|
Efl.Pack_Linear.pack_content_get;
|
|
Efl.Pack_Linear.pack_unpack_at;
|
|
Efl.Pack_Linear.pack_index_get;
|
|
Efl.Pack_Layout.layout_update;
|
|
Efl.Pack_Layout.layout_request;
|
|
}
|
|
}
|