Class LayoutFactory.BasicPropertyAdaptSupport
- java.lang.Object
-
- info.monitorenter.gui.chart.controls.LayoutFactory.BasicPropertyAdaptSupport
-
- All Implemented Interfaces:
java.beans.PropertyChangeListener
,java.util.EventListener
- Enclosing class:
- LayoutFactory
public static class LayoutFactory.BasicPropertyAdaptSupport extends java.lang.Object implements java.beans.PropertyChangeListener
Implementation for aPropertyChangeListener
that adapts a wrappedJComponent
to the following properties.- background color ("background")
- foreground color (text color:"foreground")
- font ("font")
An instance will add itself as a
viaPropertyChangeListener
on the component to adapt to.Component.addPropertyChangeListener(PropertyChangeListener)
However components should also be able to send property changes that make instances of this class garbage - collectable by removing them as a property change listener from them. The constructor given values mark those property changes that will cause instances of this class to remove themselves as a property change listener from the component listened to. These properties may be configured in glue code (as components are generic and should not be hard coded for tasks that are hooked to them).
- Author:
- Achim Westermann
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
LayoutFactory.BasicPropertyAdaptSupport.IRemoveAsListenerFromComponentCondition
Interface to handle the removal of the
as a property change event listener.LayoutFactory.BasicPropertyAdaptSupport
static class
LayoutFactory.BasicPropertyAdaptSupport.RemoveAsListenerFromComponentIfTraceIsDropped
Implementation based on the event
sent with an old valueChart2D.PROPERTY_ADD_REMOVE_TRACE
that has to be matched.ITrace2D
static class
LayoutFactory.BasicPropertyAdaptSupport.RemoveAsListenerFromComponentNever
Implementation dummy that never will decide to remove the calling
to be removed.LayoutFactory.BasicPropertyAdaptSupport
-
Field Summary
Fields Modifier and Type Field Description protected java.lang.ref.WeakReference<java.awt.Component>
m_delegate
The weak reference to the component to adapt properties on.
-
Constructor Summary
Constructors Constructor Description BasicPropertyAdaptSupport(java.awt.Component delegate, java.awt.Component adaptee, LayoutFactory.BasicPropertyAdaptSupport.IRemoveAsListenerFromComponentCondition quitListeningControl)
Creates an instance that will listen to basic properties ("font","foreground","background") on the given component and install those on the delegate component.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
finalize()
Removes the listener for basic property changes from the component to adapt to.void
propertyChange(java.beans.PropertyChangeEvent evt)
-
-
-
Constructor Detail
-
BasicPropertyAdaptSupport
public BasicPropertyAdaptSupport(java.awt.Component delegate, java.awt.Component adaptee, LayoutFactory.BasicPropertyAdaptSupport.IRemoveAsListenerFromComponentCondition quitListeningControl)
Creates an instance that will listen to basic properties ("font","foreground","background") on the given component and install those on the delegate component.- Parameters:
delegate
- The component to adapt the properties on.adaptee
- The peer component delegate will be adapted to.quitListeningControl
- Used to decide when to stop listening on the component (adaptee).
-
-
Method Detail
-
finalize
protected void finalize() throws java.lang.Throwable
Removes the listener for basic property changes from the component to adapt to.- Overrides:
finalize
in classjava.lang.Object
- Throws:
java.lang.Throwable
- if something goes wrong cleaning up.
-
propertyChange
public void propertyChange(java.beans.PropertyChangeEvent evt)
- Specified by:
propertyChange
in interfacejava.beans.PropertyChangeListener
- See Also:
PropertyChangeListener.propertyChange(java.beans.PropertyChangeEvent)
-
-