com.azalient.api.ui.edit
Interface INetEditor


public interface INetEditor

An interface to network editing actions


Method Summary
 IUndoable action(IEditAction ea, IActionable[] actionables, IViewport viewport)
          Execute the given (network call) action, with the given array of selected network objects
 IArea addArea(IUndoStack us, int name, IXyz c, IXyz[] va)
          Add a new area with the given vertices
 IArea addAreaBoxToTee(IUndoStack undoStack, IViewport vp)
          Add a new 4-vertex area, positioned by the BOX and TEE
 IUndoable addChannel()
          Add a new channel (walkway) between the viewport BOX and the TEE
 IFixture addFixture(IUndoStack undo, IViewport vp, IShape.ShapeType type)
          Add a new fixture at the viewport BOX position, with the given shape type
 ILabel addLabel(IUndoStack undo, IViewport vp)
          Add a new label at the viewport BOX position
 IUndoable addLift()
          Add a new Lift at the viewport BOX
 ILink addLinkBoxToNode(IUndoStack undoStack, INode nodeB, IViewport vp, com.azalient.privat.IMultipleRoadEditor.RoadDirection d, boolean makeStreams, boolean adjustEnds, boolean isRail)
          Add a new link (road or rail) running from the BOX to the given node
 ILink addLinkBoxToTee(IUndoStack undoStack, IViewport vp, com.azalient.privat.IMultipleRoadEditor.RoadDirection d, boolean makeStreams, boolean adjustEnds, boolean isRail)
          Add a new link (road or rail) running from the viewport BOX to the TEE, for parameters see singleRoadEditor(boolean)
 ILink addLinkIntxToXyz(IUndoStack undoStack, INode nodeA, IXyz location, com.azalient.privat.IMultipleRoadEditor.RoadDirection d, boolean mks, boolean adj, boolean rail)
          Check nodeA is an intersection, if not make it one, then add a link to a new node at the given location
 ILink addLinkNodeToNode(IUndoStack undoStack, INode nodeA, INode nodeB, com.azalient.privat.IMultipleRoadEditor.RoadDirection d, boolean makeStreams, boolean adjustEnds, boolean isRail)
          Add a new link (road or rail) running between the given two nodes nodes
 ILink addLinkNodeToTee(IUndoStack undoStack, INode nodeA, IViewport vp, com.azalient.privat.IMultipleRoadEditor.RoadDirection d, boolean makeStreams, boolean adjustEnds, boolean isRail)
          Add a new link (road or rail) running from the given node to the TEE
 INode addNodeAt(IUndoStack undoStack, IXyz position)
          Add a new node at the given position
 INode addNodeAtBox(IUndoStack undoStack, IViewport vp)
          Add a new node at the cursor "box" position
 void addPlacesChangeListener(IPlacesChangeListener pcl)
           
 ISymbol addSymbol(IUndoStack us, IXyz[] va, NamedColour colour, double lineWidth, boolean filled)
          Add a new symbol with the given vertices, colour and line width
 ISymbol addSymbolBoxToTee(IUndoStack undoStack, IViewport vp)
          Add a new 4-vertex symbol, positioned by the BOX and TEE
 void addTrailsChangeListener(ITrailsChangeListener tcl)
           
 void addTwigsChangeListener(ITwigsChangeListener tcl)
           
 IZone addZone(IUndoStack us, int name, IXyz c, IXyz[] va)
          Add a new zone with the given vertices
 IZone addZoneBoxToTee(IUndoStack undoStack, IViewport vp)
          Add a new 4-vertex zone, positioned by the BOX and TEE
 void adjustTurnLanes(IUndoStack us, IIntersection ix, boolean raise)
          Refresh or raise the turn lanes dialog, for the given intersection
 void afterPaste()
          This is public as an implementation side-effect.
 IControllerEditor controllerEditor()
          Return a handle to the controller editor window
 void editChannelParameters()
          Raise the dialog showing the new channel parameters
 void editCrossingParameters()
          Raise the dialog showing the new crossing parameters
 ILane proximityLane(IViewport vp)
          Returns the lane nearest to the viewport BOX, or null, if none
 ILink proximityLink(IViewport vp)
          Returns the link nearest to the viewport BOX, or null, if none
 INode proximityNodeA(IViewport vp)
          Returns the node nearest to the viewport BOX, or null, if none
 INode proximityNodeB(IViewport vp)
          Returns the node nearest to the viewport TEE, or null, if none
 IZone proximityZone(IViewport vp)
          Returns the zone nearest to the viewport BOX, or null, if none
 boolean showBeforeNewWalkway()
          Return true if the walkway parameters should be shown before a new walkway is added
 ISingleRoadEditor singleRoadEditor(boolean rail)
          A handle to parameters used when adding a new road
 

Method Detail

proximityNodeA

INode proximityNodeA(IViewport vp)
Returns the node nearest to the viewport BOX, or null, if none


proximityNodeB

INode proximityNodeB(IViewport vp)
Returns the node nearest to the viewport TEE, or null, if none


proximityLink

ILink proximityLink(IViewport vp)
Returns the link nearest to the viewport BOX, or null, if none


proximityLane

ILane proximityLane(IViewport vp)
Returns the lane nearest to the viewport BOX, or null, if none


proximityZone

IZone proximityZone(IViewport vp)
Returns the zone nearest to the viewport BOX, or null, if none


action

IUndoable action(IEditAction ea,
                 IActionable[] actionables,
                 IViewport viewport)
Execute the given (network call) action, with the given array of selected network objects


addNodeAtBox

INode addNodeAtBox(IUndoStack undoStack,
                   IViewport vp)
Add a new node at the cursor "box" position


addNodeAt

INode addNodeAt(IUndoStack undoStack,
                IXyz position)
Add a new node at the given position


addLinkBoxToTee

ILink addLinkBoxToTee(IUndoStack undoStack,
                      IViewport vp,
                      com.azalient.privat.IMultipleRoadEditor.RoadDirection d,
                      boolean makeStreams,
                      boolean adjustEnds,
                      boolean isRail)
Add a new link (road or rail) running from the viewport BOX to the TEE, for parameters see singleRoadEditor(boolean)


addLinkNodeToTee

ILink addLinkNodeToTee(IUndoStack undoStack,
                       INode nodeA,
                       IViewport vp,
                       com.azalient.privat.IMultipleRoadEditor.RoadDirection d,
                       boolean makeStreams,
                       boolean adjustEnds,
                       boolean isRail)
Add a new link (road or rail) running from the given node to the TEE


addLinkBoxToNode

ILink addLinkBoxToNode(IUndoStack undoStack,
                       INode nodeB,
                       IViewport vp,
                       com.azalient.privat.IMultipleRoadEditor.RoadDirection d,
                       boolean makeStreams,
                       boolean adjustEnds,
                       boolean isRail)
Add a new link (road or rail) running from the BOX to the given node


addLinkNodeToNode

ILink addLinkNodeToNode(IUndoStack undoStack,
                        INode nodeA,
                        INode nodeB,
                        com.azalient.privat.IMultipleRoadEditor.RoadDirection d,
                        boolean makeStreams,
                        boolean adjustEnds,
                        boolean isRail)
Add a new link (road or rail) running between the given two nodes nodes


addLinkIntxToXyz

ILink addLinkIntxToXyz(IUndoStack undoStack,
                       INode nodeA,
                       IXyz location,
                       com.azalient.privat.IMultipleRoadEditor.RoadDirection d,
                       boolean mks,
                       boolean adj,
                       boolean rail)
Check nodeA is an intersection, if not make it one, then add a link to a new node at the given location


addZoneBoxToTee

IZone addZoneBoxToTee(IUndoStack undoStack,
                      IViewport vp)
Add a new 4-vertex zone, positioned by the BOX and TEE


addAreaBoxToTee

IArea addAreaBoxToTee(IUndoStack undoStack,
                      IViewport vp)
Add a new 4-vertex area, positioned by the BOX and TEE


addSymbolBoxToTee

ISymbol addSymbolBoxToTee(IUndoStack undoStack,
                          IViewport vp)
Add a new 4-vertex symbol, positioned by the BOX and TEE


addZone

IZone addZone(IUndoStack us,
              int name,
              IXyz c,
              IXyz[] va)
Add a new zone with the given vertices


addArea

IArea addArea(IUndoStack us,
              int name,
              IXyz c,
              IXyz[] va)
Add a new area with the given vertices


addSymbol

ISymbol addSymbol(IUndoStack us,
                  IXyz[] va,
                  NamedColour colour,
                  double lineWidth,
                  boolean filled)
Add a new symbol with the given vertices, colour and line width


addFixture

IFixture addFixture(IUndoStack undo,
                    IViewport vp,
                    IShape.ShapeType type)
Add a new fixture at the viewport BOX position, with the given shape type


addLabel

ILabel addLabel(IUndoStack undo,
                IViewport vp)
Add a new label at the viewport BOX position


addChannel

IUndoable addChannel()
Add a new channel (walkway) between the viewport BOX and the TEE


addLift

IUndoable addLift()
Add a new Lift at the viewport BOX


adjustTurnLanes

void adjustTurnLanes(IUndoStack us,
                     IIntersection ix,
                     boolean raise)
Refresh or raise the turn lanes dialog, for the given intersection


controllerEditor

IControllerEditor controllerEditor()
Return a handle to the controller editor window


editChannelParameters

void editChannelParameters()
Raise the dialog showing the new channel parameters


editCrossingParameters

void editCrossingParameters()
Raise the dialog showing the new crossing parameters


showBeforeNewWalkway

boolean showBeforeNewWalkway()
Return true if the walkway parameters should be shown before a new walkway is added


singleRoadEditor

ISingleRoadEditor singleRoadEditor(boolean rail)
A handle to parameters used when adding a new road


afterPaste

void afterPaste()
This is public as an implementation side-effect. API users should not call this method


addPlacesChangeListener

void addPlacesChangeListener(IPlacesChangeListener pcl)
Internal - Not recommended for use. Public as a side-effect of implementation method

addTwigsChangeListener

void addTwigsChangeListener(ITwigsChangeListener tcl)
Internal - Not recommended for use. Public as a side-effect of implementation method

addTrailsChangeListener

void addTrailsChangeListener(ITrailsChangeListener tcl)
Internal - Not recommended for use. Public as a side-effect of implementation method