summaryrefslogtreecommitdiff
path: root/toolkit/test
diff options
context:
space:
mode:
authorVladimir Glazounov <vg@openoffice.org>2003-04-11 16:13:53 +0000
committerVladimir Glazounov <vg@openoffice.org>2003-04-11 16:13:53 +0000
commit4ecb33bec6d1c01ee8f8dbbe9e5731528ac4df91 (patch)
treea8ced52b680c81722d71f937d9dc667109fa8332 /toolkit/test
parent8a2008d6adb067b921a6699d62b45bbf22ddeed0 (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.java55
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;
+}
+
+