public class FreeColDialog<T>
extends javax.swing.JDialog
implements java.beans.PropertyChangeListener
Modifier and Type | Class and Description |
---|---|
static class |
FreeColDialog.DialogType |
javax.swing.JDialog.AccessibleJDialog
java.awt.Dialog.AccessibleAWTDialog, java.awt.Dialog.ModalExclusionType, java.awt.Dialog.ModalityType
java.awt.Window.AccessibleAWTWindow, java.awt.Window.Type
Modifier and Type | Field and Description |
---|---|
protected FreeColClient |
freeColClient
The enclosing client.
|
private static java.util.logging.Logger |
logger |
protected boolean |
modal
Is this dialog modal?
|
protected java.util.List<ChoiceItem<T>> |
options
The options to choose from.
|
private javax.swing.JOptionPane |
pane
The JOptionPane to embed in this dialog.
|
accessibleContext, rootPane, rootPaneCheckingEnabled
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
Modifier | Constructor and Description |
---|---|
protected |
FreeColDialog(FreeColClient freeColClient,
javax.swing.JFrame frame)
Protected constructor for the subclass panels.
|
|
FreeColDialog(FreeColClient freeColClient,
javax.swing.JFrame frame,
FreeColDialog.DialogType type,
boolean modal,
java.lang.Object obj,
javax.swing.ImageIcon icon,
java.util.List<ChoiceItem<T>> options)
Full constructor for canvas to build a dialog in one hit (supplying
the getResponse() implementation).
|
Modifier and Type | Method and Description |
---|---|
static <T> java.util.List<ChoiceItem<T>> |
choices()
Create a list of choices.
|
protected FreeColClient |
getFreeColClient()
Get the FreeColClient.
|
protected Game |
getGame()
Get the game.
|
protected SwingGUI |
getGUI()
Get the GUI.
|
protected ImageLibrary |
getImageLibrary()
Get the Image library.
|
protected Player |
getMyPlayer()
Get the player.
|
T |
getResponse()
Get the response from this dialog.
|
protected Specification |
getSpecification()
Gets the specification.
|
protected java.lang.Object |
getValue()
Get the response that was set by
JOptionPane.setValue(java.lang.Object) and
clean up the dialog. |
protected InGameController |
igc()
Get the client controller.
|
protected void |
initializeDialog(javax.swing.JFrame frame,
FreeColDialog.DialogType type,
boolean modal,
java.lang.Object obj,
javax.swing.ImageIcon icon,
java.util.List<ChoiceItem<T>> options)
Complete the initialization.
|
boolean |
isModal()
Is this a modal dialog?
|
private static void |
iterateOverOpaqueLayersComponents(javax.swing.JComponent j) |
void |
propertyChange(java.beans.PropertyChangeEvent e) |
void |
removeNotify() |
void |
requestFocus() |
boolean |
responded()
Has this dialog been given a response.
|
private int |
selectDefault(java.util.List<ChoiceItem<T>> options)
Select the default option from the supplied options.
|
private java.lang.Object[] |
selectOptions()
Collect the enabled options and return as an array so as to be able
to pass to the JOptionPane constructor.
|
private static void |
setOpaqueLayerRecursive(java.awt.Component opaqueComponent) |
static void |
setSubcomponentsNotOpaque(javax.swing.JComponent j) |
protected void |
setValue(java.lang.Object value)
Set the value of this dialog.
|
void |
setVisible(boolean val) |
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
addNotify, getModalityType, getTitle, hide, isResizable, isUndecorated, setBackground, setModal, setModalityType, setOpacity, setResizable, setShape, setTitle, setUndecorated, show, toBack
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, 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, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setAutoRequestFocus, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImage, setIconImages, setLocation, setLocation, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setType, toFront
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
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, getPeer, 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, requestFocusInWindow, requestFocusInWindow, resize, resize, revalidate, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setMaximumSize, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
private static final java.util.logging.Logger logger
protected final FreeColClient freeColClient
protected boolean modal
protected java.util.List<ChoiceItem<T>> options
private javax.swing.JOptionPane pane
protected FreeColDialog(FreeColClient freeColClient, javax.swing.JFrame frame)
freeColClient
- The FreeColClient
for the game.frame
- The owner frame.public FreeColDialog(FreeColClient freeColClient, javax.swing.JFrame frame, FreeColDialog.DialogType type, boolean modal, java.lang.Object obj, javax.swing.ImageIcon icon, java.util.List<ChoiceItem<T>> options)
freeColClient
- The FreeColClient
for the game.frame
- The owner frame.type
- The DialogType
to create.modal
- Should this dialog be modal?obj
- The main object that explains the choice for the user,
usually just a string, but may be more complex.icon
- An optional icon to display.options
- A list of options to choose from.private int selectDefault(java.util.List<ChoiceItem<T>> options)
options
- A list of options to choose from.private java.lang.Object[] selectOptions()
protected final void initializeDialog(javax.swing.JFrame frame, FreeColDialog.DialogType type, boolean modal, java.lang.Object obj, javax.swing.ImageIcon icon, java.util.List<ChoiceItem<T>> options)
frame
- The owner frame.type
- The DialogType
to create.modal
- Should this dialog be modal?obj
- The main object that explains the choice for the user,
usually just a string, but may be more complex.icon
- An optional icon to display.options
- A list of options to choose from.public static void setSubcomponentsNotOpaque(javax.swing.JComponent j)
private static void iterateOverOpaqueLayersComponents(javax.swing.JComponent j)
private static void setOpaqueLayerRecursive(java.awt.Component opaqueComponent)
protected FreeColClient getFreeColClient()
FreeColClient
.protected SwingGUI getGUI()
GUI
.protected InGameController igc()
InGameController
.protected ImageLibrary getImageLibrary()
ImageLibrary
.protected Game getGame()
Game
.protected Specification getSpecification()
protected Player getMyPlayer()
Player
.protected java.lang.Object getValue()
JOptionPane.setValue(java.lang.Object)
and
clean up the dialog. Used by implementors of getResponse().protected void setValue(java.lang.Object value)
value
- The new value.public boolean responded()
public T getResponse()
public boolean isModal()
isModal
in class java.awt.Dialog
public static <T> java.util.List<ChoiceItem<T>> choices()
public void propertyChange(java.beans.PropertyChangeEvent e)
propertyChange
in interface java.beans.PropertyChangeListener
public void setVisible(boolean val)
setVisible
in class java.awt.Dialog
public void removeNotify()
removeNotify
in class java.awt.Window
public void requestFocus()
requestFocus
in class java.awt.Component