public class AWTEventMulticaster extends Object implements ComponentListener, ContainerListener, FocusListener, KeyListener, MouseListener, MouseMotionListener, WindowListener, WindowFocusListener, WindowStateListener, ActionListener, ItemListener, AdjustmentListener, TextListener, InputMethodListener, HierarchyListener, HierarchyBoundsListener, MouseWheelListener
AdjustmentEvent
's. However, this
same approach is useful for all events in the java.awt.event
package, and more if this class is subclassed.
AdjustmentListener al;
public void addAdjustmentListener(AdjustmentListener listener)
{
al = AWTEventMulticaster.add(al, listener);
}
public void removeAdjustmentListener(AdjustmentListener listener)
{
al = AWTEventMulticaster.remove(al, listener);
}
When it come time to process an event, simply call al
,
assuming it is not null
, and all listeners in the chain will
be fired.
The first time add
is called it is passed
null
and listener
as its arguments. This
starts building the chain. This class returns listener
which becomes the new al
. The next time, add
is called with al
and listener
and the
new listener is then chained to the old.
Modifier and Type | Field and Description |
---|---|
protected EventListener |
a
A variable in the event chain.
|
protected EventListener |
b
A variable in the event chain.
|
Modifier | Constructor and Description |
---|---|
protected |
AWTEventMulticaster(EventListener a,
EventListener b)
Initializes a new instance of
AWTEventMulticaster with
the specified event listener parameters. |
Modifier and Type | Method and Description |
---|---|
void |
actionPerformed(ActionEvent e)
Handles this event by dispatching it to the "a" and "b" listener
instances.
|
static ActionListener |
add(ActionListener a,
ActionListener b)
Chain
ActionListener a and b. |
static AdjustmentListener |
add(AdjustmentListener a,
AdjustmentListener b)
Chain
AdjustmentListener a and b. |
static ComponentListener |
add(ComponentListener a,
ComponentListener b)
Chain
ComponentListener a and b. |
static ContainerListener |
add(ContainerListener a,
ContainerListener b)
Chain
ContainerListener a and b. |
static FocusListener |
add(FocusListener a,
FocusListener b)
Chain
FocusListener a and b. |
static HierarchyBoundsListener |
add(HierarchyBoundsListener a,
HierarchyBoundsListener b)
Chain
HierarchyBoundsListener a and b. |
static HierarchyListener |
add(HierarchyListener a,
HierarchyListener b)
Chain
HierarchyListener a and b. |
static InputMethodListener |
add(InputMethodListener a,
InputMethodListener b)
Chain
InputMethodListener a and b. |
static ItemListener |
add(ItemListener a,
ItemListener b)
Chain
ItemListener a and b. |
static KeyListener |
add(KeyListener a,
KeyListener b)
Chain
KeyListener a and b. |
static MouseListener |
add(MouseListener a,
MouseListener b)
Chain
MouseListener a and b. |
static MouseMotionListener |
add(MouseMotionListener a,
MouseMotionListener b)
Chain
MouseMotionListener a and b. |
static MouseWheelListener |
add(MouseWheelListener a,
MouseWheelListener b)
Chain
MouseWheelListener a and b. |
static TextListener |
add(TextListener a,
TextListener b)
Chain
AdjustmentListener a and b. |
static WindowFocusListener |
add(WindowFocusListener a,
WindowFocusListener b)
Chain
WindowFocusListener a and b. |
static WindowListener |
add(WindowListener a,
WindowListener b)
Chain
WindowListener a and b. |
static WindowStateListener |
add(WindowStateListener a,
WindowStateListener b)
Chain
WindowStateListener a and b. |
protected static EventListener |
addInternal(EventListener a,
EventListener b)
Chain
EventListener a and b. |
void |
adjustmentValueChanged(AdjustmentEvent e)
Handles this event by dispatching it to the "a" and "b" listener
instances.
|
void |
ancestorMoved(HierarchyEvent e)
Handles this event by dispatching it to the "a" and "b" listener
instances.
|
void |
ancestorResized(HierarchyEvent e)
Handles this event by dispatching it to the "a" and "b" listener
instances.
|
void |
caretPositionChanged(InputMethodEvent e)
Handles this event by dispatching it to the "a" and "b" listener
instances.
|
void |
componentAdded(ContainerEvent e)
Handles this event by dispatching it to the "a" and "b" listener
instances.
|
void |
componentHidden(ComponentEvent e)
Handles this event by dispatching it to the "a" and "b" listener
instances.
|
void |
componentMoved(ComponentEvent e)
Handles this event by dispatching it to the "a" and "b" listener
instances.
|
void |
componentRemoved(ContainerEvent e)
Handles this event by dispatching it to the "a" and "b" listener
instances.
|
void |
componentResized(ComponentEvent e)
Handles this event by dispatching it to the "a" and "b" listener
instances.
|
void |
componentShown(ComponentEvent e)
Handles this event by dispatching it to the "a" and "b" listener
instances.
|
void |
focusGained(FocusEvent e)
Handles this event by dispatching it to the "a" and "b" listener
instances.
|
void |
focusLost(FocusEvent e)
Handles this event by dispatching it to the "a" and "b" listener
instances.
|
static <T extends EventListener> |
getListeners(EventListener l,
Class<T> type)
Returns an array of all chained listeners of the specified type in the
given chain.
|
void |
hierarchyChanged(HierarchyEvent e)
Handles this event by dispatching it to the "a" and "b" listener
instances.
|
void |
inputMethodTextChanged(InputMethodEvent e)
Handles this event by dispatching it to the "a" and "b" listener
instances.
|
void |
itemStateChanged(ItemEvent e)
Handles this event by dispatching it to the "a" and "b" listener
instances.
|
void |
keyPressed(KeyEvent e)
Handles this event by dispatching it to the "a" and "b" listener
instances.
|
void |
keyReleased(KeyEvent e)
Handles this event by dispatching it to the "a" and "b" listener
instances.
|
void |
keyTyped(KeyEvent e)
Handles this event by dispatching it to the "a" and "b" listener
instances.
|
void |
mouseClicked(MouseEvent e)
Handles this event by dispatching it to the "a" and "b" listener
instances.
|
void |
mouseDragged(MouseEvent e)
Handles this event by dispatching it to the "a" and "b" listener
instances.
|
void |
mouseEntered(MouseEvent e)
Handles this event by dispatching it to the "a" and "b" listener
instances.
|
void |
mouseExited(MouseEvent e)
Handles this event by dispatching it to the "a" and "b" listener
instances.
|
void |
mouseMoved(MouseEvent e)
Handles this event by dispatching it to the "a" and "b" listener
instances.
|
void |
mousePressed(MouseEvent e)
Handles this event by dispatching it to the "a" and "b" listener
instances.
|
void |
mouseReleased(MouseEvent e)
Handles this event by dispatching it to the "a" and "b" listener
instances.
|
void |
mouseWheelMoved(MouseWheelEvent e)
Handles this event by dispatching it to the "a" and "b" listener
instances.
|
static ActionListener |
remove(ActionListener l,
ActionListener oldl)
Removes the listener
oldl from the listener l . |
static AdjustmentListener |
remove(AdjustmentListener l,
AdjustmentListener oldl)
Removes the listener
oldl from the listener l . |
static ComponentListener |
remove(ComponentListener l,
ComponentListener oldl)
Removes the listener
oldl from the listener l . |
static ContainerListener |
remove(ContainerListener l,
ContainerListener oldl)
Removes the listener
oldl from the listener l . |
protected EventListener |
remove(EventListener oldl)
Removes one instance of the specified listener from this multicaster
chain.
|
static FocusListener |
remove(FocusListener l,
FocusListener oldl)
Removes the listener
oldl from the listener l . |
static HierarchyBoundsListener |
remove(HierarchyBoundsListener l,
HierarchyBoundsListener oldl)
Removes the listener
oldl from the listener l . |
static HierarchyListener |
remove(HierarchyListener l,
HierarchyListener oldl)
Removes the listener
oldl from the listener l . |
static InputMethodListener |
remove(InputMethodListener l,
InputMethodListener oldl)
Removes the listener
oldl from the listener l . |
static ItemListener |
remove(ItemListener l,
ItemListener oldl)
Removes the listener
oldl from the listener l . |
static KeyListener |
remove(KeyListener l,
KeyListener oldl)
Removes the listener
oldl from the listener l . |
static MouseListener |
remove(MouseListener l,
MouseListener oldl)
Removes the listener
oldl from the listener l . |
static MouseMotionListener |
remove(MouseMotionListener l,
MouseMotionListener oldl)
Removes the listener
oldl from the listener l . |
static MouseWheelListener |
remove(MouseWheelListener l,
MouseWheelListener oldl)
Removes the listener
oldl from the listener l . |
static TextListener |
remove(TextListener l,
TextListener oldl)
Removes the listener
oldl from the listener l . |
static WindowFocusListener |
remove(WindowFocusListener l,
WindowFocusListener oldl)
Removes the listener
oldl from the listener l . |
static WindowListener |
remove(WindowListener l,
WindowListener oldl)
Removes the listener
oldl from the listener l . |
static WindowStateListener |
remove(WindowStateListener l,
WindowStateListener oldl)
Removes the listener
oldl from the listener l . |
protected static EventListener |
removeInternal(EventListener l,
EventListener oldl)
Removes the listener
oldl from the listener l . |
protected static void |
save(ObjectOutputStream s,
String k,
EventListener l)
Saves a Serializable listener chain to a serialization stream.
|
protected void |
saveInternal(ObjectOutputStream s,
String k)
Saves all Serializable listeners to a serialization stream.
|
void |
textValueChanged(TextEvent e)
Handles this event by dispatching it to the "a" and "b" listener
instances.
|
void |
windowActivated(WindowEvent e)
Handles this event by dispatching it to the "a" and "b" listener
instances.
|
void |
windowClosed(WindowEvent e)
Handles this event by dispatching it to the "a" and "b" listener
instances.
|
void |
windowClosing(WindowEvent e)
Handles this event by dispatching it to the "a" and "b" listener
instances.
|
void |
windowDeactivated(WindowEvent e)
Handles this event by dispatching it to the "a" and "b" listener
instances.
|
void |
windowDeiconified(WindowEvent e)
Handles this event by dispatching it to the "a" and "b" listener
instances.
|
void |
windowGainedFocus(WindowEvent e)
Handles this event by dispatching it to the "a" and "b" listener
instances.
|
void |
windowIconified(WindowEvent e)
Handles this event by dispatching it to the "a" and "b" listener
instances.
|
void |
windowLostFocus(WindowEvent e)
Handles this event by dispatching it to the "a" and "b" listener
instances.
|
void |
windowOpened(WindowEvent e)
Handles this event by dispatching it to the "a" and "b" listener
instances.
|
void |
windowStateChanged(WindowEvent e)
Handles this event by dispatching it to the "a" and "b" listener
instances.
|
protected final EventListener a
protected final EventListener b
protected AWTEventMulticaster(EventListener a, EventListener b)
AWTEventMulticaster
with
the specified event listener parameters. The parameters should not be
null, although it is not required to enforce this with a
NullPointerException.a
- the "a" listener objectb
- the "b" listener objectprotected EventListener remove(EventListener oldl)
oldl
- the object to remove from this multicasterpublic void componentResized(ComponentEvent e)
componentResized
in interface ComponentListener
e
- the event to handlepublic void componentMoved(ComponentEvent e)
componentMoved
in interface ComponentListener
e
- the event to handlepublic void componentShown(ComponentEvent e)
componentShown
in interface ComponentListener
e
- the event to handlepublic void componentHidden(ComponentEvent e)
componentHidden
in interface ComponentListener
e
- the event to handlepublic void componentAdded(ContainerEvent e)
componentAdded
in interface ContainerListener
e
- the event to handlepublic void componentRemoved(ContainerEvent e)
componentRemoved
in interface ContainerListener
e
- the event to handlepublic void focusGained(FocusEvent e)
focusGained
in interface FocusListener
e
- the event to handlepublic void focusLost(FocusEvent e)
focusLost
in interface FocusListener
e
- the event to handlepublic void keyTyped(KeyEvent e)
keyTyped
in interface KeyListener
e
- the event to handlepublic void keyPressed(KeyEvent e)
keyPressed
in interface KeyListener
e
- the event to handlepublic void keyReleased(KeyEvent e)
keyReleased
in interface KeyListener
e
- the event to handlepublic void mouseClicked(MouseEvent e)
mouseClicked
in interface MouseListener
e
- the event to handlepublic void mousePressed(MouseEvent e)
mousePressed
in interface MouseListener
e
- the event to handlepublic void mouseReleased(MouseEvent e)
mouseReleased
in interface MouseListener
e
- the event to handlepublic void mouseEntered(MouseEvent e)
mouseEntered
in interface MouseListener
e
- the event to handlepublic void mouseExited(MouseEvent e)
mouseExited
in interface MouseListener
e
- the event to handlepublic void mouseDragged(MouseEvent e)
mouseDragged
in interface MouseMotionListener
e
- the event to handlepublic void mouseMoved(MouseEvent e)
mouseMoved
in interface MouseMotionListener
e
- the event to handlepublic void windowOpened(WindowEvent e)
windowOpened
in interface WindowListener
e
- the event to handlepublic void windowClosing(WindowEvent e)
windowClosing
in interface WindowListener
e
- the event to handlepublic void windowClosed(WindowEvent e)
windowClosed
in interface WindowListener
e
- the event to handlepublic void windowIconified(WindowEvent e)
windowIconified
in interface WindowListener
e
- the event to handleFrame.setIconImage(Image)
public void windowDeiconified(WindowEvent e)
windowDeiconified
in interface WindowListener
e
- the event to handlepublic void windowActivated(WindowEvent e)
windowActivated
in interface WindowListener
e
- the event to handlepublic void windowDeactivated(WindowEvent e)
windowDeactivated
in interface WindowListener
e
- the event to handlepublic void windowStateChanged(WindowEvent e)
windowStateChanged
in interface WindowStateListener
e
- the event to handlepublic void windowGainedFocus(WindowEvent e)
windowGainedFocus
in interface WindowFocusListener
e
- the event to handlepublic void windowLostFocus(WindowEvent e)
windowLostFocus
in interface WindowFocusListener
e
- the event to handlepublic void actionPerformed(ActionEvent e)
actionPerformed
in interface ActionListener
e
- the event to handlepublic void itemStateChanged(ItemEvent e)
itemStateChanged
in interface ItemListener
e
- the event to handlepublic void adjustmentValueChanged(AdjustmentEvent e)
adjustmentValueChanged
in interface AdjustmentListener
e
- the event to handlepublic void textValueChanged(TextEvent e)
textValueChanged
in interface TextListener
e
- the event to handlepublic void inputMethodTextChanged(InputMethodEvent e)
inputMethodTextChanged
in interface InputMethodListener
e
- the event to handlepublic void caretPositionChanged(InputMethodEvent e)
caretPositionChanged
in interface InputMethodListener
e
- the event to handlepublic void hierarchyChanged(HierarchyEvent e)
hierarchyChanged
in interface HierarchyListener
e
- the event to handlepublic void ancestorMoved(HierarchyEvent e)
ancestorMoved
in interface HierarchyBoundsListener
e
- the event to handlepublic void ancestorResized(HierarchyEvent e)
ancestorResized
in interface HierarchyBoundsListener
e
- the event to handlepublic void mouseWheelMoved(MouseWheelEvent e)
mouseWheelMoved
in interface MouseWheelListener
e
- the event to handlepublic static ComponentListener add(ComponentListener a, ComponentListener b)
ComponentListener
a and b.a
- the "a" listener, may be nullb
- the "b" listener, may be nullpublic static ContainerListener add(ContainerListener a, ContainerListener b)
ContainerListener
a and b.a
- the "a" listener, may be nullb
- the "b" listener, may be nullpublic static FocusListener add(FocusListener a, FocusListener b)
FocusListener
a and b.a
- the "a" listener, may be nullb
- the "b" listener, may be nullpublic static KeyListener add(KeyListener a, KeyListener b)
KeyListener
a and b.a
- the "a" listener, may be nullb
- the "b" listener, may be nullpublic static MouseListener add(MouseListener a, MouseListener b)
MouseListener
a and b.a
- the "a" listener, may be nullb
- the "b" listener, may be nullpublic static MouseMotionListener add(MouseMotionListener a, MouseMotionListener b)
MouseMotionListener
a and b.a
- the "a" listener, may be nullb
- the "b" listener, may be nullpublic static WindowListener add(WindowListener a, WindowListener b)
WindowListener
a and b.a
- the "a" listener, may be nullb
- the "b" listener, may be nullpublic static WindowStateListener add(WindowStateListener a, WindowStateListener b)
WindowStateListener
a and b.a
- the "a" listener, may be nullb
- the "b" listener, may be nullpublic static WindowFocusListener add(WindowFocusListener a, WindowFocusListener b)
WindowFocusListener
a and b.a
- the "a" listener, may be nullb
- the "b" listener, may be nullpublic static ActionListener add(ActionListener a, ActionListener b)
ActionListener
a and b.a
- the "a" listener, may be nullb
- the "b" listener, may be nullpublic static ItemListener add(ItemListener a, ItemListener b)
ItemListener
a and b.a
- the "a" listener, may be nullb
- the "b" listener, may be nullpublic static AdjustmentListener add(AdjustmentListener a, AdjustmentListener b)
AdjustmentListener
a and b.a
- the "a" listener, may be nullb
- the "b" listener, may be nullpublic static TextListener add(TextListener a, TextListener b)
AdjustmentListener
a and b.a
- the "a" listener, may be nullb
- the "b" listener, may be nullpublic static InputMethodListener add(InputMethodListener a, InputMethodListener b)
InputMethodListener
a and b.a
- the "a" listener, may be nullb
- the "b" listener, may be nullpublic static HierarchyListener add(HierarchyListener a, HierarchyListener b)
HierarchyListener
a and b.a
- the "a" listener, may be nullb
- the "b" listener, may be nullpublic static HierarchyBoundsListener add(HierarchyBoundsListener a, HierarchyBoundsListener b)
HierarchyBoundsListener
a and b.a
- the "a" listener, may be nullb
- the "b" listener, may be nullpublic static MouseWheelListener add(MouseWheelListener a, MouseWheelListener b)
MouseWheelListener
a and b.a
- the "a" listener, may be nullb
- the "b" listener, may be nullpublic static ComponentListener remove(ComponentListener l, ComponentListener oldl)
oldl
from the listener l
.l
- the listener chain to reduceoldl
- the listener to removepublic static ContainerListener remove(ContainerListener l, ContainerListener oldl)
oldl
from the listener l
.l
- the listener chain to reduceoldl
- the listener to removepublic static FocusListener remove(FocusListener l, FocusListener oldl)
oldl
from the listener l
.l
- the listener chain to reduceoldl
- the listener to removepublic static KeyListener remove(KeyListener l, KeyListener oldl)
oldl
from the listener l
.l
- the listener chain to reduceoldl
- the listener to removepublic static MouseListener remove(MouseListener l, MouseListener oldl)
oldl
from the listener l
.l
- the listener chain to reduceoldl
- the listener to removepublic static MouseMotionListener remove(MouseMotionListener l, MouseMotionListener oldl)
oldl
from the listener l
.l
- the listener chain to reduceoldl
- the listener to removepublic static WindowListener remove(WindowListener l, WindowListener oldl)
oldl
from the listener l
.l
- the listener chain to reduceoldl
- the listener to removepublic static WindowStateListener remove(WindowStateListener l, WindowStateListener oldl)
oldl
from the listener l
.l
- the listener chain to reduceoldl
- the listener to removepublic static WindowFocusListener remove(WindowFocusListener l, WindowFocusListener oldl)
oldl
from the listener l
.l
- the listener chain to reduceoldl
- the listener to removepublic static ActionListener remove(ActionListener l, ActionListener oldl)
oldl
from the listener l
.l
- the listener chain to reduceoldl
- the listener to removepublic static ItemListener remove(ItemListener l, ItemListener oldl)
oldl
from the listener l
.l
- the listener chain to reduceoldl
- the listener to removepublic static AdjustmentListener remove(AdjustmentListener l, AdjustmentListener oldl)
oldl
from the listener l
.l
- the listener chain to reduceoldl
- the listener to removepublic static TextListener remove(TextListener l, TextListener oldl)
oldl
from the listener l
.l
- the listener chain to reduceoldl
- the listener to removepublic static InputMethodListener remove(InputMethodListener l, InputMethodListener oldl)
oldl
from the listener l
.l
- the listener chain to reduceoldl
- the listener to removepublic static HierarchyListener remove(HierarchyListener l, HierarchyListener oldl)
oldl
from the listener l
.l
- the listener chain to reduceoldl
- the listener to removepublic static HierarchyBoundsListener remove(HierarchyBoundsListener l, HierarchyBoundsListener oldl)
oldl
from the listener l
.l
- the listener chain to reduceoldl
- the listener to removepublic static MouseWheelListener remove(MouseWheelListener l, MouseWheelListener oldl)
oldl
from the listener l
.l
- the listener chain to reduceoldl
- the listener to removeprotected static EventListener addInternal(EventListener a, EventListener b)
EventListener
a and b.a
- the "a" listener, may be nullb
- the "b" listener, may be nullprotected static EventListener removeInternal(EventListener l, EventListener oldl)
oldl
from the listener l
.l
- the listener chain to reduceoldl
- the listener to removeprotected void saveInternal(ObjectOutputStream s, String k) throws IOException
s
- the stream to save tok
- a prefix stream put before each serializable listenerIOException
- if serialization failsprotected static void save(ObjectOutputStream s, String k, EventListener l) throws IOException
s
- the stream to save tok
- a prefix stream put before each serializable listenerl
- the listener chain to saveIOException
- if serialization failspublic static <T extends EventListener> T[] getListeners(EventListener l, Class<T> type)
l
- the listener chain to convert to an arraytype
- the type of listeners to collectClassCastException
- if type is not assignable from EventListenerNullPointerException
- if type is nullIllegalArgumentException
- if type is Void.TYPE