Class GUIMap
java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
com.realtime.crossfire.jxclient.gui.gui.AbstractGUIElement
com.realtime.crossfire.jxclient.gui.map.AbstractGUIMap
com.realtime.crossfire.jxclient.gui.map.GUIMap
- All Implemented Interfaces:
GUIElement
,ImageObserver
,MenuContainer
,Serializable
Display the map view. It supports both normal-sized (32x32 pixel) and double
sized (64x64 pixel) sized tiles.
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
-
Field Summary
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
Fields inherited from class java.awt.Component
accessibleContext, 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
ConstructorsConstructorDescriptionGUIMap
(boolean avoidCopyArea, @NotNull TooltipManager tooltipManager, @NotNull GUIElementListener elementListener, @NotNull String name, @NotNull MapUpdaterState mapUpdaterState, @NotNull FacesProvider facesProvider, @NotNull CrossfireServerConnection crossfireServerConnection, @NotNull SmoothFaces smoothFaces, @NotNull DarknessColors darknessColors, @NotNull GuiFactory guiFactory) Creates a new instance. -
Method Summary
Modifier and TypeMethodDescriptionint
Returns the minimal map height in squares needed to fill the map area.int
Returns the minimal map width in squares needed to fill the map area.@Nullable Dimension
@Nullable TooltipText
Returns the current tooltip text.protected void
markPlayer
(@NotNull Graphics g, int dx, int dy) Paints the player location.void
mouseClicked
(@NotNull MouseEvent e) Will be called when the user has clicked (pressed+released) this element.void
Called each time the enclosing dialog is opened (or raised).protected void
paintSquareBackground
(@NotNull Graphics g, int px, int py, boolean hasImage, @NotNull CfMapSquare mapSquare) Paints the background of a map square.Methods inherited from class com.realtime.crossfire.jxclient.gui.map.AbstractGUIMap
dispose, getMapHeight, getMapWidth, getMinimumSize, getOffsetX, getOffsetY, getPlayerX, getPlayerY, paintColoredSquare, paintComponent, redrawSquare, setBounds
Methods inherited from class com.realtime.crossfire.jxclient.gui.gui.AbstractGUIElement
getDialogBorderBottom, getDialogBorderLeft, getDialogBorderRight, getDialogBorderTop, getName, inhibitListeners, isDefault, isIgnore, mouseDragged, mouseEntered, mouseExited, mouseMoved, mousePressed, mouseReleased, mouseWheelMoved, newTooltipText, setChanged, setChangedListener, setDefault, setIgnore, tooltipChanged, toString
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, getNextFocusableComponent, getPopupLocation, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getUI, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, 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, getAccessibleContext, 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, 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, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, transferFocus, transferFocusBackward, transferFocusUpCycle
-
Constructor Details
-
GUIMap
public GUIMap(boolean avoidCopyArea, @NotNull @NotNull TooltipManager tooltipManager, @NotNull @NotNull GUIElementListener elementListener, @NotNull @NotNull String name, @NotNull @NotNull MapUpdaterState mapUpdaterState, @NotNull @NotNull FacesProvider facesProvider, @NotNull @NotNull CrossfireServerConnection crossfireServerConnection, @NotNull @NotNull SmoothFaces smoothFaces, @NotNull @NotNull DarknessColors darknessColors, @NotNull @NotNull GuiFactory guiFactory) Creates a new instance.- Parameters:
avoidCopyArea
- whether map scrolling is done by copying pixel areas; if unset, always repaint all map squarestooltipManager
- the tooltip manager to updateelementListener
- the element listener to notifyname
- the name of this elementmapUpdaterState
- the map updater state instance to usefacesProvider
- the faces provider for looking up facescrossfireServerConnection
- the server connection to monitorsmoothFaces
- the smooth faces to usedarknessColors
- the darkness colors instance for converting darkness values into colorsguiFactory
- the global GUI factory instance
-
-
Method Details
-
paintSquareBackground
protected void paintSquareBackground(@NotNull @NotNull Graphics g, int px, int py, boolean hasImage, @NotNull @NotNull CfMapSquare mapSquare) Description copied from class:AbstractGUIMap
Paints the background of a map square.- Specified by:
paintSquareBackground
in classAbstractGUIMap
- Parameters:
g
- the graphics to paint intopx
- the x-offset for paintingpy
- the y-offset for paintinghasImage
- whether the square contains at least one imagemapSquare
- the map square
-
markPlayer
Description copied from class:AbstractGUIMap
Paints the player location.- Specified by:
markPlayer
in classAbstractGUIMap
- Parameters:
g
- the graphics to paint todx
- the x distance to map has just scrolleddy
- the y distance to map has just scrolled
-
mouseClicked
Description copied from interface:GUIElement
Will be called when the user has clicked (pressed+released) this element. This event will be delivered afterGUIElement.mouseReleased(MouseEvent)
.- Specified by:
mouseClicked
in interfaceGUIElement
- Overrides:
mouseClicked
in classAbstractGUIElement
- Parameters:
e
- the mouse event relative to this element
-
getTooltip
Description copied from class:AbstractGUIElement
Returns the current tooltip text.- Specified by:
getTooltip
in classAbstractGUIElement
- Returns:
- the tooltip text or
null
to not show a tooltip
-
notifyOpen
public void notifyOpen()Description copied from interface:GUIElement
Called each time the enclosing dialog is opened (or raised). -
getPreferredSize
- Overrides:
getPreferredSize
in classJComponent
-
getPreferredMapWidth
public int getPreferredMapWidth()Returns the minimal map width in squares needed to fill the map area.- Returns:
- the map width in squares
-
getPreferredMapHeight
public int getPreferredMapHeight()Returns the minimal map height in squares needed to fill the map area.- Returns:
- the map height in squares
-