efl/src/lib/elementary/efl_ui_box.eo

69 lines
2.9 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.
@since 1.23
]]
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;
@empty Efl.Ui.L10n.l10n_text { get; set; }
@empty Efl.Ui.I18n.language { get; set; }
}
}