dk.brics.bisim.view
Class SimulatorView

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JPanel
                  extended by dk.brics.bisim.view.SimulatorView
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible

public class SimulatorView
extends javax.swing.JPanel

A panel for the CCS Visualizer and Simulator.

Author:
Martin Mosegaard martinm@daimi.au.dk
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JPanel
javax.swing.JPanel.AccessibleJPanel
 
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
private  java.awt.Dimension actionDimension
           
private  javax.swing.JPanel actionPanel
           
private  javax.swing.JPanel buttonPanel
           
private  java.io.File currentDir
           
 javax.swing.JButton exitButton
           
private  javax.swing.JFileChooser fileChooser
           
private  att.grappa.GrappaPanel gp
           
private  java.awt.Dimension graphDimension
           
private  javax.swing.JScrollPane graphScrollPane
           
private  int height
           
private  javax.swing.JPanel inputActions
           
private  javax.swing.JScrollPane inputActionScrollPane
           
 javax.swing.JButton inputButton
           
private  javax.swing.JPanel inputPanel
           
private static int NO_OF_ACTIONS
          Minimum number of actions to make room for in the actions panel to the west.
 javax.swing.JButton openFileButton
           
private  javax.swing.JPanel outputActions
           
private  javax.swing.JScrollPane outputActionScrollPane
           
 javax.swing.JButton outputButton
           
private  javax.swing.JPanel outputPanel
           
 javax.swing.JButton randomButton
           
 javax.swing.JButton resetButton
           
private static long serialVersionUID
           
private  java.awt.Dimension stepButtonDimension
           
private  javax.swing.JPanel stepButtonPanel
           
 javax.swing.JButton tauButton
           
private  javax.swing.JTextArea trace
           
private  java.awt.Dimension traceDimension
           
private  javax.swing.JScrollPane traceScrollPane
           
private  int width
           
 
Fields inherited from class javax.swing.JComponent
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
SimulatorView(int width, int height)
           
 
Method Summary
private  void createActionPanel()
           
private  void createAndShow()
           
private  void createLowerButtons()
           
 java.util.ArrayList<javax.swing.JButton> getButtons()
           
 java.io.File openFile()
           
private  void resetInputActions(int elements)
           
private  void resetOutputActions(int elements)
           
 void resetTrace()
           
private  void setDimensions()
           
 void showActions(java.util.HashMap<java.lang.String,java.lang.String> inputActionMap, java.util.HashMap<java.lang.String,java.lang.String> outputActionMap, java.awt.event.MouseListener mListen)
           
 void showGraph(att.grappa.Graph graph, att.grappa.GrappaAdapter ga)
           
 void updateTrace(java.lang.String action)
           
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getWidth, getVisibleRect, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusBackward, transferFocusDownCycle, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

serialVersionUID

private static final long serialVersionUID
See Also:
Constant Field Values

NO_OF_ACTIONS

private static final int NO_OF_ACTIONS
Minimum number of actions to make room for in the actions panel to the west.

See Also:
Constant Field Values

width

private int width

height

private int height

graphDimension

private java.awt.Dimension graphDimension

actionDimension

private java.awt.Dimension actionDimension

stepButtonDimension

private java.awt.Dimension stepButtonDimension

traceDimension

private java.awt.Dimension traceDimension

openFileButton

public javax.swing.JButton openFileButton

resetButton

public javax.swing.JButton resetButton

exitButton

public javax.swing.JButton exitButton

buttonPanel

private javax.swing.JPanel buttonPanel

graphScrollPane

private javax.swing.JScrollPane graphScrollPane

traceScrollPane

private javax.swing.JScrollPane traceScrollPane

actionPanel

private javax.swing.JPanel actionPanel

inputActionScrollPane

private javax.swing.JScrollPane inputActionScrollPane

inputActions

private javax.swing.JPanel inputActions

inputPanel

private javax.swing.JPanel inputPanel

inputButton

public javax.swing.JButton inputButton

tauButton

public javax.swing.JButton tauButton

randomButton

public javax.swing.JButton randomButton

outputButton

public javax.swing.JButton outputButton

stepButtonPanel

private javax.swing.JPanel stepButtonPanel

outputActionScrollPane

private javax.swing.JScrollPane outputActionScrollPane

outputActions

private javax.swing.JPanel outputActions

outputPanel

private javax.swing.JPanel outputPanel

trace

private javax.swing.JTextArea trace

fileChooser

private javax.swing.JFileChooser fileChooser

currentDir

private java.io.File currentDir

gp

private att.grappa.GrappaPanel gp
Constructor Detail

SimulatorView

public SimulatorView(int width,
                     int height)
Method Detail

setDimensions

private void setDimensions()

createAndShow

private void createAndShow()

createLowerButtons

private void createLowerButtons()

createActionPanel

private void createActionPanel()

resetTrace

public void resetTrace()

updateTrace

public void updateTrace(java.lang.String action)

getButtons

public java.util.ArrayList<javax.swing.JButton> getButtons()
Returns:
A list of buttons that need an action listener

showActions

public void showActions(java.util.HashMap<java.lang.String,java.lang.String> inputActionMap,
                        java.util.HashMap<java.lang.String,java.lang.String> outputActionMap,
                        java.awt.event.MouseListener mListen)

resetInputActions

private void resetInputActions(int elements)

resetOutputActions

private void resetOutputActions(int elements)

openFile

public java.io.File openFile()

showGraph

public void showGraph(att.grappa.Graph graph,
                      att.grappa.GrappaAdapter ga)