
FLTK::Layout - Values of the bits stored in FLTK::Widget::layout_damage( )

When a widget resized or moved (or when it is initially created),
flags are set in Widget::layout_damage() to indicate the layout is damaged.
This will cause the Widget::layout() function to be called just before fltk attempts to draw the windows on the screen.
This is useful because often calculating the new layout is quite expensive,
this expense is now deferred until the user will actually see the new size.
Some Group widgets such as PackedGroup will also use the Widget::layout() function to find out how big a widget should be.
A Widget is allowed to change it's own dimensions in layout() (except it is not allowed to change it if called a second time with no changes other than it's x/y position).
This allows widgets to resize to fit their contents.
The layout bits are turned on by calling Widget::relayout().
Values are imported with the layout tag and include the following:
LAYOUT_XWidget::x() changed by resize().
LAYOUT_YWidget::y() changed by resize().
LAYOUT_XYSame as LAYOUT_X|LAYOUT_Y.
Widget::w() changed by resize().
LAYOUT_HWidget::h() changed by resize().
LAYOUT_WHSame as LAYOUT_W|LAYOUT_H.
LAYOUT_XYWHSame as LAYOUT_XY|LAYOUT_WH.
LAYOUT_CHILDWidget::layout() needs to be called on a child of this group widget.
LAYOUT_USERThe moving/resizing is being caused by the user and not internal code.
LAYOUT_DAMAGEWidget::relayout() was called.

Sanko Robinson <sanko@cpan.org> - http://sankorobinson.com/

Copyright (C) 2008-2010 by Sanko Robinson <sanko@cpan.org>
This program is free software; you can redistribute it and/or modify it under the terms of The Artistic License 2.0. See the LICENSE file included with this distribution or notes on the Artistic License 2.0 for clarification.
When separated from the distribution, all original POD documentation is covered by the Creative Commons Attribution-Share Alike 3.0 License. See the clarification of the CCA-SA3.0.