com.realtime.crossfire.jxclient.gui.item
Class GUIItemInventory

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by com.realtime.crossfire.jxclient.gui.gui.GUIElement
                  extended by com.realtime.crossfire.jxclient.gui.gui.ActivatableGUIElement
                      extended by com.realtime.crossfire.jxclient.gui.item.GUIItem
                          extended by com.realtime.crossfire.jxclient.gui.item.GUIItemItem
                              extended by com.realtime.crossfire.jxclient.gui.item.GUIItemInventory
All Implemented Interfaces:
GUIScrollable, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable

public class GUIItemInventory
extends GUIItemItem

A GUIItem for displaying inventory objects.

See Also:
Serialized Form

Nested Class Summary
 
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  CommandQueue commandQueue
          The command queue for sending commands.
private  CrossfireServerConnection crossfireServerConnection
          The server instance.
private  int defaultIndex
          The default scroll index.
private  FacesManager facesManager
          The FacesManager instance to use.
private  FloorView floorView
          The FloorView to use.
private  int index
          The inventory slot index.
private  ItemView inventoryView
          The inventory view to watch.
private  LocationListener locationListener
          The ItemListener used to detect items added to or removed from this inventory slot.
private  boolean selected
          If set, paint the element in "selected" state.
private static long serialVersionUID
          The serial version UID.
private  java.lang.Object sync
          The object used for synchronization on index.
 
Fields inherited from class com.realtime.crossfire.jxclient.gui.gui.GUIElement
bufferedImageSync
 
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 java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
GUIItemInventory(TooltipManager tooltipManager, GUIElementListener elementListener, CommandQueue commandQueue, java.lang.String name, Extent extent, ItemPainter itemPainter, int index, CrossfireServerConnection crossfireServerConnection, FacesManager facesManager, FloorView floorView, ItemView inventoryView)
          Creates a new instance.
 
Method Summary
 void button1Clicked(int modifiers)
          Called when the left mouse button was pressed.
 void button2Clicked(int modifiers)
          Called when the middle mouse button was pressed.
 void button3Clicked(int modifiers)
          Called when the right mouse button was pressed.
 boolean canScroll(int distance)
          Returns whether scrolling is possible.
 void dispose()
          Releases all allocated resources.
protected  java.awt.Image getFace(CfItem item)
          Returns the face for a CfItem instance.
 int getIndex()
          Returns the slot index.
protected  boolean isSelected()
          Returns whether this element should drawn as "selected".
 void resetScroll()
          Resets the scroll index to the default value.
 void scroll(int distance)
          
 void setChanged()
          Records that GUIElement.bufferedImage has changed and must be repainted.
private  void setIndex(int index)
          Set the inventory slot to display.
 void setIndexNoListeners(int index)
          Sets the slot index to display without registering listeners for updates.
 void setSelected(boolean selected)
          Sets the selected state.
 
Methods inherited from class com.realtime.crossfire.jxclient.gui.item.GUIItemItem
getItem, render, setItem, setItemNoListeners, updateTooltipText
 
Methods inherited from class com.realtime.crossfire.jxclient.gui.item.GUIItem
activeChanged, mouseClicked, setElementVisible
 
Methods inherited from class com.realtime.crossfire.jxclient.gui.gui.ActivatableGUIElement
isActive, mousePressed, setActive
 
Methods inherited from class com.realtime.crossfire.jxclient.gui.gui.GUIElement
createBufferGraphics, getElementX, getElementY, getGui, getName, getTooltipText, hasBufferedImage, isChanged, isDefault, isElementAtPoint, isElementVisible, isIgnore, mouseDragged, mouseEntered, mouseExited, mouseMoved, mouseReleased, paintComponent, resetChanged, setChangedListener, setChangedNoListeners, setDefault, setElementLocation, setElementSize, setGui, setIgnore, setTooltipText, setTooltipText, toString, updateResolution, updateResolutionConstant
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getAccessibleContext, 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, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintImmediately, paintImmediately, paramString, 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, updateUI
 
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, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, 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, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, transferFocus, transferFocusBackward, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

commandQueue

