SlotComp,   SlotView,   HSlotComp,  HSlotView,  VSlotComp,
       VSlotView, SlotGraphic, PSSlot - abstract base  class  and
       subclasses for slot connector subject and view; and struc-
       tured  graphic  and  PostScript  external   representation
       classes for slots


SYNOPSIS

       #include <Unidraw/Components/slot.h>


DESCRIPTION

       SlotComp  is a Connector subclass that supports connectiv-
       ity with one degree of freedom.  It serves as an  abstract
       base  class  from which to derive HSlotComp and VSlotComp,
       which support horizontal and vertical  orientations.   The
       slot  component  classes  use  SlotGraphics to store their
       graphical attributes.  SlotView is an abstract subclass of
       ConnectorView   for   displaying   slots.   HSlotView  and
       VSlotView are SlotViews that display slots with the corre-
       sponding    orientations.     Finally,    PSSlot    is   a
       PostScriptView that externalizes the slot subject's infor-
       mation in PostScript form.


SLOTCOMP PUBLIC OPERATIONS

       virtual void Interpret(Command*)
       virtual void Uninterpret(Command*)
              SlotComp  (un)interprets  a subset of commands that
              connectors can generally interpret, namely MoveCmd,
              BrushCmd,  AlignCmd,  MobilityCmd,  DeleteCmd,  and
              CutCmd.

       virtual Mobility GetMobility()
       virtual void SetMobility(Mobility)
              SlotComp redefines these functions  to  return  and
              assign  its _mobility protected member.  Slots have
              fixed mobility initially.

       Slot* GetSlot()
              Return the Slot graphic  that  defines  the  line's
              attributes.  GetSlot is simply a more specific form
              of the GetGraphic operation.


SLOTCOMP PROTECTED OPERATIONS

       SlotComp(SlotGraphic* = nil)
              The constructor takes an optional SlotGraphic  that
              defines the slot's graphical attributes. It is pro-
              tected to prevent instantiation, since SlotComp  is
              an abstract class.

       void SetOrientation(SlotGraphic*, Orientation)
              Define  the  orientation  of  the  SlotComp's Slot-
              Graphic.  Only  SlotComp  can  specify  this  Slot-
              Graphic  attribute;  HSlotComp  and  VSlotComp sub-


SLOTVIEW PUBLIC OPERATIONS

       virtual void Interpret(Command*)
              SlotView  interprets  AlignToGridCmd  to  align its
              starting point to the grid.

       virtual Manipulator* CreateManipulator(
          Viewer*, Event&, Transformer*, Tool*
       )

       virtual void InterpretManipulator(Manipulator*)
              SlotViews respond only to manipulation by  Graphic-
              CompTools,  MoveTools,  and  ConnectTools. SlotView
              inherits its MoveTool response from  ConnectorView.
              GraphicCompTool  will  let  the  user  sweep  out a
              crosshaired rectangle that reflects the slot's size
              and  orientation.   Creation  will be influenced by
              gravity, if any. SlotView creates a ConnectManip in
              response  to  the ConnectTool, which will exhibit a
              gravational attraction to potential target  connec-
              tors.   SlotView  will produce a ConnectCmd to con-
              nect the slot to its target. A  slot  connected  in
              this way will receive floating mobility.

       SlotComp* GetSlotComp()
              Return the subject.


SLOTVIEW PROTECTED OPERATIONS

       SlotView(SlotComp* = nil)
              Create  an  SlotView, optionally supplying the sub-
              ject.  The  constructor  is  protected  to  prevent
              instantiation.

       SlotGraphic* GetSlot()
              Return  the  SlotGraphic  that  defines  the slot's
              attributes.  GetSlot is simply a more specific form
              of the GetGraphic operation.

       virtual SlotComp* NewSubject(SlotGraphic*)
              A  helper  function that creates a SlotComp subject
              with the given slot graphic. This function produces
              the   proper  subject  when  the  GraphicCompTool's
              manipulator   is   interpreted.    HSlotView    and
              VSlotView  redefine  this  operation  to return the
              corresponding SlotComp subclasses, thus eliminating
              the need to reimplement InterpretManipulator.

       Manipulator* CreateGraphicCompManip(
           Viewer*, Event&, Transformer*, Tool*
       )

       Manipulator* CreateConnectManip(
       )

       Command* InterpretGraphicCompManip(Manipulator*)
       Command* InterpretConnectManip(Manipulator*)
              Helper  functions  used  by  CreateManipulator  and
              InterpretManipulator to create  and  interpret  the
              manipulators  associated  with  GraphicCompTool and
              ConnectTool.


SLOTGRAPHIC PUBLIC OPERATIONS

       SlotGraphic(Coord, Coord, Coord, Graphic* = nil)
              Create  a  SlotGraphic,  specifying  the   starting
              point,  length, and optionally a graphic from which
              to obtain its default graphics attributes.

       void GetOriginal(Coord&, Coord&, Coord&)
              Return the SlotGraphic's original geometry  parame-
              ters as specified in the constructor.


PSSLOT PUBLIC OPERATIONS

       PSSlot(SlotComp* = nil)
              Construct  a  PostScript external representation of
              the given subject, if any.


SEE ALSO

       BrushCmd(3U),  ConnectTool(3U),   Connector(3U),   Connec-
       torView3U),  Event(3I),  Graphic(3U), GraphicCompTool(3U),
       Grid(3U),          MoveTool(3U),           PatternCmd(3U),
       PostScriptView(3U),      Transformer(3I),      Viewer(3U),
       align(3U),  edit(3U),  globals(3U),   manips(3U),   trans-
       forms(3U)






















Man(1) output converted with man2html