Provided by: ivtools-dev_1.2.11a1-2_amd64 bug

NAME

       Shape - what shape a canvas should have

SYNOPSIS

       #include <InterViews/shape.h>

DESCRIPTION

       A  shape  specifies the desired characteristics of a canvas.  An interactor should set the
       fields of its shape when it is reconfigured and should call Change on its parent if any of
       these fields change.

       The  dimensions  of  a  shape  are  defined by a ``natural'' size, a stretch amount, and a
       shrink amount.  The width and height fields indicate the  desired  sizes.   The  hstretch,
       vstretch,  hshrink,  vshrink  fields  define  how  flexible  these desired sizes are.  For
       example, an interactor may have a natural size of 100, but can adequately handle any  size
       between  50  and 200.  The stretchability for this case would be 100 and the shrinkability
       50.

       The constants hfil and vfil are provided to indicate ``infinite'' stretching or shrinking.
       They  are  represented  as  very  large  numbers and manipulated exactly the same as other
       stretch and shrink parameters.

       The aspect field specifies the desired aspect ratio.  A value of zero means any aspect  is
       acceptable.

       The  hunits  and  vunits fields indicate that the canvas dimensions should be multiples of
       some values.

PUBLIC OPERATIONS

       Shape()
              Construct a new shape with undefined natural size and infinite  stretchability  and
              shrinkability in both directions.

       boolean Defined()
       boolean Undefined()
              Test if the shape's natural size is defined or not.

       void Rect(int width, int height)
       void Square(int side)
              Short-hand for setting the dimensions of the shape.  Square sets both dimensions to
              side and sets the aspect ratio to one.

       void Rigid(int hshrink, int hstretch, int vshrink, int vstretch)
       void Rigid()
              Set the stretchability and shrinkability fields of the shape.  If no arguments  are
              specified, the fields are set to zero.

       void SetUndefined()
              Reset the shape's natural size to be undefined.

SEE ALSO

       Interactor(3I), Scene(3I)