net.sf.freecol.client.gui.panel
Class UnitLabel

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JLabel
                  extended by net.sf.freecol.client.gui.panel.UnitLabel
All Implemented Interfaces:
java.awt.event.ActionListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible, javax.swing.SwingConstants

public final class UnitLabel
extends javax.swing.JLabel
implements java.awt.event.ActionListener

This label holds Unit data in addition to the JLabel data, which makes it ideal to use for drag and drop purposes.

See Also:
Serialized Form

Nested Class Summary
static class UnitLabel.UnitAction
           
 
Nested classes/interfaces inherited from class javax.swing.JLabel
javax.swing.JLabel.AccessibleJLabel
 
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
private  FreeColClient freeColClient
           
private  GUI gui
           
private  boolean ignoreLocation
           
private  InGameController inGameController
           
private  boolean isSmall
           
private static java.util.logging.Logger logger
           
private  boolean selected
           
private  Unit unit
           
 
Fields inherited from class javax.swing.JLabel
labelFor
 
Fields inherited from class javax.swing.JComponent
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface javax.swing.SwingConstants
BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
UnitLabel(FreeColClient freeColClient, Unit unit, GUI gui)
          Initializes this JLabel with the given unit data.
UnitLabel(FreeColClient freeColClient, Unit unit, GUI gui, boolean isSmall)
          Initializes this JLabel with the given unit data.
UnitLabel(FreeColClient freeColClient, Unit unit, GUI gui, boolean isSmall, boolean ignoreLocation)
          Initializes this JLabel with the given unit data.
 
Method Summary
 void actionPerformed(java.awt.event.ActionEvent event)
          Analyzes an event and calls the right external methods to take care of the user's request.
 boolean canUnitBeEquipedWith(javax.swing.JLabel data)
           
 java.lang.String getDescriptionLabel()
          Gets the description label.
 Unit getUnit()
          Returns this UnitLabel's unit data.
 void paintComponent(java.awt.Graphics g)
          Paints this UnitLabel.
 void setDescriptionLabel(java.lang.String label)
          Sets the description label.
 void setIgnoreLocation(boolean b)
          Sets whether or not this unit label should include production and state information.
 void setSelected(boolean b)
          Sets whether or not this unit should be selected.
 void setSmall(boolean isSmall)
          Makes a smaller version.
 void updateIcon()
           
 
Methods inherited from class javax.swing.JLabel
checkHorizontalKey, checkVerticalKey, getAccessibleContext, getDisabledIcon, getDisplayedMnemonic, getDisplayedMnemonicIndex, getHorizontalAlignment, getHorizontalTextPosition, getIcon, getIconTextGap, getLabelFor, getText, getUI, getUIClassID, getVerticalAlignment, getVerticalTextPosition, imageUpdate, paramString, setDisabledIcon, setDisplayedMnemonic, setDisplayedMnemonic, setDisplayedMnemonicIndex, setHorizontalAlignment, setHorizontalTextPosition, setIcon, setIconTextGap, setLabelFor, setText, setUI, setVerticalAlignment, setVerticalTextPosition, 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, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintImmediately, paintImmediately, 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
 
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, 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, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, 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, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, 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
 

Field Detail

logger

private static java.util.logging.Logger logger

unit

private final Unit unit

selected

private boolean selected

isSmall

private boolean isSmall

ignoreLocation

private boolean ignoreLocation

inGameController

private InGameController inGameController

freeColClient

private FreeColClient freeColClient

gui

private GUI gui
Constructor Detail

UnitLabel

public UnitLabel(FreeColClient freeColClient,
                 Unit unit,
                 GUI gui)
Initializes this JLabel with the given unit data.

Parameters:
unit - The Unit that this JLabel will visually represent.
parent - The parent that knows more than we do.

UnitLabel

public UnitLabel(FreeColClient freeColClient,
                 Unit unit,
                 GUI gui,
                 boolean isSmall)
Initializes this JLabel with the given unit data.

Parameters:
unit - The Unit that this JLabel will visually represent.
parent - The parent that knows more than we do.
isSmall - The image will be smaller if set to true.

UnitLabel

public UnitLabel(FreeColClient freeColClient,
                 Unit unit,
                 GUI gui,
                 boolean isSmall,
                 boolean ignoreLocation)
Initializes this JLabel with the given unit data.

Parameters:
unit - The Unit that this JLabel will visually represent.
parent - The parent that knows more than we do.
isSmall - The image will be smaller if set to true.
ignoreLocation - The image will not include production or state information if set to true.
Method Detail

getUnit

public Unit getUnit()
Returns this UnitLabel's unit data.

Returns:
This UnitLabel's unit data.

setSelected

public void setSelected(boolean b)
Sets whether or not this unit should be selected.

Parameters:
b - Whether or not this unit should be selected.

setIgnoreLocation

public void setIgnoreLocation(boolean b)
Sets whether or not this unit label should include production and state information.

Parameters:
b - Whether or not this unit label should include production and state information.

setSmall

public void setSmall(boolean isSmall)
Makes a smaller version.

Parameters:
isSmall - The image will be smaller if set to true.

getDescriptionLabel

public java.lang.String getDescriptionLabel()
Gets the description label. The description label is a tooltip with the unit name and description of the terrain its on if applicable *

Returns:
This UnitLabel's description label.

setDescriptionLabel

public void setDescriptionLabel(java.lang.String label)
Sets the description label. The description label is a tooltip with the unit name and description of the terrain its on if applicable

Parameters:
label - The string to set the label to.

paintComponent

public void paintComponent(java.awt.Graphics g)
Paints this UnitLabel.

Overrides:
paintComponent in class javax.swing.JComponent
Parameters:
g - The graphics context in which to do the painting.

actionPerformed

public void actionPerformed(java.awt.event.ActionEvent event)
Analyzes an event and calls the right external methods to take care of the user's request.

Specified by:
actionPerformed in interface java.awt.event.ActionListener
Parameters:
event - The incoming action event

updateIcon

public void updateIcon()

canUnitBeEquipedWith

public boolean canUnitBeEquipedWith(javax.swing.JLabel data)