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 Legionattackerprivate RevealEventattackerEventLegionprivate booleanautoScrollprivate intbookmarkprivate Clientclientprivate PlayercurrentPlayerprivate Legiondefenderprivate RevealEventdefenderEventLegionprivate java.util.List<javax.swing.JPanel>displayQueuestatic java.lang.StringevAutoScrollprivate java.util.List<RevealEvent>eventListprivate java.awt.ContainereventPaneprivate javax.swing.JScrollBareventScrollBarprivate javax.swing.JScrollPaneeventScrollPanestatic java.lang.StringevfAcquirestatic java.lang.StringevfLoserstatic java.lang.StringevfMoveRollstatic java.lang.StringevfMulliganstatic java.lang.StringevfPlayerChangestatic java.lang.StringevfRecruitstatic java.lang.StringevfSplitstatic java.lang.StringevfSummonstatic java.lang.StringevfTeleportstatic java.lang.StringevfTurnChangestatic java.lang.StringevfWonstatic java.lang.StringevHideUndonestatic java.lang.StringevMaxTurnsprivate intexpireTurnsprivate booleanhideUndoneEventsprivate RevealEventlastAttackerEventLegionprivate RevealEventlastDefenderEventLegionprivate static java.util.logging.LoggerLOGGERprivate RevealEventloserLegionprivate java.lang.StringmaxStringprivate intmaxTurnsprivate javax.swing.JComboBoxmaxTurnsDisplayExpiringBoxprivate intmulliganOldRollprivate IOptionsoptionsprivate javax.swing.BoxsettingsPaneprivate boolean[]showEventTypeprivate intturnNrprivate booleanvisibleprivate static java.lang.StringWINDOW_TITLEprivate RevealEventwinnerLegion-
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 voidaddCheckbox(java.lang.String optname, java.awt.Container pane)voidaddCreature(Legion legion, CreatureType type, java.lang.String reason)voidaddEvent(RevealEvent e)private voidaddEventToEventPane(RevealEvent e)private voidaddEventToList(RevealEvent e)voidcancelReinforcement(CreatureType creature, int turn)voidcleanup()private voiddisplayFromQueue()voiddispose()private PlayergetActivePlayer()private booleangetBoolOption(java.lang.String name, boolean defaultVal)private voidinitExpireTurnsFromOptions()private booleanisEventRelevant(RevealEvent e)private booleanisEventTooOld(RevealEvent e)voidnewCreatureRevealEvent(int eventType, Legion legion1, CreatureType creature, Legion legion2)private voidnewEvent(int eventType, Legion legion1, java.util.ArrayList<RevealedCreature> rcList, Legion legion2)private voidnewRollEvent(int eventType, int roll1, int roll2)voidnewSplitEvent(int turnNr, Legion legion1, java.util.ArrayList<RevealedCreature> rcList, Legion legion2)private voidpostAddEventActions()voidpurgeOldEvents()private voidqueueForDisplaying(javax.swing.JPanel eventPanel)private voidqueueSignalRemoveAllForDisplaying()Remove all pending events, and queue a null event to signal the displayer to remove all from panel first before adding again.voidrecruitEvent(Legion legion, CreatureType recruit, java.util.List<CreatureType> recruiters, java.lang.String reason)voidremoveCreature(Legion legion, CreatureType type, java.lang.String reason)voidrevealCreatures(Legion legion, java.util.List<CreatureType> creatureTypes, java.lang.String reason)voidrevealEngagedCreatures(java.util.List<CreatureType> creatures, boolean isAttacker, java.lang.String reason)voidsetCreatureDead(BattleUnit battleUnit)voidsetMulliganOldRoll(int roll)private voidsetupGUI()voidsetVisible(boolean visible)voidsetVisibleMaybe()voidtellEngagement(Legion attacker, Legion defender, int turnNumber)voidtellEngagementResults(Legion winner, java.lang.String method, int turns)voidtellMovementRoll(int roll)private voidtriggerDisplaying()voidturnOrPlayerChange(int turnNr, Player player)voidundoEvent(int type, Legion parent, Legion child, int turn)private voidupdatePanels(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:
setVisiblein classKDialog
-
-