org.pbjar.jxlayer.plaf.misc
Class HideCursorUI

java.lang.Object
  extended by javax.swing.plaf.ComponentUI
      extended by org.jdesktop.jxlayer.plaf.LayerUI<V>
          extended by org.jdesktop.jxlayer.plaf.AbstractLayerUI<V>
              extended by org.pbjar.jxlayer.plaf.misc.GeneralLayerUI<JComponent,HideCursorUI.HideCursorState>
                  extended by org.pbjar.jxlayer.plaf.misc.HideCursorUI
All Implemented Interfaces:
Serializable

public final class HideCursorUI
extends GeneralLayerUI<JComponent,HideCursorUI.HideCursorState>

A LayerUI that hides the cursor. After a MouseEvent or MouseMoveEvent the cursor will reappear for some specified time.

Author:
Piet Blok
See Also:
Serialized Form

Nested Class Summary
protected static class HideCursorUI.HideCursorState
          Holds state information.
 
Constructor Summary
HideCursorUI()
          Equivalent to HideCursorUI(0, false).
HideCursorUI(int timeout)
          Equivalent to HideCursorUI(timeout, false).
HideCursorUI(int timeout, boolean enableAWTEventListener)
          Create an instance.
 
Method Summary
protected  void cleanupStateObject(HideCursorUI.HideCursorState stateObject)
          Cleanup the state object.
protected  HideCursorUI.HideCursorState createStateObject(org.jdesktop.jxlayer.JXLayer<JComponent> layer)
          Create a StateObject specific for this LayerUI and the JXLayer argument.
 List<Action> getActions(org.jdesktop.jxlayer.JXLayer<JComponent> layer)
          Get Actions that: Set the cursor timeout value.
protected  void processMouseEvent(MouseEvent e, org.jdesktop.jxlayer.JXLayer<JComponent> layer)
           
protected  void processMouseMotionEvent(MouseEvent e, org.jdesktop.jxlayer.JXLayer<JComponent> l)
           
 
Methods inherited from class org.pbjar.jxlayer.plaf.misc.GeneralLayerUI
getActions, getName, getStateObject, installUI, isAWTEventListenerEnabled, processMouseWheelEvent, uninstallUI
 
Methods inherited from class org.jdesktop.jxlayer.plaf.AbstractLayerUI
configureGraphics, eventDispatched, getClip, getComposite, getLayerEventMask, getRenderingHints, getTransform, handlePropertyChangeEvent, isDirty, paint, paintLayer, processFocusEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, setDirty
 
Methods inherited from class org.jdesktop.jxlayer.plaf.LayerUI
addPropertyChangeListener, addPropertyChangeListener, contains, firePropertyChange, getPreferredScrollableViewportSize, getPropertyChangeListeners, getPropertyChangeListeners, getScrollableBlockIncrement, getScrollableTracksViewportHeight, getScrollableTracksViewportWidth, getScrollableUnitIncrement, removePropertyChangeListener, removePropertyChangeListener, updateUI
 
Methods inherited from class javax.swing.plaf.ComponentUI
createUI, getAccessibleChild, getAccessibleChildrenCount, getBaseline, getBaselineResizeBehavior, getMaximumSize, getMinimumSize, getPreferredSize, update
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

HideCursorUI

public HideCursorUI()
Equivalent to HideCursorUI(0, false).

See Also:
HideCursorUI(int, boolean)

HideCursorUI

public HideCursorUI(int timeout)
Equivalent to HideCursorUI(timeout, false).

See Also:
HideCursorUI(int, boolean)

HideCursorUI

public HideCursorUI(int timeout,
                    boolean enableAWTEventListener)
Create an instance. Via the timeout argument the time can be specified for how long the cursor must be shown after a MouseEvent or MouseMoveEvent. A value of 0 or negative indicates that the cursor will not be shown at all, even after a MouseEvent or MouseMoveEvent.

Via the enableAWTEventListener argument, AWTEventListener can be enabled or disabled.

Parameters:
timeout - the timeout time in milliseconds
enableAWTEventListener - if true, AWTEventListener will be enabled. Specifying true Solves a problem with non editable JTextComponents.
Throws:
SecurityException - when enableAWTEventListener is true and if a security manager exists and its checkPermission method doesn't allow the operation.
See Also:
Toolkit.addAWTEventListener(AWTEventListener, long)
Method Detail

getActions

public List<Action> getActions(org.jdesktop.jxlayer.JXLayer<JComponent> layer)
Get Actions that:
  1. Set the cursor timeout value.

Overrides:
getActions in class GeneralLayerUI<JComponent,HideCursorUI.HideCursorState>
Parameters:
layer - the JXLayer
Returns:
a list of applicable actions

cleanupStateObject

protected void cleanupStateObject(HideCursorUI.HideCursorState stateObject)
Description copied from class: GeneralLayerUI
Cleanup the state object. The default implementation does nothing.

Overrides:
cleanupStateObject in class GeneralLayerUI<JComponent,HideCursorUI.HideCursorState>
Parameters:
stateObject - a state object

createStateObject

protected HideCursorUI.HideCursorState createStateObject(org.jdesktop.jxlayer.JXLayer<JComponent> layer)
Description copied from class: GeneralLayerUI
Create a StateObject specific for this LayerUI and the JXLayer argument. The default implementation returns null.

Overrides:
createStateObject in class GeneralLayerUI<JComponent,HideCursorUI.HideCursorState>
Parameters:
layer - the JXLayer
Returns:
a StateObject or null, if no state is maintained.

processMouseEvent

protected void processMouseEvent(MouseEvent e,
                                 org.jdesktop.jxlayer.JXLayer<JComponent> layer)

processMouseMotionEvent

protected void processMouseMotionEvent(MouseEvent e,
                                       org.jdesktop.jxlayer.JXLayer<JComponent> l)