Package net.sf.colossus.gui
Class Marker
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JPanel
-
- net.sf.colossus.gui.Chit
-
- net.sf.colossus.gui.Marker
-
- All Implemented Interfaces:
java.awt.image.ImageObserver
,java.awt.MenuContainer
,java.io.Serializable
,javax.accessibility.Accessible
public final class Marker extends Chit
Class Marker implements the GUI for a legion marker. TODO this really represents a whole legion (since it shows the height), so it probably should store a Legion object instead of the marker ID TODO after carve out of GUI stuff Marker should probably not be accessed by client at all - need cleanup with Legion ?- Author:
- David Ripton
- 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
-
-
Field Summary
Fields Modifier and Type Field Description private java.awt.Font
font
private int
fontHeight
private int
fontWidth
(package private) java.lang.String
hexLabel
private boolean
highlight
private Legion
legion
private static java.util.logging.Logger
LOGGER
private boolean
showHeight
-
Fields inherited from class javax.swing.JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
-
-
Constructor Summary
Constructors Modifier Constructor Description (package private)
Marker(Legion legion, int scale, java.lang.String id)
Construct a marker without a client.(package private)
Marker(Legion legion, int scale, java.lang.String id, boolean inverted, Client client)
Construct a marker with a client (to be able to ask for doNotInvertOption) but showHeight set to false and specified inverted display (for defender) Use case: Marker on the battle map(package private)
Marker(Legion legion, int scale, java.lang.String id, Client client, boolean showHeight)
Construct a marker where height is shown - will be asked from legion.private
Marker(Legion legion, int scale, java.lang.String id, Client client, boolean inverted, boolean showHeight)
Construct a marker
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) void
highlightMarker()
void
paintComponent(java.awt.Graphics g)
(package private) void
resetMarkerHighlight()
(package private) void
setLocation(java.awt.Point point, java.lang.String hexLabel)
this is only used by Battle markers marking entrances.-
Methods inherited from class net.sf.colossus.gui.Chit
getBounds, getCenter, getId, getMaximumSize, getMinimumSize, getPreferredSize, getTitanPower, isDead, isMarkerId, newCreatureChit, newCreatureChit, newDiceChit, newSymbolChit, rescale, setBorder, setBorderColor, setDead, setLocation, toggleDead, toString
-
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, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getNextFocusableComponent, getPopupLocation, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, 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, 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, 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, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, 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, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, transferFocus, transferFocusBackward, transferFocusUpCycle
-
-
-
-
Field Detail
-
LOGGER
private static final java.util.logging.Logger LOGGER
-
legion
private final Legion legion
-
showHeight
private final boolean showHeight
-
font
private java.awt.Font font
-
fontHeight
private int fontHeight
-
fontWidth
private int fontWidth
-
hexLabel
java.lang.String hexLabel
-
highlight
private boolean highlight
-
-
Constructor Detail
-
Marker
Marker(Legion legion, int scale, java.lang.String id)
Construct a marker without a client. Use this constructor as a bit of documentation when explicitly not wanting a height drawn on the Marker. Use case: The dialogs where legion height is not so important or legion does not even exist (PickMarker, SplitLegion, in RevealEvent for the destroyed legion)
-
Marker
Marker(Legion legion, int scale, java.lang.String id, boolean inverted, Client client)
Construct a marker with a client (to be able to ask for doNotInvertOption) but showHeight set to false and specified inverted display (for defender) Use case: Marker on the battle map- Parameters:
client
- A client, only used to ask for options
-
Marker
Marker(Legion legion, int scale, java.lang.String id, Client client, boolean showHeight)
Construct a marker where height is shown - will be asked from legion. Sometimes (on the master board, for example) heights should be shown, and sometimes (in some dialogs, especially when there is no real legion behind it (e.g. pickMarker, splitLegion)) they should be omitted (or cannot even be asked). Use case: Mostly MasterBoard and some dialogs where height is interesting: Concede/Flee, Negotiate and replyToProposal- Parameters:
client
- A client, only used to ask for options
-
Marker
private Marker(Legion legion, int scale, java.lang.String id, Client client, boolean inverted, boolean showHeight)
Construct a marker- Parameters:
id
- the marker label (like Bk05 or Bk05-Green)showHeight
- set true will add the height of the stackinverted
- set to true (defender legion) will normally invert the marker but NOT if doNotInvertDefender option is true
-
-
Method Detail
-
setLocation
void setLocation(java.awt.Point point, java.lang.String hexLabel)
this is only used by Battle markers marking entrances.
-
highlightMarker
void highlightMarker()
-
resetMarkerHighlight
void resetMarkerHighlight()
-
paintComponent
public void paintComponent(java.awt.Graphics g)
- Overrides:
paintComponent
in classChit
-
-