Gapp::Layout is a library for building layouts. Creating a layout allows you to customize the appearance of your widgets across your program in one place. This also has the effect of keeping your gui design, application code, and data structures separate.

Layouts are sub-classable and provide fine grained control of your program apearance with a simple interface.

Stylers are used to alter any of the Gapp::Widget attributes before the Gtk+ widget is constructed. The example below centers the the text in an entry field if no xalign has been set. If you want to alter the Gtk+ widget once it has been constructed, you want to use a builder.

The example above defines the packing rules for a very specific case - how a Gapp::Button is packed into a Gapp::HbuttonBox, but you can define something much more general. The example below demonstrates a more general use packing rule, determining how an Gapp::Widget should be displayed in a Gapp::VBox.