Main Page | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

ONE::gui::WindowLayout Class Reference

Inheritance diagram for ONE::gui::WindowLayout:

Inheritance graph
[legend]
List of all members.

Detailed Description

a Window -typical layout

The top and bottom components span the width of the container using this manager. The left, right and center components are sandwiched between them. The top and bottom components receive their preferred heights, the left and right components receive their preferred widths. The other dimensions are controlled by the center component's size. If set, the center component receives all extra space.

Author:
Daniel Seibert


Public Member Functions

void add (Component *, const LayoutConstraint *)
 adds a component to be laid out later
void layout (Widget *, const Bounds &)
 lays out the given object
Size preferredLayoutSize (const Widget *) const
 calculates the preferred size for the given object
void remove (Component *)
 removes a component
 WindowLayout (int hgp=0, int vgp=0)

Static Public Attributes

static const WindowConstraint BOTTOM
static const WindowConstraint CENTER
static const WindowConstraint LEFT
static const WindowConstraint RIGHT
static const WindowConstraint TOP

Classes

struct  WindowConstraint


Constructor & Destructor Documentation

ONE::gui::WindowLayout::WindowLayout int  hgp = 0,
int  vgp = 0
 


Member Function Documentation

void ONE::gui::WindowLayout::add Component ,
const LayoutConstraint
[virtual]
 

adds a component to be laid out later

The components are only modified when LayoutManager::layout is called.

Parameters:
comp the component
cons a constraint object which helps the layout manager determine the component's placement

Implements ONE::gui::LayoutManager.

void ONE::gui::WindowLayout::layout Widget ,
const Bounds
[virtual]
 

lays out the given object

This function will rearrange and resize obj 's content to fit inside inner according to this LayoutManager 's layout strategy.

Parameters:
obj the object that will be laid out
inner obj 's inner bounds

Implements ONE::gui::LayoutManager.

Size ONE::gui::WindowLayout::preferredLayoutSize const Widget  )  const [virtual]
 

calculates the preferred size for the given object

The size is calculated based on this layout manager's layout strategy and the content's preferred sizes. Note, hovever, that this function does not check for the presence of a border around obj.

Parameters:
obj the target of the operation
Returns:
the optimal size for obj

Implements ONE::gui::LayoutManager.

void ONE::gui::WindowLayout::remove Component  )  [virtual]
 

removes a component

Parameters:
comp the component

Implements ONE::gui::LayoutManager.


Member Data Documentation

const WindowConstraint ONE::gui::WindowLayout::BOTTOM [static]
 

const WindowConstraint ONE::gui::WindowLayout::CENTER [static]
 

const WindowConstraint ONE::gui::WindowLayout::LEFT [static]
 

const WindowConstraint ONE::gui::WindowLayout::RIGHT [static]
 

const WindowConstraint ONE::gui::WindowLayout::TOP [static]
 


Generated on Wed Sep 7 19:03:22 2005 for ONEngine by  doxygen 1.4.3