Package net.sf.colossus.gui
Class EventViewer
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- java.awt.Window
-
- java.awt.Dialog
-
- javax.swing.JDialog
-
- net.sf.colossus.guiutil.KDialog
-
- net.sf.colossus.gui.EventViewer
-
- All Implemented Interfaces:
java.awt.image.ImageObserver
,java.awt.MenuContainer
,java.io.Serializable
,javax.accessibility.Accessible
,javax.swing.RootPaneContainer
,javax.swing.WindowConstants
final class EventViewer extends KDialog
Event Revealing dialog. It collects all revealed events and displays all or only the recent ones of them.- Author:
- Clemens Katzer
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class javax.swing.JDialog
javax.swing.JDialog.AccessibleJDialog
-
Nested classes/interfaces inherited from class java.awt.Dialog
java.awt.Dialog.AccessibleAWTDialog, java.awt.Dialog.ModalExclusionType, java.awt.Dialog.ModalityType
-
Nested classes/interfaces inherited from class java.awt.Window
java.awt.Window.AccessibleAWTWindow, java.awt.Window.Type
-
-
Field Summary
Fields Modifier and Type Field Description private Legion
attacker
private RevealEvent
attackerEventLegion
private boolean
autoScroll
private int
bookmark
private Client
client
private Player
currentPlayer
private Legion
defender
private RevealEvent
defenderEventLegion
private java.util.List<javax.swing.JPanel>
displayQueue
static java.lang.String
evAutoScroll
private java.util.List<RevealEvent>
eventList
private java.awt.Container
eventPane
private javax.swing.JScrollBar
eventScrollBar
private javax.swing.JScrollPane
eventScrollPane
static java.lang.String
evfAcquire
static java.lang.String
evfLoser
static java.lang.String
evfMoveRoll
static java.lang.String
evfMulligan
static java.lang.String
evfPlayerChange
static java.lang.String
evfRecruit
static java.lang.String
evfSplit
static java.lang.String
evfSummon
static java.lang.String
evfTeleport
static java.lang.String
evfTurnChange
static java.lang.String
evfWon
static java.lang.String
evHideUndone
static java.lang.String
evMaxTurns
private int
expireTurns
private boolean
hideUndoneEvents
private RevealEvent
lastAttackerEventLegion
private RevealEvent
lastDefenderEventLegion
private static java.util.logging.Logger
LOGGER
private RevealEvent
loserLegion
private java.lang.String
maxString
private int
maxTurns
private javax.swing.JComboBox
maxTurnsDisplayExpiringBox
private int
mulliganOldRoll
private IOptions
options
private javax.swing.Box
settingsPane
private boolean[]
showEventType
private int
turnNr
private boolean
visible
private static java.lang.String
WINDOW_TITLE
private RevealEvent
winnerLegion
-
Fields inherited from class javax.swing.JDialog
accessibleContext, rootPane, rootPaneCheckingEnabled
-
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
-
-
Constructor Summary
Constructors Constructor Description EventViewer(javax.swing.JFrame frame, IOptions options, Client client)
Inits the dialog, not necessarily displays it.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private void
addCheckbox(java.lang.String optname, java.awt.Container pane)
void
addCreature(Legion legion, CreatureType type, java.lang.String reason)
void
addEvent(RevealEvent e)
private void
addEventToEventPane(RevealEvent e)
private void
addEventToList(RevealEvent e)
void
cancelReinforcement(CreatureType creature, int turn)
void
cleanup()
private void
displayFromQueue()
void
dispose()
private Player
getActivePlayer()
private boolean
getBoolOption(java.lang.String name, boolean defaultVal)
private void
initExpireTurnsFromOptions()
private boolean
isEventRelevant(RevealEvent e)
private boolean
isEventTooOld(RevealEvent e)
void
newCreatureRevealEvent(int eventType, Legion legion1, CreatureType creature, Legion legion2)
private void
newEvent(int eventType, Legion legion1, java.util.ArrayList<RevealedCreature> rcList, Legion legion2)
private void
newRollEvent(int eventType, int roll1, int roll2)
void
newSplitEvent(int turnNr, Legion legion1, java.util.ArrayList<RevealedCreature> rcList, Legion legion2)
private void
postAddEventActions()
void
purgeOldEvents()
private void
queueForDisplaying(javax.swing.JPanel eventPanel)
private void
queueSignalRemoveAllForDisplaying()
Remove all pending events, and queue a null event to signal the displayer to remove all from panel first before adding again.void
recruitEvent(Legion legion, CreatureType recruit, java.util.List<CreatureType> recruiters, java.lang.String reason)
void
removeCreature(Legion legion, CreatureType type, java.lang.String reason)
void
revealCreatures(Legion legion, java.util.List<CreatureType> creatureTypes, java.lang.String reason)
void
revealEngagedCreatures(java.util.List<CreatureType> creatures, boolean isAttacker, java.lang.String reason)
void
setCreatureDead(BattleUnit battleUnit)
void
setMulliganOldRoll(int roll)
private void
setupGUI()
void
setVisible(boolean visible)
void
setVisibleMaybe()
void
tellEngagement(Legion attacker, Legion defender, int turnNumber)
void
tellEngagementResults(Legion winner, java.lang.String method, int turns)
void
tellMovementRoll(int roll)
private void
triggerDisplaying()
void
turnOrPlayerChange(int turnNr, Player player)
void
undoEvent(int type, Legion parent, Legion child, int turn)
private void
updatePanels(boolean forceAll)
-
Methods inherited from class net.sf.colossus.guiutil.KDialog
assertEDT, centerOnScreen, centerOnScreen, getUpperRightCorner, lowerRightCorner, placeRelative, useSaveWindow
-
Methods inherited from class javax.swing.JDialog
addImpl, createRootPane, dialogInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, repaint, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, update
-
Methods inherited from class java.awt.Dialog
addNotify, getModalityType, getTitle, hide, isModal, isResizable, isUndecorated, setBackground, setModal, setModalityType, setOpacity, setResizable, setShape, setTitle, setUndecorated, show, toBack
-
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, getBackground, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOpacity, getOwnedWindows, getOwner, getOwnerlessWindows, getShape, getToolkit, getType, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isAutoRequestFocus, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isOpaque, isShowing, isValidateRoot, pack, paint, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeNotify, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setAutoRequestFocus, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImage, setIconImages, setLocation, setLocation, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setType, 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, 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
-
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, 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, 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, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, requestFocusInWindow, resize, resize, revalidate, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setMaximumSize, setMixingCutoutShape, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
-
-
-
Field Detail
-
LOGGER
private static final java.util.logging.Logger LOGGER
-
WINDOW_TITLE
private static final java.lang.String WINDOW_TITLE
- See Also:
- Constant Field Values
-
options
private IOptions options
-
client
private Client client
-
visible
private boolean visible
-
eventList
private final java.util.List<RevealEvent> eventList
-
bookmark
private int bookmark
-
displayQueue
private final java.util.List<javax.swing.JPanel> displayQueue
-
turnNr
private int turnNr
-
currentPlayer
private Player currentPlayer
-
expireTurns
private int expireTurns
-
maxString
private java.lang.String maxString
-
eventPane
private java.awt.Container eventPane
-
settingsPane
private javax.swing.Box settingsPane
-
eventScrollPane
private javax.swing.JScrollPane eventScrollPane
-
eventScrollBar
private javax.swing.JScrollBar eventScrollBar
-
evfSplit
public static final java.lang.String evfSplit
- See Also:
- Constant Field Values
-
evfRecruit
public static final java.lang.String evfRecruit
- See Also:
- Constant Field Values
-
evfSummon
public static final java.lang.String evfSummon
- See Also:
- Constant Field Values
-
evfTeleport
public static final java.lang.String evfTeleport
- See Also:
- Constant Field Values
-
evfAcquire
public static final java.lang.String evfAcquire
- See Also:
- Constant Field Values
-
evfWon
public static final java.lang.String evfWon
- See Also:
- Constant Field Values
-
evfLoser
public static final java.lang.String evfLoser
- See Also:
- Constant Field Values
-
evfMulligan
public static final java.lang.String evfMulligan
- See Also:
- Constant Field Values
-
evfMoveRoll
public static final java.lang.String evfMoveRoll
- See Also:
- Constant Field Values
-
evfTurnChange
public static final java.lang.String evfTurnChange
- See Also:
- Constant Field Values
-
evfPlayerChange
public static final java.lang.String evfPlayerChange
- See Also:
- Constant Field Values
-
evAutoScroll
public static final java.lang.String evAutoScroll
- See Also:
- Constant Field Values
-
evHideUndone
public static final java.lang.String evHideUndone
- See Also:
- Constant Field Values
-
evMaxTurns
public static final java.lang.String evMaxTurns
- See Also:
- Constant Field Values
-
showEventType
private final boolean[] showEventType
-
autoScroll
private boolean autoScroll
-
hideUndoneEvents
private boolean hideUndoneEvents
-
maxTurnsDisplayExpiringBox
private javax.swing.JComboBox maxTurnsDisplayExpiringBox
-
maxTurns
private int maxTurns
-
mulliganOldRoll
private int mulliganOldRoll
-
attacker
private Legion attacker
-
defender
private Legion defender
-
attackerEventLegion
private RevealEvent attackerEventLegion
-
defenderEventLegion
private RevealEvent defenderEventLegion
-
lastAttackerEventLegion
private RevealEvent lastAttackerEventLegion
-
lastDefenderEventLegion
private RevealEvent lastDefenderEventLegion
-
winnerLegion
private RevealEvent winnerLegion
-
loserLegion
private RevealEvent loserLegion
-
-
Method Detail
-
initExpireTurnsFromOptions
private void initExpireTurnsFromOptions()
-
getBoolOption
private boolean getBoolOption(java.lang.String name, boolean defaultVal)
-
addCheckbox
private void addCheckbox(java.lang.String optname, java.awt.Container pane)
-
setupGUI
private void setupGUI()
-
isEventTooOld
private boolean isEventTooOld(RevealEvent e)
-
isEventRelevant
private boolean isEventRelevant(RevealEvent e)
-
queueForDisplaying
private void queueForDisplaying(javax.swing.JPanel eventPanel)
-
queueSignalRemoveAllForDisplaying
private void queueSignalRemoveAllForDisplaying()
Remove all pending events, and queue a null event to signal the displayer to remove all from panel first before adding again.
-
displayFromQueue
private void displayFromQueue()
-
postAddEventActions
private void postAddEventActions()
-
addEventToEventPane
private void addEventToEventPane(RevealEvent e)
-
addEventToList
private void addEventToList(RevealEvent e)
-
triggerDisplaying
private void triggerDisplaying()
-
addEvent
public void addEvent(RevealEvent e)
-
updatePanels
private void updatePanels(boolean forceAll)
-
getActivePlayer
private Player getActivePlayer()
-
newRollEvent
private void newRollEvent(int eventType, int roll1, int roll2)
-
newEvent
private void newEvent(int eventType, Legion legion1, java.util.ArrayList<RevealedCreature> rcList, Legion legion2)
-
turnOrPlayerChange
public void turnOrPlayerChange(int turnNr, Player player)
-
setMulliganOldRoll
public void setMulliganOldRoll(int roll)
-
tellMovementRoll
public void tellMovementRoll(int roll)
-
tellEngagementResults
public void tellEngagementResults(Legion winner, java.lang.String method, int turns)
-
newCreatureRevealEvent
public void newCreatureRevealEvent(int eventType, Legion legion1, CreatureType creature, Legion legion2)
-
newSplitEvent
public void newSplitEvent(int turnNr, Legion legion1, java.util.ArrayList<RevealedCreature> rcList, Legion legion2)
-
revealCreatures
public void revealCreatures(Legion legion, java.util.List<CreatureType> creatureTypes, java.lang.String reason)
-
revealEngagedCreatures
public void revealEngagedCreatures(java.util.List<CreatureType> creatures, boolean isAttacker, java.lang.String reason)
-
addCreature
public void addCreature(Legion legion, CreatureType type, java.lang.String reason)
-
cancelReinforcement
public void cancelReinforcement(CreatureType creature, int turn)
-
removeCreature
public void removeCreature(Legion legion, CreatureType type, java.lang.String reason)
-
recruitEvent
public void recruitEvent(Legion legion, CreatureType recruit, java.util.List<CreatureType> recruiters, java.lang.String reason)
-
setCreatureDead
public void setCreatureDead(BattleUnit battleUnit)
-
purgeOldEvents
public void purgeOldEvents()
-
cleanup
public void cleanup()
-
setVisibleMaybe
public void setVisibleMaybe()
-
setVisible
public void setVisible(boolean visible)
- Overrides:
setVisible
in classKDialog
-
-