|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--java.awt.Component | +--java.awt.Container | +--java.awt.Window | +--java.awt.Frame | +--javax.swing.JFrame | +--edu.kzoo.grid.gui.GridAppFrame | +--edu.kzoo.grid.gui.ControlledGridAppFrame
Grid GUI Support Package:
The ControlledGridAppFrame
class provides a window in which
to run and display a grid application controlled by the user via
a combination of Step, NSteps, Run, and Stop buttons. Other options
include a speed slider bar and a Start/Restart button.
Nested Class Summary |
Nested classes inherited from class edu.kzoo.grid.gui.GridAppFrame |
GridAppFrame.DisplayMouseListener, GridAppFrame.GUIExceptionHandler |
Field Summary | |
protected GridAppController |
appController
|
protected boolean |
includeNSteps
|
protected boolean |
includeRun
|
protected boolean |
includeStep
|
protected boolean |
includeStop
|
protected javax.swing.JButton |
nStepsButton
|
protected int |
numStepsSoFar
|
protected int |
numStepsToRun
|
protected boolean |
putRestartFirst
|
protected javax.swing.JButton |
runButton
|
protected boolean |
running
|
protected boolean |
runningNSteps
|
protected javax.swing.JButton |
stepButton
|
protected javax.swing.JButton |
stopButton
|
protected javax.swing.Timer |
timer
|
Fields inherited from class edu.kzoo.grid.gui.GridAppFrame |
DEFAULT_INITIAL_DELAY, DEFAULT_MAX_DELAY_MSECS, DEFAULT_MIN_DELAY_MSECS |
Fields inherited from class javax.swing.JFrame |
accessibleContext, EXIT_ON_CLOSE, rootPane, rootPaneCheckingEnabled |
Fields inherited from class java.awt.Frame |
CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSOR |
Fields inherited from class java.awt.Component |
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT |
Fields inherited from interface javax.swing.WindowConstants |
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, HIDE_ON_CLOSE |
Fields inherited from interface java.awt.image.ImageObserver |
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH |
Constructor Summary | |
ControlledGridAppFrame(GridAppController control,
boolean includeStep,
boolean includeNSteps,
boolean includeRun,
boolean includeStop)
Constructs an empty ControlledGridAppFrame window object that will display a grid controlled by a combination of Step, NSteps, Run, and Stop buttons. |
Method Summary | |
protected void |
enterNotRunningMode()
Enables and disables GUI components as necessary when an application is not running. |
protected void |
enterRunningMode()
Enables and disables GUI components as necessary while the application is running. |
protected java.lang.String |
getClarificationResponse(int suggested)
Provides a follow-up prompt for number of steps if initial response failed validation, and gets result. |
GridAppController |
getController()
Returns the controller used to drive the application. |
protected java.lang.String |
getInitialResponse(int suggested)
Provides inital prompt for number of steps and gets result. |
void |
includeRestartAfterRunButtons(java.lang.String label,
boolean enabled)
Includes a Start/Restart/Reset button with the specified label after the step, N steps, run, and stop buttons. |
void |
includeRestartBeforeRunButtons(java.lang.String label,
boolean enabled)
Includes a Start/Restart/Reset button with the specified label before the step, N steps, run, and stop buttons. |
void |
includeStartRestart(java.lang.String label,
boolean enabled)
Includes a Start/Restart/Reset button with the specified label. |
protected javax.swing.JPanel |
makeControlPanel()
Creates the control panel. |
protected javax.swing.JComponent |
makeControlPanelInterior()
Creates the interior component for the control panel. |
void |
nSteps()
Advances the application multiple (N) steps (where N is provided by the user in a dialog box). |
void |
restart()
Restarts the application. |
void |
run()
Starts a timer to repeatedly step the application at the speed currently indicated by the speed slider. |
void |
setGrid(Grid grid)
Sets the Grid being displayed. |
boolean |
shouldStop()
Determines whether a running application has reached a desired stopping state. |
void |
showGrid()
Shows the grid. |
void |
step()
Advances the application one step. |
void |
stop()
Stops any existing timer currently stepping the application. |
Methods inherited from class edu.kzoo.grid.gui.GridAppFrame |
addGridChangeListener, constructDisplay, constructWindowContents, defineContent, getDelay, getDisplay, getGrid, getMouseListenerForDisplay, getResetButton, getSpeedSlider, includeMenu, includeSpeedSlider, includeSpeedSlider, includeSpeedSlider, makeDisplayPanel, makeSliderPanel, notifyGridChangeListeners, onMousePressOverDisplay, setDelay |
Methods inherited from class javax.swing.JFrame |
addImpl, createRootPane, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getJMenuBar, getLayeredPane, getRootPane, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, update |
Methods inherited from class java.awt.Frame |
addNotify, finalize, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setCursor, setExtendedState, setIconImage, setMaximizedBounds, setMenuBar, setResizable, setState, setTitle, setUndecorated |
Methods inherited from class java.awt.Window |
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getInputContext, getListeners, getLocale, getMostRecentFocusOwner, getOwnedWindows, getOwner, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindowStateListeners, hide, isActive, isFocusableWindow, isFocusCycleRoot, isFocused, isShowing, pack, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, setCursor, setFocusableWindowState, setFocusCycleRoot, setLocationRelativeTo, show, toBack, toFront |
Methods inherited from class java.awt.Container |
add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setFocusTraversalKeys, setFocusTraversalPolicy, setFont, 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, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isOpaque, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, reshape, resize, resize, setBackground, setBounds, setBounds, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, setVisible, show, size, toString, transferFocus, transferFocusUpCycle |
Methods inherited from class java.lang.Object |
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Methods inherited from interface java.awt.MenuContainer |
getFont, postEvent |
Field Detail |
protected GridAppController appController
protected javax.swing.Timer timer
protected boolean putRestartFirst
protected javax.swing.JButton stepButton
protected javax.swing.JButton nStepsButton
protected javax.swing.JButton runButton
protected javax.swing.JButton stopButton
protected boolean includeStep
protected boolean includeNSteps
protected boolean includeRun
protected boolean includeStop
protected boolean running
protected boolean runningNSteps
protected int numStepsToRun
protected int numStepsSoFar
Constructor Detail |
public ControlledGridAppFrame(GridAppController control, boolean includeStep, boolean includeNSteps, boolean includeRun, boolean includeStop)
includeStartRestart
and includeSpeedSlider
to include components on the
other than the basic grid display and the specified run buttons.
Then use the constructWindowContents method to set the properties
of the window and make it visible.
(Precondition: control is not null
.)
control
- the object that controls the running of
the grid application through step
and/or run methods.includeStep
- true
if GUI should include
a One Step buttonincludeNSteps
- true
if GUI should include
an N Steps buttonincludeRun
- true
if GUI should include
a Run... buttonincludeStop
- true
if GUI should include
a Stop buttonMethod Detail |
public void includeStartRestart(java.lang.String label, boolean enabled)
includeStartRestart
in class GridAppFrame
label
- the button label (examples: "Start", "Reset")enabled
- true if button should initially be enabled;
false if button should initially be disabledpublic void includeRestartBeforeRunButtons(java.lang.String label, boolean enabled)
label
- the button label (examples: "Start", "Reset")enabled
- true if button should initially be enabled;
false if button should initially be disabledpublic void includeRestartAfterRunButtons(java.lang.String label, boolean enabled)
label
- the button label (examples: "Start", "Reset")enabled
- true if button should initially be enabled;
false if button should initially be disabledpublic GridAppController getController()
protected javax.swing.JPanel makeControlPanel()
makeControlPanel
in class GridAppFrame
protected javax.swing.JComponent makeControlPanelInterior()
makeControlPanelInterior
in class GridAppFrame
public void setGrid(Grid grid)
setGrid
in interface GridDisplay
setGrid
in class GridAppFrame
grid
- the Grid to displaypublic void showGrid()
showGrid
in interface GridDisplay
showGrid
in class GridAppFrame
public void step()
super.step(); showGrid();
public boolean shouldStop()
true
if the application should
stoppublic void nSteps()
protected java.lang.String getInitialResponse(int suggested)
protected java.lang.String getClarificationResponse(int suggested)
public void run()
public void stop()
public void restart()
restart
in class GridAppFrame
protected void enterRunningMode()
protected void enterNotRunningMode()
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |