Package net.sf.freecol.client.gui.panel
Class CargoPanel
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JPanel
-
- net.sf.freecol.client.gui.panel.MigPanel
-
- net.sf.freecol.client.gui.panel.FreeColPanel
-
- net.sf.freecol.client.gui.panel.CargoPanel
-
- All Implemented Interfaces:
java.awt.event.ActionListener
,java.awt.image.ImageObserver
,java.awt.MenuContainer
,java.beans.PropertyChangeListener
,java.io.Serializable
,java.util.EventListener
,javax.accessibility.Accessible
,DropTarget
- Direct Known Subclasses:
ColonyPanel.ColonyCargoPanel
public class CargoPanel extends FreeColPanel implements DropTarget, java.beans.PropertyChangeListener
A panel that holds units and goods that represent Units and cargo that are on board the currently selected ship.- 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 Unit
carrier
The carrier that contains cargo.private DefaultTransferHandler
defaultTransferHandler
private static java.util.logging.Logger
logger
-
Fields inherited from class net.sf.freecol.client.gui.panel.FreeColPanel
CANCEL, editable, HELP, MARGIN, NL_SPAN_SPLIT_2, OK, okButton, SPAN_SPLIT_2
-
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 CargoPanel(FreeColClient freeColClient, boolean withTitle)
Creates this CargoPanel.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
accepts(Goods goods)
Can the given goods be dropped on this target?boolean
accepts(Unit unit)
Can the given unit be dropped on this target?java.awt.Component
add(java.awt.Component comp, boolean editState)
Adds a component to this container and makes sure that the unit or goods that the component represents gets modified so that it is on board the currently selected carrier.protected void
addPropertyChangeListeners()
void
cleanup()
Clean up this CargoPanel.Unit
getCarrier()
Get the carrier unit.void
initialize()
Initialize this CargoPanel.boolean
isActive()
Whether this panel is active.void
propertyChange(java.beans.PropertyChangeEvent event)
void
remove(java.awt.Component comp)
void
removeNotify()
protected void
removePropertyChangeListeners()
void
setCarrier(Unit newCarrier)
Set the carrier unit.int
suggested(GoodsType type)
Get a suggested amount of goods to add, used when partial amounts are selected.void
update()
Update this CargoPanel.private void
updateTitle()
Update the title of this CargoPanel.-
Methods inherited from class net.sf.freecol.client.gui.panel.FreeColPanel
actionPerformed, addClosingCallback, createColonyButton, getClientOptions, getFreeColClient, getGame, getGUI, getImageLibrary, getMap, getMyPlayer, getSmallAbstractUnitImage, getSpecification, igc, isEditable, requestFocus, setCancelComponent
-
Methods inherited from class net.sf.freecol.client.gui.panel.MigPanel
getMigLayout, getUIClassID
-
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, 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, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, 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, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, 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, 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, getBounds, 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, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface net.sf.freecol.client.gui.panel.DropTarget
accepts
-
-
-
-
Field Detail
-
logger
private static final java.util.logging.Logger logger
-
carrier
private Unit carrier
The carrier that contains cargo.
-
defaultTransferHandler
private DefaultTransferHandler defaultTransferHandler
-
-
Constructor Detail
-
CargoPanel
public CargoPanel(FreeColClient freeColClient, boolean withTitle)
Creates this CargoPanel.- Parameters:
freeColClient
- TheFreeColClient
for the game.withTitle
- Should the panel have a title?
-
-
Method Detail
-
initialize
public void initialize()
Initialize this CargoPanel.
-
cleanup
public void cleanup()
Clean up this CargoPanel.
-
addPropertyChangeListeners
protected void addPropertyChangeListeners()
-
removePropertyChangeListeners
protected void removePropertyChangeListeners()
-
update
public void update()
Update this CargoPanel.
-
isActive
public boolean isActive()
Whether this panel is active.- Returns:
- boolean true == active
-
getCarrier
public Unit getCarrier()
Get the carrier unit.- Returns:
- The carrier
Unit
.
-
setCarrier
public void setCarrier(Unit newCarrier)
Set the carrier unit.- Parameters:
newCarrier
- The new carrierUnit
.
-
updateTitle
private void updateTitle()
Update the title of this CargoPanel.
-
accepts
public boolean accepts(Goods goods)
Can the given goods be dropped on this target?- Specified by:
accepts
in interfaceDropTarget
- Parameters:
goods
- TheGoods
to check.- Returns:
- True if the goods are acceptable.
-
accepts
public boolean accepts(Unit unit)
Can the given unit be dropped on this target?- Specified by:
accepts
in interfaceDropTarget
- Parameters:
unit
- TheUnit
to check.- Returns:
- True if the unit is acceptable.
-
add
public java.awt.Component add(java.awt.Component comp, boolean editState)
Adds a component to this container and makes sure that the unit or goods that the component represents gets modified so that it is on board the currently selected carrier.- Specified by:
add
in interfaceDropTarget
- Parameters:
comp
- The component to add to this container.editState
- Must be set to 'true' if the state of the component that is added (which should be a dropped component representing a unit or goods) should be changed so that the underlying unit or goods are on board the currently selected carrier.- Returns:
- The component argument on success, null on failure.
-
suggested
public int suggested(GoodsType type)
Get a suggested amount of goods to add, used when partial amounts are selected.- Specified by:
suggested
in interfaceDropTarget
- Parameters:
type
- TheGoodsType
proposed to add.- Returns:
- A good amount of goods to add.
-
propertyChange
public void propertyChange(java.beans.PropertyChangeEvent event)
- Specified by:
propertyChange
in interfacejava.beans.PropertyChangeListener
-
remove
public void remove(java.awt.Component comp)
- Overrides:
remove
in classjava.awt.Container
-
removeNotify
public void removeNotify()
- Overrides:
removeNotify
in classFreeColPanel
-
-