V
- one of the super types of JLayer
's view componentpublic class LayerUI<V extends Component> extends ComponentUI implements Serializable
The base class for all JLayer
's UI delegates.
paint(java.awt.Graphics, javax.swing.JComponent)
method performs the painting of the JLayer
and eventDispatched(AWTEvent, JLayer)
method is notified about any AWTEvent
s which have been generated by a JLayer
or any of its subcomponents.
The LayerUI
differs from the UI delegates of the other components, because it is LookAndFeel independent and is not updated by default when the system LookAndFeel is changed.
The subclasses of LayerUI
can either be stateless and shareable by multiple JLayer
s or not shareable.
JLayer.setUI(LayerUI)
, JLayer.setView(Component)
, JLayer.getView()
public LayerUI()
public void paint(Graphics g, JComponent c)
Paints the specified component. Subclasses should override this method and use the specified Graphics
object to render the content of the component.
The default implementation paints the passed component as is.
paint
in class ComponentUI
g
- the Graphics
context in which to paintc
- the component being paintedComponentUI.update(java.awt.Graphics, javax.swing.JComponent)
public void eventDispatched(AWTEvent e, JLayer<? extends V> l)
Processes AWTEvent
s for JLayer
and all its descendants to this LayerUI
instance.
To enable the AWTEvent
s of a particular type, you call JLayer.setLayerEventMask(long)
in installUI(javax.swing.JComponent)
and set the layer event mask to 0
in uninstallUI(javax.swing.JComponent)
after that. By default this method calls the appropriate process<event type>Event
method for the given class of event.
Note: Events are processed only for displayable JLayer
s.
e
- the event to be dispatchedl
- the layer this LayerUI is set toJLayer.setLayerEventMask(long)
, Component.isDisplayable()
, processComponentEvent(java.awt.event.ComponentEvent, javax.swing.JLayer<? extends V>)
, processFocusEvent(java.awt.event.FocusEvent, javax.swing.JLayer<? extends V>)
, processKeyEvent(java.awt.event.KeyEvent, javax.swing.JLayer<? extends V>)
, processMouseEvent(java.awt.event.MouseEvent, javax.swing.JLayer<? extends V>)
, processMouseMotionEvent(java.awt.event.MouseEvent, javax.swing.JLayer<? extends V>)
, processInputMethodEvent(java.awt.event.InputMethodEvent, javax.swing.JLayer<? extends V>)
, processHierarchyEvent(java.awt.event.HierarchyEvent, javax.swing.JLayer<? extends V>)
, processMouseWheelEvent(java.awt.event.MouseWheelEvent, javax.swing.JLayer<? extends V>)
protected void processComponentEvent(ComponentEvent e, JLayer<? extends V> l)
Processes component events occurring on the JLayer
or any of its subcomponents.
This method is not called unless component events are enabled for the JLayer
objects, this LayerUI
is set to. Component events are enabled in the overridden installUI(javax.swing.JComponent)
method and should be disabled in the uninstallUI(javax.swing.JComponent)
method after that.
public void installUI(JComponent c) { super.installUI(c); JLayer l = (JLayer) c; l.setLayerEventMask(AWTEvent.COMPONENT_EVENT_MASK); } public void uninstallUI(JComponent c) { super.uninstallUI(c); JLayer l = (JLayer) c; l.setLayerEventMask(0); }
e
- the ComponentEvent
to be processedl
- the layer this LayerUI
instance is set toJLayer.setLayerEventMask(long)
, installUI(javax.swing.JComponent)
, uninstallUI(javax.swing.JComponent)
protected void processFocusEvent(FocusEvent e, JLayer<? extends V> l)
Processes focus events occurring on the JLayer
or any of its subcomponents.
This method is not called unless focus events are enabled for the JLayer
objects, this LayerUI
is set to. Focus events are enabled in the overridden installUI(javax.swing.JComponent)
method and should be disabled in the uninstallUI(javax.swing.JComponent)
method after that.
public void installUI(JComponent c) { super.installUI(c); JLayer l = (JLayer) c; l.setLayerEventMask(AWTEvent.FOCUS_EVENT_MASK); } public void uninstallUI(JComponent c) { super.uninstallUI(c); JLayer l = (JLayer) c; l.setLayerEventMask(0); }
e
- the FocusEvent
to be processedl
- the layer this LayerUI
instance is set toJLayer.setLayerEventMask(long)
, installUI(javax.swing.JComponent)
, uninstallUI(javax.swing.JComponent)
protected void processKeyEvent(KeyEvent e, JLayer<? extends V> l)
Processes key events occurring on the JLayer
or any of its subcomponents.
This method is not called unless key events are enabled for the JLayer
objects, this LayerUI
is set to. Key events are enabled in the overridden installUI(javax.swing.JComponent)
method and should be disabled in the uninstallUI(javax.swing.JComponent)
method after that.
public void installUI(JComponent c) { super.installUI(c); JLayer l = (JLayer) c; l.setLayerEventMask(AWTEvent.KEY_EVENT_MASK); } public void uninstallUI(JComponent c) { super.uninstallUI(c); JLayer l = (JLayer) c; l.setLayerEventMask(0); }
e
- the KeyEvent
to be processedl
- the layer this LayerUI
instance is set toJLayer.setLayerEventMask(long)
, installUI(javax.swing.JComponent)
, uninstallUI(javax.swing.JComponent)
protected void processMouseEvent(MouseEvent e, JLayer<? extends V> l)
Processes mouse events occurring on the JLayer
or any of its subcomponents.
This method is not called unless mouse events are enabled for the JLayer
objects, this LayerUI
is set to. Mouse events are enabled in the overridden installUI(javax.swing.JComponent)
method and should be disabled in the uninstallUI(javax.swing.JComponent)
method after that.
public void installUI(JComponent c) { super.installUI(c); JLayer l = (JLayer) c; l.setLayerEventMask(AWTEvent.MOUSE_EVENT_MASK); } public void uninstallUI(JComponent c) { super.uninstallUI(c); JLayer l = (JLayer) c; l.setLayerEventMask(0); }
e
- the MouseEvent
to be processedl
- the layer this LayerUI
instance is set toJLayer.setLayerEventMask(long)
, installUI(javax.swing.JComponent)
, uninstallUI(javax.swing.JComponent)
protected void processMouseMotionEvent(MouseEvent e, JLayer<? extends V> l)
Processes mouse motion event occurring on the JLayer
or any of its subcomponents.
This method is not called unless mouse motion events are enabled for the JLayer
objects, this LayerUI
is set to. Mouse motion events are enabled in the overridden installUI(javax.swing.JComponent)
method and should be disabled in the uninstallUI(javax.swing.JComponent)
method after that.
public void installUI(JComponent c) { super.installUI(c); JLayer l = (JLayer) c; l.setLayerEventMask(AWTEvent.MOUSE_MOTION_EVENT_MASK); } public void uninstallUI(JComponent c) { super.uninstallUI(c); JLayer l = (JLayer) c; l.setLayerEventMask(0); }
e
- the MouseEvent
to be processedl
- the layer this LayerUI
instance is set toJLayer.setLayerEventMask(long)
, installUI(javax.swing.JComponent)
, uninstallUI(javax.swing.JComponent)
protected void processMouseWheelEvent(MouseWheelEvent e, JLayer<? extends V> l)
Processes mouse wheel event occurring on the JLayer
or any of its subcomponents.
This method is not called unless mouse wheel events are enabled for the JLayer
objects, this LayerUI
is set to. Mouse wheel events are enabled in the overridden installUI(javax.swing.JComponent)
method and should be disabled in the uninstallUI(javax.swing.JComponent)
method after that.
public void installUI(JComponent c) { super.installUI(c); JLayer l = (JLayer) c; l.setLayerEventMask(AWTEvent.MOUSE_WHEEL_EVENT_MASK); } public void uninstallUI(JComponent c) { super.uninstallUI(c); JLayer l = (JLayer) c; l.setLayerEventMask(0); }
e
- the MouseEvent
to be processedl
- the layer this LayerUI
instance is set toJLayer.setLayerEventMask(long)
, installUI(javax.swing.JComponent)
, uninstallUI(javax.swing.JComponent)
protected void processInputMethodEvent(InputMethodEvent e, JLayer<? extends V> l)
Processes input event occurring on the JLayer
or any of its subcomponents.
This method is not called unless input events are enabled for the JLayer
objects, this LayerUI
is set to. Input events are enabled in the overridden installUI(javax.swing.JComponent)
method and should be disabled in the uninstallUI(javax.swing.JComponent)
method after that.
public void installUI(JComponent c) { super.installUI(c); JLayer l = (JLayer) c; l.setLayerEventMask(AWTEvent.INPUT_METHOD_EVENT_MASK); } public void uninstallUI(JComponent c) { super.uninstallUI(c); JLayer l = (JLayer) c; l.setLayerEventMask(0); }
e
- the InputMethodEvent
to be processedl
- the layer this LayerUI
instance is set toJLayer.setLayerEventMask(long)
, installUI(javax.swing.JComponent)
, uninstallUI(javax.swing.JComponent)
protected void processHierarchyEvent(HierarchyEvent e, JLayer<? extends V> l)
Processes hierarchy event occurring on the JLayer
or any of its subcomponents.
This method is not called unless hierarchy events are enabled for the JLayer
objects, this LayerUI
is set to. Hierarchy events are enabled in the overridden installUI(javax.swing.JComponent)
method and should be disabled in the uninstallUI(javax.swing.JComponent)
method after that.
public void installUI(JComponent c) { super.installUI(c); JLayer l = (JLayer) c; l.setLayerEventMask(AWTEvent.HIERARCHY_EVENT_MASK); } public void uninstallUI(JComponent c) { super.uninstallUI(c); JLayer l = (JLayer) c; l.setLayerEventMask(0); }
e
- the HierarchyEvent
to be processedl
- the layer this LayerUI
instance is set toJLayer.setLayerEventMask(long)
, installUI(javax.swing.JComponent)
, uninstallUI(javax.swing.JComponent)
protected void processHierarchyBoundsEvent(HierarchyEvent e, JLayer<? extends V> l)
Processes hierarchy bounds event occurring on the JLayer
or any of its subcomponents.
This method is not called unless hierarchy bounds events are enabled for the JLayer
objects, this LayerUI
is set to. Hierarchy bounds events are enabled in the overridden installUI(javax.swing.JComponent)
method and should be disabled in the uninstallUI(javax.swing.JComponent)
method after that.
public void installUI(JComponent c) { super.installUI(c); JLayer l = (JLayer) c; l.setLayerEventMask(AWTEvent.HIERARCHY_BOUNDS_EVENT_MASK); } public void uninstallUI(JComponent c) { super.uninstallUI(c); JLayer l = (JLayer) c; l.setLayerEventMask(0); }
e
- the HierarchyEvent
to be processedl
- the layer this LayerUI
instance is set toJLayer.setLayerEventMask(long)
, installUI(javax.swing.JComponent)
, uninstallUI(javax.swing.JComponent)
public void updateUI(JLayer<? extends V> l)
Invoked when JLayer.updateUI()
is called by the JLayer
this LayerUI
is set to.
l
- the JLayer
which UI is updatedpublic void installUI(JComponent c)
Configures the JLayer
this LayerUI
is set to. The default implementation registers the passed JLayer
component as a PropertyChangeListener
for the property changes of this LayerUI
.
installUI
in class ComponentUI
c
- the JLayer
component where this UI delegate is being installedComponentUI.uninstallUI(javax.swing.JComponent)
, JComponent.setUI(javax.swing.plaf.ComponentUI)
, JComponent.updateUI()
public void uninstallUI(JComponent c)
Reverses the configuration which was previously set in the installUI(JComponent)
method. The default implementation unregisters the passed JLayer
component as a PropertyChangeListener
for the property changes of this LayerUI
.
uninstallUI
in class ComponentUI
c
- the component from which this UI delegate is being removed.ComponentUI.installUI(javax.swing.JComponent)
, JComponent.updateUI()
public void addPropertyChangeListener(PropertyChangeListener listener)
Adds a PropertyChangeListener to the listener list. The listener is registered for all bound properties of this class.
If listener
is null
, no exception is thrown and no action is performed.
listener
- the property change listener to be addedremovePropertyChangeListener(java.beans.PropertyChangeListener)
, getPropertyChangeListeners()
, addPropertyChangeListener(String, java.beans.PropertyChangeListener)
public void removePropertyChangeListener(PropertyChangeListener listener)
Removes a PropertyChangeListener from the listener list. This method should be used to remove PropertyChangeListeners that were registered for all bound properties of this class.
If listener
is null
, no exception is thrown and no action is performed.
listener
- the PropertyChangeListener to be removedaddPropertyChangeListener(java.beans.PropertyChangeListener)
, getPropertyChangeListeners()
, removePropertyChangeListener(String, PropertyChangeListener)
public PropertyChangeListener[] getPropertyChangeListeners()
Returns an array of all the property change listeners registered on this component.
PropertyChangeListener
s or an empty array if no property change listeners are currently registeredaddPropertyChangeListener(java.beans.PropertyChangeListener)
, removePropertyChangeListener(java.beans.PropertyChangeListener)
, getPropertyChangeListeners(String)
public void addPropertyChangeListener(String propertyName, PropertyChangeListener listener)
Adds a PropertyChangeListener to the listener list for a specific property.
If propertyName
or listener
is null
, no exception is thrown and no action is taken.
propertyName
- one of the property names listed abovelistener
- the property change listener to be addedremovePropertyChangeListener(String, PropertyChangeListener)
, getPropertyChangeListeners(String)
, addPropertyChangeListener(String, PropertyChangeListener)
public void removePropertyChangeListener(String propertyName, PropertyChangeListener listener)
Removes a PropertyChangeListener
from the listener list for a specific property. This method should be used to remove PropertyChangeListener
s that were registered for a specific bound property.
If propertyName
or listener
is null
, no exception is thrown and no action is taken.
propertyName
- a valid property namelistener
- the PropertyChangeListener to be removedaddPropertyChangeListener(String, PropertyChangeListener)
, getPropertyChangeListeners(String)
, removePropertyChangeListener(PropertyChangeListener)
public PropertyChangeListener[] getPropertyChangeListeners(String propertyName)
Returns an array of all the listeners which have been associated with the named property.
propertyName
- The name of the property being listened toPropertyChangeListener
s associated with the named property; if no such listeners have been added or if propertyName
is null
, an empty array is returnedaddPropertyChangeListener(String, PropertyChangeListener)
, removePropertyChangeListener(String, PropertyChangeListener)
, getPropertyChangeListeners()
protected void firePropertyChange(String propertyName, Object oldValue, Object newValue)
Support for reporting bound property changes for Object properties. This method can be called when a bound property has changed and it will send the appropriate PropertyChangeEvent to any registered PropertyChangeListeners.
propertyName
- the property whose value has changedoldValue
- the property's previous valuenewValue
- the property's new valuepublic void applyPropertyChange(PropertyChangeEvent evt, JLayer<? extends V> l)
Notifies the LayerUI
when any of its property are changed and enables updating every JLayer
this LayerUI
instance is set to.
evt
- the PropertyChangeEvent generated by this LayerUI
l
- the JLayer
this LayerUI is set topublic int getBaseline(JComponent c, int width, int height)
If the JLayer
's view component is not null
, this calls the view's getBaseline()
method. Otherwise, the default implementation is called.
getBaseline
in class ComponentUI
c
- JLayer
to return baseline resize behavior forwidth
- the width to get the baseline forheight
- the height to get the baseline forJComponent.getBaseline(int,int)
public Component.BaselineResizeBehavior getBaselineResizeBehavior(JComponent c)
If the JLayer
's view component is not null
, this returns the result of the view's getBaselineResizeBehavior()
method. Otherwise, the default implementation is called.
getBaselineResizeBehavior
in class ComponentUI
c
- JLayer
to return baseline resize behavior forJComponent.getBaseline(int, int)
public void doLayout(JLayer<? extends V> l)
Causes the passed instance of JLayer
to lay out its components.
l
- the JLayer
component where this UI delegate is being installedpublic Dimension getPreferredSize(JComponent c)
If the JLayer
's view component is not null
, this returns the result of the view's getPreferredSize()
method. Otherwise, the default implementation is used.
getPreferredSize
in class ComponentUI
c
- JLayer
to return preferred size forJLayer
JComponent.getPreferredSize()
, LayoutManager.preferredLayoutSize(java.awt.Container)
public Dimension getMinimumSize(JComponent c)
If the JLayer
's view component is not null
, this returns the result of the view's getMinimalSize()
method. Otherwise, the default implementation is used.
getMinimumSize
in class ComponentUI
c
- JLayer
to return preferred size forJLayer
JComponent.getMinimumSize()
, LayoutManager.minimumLayoutSize(java.awt.Container)
, ComponentUI.getPreferredSize(javax.swing.JComponent)
public Dimension getMaximumSize(JComponent c)
If the JLayer
's view component is not null
, this returns the result of the view's getMaximumSize()
method. Otherwise, the default implementation is used.
getMaximumSize
in class ComponentUI
c
- JLayer
to return preferred size forJLayer
JComponent.getMaximumSize()
, LayoutManager2.maximumLayoutSize(java.awt.Container)
public void paintImmediately(int x, int y, int width, int height, JLayer<? extends V> l)
Paints the specified region in the JLayer
this LayerUI
is set to, immediately.
This method is to be overridden when the dirty region needs to be changed. The default implementation delegates its functionality to JComponent.paintImmediately(int, int, int, int)
.
x
- the x value of the region to be paintedy
- the y value of the region to be paintedwidth
- the width of the region to be paintedheight
- the height of the region to be paintedJComponent.paintImmediately(int, int, int, int)
© 1993–2017, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.