public class GridEditor extends GridAppFrame
GridEditor
class provides a window in which
to edit a grid.Modifier and Type | Class and Description |
---|---|
protected class |
GridEditor.GridObjectChoice
Nested class used to hold the per-item information for the
entries in the combo box of grid object choices.
|
protected class |
GridEditor.GridObjectIcon
Nested class used to draw the icons used for
GridObject entries in the grid object combo box.
|
GridAppFrame.DisplayMouseListener, GridAppFrame.GUIExceptionHandler
javax.swing.JFrame.AccessibleJFrame
java.awt.Window.AccessibleAWTWindow, java.awt.Window.Type
Modifier and Type | Field and Description |
---|---|
protected javax.swing.JButton |
doneButton |
protected javax.swing.JComboBox<GridEditor.GridObjectChoice> |
objComboBox |
protected GridAppFrame |
parentFrame |
DEFAULT_MAX_DELAY_MSECS, DEFAULT_MIN_DELAY_MSECS
accessibleContext, EXIT_ON_CLOSE, rootPane, rootPaneCheckingEnabled
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
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
Constructor and Description |
---|
GridEditor(GridAppFrame frame)
Constructs an empty GridEditor window to edit the grid in the
specified frame.
|
Modifier and Type | Method and Description |
---|---|
protected void |
addChoicesFromFactory(javax.swing.JComboBox<GridEditor.GridObjectChoice> cb)
Builds up the list of grid object type choices for the editing
palette.
|
protected void |
chooseGridObjType()
Follows up when the user picks a new choice from the
grid object combo box (specified listener action).
|
void |
constructWindowContents()
Constructs the display for a GridEditor using values from the parent
frame.
|
void |
constructWindowContents(java.lang.String title,
java.awt.Color bgColor,
int viewingWidth,
int viewingHeight,
int minCellSize)
Constructs the display for a GridEditor.
|
protected java.lang.Class |
currentGridObjectClass()
Returns the currently selected grid object class.
|
protected javax.swing.JPanel |
defineContent()
Defines contents of main window panel.
|
protected void |
done()
Leaves the editor, returning to the parent frame.
|
protected void |
fillPalette(javax.swing.JToolBar palette)
Puts tools for choosing grid object attributes in
the editing palette, in particular a Type tool for choosing
the type of grid object.
|
protected java.awt.Component |
makeEditingPalette()
Creates the editing palette.
|
protected void |
makeObject(java.lang.Class cls,
Grid grid,
Location loc)
Constructs the specified type of object.
|
protected void |
makeObject(java.lang.Class cls,
Grid grid,
Location loc,
java.awt.Color color)
Constructs the specified type of object.
|
protected java.awt.Component |
makeTypeChoiceComponent()
Makes the grid object type choice combo box.
|
protected void |
onMousePressOverDisplay(Location loc)
Handles a mouse press over the grid display, editing the
contents of the grid at the specified location.
|
protected void |
reportConstructionError(java.lang.Class cls,
java.lang.Exception e,
java.lang.String string)
Reports an error from attempting to construct an object.
|
addGridChangeListener, componentRequiresGrid, componentsEnabledOnlyIfGridSet, componentsEnabledOnlyWhenRunning, componentsEnabledOnlyWhenWaiting, constructDisplay, constructWindowContents, enableAndDisable, enableOnlyIfGridSet, enableOnlyWhenRunning, enableOnlyWhenWaiting, enterNotRunningMode, enterRunningMode, getControlPanel, getDelay, getDisplay, getGrid, getMouseListenerForDisplay, getSpeedSlider, includeControlComponent, includeControlComponent, includeControlComponents, includeMenu, includeMenu, includeSpeedSlider, includeSpeedSlider, includeSpeedSlider, isInRunningMode, makeControlPanel, makeDisplayPanel, makeSliderPanel, notifyGridChangeListeners, onMouseClickOverDisplay, onMouseReleaseOverDisplay, resetDelay, setDelay, setEnabledStatus, setGrid, showGrid
addImpl, createRootPane, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, repaint, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setIconImage, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, update
addNotify, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setBackground, setCursor, setExtendedState, setMaximizedBounds, setMenuBar, setOpacity, setResizable, setShape, setState, setTitle, setUndecorated
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBackground, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOpacity, getOwnedWindows, getOwner, getOwnerlessWindows, getShape, getToolkit, getType, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isAutoRequestFocus, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isOpaque, isShowing, isValidateRoot, pack, paint, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setAutoRequestFocus, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocation, setLocation, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setType, setVisible, show, toBack, toFront
add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, transferFocusDownCycle, validate, validateTree
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, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, 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, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, 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, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resize, resize, revalidate, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setMaximumSize, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
protected GridAppFrame parentFrame
protected javax.swing.JButton doneButton
protected javax.swing.JComboBox<GridEditor.GridObjectChoice> objComboBox
public GridEditor(GridAppFrame frame)
frame
- the frame that invoked this grid editorpublic void constructWindowContents()
public void constructWindowContents(java.lang.String title, java.awt.Color bgColor, int viewingWidth, int viewingHeight, int minCellSize)
constructWindowContents
in class GridAppFrame
title
- frame titlebgColor
- color to paint background of gridviewingWidth
- the width of the viewing areaviewingHeight
- the height of the viewing areaminCellSize
- minimum grid cell side lengthprotected javax.swing.JPanel defineContent()
defineContent
in class GridAppFrame
protected java.awt.Component makeEditingPalette()
protected void fillPalette(javax.swing.JToolBar palette)
protected java.awt.Component makeTypeChoiceComponent()
protected void addChoicesFromFactory(javax.swing.JComboBox<GridEditor.GridObjectChoice> cb)
protected void chooseGridObjType()
protected void onMousePressOverDisplay(Location loc)
onMousePressOverDisplay
in class GridAppFrame
currentGridObjectClass()
protected java.lang.Class currentGridObjectClass()
protected void makeObject(java.lang.Class cls, Grid grid, Location loc)
makeObject
method, passing it the
current color from the combo box.cls
- the type of object to creategrid
- the grid in which to create the objectloc
- the location at which to create the objectprotected void makeObject(java.lang.Class cls, Grid grid, Location loc, java.awt.Color color)
cls
- the type of object to creategrid
- the grid in which to create the objectloc
- the location at which to create the objectcolor
- the color of the new object (some objects may
ignore this)protected void reportConstructionError(java.lang.Class cls, java.lang.Exception e, java.lang.String string)
cls
- the class of the failed objecte
- the exception thrown by the attemptstring
- string describing parameter types used in attemptprotected void done()