Package ptolemy.vergil.actor
Class ActorEditorGraphController
- java.lang.Object
-
- All Implemented Interfaces:
GraphController,ExecutionListener,DebugListener,ValueListener
- Direct Known Subclasses:
CaseGraphFrame.CaseGraphController,MatchResultViewer.MatchResultActorGraphController,TransformationEditor.TransformationActorGraphController
public class ActorEditorGraphController extends ActorViewerGraphController
A Graph Controller for the Ptolemy II schematic editor. In addition to the interaction allowed in the viewer, this controller allows nodes to be dragged and dropped onto its graph. Relations can be created by control-clicking on the background. Links can be created by control-clicking and dragging on a port or a relation. In addition links can be created by clicking and dragging on the ports that are inside an entity. Anything can be deleted by selecting it and pressing the delete key on the keyboard.- Since:
- Ptolemy II 2.0
- Version:
- $Id$
- Author:
- Steve Neuendorffer, Contributor: Edward A. Lee, Bert Rodiers
- Pt.AcceptedRating:
- Red (johnr)
- Pt.ProposedRating:
- Red (eal)
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected classActorEditorGraphController.LinkCreatorThis class is an interactor that interactively drags edges from one terminal to another, creating a link to connect them.classActorEditorGraphController.NewRelationActionAn action to create a new relation.protected classActorEditorGraphController.RelationCreatorAn interactor for creating relations upon control clicking.-
Nested classes/interfaces inherited from class ptolemy.vergil.actor.ActorViewerGraphController
ActorViewerGraphController.EntityLayout
-
Nested classes/interfaces inherited from class ptolemy.vergil.basic.WithIconGraphController
WithIconGraphController.NewPortAction
-
Nested classes/interfaces inherited from class ptolemy.vergil.basic.BasicGraphController
BasicGraphController.OpenBaseClassAction, BasicGraphController.SchematicContextMenuFactory, BasicGraphController.UnitSolverDialogAction
-
-
Field Summary
Fields Modifier and Type Field Description protected javax.swing.Action_newRelationActionAction for creating a new relation.-
Fields inherited from class ptolemy.vergil.actor.ActorViewerGraphController
_addonActorController, _attributeController, _classDefinitionController, _entityController, _entityPortController, _linkController, _relationController
-
Fields inherited from class ptolemy.vergil.basic.WithIconGraphController
_editIconAction, _portController, _removeIconAction
-
Fields inherited from class ptolemy.vergil.basic.BasicGraphController
_animated, _animationRenderer, _configureAction, _configureMenuFactory, _menuCreator, _menuFactory, _openBaseClassAction, _unitSolverDialogAction
-
-
Constructor Summary
Constructors Constructor Description ActorEditorGraphController()Create a new basic controller with default terminal and edge interactors.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void_addHotKeys(JGraph jgraph)Add hot keys to the actions in the given JGraph.protected void_createControllers()Create the controllers for nodes in this graph.protected void_initializeInteraction(NamedObjController controller)Initialize interactions for the specified controller.voidaddToMenuAndToolbar(javax.swing.JMenu menu, javax.swing.JToolBar toolbar)Add commands to the specified menu and toolbar, as appropriate for this controller.protected voidinitializeInteraction()Initialize all interaction on the graph pane.voidsetConfiguration(Configuration configuration)Set the configuration.-
Methods inherited from class ptolemy.vergil.actor.ActorViewerGraphController
event, getEdgeController, getEntityController, getNodeController
-
Methods inherited from class ptolemy.vergil.basic.RunnableGraphController
_getManager, _report, _report, executionError, executionFinished, managerStateChanged
-
Methods inherited from class ptolemy.vergil.basic.WithIconGraphController
getNewPortLocation
-
Methods inherited from class ptolemy.vergil.basic.BasicGraphController
_areThereActiveErrorHighlights, _getClearAllErrorHighlightsChangeRequest, clearAllErrorHighlights, clearAnimation, getAnimationDelay, getConfiguration, getConfigureMenuFactory, getFrame, highlightError, message, setAnimationDelay, setFigure, setFrame, valueChanged
-
Methods inherited from class diva.graph.AbstractGraphController
addEdge, addEdge, addGraphViewListener, addNode, addNode, addNode, addNode, clear, clearEdge, clearNode, dispatch, drawEdge, drawNode, drawNode, getFigure, getGraphModel, getGraphPane, getSelectionModel, removeEdge, removeGraphViewListener, removeNode, rerender, rerenderEdge, rerenderNode, setGraphModel, setGraphPane, setSelectionModel
-
-
-
-
Method Detail
-
addToMenuAndToolbar
public void addToMenuAndToolbar(javax.swing.JMenu menu, javax.swing.JToolBar toolbar)Add commands to the specified menu and toolbar, as appropriate for this controller. In this class, commands are added to create ports and relations.- Overrides:
addToMenuAndToolbarin classRunnableGraphController- Parameters:
menu- The menu to add to, or null if none.toolbar- The toolbar to add to, or null if none.
-
setConfiguration
public void setConfiguration(Configuration configuration)
Set the configuration. The configuration is used when opening documentation files.- Overrides:
setConfigurationin classActorViewerGraphController- Parameters:
configuration- The configuration.- See Also:
BasicGraphController.getConfiguration()
-
_addHotKeys
protected void _addHotKeys(JGraph jgraph)
Add hot keys to the actions in the given JGraph.- Overrides:
_addHotKeysin classActorViewerGraphController- Parameters:
jgraph- The JGraph to which hot keys are to be added.
-
_createControllers
protected void _createControllers()
Create the controllers for nodes in this graph. In this class, controllers with FULL access are created. This is called by the constructor, so derived classes that override this must be careful not to reference local variables defined in the derived classes, because the derived classes will not have been fully constructed by the time this is called.- Overrides:
_createControllersin classActorViewerGraphController
-
_initializeInteraction
protected void _initializeInteraction(NamedObjController controller)
Initialize interactions for the specified controller. This method is called when a new controller is constructed. In this class, this method attaches a link creator to the controller if the controller is an instance of ExternalIOPortController, IOPortController, or RelationController.- Overrides:
_initializeInteractionin classBasicGraphController- Parameters:
controller- The controller for which to initialize interaction.
-
initializeInteraction
protected void initializeInteraction()
Initialize all interaction on the graph pane. This method is called by the setGraphPane() method of the superclass. This initialization cannot be done in the constructor because the controller does not yet have a reference to its pane at that time.- Overrides:
initializeInteractionin classActorViewerGraphController
-
-