public abstract class AbstractGUIElement extends javax.swing.JComponent implements GUIElement
Guis
.javax.swing.JComponent.AccessibleJComponent
Modifier and Type | Field and Description |
---|---|
private GUIElementChangedListener |
changedListener
The
GUIElementChangedListener to be notified whenever this
element has changed. |
private GUIElementListener |
elementListener
The
GUIElementListener to notify. |
private boolean |
ignore
Whether this gui element should be ignored for user interaction.
|
private boolean |
isDefault
Whether this element is the default element.
|
private java.lang.String |
name
The name of this element.
|
private boolean |
pendingChange
Used to avoid refreshing items all the time.
|
private static long |
serialVersionUID
The serial version UID.
|
private java.lang.Runnable |
setChangedRunnable
The
Runnable that implements the code of setChanged()
which must run on the EDT. |
private TooltipManager |
tooltipManager
The
TooltipManager to update. |
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
Modifier | Constructor and Description |
---|---|
protected |
AbstractGUIElement(TooltipManager tooltipManager,
GUIElementListener elementListener,
java.lang.String name,
int transparency)
Creates a new instance.
|
Modifier and Type | Method and Description |
---|---|
void |
dispose()
Releases all allocated resources.
|
java.lang.String |
getName()
Returns the internal name of this gui element.
|
boolean |
hasTooltipText()
Returns whether the tooltip is enabled.
|
boolean |
isDefault()
Returns whether this element is the default element.
|
boolean |
isIgnore()
Returns whether this gui element is to be ignored for user interaction.
|
void |
mouseClicked(java.awt.event.MouseEvent e)
Will be called when the user has clicked (pressed+released) this element.
|
void |
mouseDragged(java.awt.event.MouseEvent e)
Will be called when the mouse moves within this component while the
button is pressed.
|
void |
mouseEntered(java.awt.event.MouseEvent e,
boolean debugGui)
Will be called when the mouse has entered the bounding box of this
element.
|
void |
mouseExited(java.awt.event.MouseEvent e)
Will be called when the mouse has left the bounding box of this element.
|
void |
mouseMoved(java.awt.event.MouseEvent e)
Will be called when the mouse moves within this component.
|
void |
mousePressed(java.awt.event.MouseEvent e)
Will be called when the user has pressed the mouse inside this element.
|
void |
mouseReleased(java.awt.event.MouseEvent e)
Will be called when the user has released the mouse.
|
void |
setChanged()
Records that the contents have changed and must be repainted.
|
void |
setChangedListener(GUIElementChangedListener changedListener)
Sets the
GUIElementChangedListener to be notified. |
void |
setDefault(boolean isDefault)
Sets whether this element is the default element.
|
void |
setIgnore()
Marks this gui element to be ignored for user interaction.
|
void |
setTooltipText(java.lang.String tooltipText)
Sets the tooltip text to show when the mouse is inside this element.
|
void |
setTooltipText(java.lang.String tooltipText,
int x,
int y,
int w,
int h)
Sets the tooltip text to show when the mouse is inside this element.
|
java.lang.String |
toString() |
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, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, 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
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
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, getPeer, 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, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, transferFocus, transferFocusBackward, transferFocusUpCycle
@Nullable private GUIElementChangedListener changedListener
GUIElementChangedListener
to be notified whenever this
element has changed.@NotNull private final GUIElementListener elementListener
GUIElementListener
to notify.private boolean ignore
private boolean isDefault
@NotNull private final java.lang.String name
private boolean pendingChange
private static final long serialVersionUID
@NotNull private final java.lang.Runnable setChangedRunnable
Runnable
that implements the code of setChanged()
which must run on the EDT.@NotNull private final TooltipManager tooltipManager
TooltipManager
to update.protected AbstractGUIElement(@NotNull TooltipManager tooltipManager, @NotNull GUIElementListener elementListener, @NotNull java.lang.String name, int transparency)
tooltipManager
- the tooltip manager to updateelementListener
- the element listener to notifyname
- the name of this elementtransparency
- the transparency value for the backing bufferpublic void dispose()
dispose
in interface GUIElement
@NotNull public java.lang.String getName()
getName
in interface GUIElement
getName
in class java.awt.Component
public boolean hasTooltipText()
hasTooltipText
in interface GUIElement
public boolean isDefault()
isDefault
in interface GUIElement
public boolean isIgnore()
isIgnore
in interface GUIElement
public void mouseClicked(@NotNull java.awt.event.MouseEvent e)
GUIElement.mouseReleased(MouseEvent)
.mouseClicked
in interface GUIElement
e
- the mouse event relative to this elementpublic void mouseDragged(@NotNull java.awt.event.MouseEvent e)
GUIElement.mouseMoved(MouseEvent)
.
Note: if the mouse leaves this element's bounding box while the mouse
button is still pressed, further mouseDragged
(but no mouseMoved
) events will be generated.
mouseDragged
in interface GUIElement
e
- the mouse event relative to this elementpublic void mouseEntered(@NotNull java.awt.event.MouseEvent e, boolean debugGui)
mouseEntered
in interface GUIElement
e
- the mouse event relative to this elementdebugGui
- whether --debug-gui is activepublic void mouseExited(@NotNull java.awt.event.MouseEvent e)
GUIElement.mouseEntered(MouseEvent,
boolean)
has been called before.mouseExited
in interface GUIElement
e
- the mouse event relative to this elementpublic void mouseMoved(@NotNull java.awt.event.MouseEvent e)
mouseMoved
in interface GUIElement
e
- the mouse event relative to this elementpublic void mousePressed(@NotNull java.awt.event.MouseEvent e)
mousePressed
in interface GUIElement
e
- the mouse event relative to this elementpublic void mouseReleased(@NotNull java.awt.event.MouseEvent e)
GUIElement.mousePressed(MouseEvent)
has been
delivered before.mouseReleased
in interface GUIElement
e
- the mouse event relative to this elementpublic void setChanged()
setChanged
in interface GUIElement
public void setChangedListener(@Nullable GUIElementChangedListener changedListener)
GUIElementChangedListener
to be notified. Note that at
most one such listener may be set per gui element.setChangedListener
in interface GUIElement
changedListener
- the listener or null
to unsetpublic void setDefault(boolean isDefault)
setDefault
in interface GUIElement
isDefault
- whether this element is the default elementpublic void setIgnore()
setIgnore
in interface GUIElement
public void setTooltipText(@Nullable java.lang.String tooltipText)
setTooltipText
in interface GUIElement
tooltipText
- the text to show or null
to disable the
tooltip for this elementpublic void setTooltipText(@Nullable java.lang.String tooltipText, int x, int y, int w, int h)
setTooltipText
in interface GUIElement
tooltipText
- the text to show, or null
to disable the
tooltip for this elementx
- the x coordinatey
- the y coordinatew
- the widthh
- the height@NotNull public java.lang.String toString()
toString
in class java.awt.Component