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)