diff options
author | Vladimir Glazounov <vg@openoffice.org> | 2003-04-11 16:13:53 +0000 |
---|---|---|
committer | Vladimir Glazounov <vg@openoffice.org> | 2003-04-11 16:13:53 +0000 |
commit | 4ecb33bec6d1c01ee8f8dbbe9e5731528ac4df91 (patch) | |
tree | a8ced52b680c81722d71f937d9dc667109fa8332 /toolkit/test | |
parent | 8a2008d6adb067b921a6699d62b45bbf22ddeed0 (diff) |
INTEGRATION: CWS vcl07 (1.3.2); FILE ADDED
2003/04/08 14:28:56 obr 1.3.2.1: re-added accessibility workbench
Diffstat (limited to 'toolkit/test')
-rw-r--r-- | toolkit/test/accessibility/QueuedListener.java | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/toolkit/test/accessibility/QueuedListener.java b/toolkit/test/accessibility/QueuedListener.java new file mode 100644 index 000000000000..580cce046460 --- /dev/null +++ b/toolkit/test/accessibility/QueuedListener.java @@ -0,0 +1,55 @@ +import drafts.com.sun.star.accessibility.*; +import com.sun.star.lang.EventObject; +import com.sun.star.uno.*; +import drafts.com.sun.star.accessibility.*; + +import java.util.LinkedList; + +class QueuedListener + implements XAccessibleEventListener +{ + public QueuedListener (EventListener aListener) + { + maListener = aListener; + } + + + public void disposing( final EventObject aEvent) + { + XAccessibleContext xContext = (XAccessibleContext)UnoRuntime.queryInterface( + XAccessibleContext.class, aEvent.Source); + if (xContext == null) + { + XAccessible xAccessible = (XAccessible)UnoRuntime.queryInterface( + XAccessible.class, aEvent.Source); + if (xAccessible != null) + xContext = xAccessible.getAccessibleContext(); + } + final XAccessibleContext xSource = xContext; + EventQueue.Instance().addDisposingEvent (new Runnable() + { + public void run() + { + if (QueuedListener.this.maListener != null) + QueuedListener.this.maListener.disposing (xSource); + } + } + ); + } + + public void notifyEvent( final AccessibleEventObject aEvent ) + { + EventQueue.Instance().addEvent (new Runnable() + { + public void run() + { + QueuedListener.this.maListener.notifyEvent( aEvent ); + } + } + ); + } + + private EventListener maListener; +} + + |