Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members

FX::FXSpring Class Reference

The spring widgets, when properly embedded side by side in a horizontal frame or vertical frame widget, behave like a set of connected springs of various lengths (hence the name!). More...

#include <FXSpring.h>

Inheritance diagram for FX::FXSpring:

FX::FXPacker FX::FXComposite FX::FXWindow FX::FXDrawable FX::FXId FX::FXObject List of all members.

Public Member Functions

 FXSpring (FXComposite *p, FXuint opts=0, FXint relw=0, FXint relh=0, FXint x=0, FXint y=0, FXint w=0, FXint h=0, FXint pl=DEFAULT_SPACING, FXint pr=DEFAULT_SPACING, FXint pt=DEFAULT_SPACING, FXint pb=DEFAULT_SPACING, FXint hs=DEFAULT_SPACING, FXint vs=DEFAULT_SPACING)
virtual FXint getDefaultWidth ()
virtual FXint getDefaultHeight ()
void setRelativeWidth (FXint relw)
FXint getRelativeWidth () const
void setRelativeHeight (FXint relh)
FXint getRelativeHeight () const
virtual void save (FXStream &store) const
virtual void load (FXStream &store)

Detailed Description

The spring widgets, when properly embedded side by side in a horizontal frame or vertical frame widget, behave like a set of connected springs of various lengths (hence the name!).

The parameters relw (or relh) determines the length of the spring. The actual length is not really important; the only thing that counts is the relative length of one spring widget to that of another, although the length does determine the default size. The special value zero may be given for relw (or relh) to cause the spring to calculate its default width (height) normally, just like the Packer base class does. In a typical scenario, either the relative width or height is set to zero, an the flag LAYOUT_FILL_X or LAYOUT_FILL_Y is passed. When placed inside a horizontal frame, the LAYOUT_FILL_X together with the relative widths of the springs will cause a fixed width-ratio between the springs. You also can mix normal controls and springs together in a horizontal or vertical frames to provide arbitrary stretchable spacing between widgets; in this case, the springs do not need to have any children. Since the spring widget is derived from the packer layout manager, it provides the same layout behavior as packer.


Constructor & Destructor Documentation

FX::FXSpring::FXSpring FXComposite p,
FXuint  opts = 0,
FXint  relw = 0,
FXint  relh = 0,
FXint  x = 0,
FXint  y = 0,
FXint  w = 0,
FXint  h = 0,
FXint  pl = DEFAULT_SPACING,
FXint  pr = DEFAULT_SPACING,
FXint  pt = DEFAULT_SPACING,
FXint  pb = DEFAULT_SPACING,
FXint  hs = DEFAULT_SPACING,
FXint  vs = DEFAULT_SPACING
 

Construct packer layout manager.


Member Function Documentation

virtual FXint FX::FXSpring::getDefaultWidth  )  [virtual]
 

Return default width.

Reimplemented from FX::FXPacker.

virtual FXint FX::FXSpring::getDefaultHeight  )  [virtual]
 

Return default height.

Reimplemented from FX::FXPacker.

void FX::FXSpring::setRelativeWidth FXint  relw  ) 
 

Change relative width.

FXint FX::FXSpring::getRelativeWidth  )  const [inline]
 

Return relative width.

void FX::FXSpring::setRelativeHeight FXint  relh  ) 
 

Change relative height.

FXint FX::FXSpring::getRelativeHeight  )  const [inline]
 

Return relative height.

virtual void FX::FXSpring::save FXStream store  )  const [virtual]
 

Save to stream.

Reimplemented from FX::FXPacker.

virtual void FX::FXSpring::load FXStream store  )  [virtual]
 

Load from stream.

Reimplemented from FX::FXPacker.

Copyright © 1997-2004 Jeroen van der Zijp