jfreerails.client.view
Class BuildTrackJPanel

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 jfreerails.client.view.BuildTrackJPanel
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible, ActiveView

public class BuildTrackJPanel
extends javax.swing.JPanel
implements ActiveView

A JPanel that presents toggle buttons that let the player select the build mode (build track, upgrade track, build station, bulldoze, and info mode) and select the track/bridge/station type to use.

Author:
Luke
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  javax.swing.JToggleButton addStation
           
private  javax.swing.JToggleButton addTrack
           
private  javax.swing.ButtonGroup bridgeButtonGroup
           
private  javax.swing.JPanel bridgesJPanel
           
private  javax.swing.ButtonGroup buildModeButtonGroup
           
private  javax.swing.JPanel buildModeJPanel
           
private  javax.swing.JToggleButton bulldoze
           
private  ImageManager imageManager
           
private  ModelRoot modelRoot
           
private  java.util.HashMap<TrackRule.TrackCategories,java.lang.Integer> selectionSet
           
private static long serialVersionUID
           
private  javax.swing.JPanel spacer
           
private  StationBuildModel stationBuildModel
           
private  javax.swing.ButtonGroup stationButtonGroup
           
private  javax.swing.JPanel stationsJPanel
           
private  javax.swing.ButtonGroup trackButtonGroup
           
private  javax.swing.JPanel trackJPanel
           
private  TrackMoveProducer trackMoveProducer
           
private  javax.swing.ButtonGroup tunnelButtonGroup
           
private  javax.swing.JPanel tunnelsJPanel
           
private  javax.swing.JToggleButton upgradeTrack
           
private  javax.swing.JToggleButton viewMode
           
private  javax.swing.JToggleButton viewMode1
           
private  javax.swing.JToggleButton viewMode2
           
private  javax.swing.JToggleButton viewMode3
           
private  javax.swing.JToggleButton viewMode4
           
 
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
BuildTrackJPanel()
          Creates new form BuildTrackJPanel
 
Method Summary
private  void addNoBridgesButton()
           
private  void addNoTunnelsButton()
           
private  void addStationActionPerformed(java.awt.event.ActionEvent evt)
           
private  void addTrackActionPerformed(java.awt.event.ActionEvent evt)
           
private  void bulldozeActionPerformed(java.awt.event.ActionEvent evt)
           
private  void cancelStationPlacement()
           
private  void formKeyPressed(java.awt.event.KeyEvent evt)
           
private  void formKeyTyped(java.awt.event.KeyEvent evt)
           
private  javax.swing.ImageIcon getIcon(java.lang.String typeName)
           
private  void initComponents()
          This method is called from within the constructor to initialize the form.
private  void setBuildTrackStrategy()
           
private  void setFocusableFalse(javax.swing.ButtonGroup bg)
          Calls setFocusable(false) for each button in the button group.
private  void setTrackBuilderMode(TrackMoveProducer.BuildMode mode)
           
 void setup(ModelRoot mr, ActionRoot ar, RenderersRoot vl, java.awt.event.ActionListener al)
           
private  void setVisible(boolean track, boolean bridges, boolean tunnels, boolean stations)
           
private  void upgradeTrackActionPerformed(java.awt.event.ActionEvent evt)
           
private  void viewModeActionPerformed(java.awt.event.ActionEvent evt)
           
 
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, getVisibleRect, getWidth, 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

imageManager

private final ImageManager imageManager

selectionSet

private java.util.HashMap<TrackRule.TrackCategories,java.lang.Integer> selectionSet

modelRoot

private ModelRoot modelRoot

trackMoveProducer

private TrackMoveProducer trackMoveProducer

stationBuildModel

private StationBuildModel stationBuildModel

addStation

private javax.swing.JToggleButton addStation

addTrack

private javax.swing.JToggleButton addTrack

bridgeButtonGroup

private javax.swing.ButtonGroup bridgeButtonGroup

bridgesJPanel

private javax.swing.JPanel bridgesJPanel

buildModeButtonGroup

private javax.swing.ButtonGroup buildModeButtonGroup

buildModeJPanel

private javax.swing.JPanel buildModeJPanel

bulldoze

private javax.swing.JToggleButton bulldoze

spacer

private javax.swing.JPanel spacer

stationButtonGroup

private javax.swing.ButtonGroup stationButtonGroup

stationsJPanel

private javax.swing.JPanel stationsJPanel

trackButtonGroup

private javax.swing.ButtonGroup trackButtonGroup

trackJPanel

private javax.swing.JPanel trackJPanel

tunnelButtonGroup

private javax.swing.ButtonGroup tunnelButtonGroup

tunnelsJPanel

private javax.swing.JPanel tunnelsJPanel

upgradeTrack

private javax.swing.JToggleButton upgradeTrack

viewMode

private javax.swing.JToggleButton viewMode

viewMode1

private javax.swing.JToggleButton viewMode1

viewMode2

private javax.swing.JToggleButton viewMode2

viewMode3

private javax.swing.JToggleButton viewMode3

viewMode4

private javax.swing.JToggleButton viewMode4
Constructor Detail

BuildTrackJPanel

public BuildTrackJPanel()
Creates new form BuildTrackJPanel

Method Detail

setup

public void setup(ModelRoot mr,
                  ActionRoot ar,
                  RenderersRoot vl,
                  java.awt.event.ActionListener al)
Specified by:
setup in interface ActiveView

setFocusableFalse

private void setFocusableFalse(javax.swing.ButtonGroup bg)
Calls setFocusable(false) for each button in the button group.


addNoTunnelsButton

private void addNoTunnelsButton()

addNoBridgesButton

private void addNoBridgesButton()

getIcon

private javax.swing.ImageIcon getIcon(java.lang.String typeName)

initComponents

private void initComponents()
This method is called from within the constructor to initialize the form. WARNING: Do NOT modify this code. The content of this method is always regenerated by the Form Editor.


formKeyTyped

private void formKeyTyped(java.awt.event.KeyEvent evt)

formKeyPressed

private void formKeyPressed(java.awt.event.KeyEvent evt)

viewModeActionPerformed

private void viewModeActionPerformed(java.awt.event.ActionEvent evt)

bulldozeActionPerformed

private void bulldozeActionPerformed(java.awt.event.ActionEvent evt)

addStationActionPerformed

private void addStationActionPerformed(java.awt.event.ActionEvent evt)

upgradeTrackActionPerformed

private void upgradeTrackActionPerformed(java.awt.event.ActionEvent evt)

addTrackActionPerformed

private void addTrackActionPerformed(java.awt.event.ActionEvent evt)

setVisible

private void setVisible(boolean track,
                        boolean bridges,
                        boolean tunnels,
                        boolean stations)

setBuildTrackStrategy

private void setBuildTrackStrategy()

cancelStationPlacement

private void cancelStationPlacement()

setTrackBuilderMode

private void setTrackBuilderMode(TrackMoveProducer.BuildMode mode)