Package net.sf.colossus.gui
Class GUIMasterHex
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- net.sf.colossus.gui.GUIHex<MasterHex>
-
- net.sf.colossus.gui.GUIMasterHex
-
- All Implemented Interfaces:
java.awt.image.ImageObserver
,java.awt.MenuContainer
,java.io.Serializable
public final class GUIMasterHex extends GUIHex<MasterHex>
Class GUIMasterHex holds GUI information for a MasterHex.- Author:
- David Ripton, Romain Dolbeau
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description private java.awt.FontMetrics
fontMetrics
private int
halfFontHeight
private java.awt.geom.GeneralPath
highlightBorder
private boolean
inverted
private static java.lang.String
invertedPostfix
private static java.util.logging.Logger
LOGGER
private java.awt.Point
offCenter
private java.awt.Color
selectColor
private java.lang.ref.WeakReference<MasterBoard>
weakBoardRef
-
Fields inherited from class net.sf.colossus.gui.GUIHex
antialias, hexagon, len, rectBound, SQRT3, useOverlay, xVertex, yVertex
-
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 Constructor Description GUIMasterHex(MasterHex model)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
cleanup()
private void
drawGate(java.awt.Graphics2D g2, double vx1, double vy1, double vx2, double vy2, Constants.HexsideGates gateType)
(package private) java.awt.Point
getOffCenter()
Return a point near the center of the hex, vertically offset a bit toward the fat side.private java.awt.Image
getOverlayImage()
(package private) void
init(int cx, int cy, int scale, boolean inverted, MasterBoard board)
(package private) boolean
isInverted()
void
paint(java.awt.Graphics g)
void
paintHighlightIfNeeded(java.awt.Graphics2D g2)
private void
paintLabel(java.awt.Graphics2D g2)
private boolean
paintOverlay(java.awt.Graphics2D g)
private void
paintTerrainName(java.awt.Graphics2D g2)
void
repaint()
void
select()
(package private) void
setSelectColor(java.awt.Color color)
private int
stringWidth(java.lang.String s, java.awt.Graphics2D g2)
void
unselect()
-
Methods inherited from class net.sf.colossus.gui.GUIHex
contains, findCenter, findCenter2D, getAntialias, getBounds, getCliffOrArrowsPositionXArray, getCliffOrArrowsPositionYArray, getHexModel, getOverlay, getWallOrSlopePositionXArray, getWallOrSlopePositionYArray, isSelected, makePolygon, setAntialias, setHexModel, setOverlay, setSelected
-
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, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getUI, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, paramString, 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, updateUI
-
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, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getAccessibleContext, 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, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
-
-
-
Field Detail
-
LOGGER
private static final java.util.logging.Logger LOGGER
-
inverted
private boolean inverted
-
fontMetrics
private java.awt.FontMetrics fontMetrics
-
halfFontHeight
private int halfFontHeight
-
offCenter
private java.awt.Point offCenter
-
weakBoardRef
private java.lang.ref.WeakReference<MasterBoard> weakBoardRef
-
highlightBorder
private java.awt.geom.GeneralPath highlightBorder
-
selectColor
private java.awt.Color selectColor
-
invertedPostfix
private static final java.lang.String invertedPostfix
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
GUIMasterHex
GUIMasterHex(MasterHex model)
-
-
Method Detail
-
init
void init(int cx, int cy, int scale, boolean inverted, MasterBoard board)
-
paint
public void paint(java.awt.Graphics g)
- Overrides:
paint
in classjavax.swing.JComponent
-
paintHighlightIfNeeded
public void paintHighlightIfNeeded(java.awt.Graphics2D g2)
-
stringWidth
private int stringWidth(java.lang.String s, java.awt.Graphics2D g2)
-
paintLabel
private void paintLabel(java.awt.Graphics2D g2)
-
paintTerrainName
private void paintTerrainName(java.awt.Graphics2D g2)
-
repaint
public void repaint()
- Overrides:
repaint
in classjava.awt.Component
-
drawGate
private void drawGate(java.awt.Graphics2D g2, double vx1, double vy1, double vx2, double vy2, Constants.HexsideGates gateType)
-
getOffCenter
java.awt.Point getOffCenter()
Return a point near the center of the hex, vertically offset a bit toward the fat side.
-
isInverted
boolean isInverted()
-
setSelectColor
void setSelectColor(java.awt.Color color)
-
getOverlayImage
private java.awt.Image getOverlayImage()
-
paintOverlay
private boolean paintOverlay(java.awt.Graphics2D g)
-
cleanup
public void cleanup()
-
-