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.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.BaselineResizeBehavior
 
Field Summary
 
Fields inherited from class javax.swing.JComponent
TOOL_TIP_TEXT_KEY, 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(Unit unit, Canvas parent)
          Initializes this JLabel with the given unit data.
UnitLabel(Unit unit, Canvas parent, boolean isSmall)
          Initializes this JLabel with the given unit data.
UnitLabel(Unit unit, Canvas parent, 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)
           
 Canvas getCanvas()
          Returns the parent Canvas object.
 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
getAccessibleContext, getDisabledIcon, getDisplayedMnemonic, getDisplayedMnemonicIndex, getHorizontalAlignment, getHorizontalTextPosition, getIcon, getIconTextGap, getLabelFor, getText, getUI, getUIClassID, getVerticalAlignment, getVerticalTextPosition, imageUpdate, 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, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, 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, paintImmediately, paintImmediately, print, printAll, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, 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, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, 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, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusBackward, transferFocusDownCycle, validate
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, contains, createImage, createImage, createVolatileImage, createVolatileImage, dispatchEvent, enable, enableInputMethods, 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, 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, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

UnitLabel

public UnitLabel(Unit unit,
                 Canvas parent)
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(Unit unit,
                 Canvas parent,
                 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(Unit unit,
                 Canvas parent,
                 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

getCanvas

public Canvas getCanvas()
Returns the parent Canvas object.

Returns:
This UnitLabel's Canvas.

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)