NAME¶
Layout::Manager::Flow - Directional layout manager
DESCRIPTION¶
Layout::Manager::Flow is a layout manager that anchors components in one of the
four cardinal directions.
When you instantiate a Flow manager, you may supply it with an anchor value
which may be one of north, south, east or west. The example below shows how
the default anchor value of north works when you add two components.
north
+--------------------------------+
| component 1 |
+--------------------------------+
| component 2 |
+--------------------------------+
| |
| |
| |
+--------------------------------+
Components are placed in the order they are added. If two items are added with a
'north' anchor then the first item will be rendered above the second.
Components will be expanded to take up all space perpendicular to their
anchor. North and south will expand widths while east and west will expand
heights.
Flow is similar to Java's FlowLayout
<
http://java.sun.com/docs/books/tutorial/uiswing/layout/flow.html>. It
does not, however, center components. This features may be added in the future
if they are needed.
SYNOPSIS¶
$cont->add_component($comp1);
$cont->add_component($comp2);
my $lm = Layout::Manager::Flow->new(anchor => 'north');
$lm->do_layout($cont);
ATTRIBUTES¶
anchor¶
The direction this manager is anchored. Valid values are north, south, east and
west.
used¶
Returns the amount of space used an arrayref in the form of "[ $width,
$height ]".
wrap¶
If set to a true value, then component will be 'wrapped' when they do not fit.
This currently only works for East and West anchored layouts.
METHODS¶
do_layout¶
Size and position the components in this layout.
AUTHOR¶
Cory Watson, "<gphat@cpan.org>"
COPYRIGHT & LICENSE¶
Copyright 2008 by Cory G Watson
This program is free software; you can redistribute it and/or modify it under
the same terms as Perl itself.