1. /*
  2. * @(#)AWTEventListenerProxy.java 1.5 03/01/23
  3. *
  4. * Copyright 2003 Sun Microsystems, Inc. All rights reserved.
  5. * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
  6. */
  7. package java.awt.event;
  8. import java.util.EventListenerProxy;
  9. import java.awt.AWTEvent;
  10. import java.awt.event.AWTEventListener;
  11. /**
  12. * A class which extends the <code>EventListenerProxy</code>, specifically
  13. * for adding an <code>AWTEventListener</code> for a specific event mask.
  14. * Instances of this class can be added as <code>AWTEventListener</code>s to
  15. * a Toolkit object.
  16. * <p>
  17. * The <code>getAWTEventListeners</code> method of Toolkit can
  18. * return a mixture of <code>AWTEventListener</code> and
  19. * <code>AWTEventListenerProxy</code> objects.
  20. *
  21. * @see java.awt.Toolkit
  22. * @see java.util.EventListenerProxy
  23. * @since 1.4
  24. */
  25. public class AWTEventListenerProxy extends java.util.EventListenerProxy
  26. implements AWTEventListener {
  27. private long eventMask;
  28. /**
  29. * Constructor which binds the AWTEventListener to a specific
  30. * event mask.
  31. *
  32. * @param listener The listener object
  33. * @param eventMask The bitmap of event types to receive
  34. */
  35. public AWTEventListenerProxy (long eventMask,
  36. AWTEventListener listener) {
  37. super(listener);
  38. this.eventMask = eventMask;
  39. }
  40. /**
  41. * Forwards the property change event to the listener delegate.
  42. *
  43. * @param evt the property change event
  44. */
  45. public void eventDispatched(AWTEvent evt) {
  46. ((AWTEventListener)getListener()).eventDispatched(evt);
  47. }
  48. /**
  49. * Returns the event mask associated with the
  50. * listener.
  51. */
  52. public long getEventMask() {
  53. return eventMask;
  54. }
  55. }