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

NAME

       Frame,   ShadowFrame,   MarginFrame,  ShowFrame,  TitleFrame,  BorderFrame  -  surrounding
       interactor

SYNOPSIS

       #include <InterViews/frame.h>

DESCRIPTION

       A frame is a monoscene subclass that outlines another interactor.  A shadow frame draws an
       outline  with  a  drop shadow.  A margin frame surrounds its component with horizontal and
       vertical glue.

       A show frame is an abstract class that changes its appearance in response to an EnterEvent
       or  LeaveEvent.  A title frame provides a banner that it displays in reverse video when it
       receives an EnterEvent.  A border frame draws an outline using a  solid  pattern  when  it
       receives  an  EnterEvent  and  draws  the  outline using a gray pattern when it receives a
       LeaveEvent.

PUBLIC OPERATIONS

       Frame(Interactor*, int width = 1)
              Construct a frame.  If the given interactor is not  nil,  it  is  inserted  as  the
              frame's component.  The frame extends width pixels outside of the interactor.

       ShadowFrame(Interactor*, int h = 1, int v = 1)
              Construct  a shadow frame.  The h and v ShadowFrame parameters specify the width of
              the horizontal and vertical  shadows,  respectively.   Positive  values  for  these
              parameters  specify  shadows  falling  to  the  right  and  below  the  interactor,
              respectively; negative values specify shadows falling to the left and above.

       MarginFrame(Interactor* = nil, int margin = 0)
       MarginFrame(Interactor*, int margin, int shrink, int stretch)
       MarginFrame(Interactor*, int hmargin, int vmargin)
       MarginFrame(Interactor*, int hm, int hshr, int hstr, int vm, int vshr, int vstr)
              Construct a margin frame.  The  first  constructor  puts  rigid,  fixed-sized  glue
              around  the  component,  while the second surrounds it with fixed-sized glue of the
              given  shrinkability  and  stretchability.   Independent  horizontal  and  vertical
              margins  are  set  with  the  third  constructor.  The last constructor allows full
              specification  of   the   margin   frame's   horizontal   and   vertical   margins,
              shrinkabilities, and stretchabilities.

       virtual void ShowFrame::HandleInput(Event&)
              ShowFrame  objects  listen  for  EnterEvent  and LeaveEvent.  When an EnterEvent is
              received,  ShowFrame::Handle  calls  InsideFrame(true);  when  an   LeaveEvent   is
              received,  it calls InsideFrame(false).  For any other event, it calls HandleInput.
              ShowFrame::InsideFrame does nothing.  ShowFrame::HandleInput calls  Handle  on  the
              frame's component.

       TitleFrame(Banner*, Interactor*, int width = 1)
              Construct  a title frame with the given banner.  TitleFrame::InsideFrame highlights
              and unhighlights the banner.

       BorderFrame(Interactor*, int width = 1)
              Construct a border frame.  BorderFrame::InsideFrame highlights and unhighlights the
              border.

PROTECTED OPERATIONS

       Frame(Interactor*, int, int, int, int)
              This constructor is used by subclasses to explicitly set the widths of each line in
              the outline.  The integers specify the width of the left, bottom,  right,  and  top
              lines, respectively.

SEE ALSO

       Banner(3I), Event(3I), Glue(3I), Scene(3I)