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