@NotNull
private final CommandQueue commandQueue
The command queue for sending commands.


crossfireServerConnection

@NotNull
private final CrossfireServerConnection crossfireServerConnection
The server instance.


defaultIndex

private final int defaultIndex
The default scroll index.


facesManager

@NotNull
private final FacesManager facesManager
The FacesManager instance to use.


floorView

@NotNull
private final FloorView floorView
The FloorView to use.


index

private int index
The inventory slot index.


inventoryView

@NotNull
private final ItemView inventoryView
The inventory view to watch.


locationListener

@NotNull
private final LocationListener locationListener
The ItemListener used to detect items added to or removed from this inventory slot.


selected

private boolean selected
If set, paint the element in "selected" state.


serialVersionUID

private static final long serialVersionUID
The serial version UID.

See Also:
Constant Field Values

sync

@NotNull
private final java.lang.Object sync
The object used for synchronization on index.

Constructor Detail

GUIItemInventory

public GUIItemInventory(@NotNull
                        TooltipManager tooltipManager,
                        @NotNull
                        GUIElementListener elementListener,
                        @NotNull
                        CommandQueue commandQueue,
                        java.lang.String name,
                        @NotNull
                        Extent extent,
                        @NotNull
                        ItemPainter itemPainter,
                        int index,
                        @NotNull
                        CrossfireServerConnection crossfireServerConnection,
                        @NotNull
                        FacesManager facesManager,
                        @NotNull
                        FloorView floorView,
                        @NotNull
                        ItemView inventoryView)
Creates a new instance.

Parameters:
tooltipManager - the tooltip manager to update
elementListener - the element listener to notify
commandQueue - the command queue for sending commands
name - the name of this element
extent - the extent of this element
index - the default scroll index
crossfireServerConnection - the connection instance
itemPainter - the item painter for painting the icon
facesManager - the faces manager instance to use
floorView - the floor view to use
inventoryView - the inventory view to watch
Method Detail

button1Clicked

public void button1Clicked(int modifiers)
Called when the left mouse button was pressed.

Specified by:
button1Clicked in class GUIItem
Parameters:
modifiers - the input event modifiers

button2Clicked

public void button2Clicked(int modifiers)
Called when the middle mouse button was pressed.

Overrides:
button2Clicked in class GUIItemItem
Parameters:
modifiers - the input event modifiers

button3Clicked

public void button3Clicked(int modifiers)
Called when the right mouse button was pressed.

Specified by:
button3Clicked in class GUIItem
Parameters:
modifiers - the input event modifiers

canScroll

public boolean canScroll(int distance)
Returns whether scrolling is possible.

Parameters:
distance - the distance to scroll
Returns:
whether scrolling is possible

dispose

public void dispose()
Releases all allocated resources.

Overrides:
dispose in class GUIItemItem

getFace

@NotNull
protected java.awt.Image getFace(@NotNull
                                         CfItem item)
Returns the face for a CfItem instance.

Specified by:
getFace in class GUIItemItem
Parameters:
item - the item instance
Returns:
the face

getIndex

public int getIndex()
Returns the slot index.

Specified by:
getIndex in class GUIItemItem
Returns:
the slot index

isSelected

protected boolean isSelected()
Returns whether this element should drawn as "selected".

Specified by:
isSelected in class GUIItemItem
Returns:
whether this element is selected

resetScroll

public void resetScroll()
Resets the scroll index to the default value.


scroll

public void scroll(int distance)


setChanged

public void setChanged()
Records that GUIElement.bufferedImage has changed and must be repainted.

Overrides:
setChanged in class GUIElement

setIndex

private void setIndex(int index)
Set the inventory slot to display.

Parameters:
index - the inventory slot

setIndexNoListeners

public void setIndexNoListeners(int index)
Sets the slot index to display without registering listeners for updates.

Specified by:
setIndexNoListeners in class GUIItemItem
Parameters:
index - the slot index

setSelected

public void setSelected(boolean selected)
Sets the selected state.

Specified by:
setSelected in class GUIItemItem
Parameters:
selected - whether this element should drawn as "selected"