Class ToolTipManager
- java.lang.Object
-
- java.awt.event.MouseAdapter
-
- javax.swing.ToolTipManager
- All Implemented Interfaces:
-
MouseListener
,MouseMotionListener
,MouseWheelListener
,EventListener
public class ToolTipManager extends MouseAdapter implements MouseMotionListener
Manages all the ToolTips
in the system.
ToolTipManager contains numerous properties for configuring how long it will take for the tooltips to become visible, and how long till they hide. Consider a component that has a different tooltip based on where the mouse is, such as JTree. When the mouse moves into the JTree and over a region that has a valid tooltip, the tooltip will become visible after initialDelay
milliseconds. After dismissDelay
milliseconds the tooltip will be hidden. If the mouse is over a region that has a valid tooltip, and the tooltip is currently visible, when the mouse moves to a region that doesn't have a valid tooltip the tooltip will be hidden. If the mouse then moves back into a region that has a valid tooltip within reshowDelay
milliseconds, the tooltip will immediately be shown, otherwise the tooltip will be shown again after initialDelay
milliseconds.
- Since:
- 1.2
- See Also:
JComponent.createToolTip()
Nested Class Summary
Modifier and Type | Class | Description |
---|---|---|
protected class | ToolTipManager.insideTimerAction | Inside timer action. |
protected class | ToolTipManager.outsideTimerAction | Outside timer action. |
protected class | ToolTipManager.stillInsideTimerAction | Still inside timer action. |
Field Summary
Modifier and Type | Field | Description |
---|---|---|
protected boolean | heavyWeightPopupEnabled | Heavyweight popup enabled. |
protected boolean | lightWeightPopupEnabled | Lightweight popup enabled. |
Method Summary
Modifier and Type | Method | Description |
---|---|---|
int | getDismissDelay() | Returns the dismissal delay value. |
int | getInitialDelay() | Returns the initial delay value. |
int | getReshowDelay() | Returns the reshow delay property. |
boolean | isEnabled() | Returns true if this object is enabled. |
boolean | isLightWeightPopupEnabled() | Returns true if lightweight (all-Java) |
void | mouseDragged(MouseEvent event) | Called when the mouse is pressed and dragged. |
void | mouseEntered(MouseEvent event) | Called when the mouse enters the region of a component. |
void | mouseExited(MouseEvent event) | Called when the mouse exits the region of a component. |
void | mouseMoved(MouseEvent event) | Called when the mouse is moved. |
void | mousePressed(MouseEvent event) | Called when the mouse is pressed. |
void | registerComponent(JComponent component) | Registers a component for tooltip management. |
void | setDismissDelay(int milliseconds) | Specifies the dismissal delay value. |
void | setEnabled(boolean flag) | Enables or disables the tooltip. |
void | setInitialDelay(int milliseconds) | Specifies the initial delay value. |
void | setLightWeightPopupEnabled(boolean aFlag) | When displaying the |
void | setReshowDelay(int milliseconds) | Used to specify the amount of time before the user has to wait |
static ToolTipManager | sharedInstance() | Returns a shared |
void | unregisterComponent(JComponent component) | Removes a component from tooltip control. |
Methods declared in class java.awt.event.MouseAdapter
mouseWheelMoved
Methods declared in class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods declared in interface java.awt.event.MouseListener
mouseClicked, mouseReleased
Field Detail
lightWeightPopupEnabled
protected boolean lightWeightPopupEnabled
Lightweight popup enabled.
heavyWeightPopupEnabled
protected boolean heavyWeightPopupEnabled
Heavyweight popup enabled.
Method Detail
setEnabled
public void setEnabled(boolean flag)
Enables or disables the tooltip.
- Parameters:
-
flag
- true to enable the tip, false otherwise
isEnabled
public boolean isEnabled()
Returns true if this object is enabled.
- Returns:
- true if this object is enabled, false otherwise
setLightWeightPopupEnabled
public void setLightWeightPopupEnabled(boolean aFlag)
When displaying the JToolTip
, the ToolTipManager
chooses to use a lightweight JPanel
if it fits. This method allows you to disable this feature. You have to do disable it if your application mixes light weight and heavy weights components.
- Parameters:
-
aFlag
- true if a lightweight panel is desired, false otherwise
isLightWeightPopupEnabled
public boolean isLightWeightPopupEnabled()
Returns true if lightweight (all-Java) Tooltips
are in use, or false if heavyweight (native peer) Tooltips
are being used.
- Returns:
- true if lightweight
ToolTips
are in use
setInitialDelay
public void setInitialDelay(int milliseconds)
Specifies the initial delay value.
- Parameters:
-
milliseconds
- the number of milliseconds to delay (after the cursor has paused) before displaying the tooltip - See Also:
getInitialDelay()
getInitialDelay
public int getInitialDelay()
Returns the initial delay value.
- Returns:
- an integer representing the initial delay value, in milliseconds
- See Also:
setInitialDelay(int)
setDismissDelay
public void setDismissDelay(int milliseconds)
Specifies the dismissal delay value.
- Parameters:
-
milliseconds
- the number of milliseconds to delay before taking away the tooltip - See Also:
getDismissDelay()
getDismissDelay
public int getDismissDelay()
Returns the dismissal delay value.
- Returns:
- an integer representing the dismissal delay value, in milliseconds
- See Also:
setDismissDelay(int)
setReshowDelay
public void setReshowDelay(int milliseconds)
Used to specify the amount of time before the user has to wait initialDelay
milliseconds before a tooltip will be shown. That is, if the tooltip is hidden, and the user moves into a region of the same Component that has a valid tooltip within milliseconds
milliseconds the tooltip will immediately be shown. Otherwise, if the user moves into a region with a valid tooltip after milliseconds
milliseconds, the user will have to wait an additional initialDelay
milliseconds before the tooltip is shown again.
- Parameters:
-
milliseconds
- time in milliseconds - See Also:
getReshowDelay()
getReshowDelay
public int getReshowDelay()
Returns the reshow delay property.
- Returns:
- reshown delay property
- See Also:
setReshowDelay(int)
sharedInstance
public static ToolTipManager sharedInstance()
Returns a shared ToolTipManager
instance.
- Returns:
- a shared
ToolTipManager
object
registerComponent
public void registerComponent(JComponent component)
Registers a component for tooltip management.
This will register key bindings to show and hide the tooltip text only if component
has focus bindings. This is done so that components that are not normally focus traversable, such as JLabel
, are not made focus traversable as a result of invoking this method.
- Parameters:
-
component
- aJComponent
object to add - See Also:
Component.isFocusTraversable()
unregisterComponent
public void unregisterComponent(JComponent component)
Removes a component from tooltip control.
- Parameters:
-
component
- aJComponent
object to remove
mouseEntered
public void mouseEntered(MouseEvent event)
Called when the mouse enters the region of a component. This determines whether the tool tip should be shown.
- Specified by:
-
mouseEntered
in interfaceMouseListener
- Parameters:
-
event
- the event in question
mouseExited
public void mouseExited(MouseEvent event)
Called when the mouse exits the region of a component. Any tool tip showing should be hidden.
- Specified by:
-
mouseExited
in interfaceMouseListener
- Parameters:
-
event
- the event in question
mousePressed
public void mousePressed(MouseEvent event)
Called when the mouse is pressed. Any tool tip showing should be hidden.
- Specified by:
-
mousePressed
in interfaceMouseListener
- Parameters:
-
event
- the event in question
mouseDragged
public void mouseDragged(MouseEvent event)
Called when the mouse is pressed and dragged. Does nothing.
- Specified by:
-
mouseDragged
in interfaceMouseMotionListener
- Overrides:
-
mouseDragged
in classMouseAdapter
- Parameters:
-
event
- the event in question
mouseMoved
public void mouseMoved(MouseEvent event)
Called when the mouse is moved. Determines whether the tool tip should be displayed.
- Specified by:
-
mouseMoved
in interfaceMouseMotionListener
- Overrides:
-
mouseMoved
in classMouseAdapter
- Parameters:
-
event
- the event in question