NAME
PadComp, PadView, PadGraphic, PSPad - pad connector subject, view, structured graphic, and PostScript external representation
SYNOPSIS
#include <Unidraw/Components/pad.h>
DESCRIPTION
PadComp is a Connector subclass that supports connectivity with two degrees of freedom. It uses a PadGraphic to store its graphical attributes. PadView is a GraphicView for displaying the pad. PSPad is a PostScriptView that externalizes the subject's information in PostScript form.
PADCOMP PUBLIC OPERATIONS
- PadComp(PadGraphic* = nil)
-
The constructor takes an optional PadGraphic that defines the pad's graphical attributes.
- virtual void Interpret(Command*)
- virtual void Uninterpret(Command*)
-
PadComp (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)
-
PadComp redefines these functions to return and assign its _mobility protected member. The pad has fixed mobility initially.
- Pad* GetPad()
-
Return the Pad graphic that defines the line's attributes. GetPad is simply a more specific form of the GetGraphic operation.
PADVIEW PUBLIC OPERATIONS
- PadView(PadComp* = nil)
-
Create an PadView, optionally supplying the subject.
- virtual void Interpret(Command*)
-
PadView interprets AlignToGridCmd to align its lower left to the grid.
- virtual Manipulator* CreateManipulator(
- Viewer*, Event&, Transformer*, Tool*
- )
- virtual void InterpretManipulator(Manipulator*)
-
PadViews respond only to manipulation by GraphicCompTools, MoveTools, and ConnectTools. PadView inherits its MoveTool response from ConnectorView. GraphicCompTool will let the user sweep out a rectangle that reflects the pad's size. Creation will be influenced by gravity, if any. PadView creates a ConnectManip in response to the ConnectTool, which will exhibit a gravational attraction to potential target connectors. PadView will produce a ConnectCmd to connect the pad to its target. A pad connected in this way will receive floating mobility.
- PadComp* GetPadComp()
-
Return the subject.
PADVIEW PROTECTED OPERATIONS
- PadGraphic* GetPad()
-
Return the PadGraphic that defines the pad's attributes. GetPad is simply a more specific form of the GetGraphic operation.
- virtual PadComp* NewSubject(PadGraphic*)
-
A helper function that creates a PadComp subject with the given pad graphic. This function produces the proper subject when the GraphicCompTool's manipulator is interpreted. Subclasses can redefine this operation to return a PadComp subclass, 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.
PADGRAPHIC PUBLIC OPERATIONS
- PadGraphic(
- Coord = 0, Coord = 0, Coord = 0, Coord = 0,
- Graphic* = nil
- )
-
Create a PadGraphic, optionally specifying lower-left and upper-right corners and a graphic from which to obtain its default graphics attributes.
- void GetOriginal(Coord&, Coord&, Coord&, Coord&)
-
Return the PadGraphic's original coordinates as specified in the constructor.
PSPAD PUBLIC OPERATIONS
- PSPad(PadComp* = 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), manips(3U), transforms(3U)