org.ascape.view.vis
Class SimpleControlView

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 org.ascape.view.vis.PanelView
                      extended by org.ascape.view.vis.SimpleControlView
All Implemented Interfaces:
java.awt.event.ActionListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Externalizable, java.io.Serializable, java.lang.Cloneable, java.util.EventListener, javax.accessibility.Accessible, ScapeListener, HasName, ComponentView

public class SimpleControlView
extends PanelView
implements java.awt.event.ActionListener

A class providing a simple control panel for a running model that does not require Swing. Control views can be attached to any scape, and controls will typically affect the model (entire collection of scapes) as a whole. This class should be used when swing isn't available, but otherwise use ControlBarView.

Since:
1.0
Version:
1.1.2
Author:
Miles Parker
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
protected  boolean allowQuit
          The allow quit.
protected  java.awt.Label iterationText
          The iteration text.
protected  java.awt.Button pauseToggleButton
          The pause toggle button.
protected  java.awt.Button quitButton
          The quit button.
protected  boolean scapeAppearsPaused
          The scape appears paused.
protected  boolean scapeAppearsRunning
          The scape appears running.
protected  java.awt.Button settingsButton
          The settings button.
protected  boolean showIterations
          The show iterations.
protected  java.awt.Button startButton
          The start button.
protected  java.awt.Button stepButton
          The step button.
protected  java.awt.Button stopButton
          The stop button.
 
Fields inherited from class org.ascape.view.vis.PanelView
delegate, iterationsPerRedraw, name, scape
 
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
SimpleControlView()
          Constructs the conrtol view, creating any laying out its components.
SimpleControlView(boolean allowQuit, boolean showIterations)
          Constructs the control view, creating any laying out its components.
 
Method Summary
 void actionPerformed(java.awt.event.ActionEvent event)
          Responds to actions perfromed by components upon this view.
 void build()
          Create components and lay them out.
 java.awt.Dimension getPreferredSize()
          Returns the preferred size of the control view, whcih is width 280 and height 30.
 boolean isAllowQuit()
          Does the view display a quit button, allowing the user to quit? Typically false for applets, true otherwise.
 boolean isShowIterations()
          Does the view display the current iteration? Typically false for applets, true otherwise.
 void setAllowQuit(boolean allowQuit)
          Should the view display a quit button, allowing the user to quit? Typically false for applets, true otherwise.
 void setShowIterations(boolean showIterations)
          Should the view display the current iteration?.
 java.lang.String toString()
          Retruns a short description of this view.
 void updateScapeGraphics()
          Update the components.
 
Methods inherited from class org.ascape.view.vis.PanelView
clone, environmentQuiting, forceScapeNotify, getDelegate, getIcon, getIterationsPerRedraw, getName, getPreferredSizeWithin, getScape, getViewFrame, iconUpdated, isGraphic, isLifeOfScape, notifyScapeUpdated, onChangeIterationsPerRedraw, paintComponent, readExternal, scapeAdded, scapeClosing, scapeDeserialized, scapeInitialized, scapeIterated, scapeNotification, scapeRemoved, scapeSetup, scapeStarted, scapeStopped, setDelegate, setIterationsPerRedraw, setMovieRecorder, setName, setViewFrame, writeExternal
 
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, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, 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, 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, setSize, setSize, show, show, size, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

allowQuit

protected boolean allowQuit
The allow quit.


showIterations

protected boolean showIterations
The show iterations.


startButton

protected java.awt.Button startButton
The start button.


stopButton

protected java.awt.Button stopButton
The stop button.


pauseToggleButton

protected java.awt.Button pauseToggleButton
The pause toggle button.


stepButton

protected java.awt.Button stepButton
The step button.


settingsButton

protected java.awt.Button settingsButton
The settings button.


quitButton

protected java.awt.Button quitButton
The quit button.


iterationText

protected java.awt.Label iterationText
The iteration text.


scapeAppearsRunning

protected boolean scapeAppearsRunning
The scape appears running.


scapeAppearsPaused

protected boolean scapeAppearsPaused
The scape appears paused.

Constructor Detail

SimpleControlView

public SimpleControlView()
Constructs the conrtol view, creating any laying out its components.


SimpleControlView

public SimpleControlView(boolean allowQuit,
                         boolean showIterations)
Constructs the control view, creating any laying out its components.

Parameters:
allowQuit - should the quit button be included?
showIterations - include a label showing the current iteration?
Method Detail

build

public void build()
Create components and lay them out.

Specified by:
build in interface ComponentView
Overrides:
build in class PanelView

actionPerformed

public void actionPerformed(java.awt.event.ActionEvent event)
Responds to actions perfromed by components upon this view. For the control view, these include, start, top, step, pause, resume, and restart actions.

Specified by:
actionPerformed in interface java.awt.event.ActionListener
Parameters:
event - the component event beign handled

updateScapeGraphics

public void updateScapeGraphics()
Update the components. Ensures that the state of all buttons matchhes the state of the observed scape.

Specified by:
updateScapeGraphics in interface ComponentView
Overrides:
updateScapeGraphics in class PanelView

isAllowQuit

public boolean isAllowQuit()
Does the view display a quit button, allowing the user to quit? Typically false for applets, true otherwise.

Returns:
true, if is allow quit

setAllowQuit

public void setAllowQuit(boolean allowQuit)
Should the view display a quit button, allowing the user to quit? Typically false for applets, true otherwise.

Parameters:
allowQuit - true to allow user to quit

isShowIterations

public boolean isShowIterations()
Does the view display the current iteration? Typically false for applets, true otherwise.

Returns:
true, if is show iterations

setShowIterations

public void setShowIterations(boolean showIterations)
Should the view display the current iteration?.

Parameters:
showIterations - true to include a label showing the current iterations

getPreferredSize

public java.awt.Dimension getPreferredSize()
Returns the preferred size of the control view, whcih is width 280 and height 30.

Overrides:
getPreferredSize in class javax.swing.JComponent
Returns:
the preferred size

toString

public java.lang.String toString()
Retruns a short description of this view.

Overrides:
toString in class PanelView
Returns:
the string


Copyright © 1998-2008 The Brookings Institution, NuTech Solutions, Metascape, LLC All Rights Reserved.