Class Mediator

java.lang.Object
jsimgraph.controller.Mediator
All Implemented Interfaces:
GraphCursorController, GuiInterface

public class Mediator extends Object implements GuiInterface, GraphCursorController
This class maintains a reference to all the main components of the Gui, in this way it is possible to divide the responsibility of the actions & every object know only about of himself & the mediator. Other actions are made through the mediator without knowing who will actually do it.
  • Field Details

    • cells

      protected Object[] cells
    • cellsAttr

      protected Map cellsAttr
  • Constructor Details

  • Method Details

    • createToolbar

      public JMTToolBar createToolbar()
      Creates a toolbar to be displayed in main window.
      Returns:
      created toolbar.
    • createMenu

      public JMTMenuBar createMenu()
      Creates a menu to be displayed in main window.
      Returns:
      created menu.
    • getComponentBar

      public JMTToolBar getComponentBar()
    • setMouseListener

      public void setMouseListener(GraphMouseListener mouseListener)
    • getMouseListener

      public GraphMouseListener getMouseListener()
    • getEditUserClasses

      public AbstractJmodelAction getEditUserClasses()
    • getExit

      public AbstractJmodelAction getExit()
    • getClassDefinition

      public JmodelClassDefinition getClassDefinition()
    • getStationDefinition

      public JmodelStationDefinition getStationDefinition()
    • getSimulationDefinition

      public SimulationDefinition getSimulationDefinition()
    • getBlockingRegionDefinition

      public JmodelBlockingRegionDefinition getBlockingRegionDefinition()
    • enableAddBlockingRegion

      public void enableAddBlockingRegion(boolean state)
    • enableRotateAction

      public void enableRotateAction(boolean state)
    • enableRotateLeftAction

      public void enableRotateLeftAction(boolean state)
    • enableRotateRightAction

      public void enableRotateRightAction(boolean state)
    • enableSetRight

      public void enableSetRight(boolean state)
    • getAddBlockingRegion

      public AbstractJmodelAction getAddBlockingRegion()
    • getRotate

      public AbstractJmodelAction getRotate()
    • getRotateLeft

      public AbstractJmodelAction getRotateLeft()
    • getRotateRight

      public AbstractJmodelAction getRotateRight()
    • getSetRight

      public AbstractJmodelAction getSetRight()
    • getPauseSimulation

      public AbstractJmodelAction getPauseSimulation()
    • getStopSimulation

      public AbstractJmodelAction getStopSimulation()
    • getEditDefaults

      public AbstractJmodelAction getEditDefaults()
    • getEditSimParams

      public AbstractJmodelAction getEditSimParams()
    • getEditPAParams

      public AbstractJmodelAction getEditPAParams()
    • getShowResults

      public AbstractJmodelAction getShowResults()
    • getAbout

      public AbstractJmodelAction getAbout()
    • getBezierEdgeAddControlPoint

      public AbstractJmodelAction getBezierEdgeAddControlPoint()
    • getBezierEdgeAddTangents

      public AbstractJmodelAction getBezierEdgeAddTangents()
    • getBezierEdgeBreakEdge

      public AbstractJmodelAction getBezierEdgeBreakEdge()
    • getBezierEdgeRemoveControlPoint

      public AbstractJmodelAction getBezierEdgeRemoveControlPoint()
    • getBezierEdgeSelectControlPoint

      public AbstractJmodelAction getBezierEdgeSelectControlPoint()
    • getBezierEdgeUnlockTangents

      public AbstractJmodelAction getBezierEdgeUnlockTangents()
    • getCancelEdgeDrawing

      public AbstractJmodelAction getCancelEdgeDrawing()
    • undo

      public void undo()
    • redo

      public void redo()
    • enableUndoAction

      public void enableUndoAction(boolean state)
    • enableRedoAction

      public void enableRedoAction(boolean state)
    • getUndoAction

      public AbstractJmodelAction getUndoAction()
    • getRedoAction

      public AbstractJmodelAction getRedoAction()
    • getUndoManager

      public org.jgraph.graph.GraphUndoManager getUndoManager()
    • setUndoManager

      public void setUndoManager(org.jgraph.graph.GraphUndoManager um)
    • setConnectState

      public void setConnectState()
    • setBezierConnectState

      public void setBezierConnectState()
    • setInsertState

      public void setInsertState(String className)
    • setSelectState

      public void setSelectState()
    • activateSelect

      public void activateSelect()
    • enableCutAction

      public void enableCutAction(boolean state)
    • enableCopyAction

      public void enableCopyAction(boolean state)
    • enablePasteAction

      public void enablePasteAction(boolean state)
    • enableDeleteAction

      public void enableDeleteAction(boolean state)
    • enableSnapToGridAction

      public void enableSnapToGridAction(boolean state)
    • getTakeScreenShot

      public AbstractJmodelAction getTakeScreenShot()
    • setHandle

      public void setHandle(org.jgraph.graph.CellHandle handle)
    • getOpenHelp

      public AbstractJmodelAction getOpenHelp()
    • getNewModel

      public AbstractJmodelAction getNewModel()
    • getOpenModel

      public AbstractJmodelAction getOpenModel()
    • getSaveModel

      public AbstractJmodelAction getSaveModel()
    • getSaveModelAs

      public AbstractJmodelAction getSaveModelAs()
    • getCloseModel

      public AbstractJmodelAction getCloseModel()
    • getSetConnect

      public AbstractJmodelAction getSetConnect()
    • getSetBezierConnect

      public AbstractJmodelAction getSetBezierConnect()
    • getSnapToGrid

      public AbstractJmodelAction getSnapToGrid()
    • getCutAction

      public AbstractJmodelAction getCutAction()
    • getCopyAction

      public AbstractJmodelAction getCopyAction()
    • getPasteAction

      public AbstractJmodelAction getPasteAction()
    • getDeleteAction

      public AbstractJmodelAction getDeleteAction()
    • getSetOptions

      public AbstractJmodelAction getSetOptions()
    • getSetSelect

      public AbstractJmodelAction getSetSelect()
    • getSimulate

      public AbstractJmodelAction getSimulate()
    • getSolveAnalitic

      public AbstractJmodelAction getSolveAnalitic()
    • getSolveApp

      public AbstractJmodelAction getSolveApp()
    • getCellFactory

      public CellFactory getCellFactory()
      Gets cell factory to create new graph cells
      Returns:
      cell factory
    • newModel

      public void newModel()
    • openModel

      public void openModel(File file)
      Opens a model from a data file.
      Author: Bertoli Marco
    • closeModel

      public void closeModel()
    • InsertCell

      public void InsertCell(Point2D pt, JmtCell newCell)
      Inserts a new cell (vertex) in the desired point into the graph.
      Parameters:
      pt - point in absolute coordinates in the
      newCell - the new cell
    • selectAt

      public void selectAt(MouseEvent e)
      Set the state of mouse listener to select & passes the event to the listener as if press event is generated.
      Parameters:
      e -
    • isGraphEnabled

      public boolean isGraphEnabled()
      Determines whether this component is enabled. An enabled component can respond to user input and generate events. Components are enabled initially by default. A component may be enabled or disabled by calling its setEnabled method.
      Returns:
      true if the component is enabled, false otherwise
      Since:
      JDK1.0
    • graphRequestFocus

      public void graphRequestFocus()
    • getTolerance

      public int getTolerance()
    • fromScreen

      public Rectangle2D fromScreen(Rectangle2D r)
    • fromScreen

      public Point2D fromScreen(Point2D p)
    • getGraphGraphics

      public Graphics2D getGraphGraphics()
      Returns this graph's graphics context, which lets you draw on a component. Use this method get a Graphics object and then invoke operations on that object to draw on the component.
      Returns:
      this components graphics context
    • getNextViewAt

      public org.jgraph.graph.CellView getNextViewAt(org.jgraph.graph.CellView current, double x, double y)
    • isForceMarqueeEvent

      public boolean isForceMarqueeEvent(MouseEvent e)
      Returning true signifies the marquee handler has precedence over other handlers, and is receiving subsequent mouse events.
    • getEditClickCount

      public int getEditClickCount()
      Returns the number of clicks for editing of the graph to start.
    • isToggleSelectionEvent

      public boolean isToggleSelectionEvent(MouseEvent e)
      Returning true signifies a mouse event on the cell should toggle the selection of only the cell under mouse.
    • isCellSelected

      public boolean isCellSelected(Object cell)
      Returns true if the cell is currently selected.
      Parameters:
      cell - an object identifying a cell
      Returns:
      true if the cell is selected
    • selectCellForEvent

      public void selectCellForEvent(Object cell, MouseEvent e)
      Messaged to update the selection based on a MouseEvent over a particular cell. If the event is a toggle selection event, the cell is either selected, or deselected. Otherwise the cell is selected.
    • autoscroll

      public void autoscroll(Point p)
      Scroll the graph for an event at p.
    • getGraphCursor

      public Cursor getGraphCursor()
      Gets the cursor set in the graph. If the graph does not have a cursor set, the cursor of its parent is returned. If no cursor is set in the entire hierarchy, Cursor.DEFAULT_CURSOR is returned.
    • setGraphCursor

      public void setGraphCursor(Cursor cursor)
      Sets graph cursor
      Specified by:
      setGraphCursor in interface GraphCursorController
      Parameters:
      cursor - to be set
    • isGraphEditing

      public boolean isGraphEditing()
      Returns true if the graph is being edited. The item that is being edited can be returned by getEditingCell().
    • snap

      public Point2D snap(Point2D p)
      Returns the given point applied to the grid.
      Parameters:
      p - a point in screen coordinates.
      Returns:
      the same point applied to the grid.
    • toScreen

      public Point2D toScreen(Point2D p)
      Upscale the given point in place, i.e. using the given instance.
      Parameters:
      p - the point to be upscaled
      Returns:
      the upscaled point instance
    • getGraphBackground

      public Color getGraphBackground()
      Gets the background color of graph.
      Returns:
      this component's background color; if this component does not have a background color, the background color of its parent is returned
    • getGraphMarqueeColor

      public Color getGraphMarqueeColor()
      Returns the current marquee color of the graph.
    • connect

      public void connect(Point2D start, Point2D current, org.jgraph.graph.PortView inPort, org.jgraph.graph.PortView outPort)
    • connectBezier

      public void connectBezier(Point2D start, Point2D current, JMTPath path, org.jgraph.graph.PortView inPort, org.jgraph.graph.PortView outPort)
    • connect

      public JmtEdge connect(JmtCell source, JmtCell target)
      Creates a connection between given source and target JmtCells
      Parameters:
      source - source cell
      target - target cell
      Returns:
      created component or null if connection between source and target cannot be created Author: Bertoli Marco
    • connect

      public JmtEdge connect(JmtCell source, JmtCell target, boolean forced)
      Creates a connection between given source and target JmtCells
      Parameters:
      source - source cell
      target - target cell
      forced - true if connection must be shown also if could not be created into data structure.
      Returns:
      created component or null if connection between source and target cannot be created Author: Bertoli Marco Modified by Emma Bortone to add the BEZIER ROUTING
    • getStationCell

      public JmtCell getStationCell(Object key)
      Gets the cell for a station, given the search key.
    • getConnectionEdge

      public JmtEdge getConnectionEdge(Object sourceKey, Object targetKey)
      Gets the edge for a connection, given the source and target keys.
    • graphRepaint

      public void graphRepaint()
      Repaints the graph component.
    • getParent

      public Object getParent(Object child)
      Returns the parent of child in the model. child must be a node previously obtained from this data source. This returns null if child is a root in the model.
      Parameters:
      child - a node in the graph, obtained from this data source
      Returns:
      the parent of child
    • getInPortViewAt

      public org.jgraph.graph.PortView getInPortViewAt(int x, int y)
      Gets the first portView of the input port of the cell at position.
      Parameters:
      x -
      y -
      Returns:
      portView of the input port
    • getOutPortViewAt

      public org.jgraph.graph.PortView getOutPortViewAt(int x, int y)
      Gets the first portView of the output port of the cell at position.
      Parameters:
      x -
      y -
      Returns:
      portView of the output port
    • containsCell

      public boolean containsCell(Object cell)
      Tells if a given cell exists in the graph.
      Parameters:
      cell -
      Returns:
      true iff the cell exists
    • isCellVisible

      public boolean isCellVisible(Object cell)
      Tells if a given cell is visible in the graph.
      Parameters:
      cell -
      Returns:
      true iff the cell is visible
    • getViewOfCell

      public org.jgraph.graph.CellView getViewOfCell(Object cell, boolean create)
      Returns the views for the specified array of cells. Returned array may contain null pointers if the respective cell is not mapped in this view and create is false.
    • startEditingAtCell

      public void startEditingAtCell(Object cell)
      Selects the specified cell and initiates editing. The edit-attempt fails if the CellEditor does not allow editing for the specified item.
    • startEditingAtAbstractCell

      public void startEditingAtAbstractCell(Object cell)
    • showStationParameterPanel

      public void showStationParameterPanel(Object stationKey, int section, Object classKey)
    • showBlockingRegionParameterPanel

      public void showBlockingRegionParameterPanel(Object regionKey)
    • showBezierEditingPanel

      public void showBezierEditingPanel()
    • hideBezierEditingPanel

      public void hideBezierEditingPanel()
    • cutSelection

      public void cutSelection()
      Cuts all the selected stations, connections and blocking regions.
    • copySelection

      public void copySelection()
      Copies all the selected stations, connections and blocking regions.
    • pasteSelection

      public void pasteSelection()
      Pastes all the cut/copied stations, connections and blocking regions.
    • deleteSelection

      public void deleteSelection()
      Deletes all the selected stations, connections and blocking regions.
    • delete

      public void delete(Object[] cells)
      Deletes the given elements from graph.
    • deleteJmtEdge

      public void deleteJmtEdge(JmtEdge edge)
      This function deletes a jmtEdge without disconnecting the stations this is used before replacing that edge with another.
    • displayGraphErrMsg

      public void displayGraphErrMsg(String message)
      Displays an error message in the panel that is responsible to make the user understand why a certain operation is not valid.
      Parameters:
      message - error to be displayed.
    • showOPanel

      public void showOPanel(Point p)
      Shows the panel that opens when the right button is clicked.
      Parameters:
      p - point where the right button is clicked on the graph
    • saveModel

      public void saveModel()
      Saves the current model into current file if exists, otherwise calls saveModelAs() Author: Bertoli Marco
    • saveModelAs

      public void saveModelAs()
      Saves the current model into a user specified file. Author: Bertoli Marco
    • updateStationPositions

      public void updateStationPositions()
      Updates station positions into data structure to reflect the one shown on jgraph window. This method is called before saving model. Author: Bertoli Marco
    • populateGraph

      public void populateGraph()
      Uses information retrieved from data structure to recreate graph structure. This method has to be called after loading a model.
      Author: Bertoli Marco
    • getGraph

      public org.jgraph.JGraph getGraph()
      Returns:
      the system JGraph.
    • editUserClasses

      public void editUserClasses()
      Launches the UserClass editor.
    • enableEditUserClasses

      public void enableEditUserClasses(boolean state)
      Enables or not the UserClass editor function.
    • putSelectedCellsInGoodPlace

      public void putSelectedCellsInGoodPlace(Object[] cells, Integer[] X, Integer[] Y)
      This function will put selected cells in place avoiding overlapping with other cells in graph window
      Author: Bertoli Marco Heavily modified by Giuseppe De Cicco & Fabio Granara
    • putCellInGoodPlace

      public void putCellInGoodPlace(JmtCell cell, int x, int y, boolean flag)
    • getCellCoordinates

      public Point2D getCellCoordinates(JmtCell cell)
      Retrieves the location of the given cell.
      Parameters:
      cell - The given cell
      Returns:
      The cell location
    • overlapCells

      public boolean overlapCells(Point2D p, JmtCell cell)
      Checks whether the given cell overlaps an existing cell with its bounds.
      Parameters:
      p - The point where the given cell will be inserted.
      cell - The given cell.
      Returns:
      true - whether there's an overlapping situation.
    • overlapCells

      public boolean overlapCells(Point2D p, Dimension d)
      Checks whether the given region overlaps an existing cell with its bounds. This method is used to control overlapping before inserting new cell into the Jgraph.
      Parameters:
      p - The point where the given cell will be inserted.
      d - The dimensions of cell to be inserted
      Returns:
      true - whether there's an overlapping situation. Author: Bertoli Marco Heavily Modified by Giuseppe De Cicco & Fabio Granara
    • startSimulation

      public void startSimulation()
      Generates the xml to send to simulation engine. Author: Bertoli Marco Modified by Francesco D'Aquino Modified by Michael Fercu (Logger,2008,0.7.4)
    • stopSimulation

      public void stopSimulation()
      Stops current simulation, aborting all measures Author: Bertoli Marco
    • pauseSimulation

      public void pauseSimulation()
      Pauses current simulation Author: Bertoli Marco Modified by Francesco D'Aquino
    • changeSimActionsState

      public void changeSimActionsState(boolean start, boolean pause, boolean stop)
      Changes simulation action status. This method is called by DispatcherThread.
      Specified by:
      changeSimActionsState in interface GuiInterface
      Parameters:
      start - state for start action
      pause - state for pause action
      stop - state for stop action
    • editMeasures

      public void editMeasures()
      Launches the Measure editor. Author: Bertoli Marco
    • getEditMeasures

      public AbstractJmodelAction getEditMeasures()
      Returns:
      A reference to the action EditMeasures.
    • checkForSave

      public boolean checkForSave(String msg)
      Checks if there's an old graph to save. This methods is called when creates/closes/opens a graph.
      Parameters:
      msg - The message to display.
      Returns:
      true - whether the user accepts to save the graph, or he cancels the current action.
    • getSwitchToWizard

      public AbstractJmodelAction getSwitchToWizard()
      Returns:
      A reference to the action SwitchToExactSolver.
    • getOldCursor

      public Cursor getOldCursor()
    • setOldCursor

      public void setOldCursor(Cursor oldCursor)
    • setCursor

      public void setCursor(Cursor cursor)
    • exit

      public void exit()
      Sends an exit signal to main window
    • showDefaultsEditor

      public void showDefaultsEditor()
      Shows a DefaultEditor to edit Defaults parameters
    • resetMouseState

      public void resetMouseState()
      Used to reset mouseListener to default (to avoid File_Save / File_New operations while in inserting mode)
    • isCellEditable

      public boolean isCellEditable(Object cell)
      Returns true iff specified cell is editable. This is used by SelectState to check if editor has to be showed upon double click event.
      Parameters:
      cell - specified cell
      Returns:
      true iff cell is editable
    • handleException

      public void handleException(Exception e)
      Shows a panel with caught exception
      Specified by:
      handleException in interface GuiInterface
      Parameters:
      e - exception to be shown
    • showErrorMessage

      public void showErrorMessage(String message)
      Shows a panel with an error message
      Specified by:
      showErrorMessage in interface GuiInterface
      Parameters:
      message - specified error message
    • toJMVA

      public void toJMVA()
      Switch current model to JMVA exact solver
    • editSimulationParameters

      public void editSimulationParameters()
      Called when EditSimParams action is triggered
    • editPAParameters

      public void editPAParameters()
      Called when EditPAParams action is triggered
    • editTemplate

      public void editTemplate()
      Called when UseTemplate action is triggered
    • setResultsWindow

      public void setResultsWindow(JFrame rsw)
      Sets resultWindow to be shown. This method is used by pollerThread
      Specified by:
      setResultsWindow in interface GuiInterface
      Parameters:
      rsw - window to be set as current ResultsWindow
    • showResultsWindow

      public void showResultsWindow(boolean selected)
      Called when showResults action is triggered
      Parameters:
      selected - Tells if show results button is selected or not Modified by Francesco D'Aquino
    • showResultsWindow

      public void showResultsWindow()
      Shows results window and forces show results button to be selected
      Specified by:
      showResultsWindow in interface GuiInterface
    • getResultsWindow

      public JFrame getResultsWindow()
      Returns current ResultsWindow
      Returns:
      current ResultsWindow or null if none was created
    • getPAProgressWindow

      public PAProgressWindow getPAProgressWindow()
      Returns current PAProgressWindow
      Returns:
      current PAProgressWindow or null if none was created
    • about

      public void about()
      Shows about window
    • isSomethingSelected

      public boolean isSomethingSelected()
      Tells if something is selected into graph window
      Returns:
      true if something is selected
    • takeScreenShot

      public void takeScreenShot()
      Takes a screenshot of current jgraph. Shows a dialog to select image type and name
    • showRelatedPanel

      public void showRelatedPanel(int problemType, int problemSubType, Object relatedStation, Object relatedClass)
      Shows the panel to solve a problem
      Specified by:
      showRelatedPanel in interface GuiInterface
    • isAnimationDisplayable

      public boolean isAnimationDisplayable()
      Used to discover if the instance can display simulation animation
      Specified by:
      isAnimationDisplayable in interface GuiInterface
      Returns:
      true if the instance can display simulation animation
    • getCellDimension

      public Rectangle2D getCellDimension(JmtCell cell)
      Gets the Dimension of a specified cell
      Parameters:
      cell -
      Returns:
      the cell Dimension
    • addCellsToBlockingRegion

      public void addCellsToBlockingRegion(Object regionKey, Object[] cells)
      Adds given JmtCells to a freshly created blocking region. This method will not modify data structure and is used during load operation
    • addSelectionToNewBlockingRegion

      public void addSelectionToNewBlockingRegion()
      Adds a new blocking region that contains selected cells, if this does not overlap with existing one
    • handlesBlockingRegionDrag

      public void handlesBlockingRegionDrag()
      This method is used to reflect drag in and out a blocking region on data structure and to move dragged cells to background to use transparency of blocking region over them
    • rotateComponent

      public void rotateComponent(Object[] cells)
      Method that rotate components author Giuseppe De Cicco & Fabio Granara
    • isInGroup

      public boolean isInGroup(Object cell)
    • avoidOverlappingCell

      public void avoidOverlappingCell(Object[] cells2)
    • forceAdjustGraph

      public void forceAdjustGraph()
    • tryAdjustGraph

      public void tryAdjustGraph(boolean needConfirm)
    • adjustGraph

      public void adjustGraph()
    • setIsReleased

      public void setIsReleased(boolean state)
    • getIsReleased

      public boolean getIsReleased()
    • zoomIn

      public void zoomIn()
    • zoomOut

      public void zoomOut()
    • setAnimationHolder

      public void setAnimationHolder(Thread thread)
      Specified by:
      setAnimationHolder in interface GuiInterface
    • getModel

      public JSimGraphModel getModel()
    • getMainWindow

      public JSIMGraphMain getMainWindow()
    • downloadDefaultTemplates

      public void downloadDefaultTemplates()
    • getBound

      public double getBound()
    • getFileName

      public String getFileName()
      Specified by:
      getFileName in interface GuiInterface
    • toggleGrid

      public void toggleGrid()
      Toggle enableGrid in the JGraph object if the grid was previously enabled, the grid is now disabled. if the grid was previously disabled, the grid is now enabled.
    • snapCellByPort

      public boolean snapCellByPort(JmtCell cell)
      If the grid is enabled, moves a JmtCell so that it one of its ports is snapped to the grid. Returns true if the cell was moved, false otherwise First we try to snap the input port, if it doesn't exists (ex :source) we snap the output port
      Parameters:
      cell - JmtCell
      Returns:
      true if the cell was moved, otherwise returns false
    • rotateLeft

      public void rotateLeft(Object[] cells)
      Set the angle of rotation in the attributes of the rotated cells Load the rotated image
      Parameters:
      cells - list of cells to rotate left
    • rotateRight

      public void rotateRight(Object[] cells)
      Set the angle of rotation in the attributes of the rotated cells Load the rotated image
      Parameters:
      cells - list of cells to rotate left
    • cancelEdgeDrawing

      public void cancelEdgeDrawing()
      This function interrupt the drawing of an Edge For example if the user realised that he made a mistake
    • loadImage

      public void loadImage(JmtCell cell)
      This function load the image of a station applying the right modifications (rotation or mirror)
    • BezierConnectshowHelperBar

      public void BezierConnectshowHelperBar()
      This function shows the helper bar for drawing Bezier Edges
    • BezierConnecthideHelperBar

      public void BezierConnecthideHelperBar()
      This function hides the helper bar for drawing Bezier Edges
    • getBezierConnectionHelperBar

      public BezierConnectionHelperBar getBezierConnectionHelperBar()
      Returns:
      the helper bar for the creation of Bezier Edges
    • updateLabelAfterMovingCell

      public void updateLabelAfterMovingCell(Object[] cells)
      This function updates the labels of all Bezier edges connected to a cell after the cell was moved The labels identify the broken arcs
      Parameters:
      cells - : the cells that were moved
    • editConnectionLabels

      public void editConnectionLabels(Object sourceKey, Object targetKey, Point2D source, Point2D target, JmtEdge edge)
      Edit the labels the given connection A connection needs a labels if it contains one or several broken arcs. The labels are positioned on each side of the breakage to identify how they are connected
      Parameters:
      sourceKey - key of the station at the source of the edge
      targetKey - key of the station at the target of the edge
      source - position of the output port of the source station
      target - position of the input port of the target station
      edge - edge whose labels needs to be edited
    • toFront

      public void toFront(Object[] c)
    • toggleDebug

      public void toggleDebug(boolean enable)
    • editDebugParameter

      public void editDebugParameter()
    • simulationFinished

      public void simulationFinished()
      Description copied from interface: GuiInterface
      Used only for the AnimationPanel to update the table
      Specified by:
      simulationFinished in interface GuiInterface