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

NAME

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

SYNOPSIS

       #include <Unidraw/Components/slot.h>

DESCRIPTION

       SlotComp  is  a  Connector subclass that supports connectivity 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
       corresponding orientations.  Finally, PSSlot is a  PostScriptView  that  externalizes  the
       slot subject's information 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 protected to prevent instantiation, since SlotComp is an abstract
              class.

       void SetOrientation(SlotGraphic*, Orientation)
              Define the orientation of the SlotComp's SlotGraphic.  Only  SlotComp  can  specify
              this  SlotGraphic  attribute;  HSlotComp and VSlotComp subclasses set it to reflect
              their respective orientations.

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  GraphicCompTools,  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 connectors.  SlotView will produce a
              ConnectCmd to connect 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 subject.  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(
           Viewer*, Event&, Transformer*, Tool*
       )

       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  parameters  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),  ConnectorView3U),  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), transforms(3U)