diff options
Diffstat (limited to 'qadevOOo/tests/basic/ifc/accessibility/XAccessibleEventBroadcaster/accessibility_XAccessibleEventBroadcaster.xba')
-rw-r--r-- | qadevOOo/tests/basic/ifc/accessibility/XAccessibleEventBroadcaster/accessibility_XAccessibleEventBroadcaster.xba | 149 |
1 files changed, 149 insertions, 0 deletions
diff --git a/qadevOOo/tests/basic/ifc/accessibility/XAccessibleEventBroadcaster/accessibility_XAccessibleEventBroadcaster.xba b/qadevOOo/tests/basic/ifc/accessibility/XAccessibleEventBroadcaster/accessibility_XAccessibleEventBroadcaster.xba new file mode 100644 index 000000000000..e8dd62a677cb --- /dev/null +++ b/qadevOOo/tests/basic/ifc/accessibility/XAccessibleEventBroadcaster/accessibility_XAccessibleEventBroadcaster.xba @@ -0,0 +1,149 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE script:module PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "module.dtd"> +<script:module xmlns:script="http://openoffice.org/2000/script" script:name="accessibility_XAccessibleEventBroadcaster" script:language="StarBasic"> +'************************************************************************* +'* +' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +' +' Copyright 2000, 2010 Oracle and/or its affiliates. +' +' OpenOffice.org - a multi-platform office productivity suite +' +' This file is part of OpenOffice.org. +' +' OpenOffice.org is free software: you can redistribute it and/or modify +' it under the terms of the GNU Lesser General Public License version 3 +' only, as published by the Free Software Foundation. +' +' OpenOffice.org is distributed in the hope that it will be useful, +' but WITHOUT ANY WARRANTY; without even the implied warranty of +' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +' GNU Lesser General Public License version 3 for more details +' (a copy is included in the LICENSE file that accompanied this code). +' +' You should have received a copy of the GNU Lesser General Public License +' version 3 along with OpenOffice.org. If not, see +' <http://www.openoffice.org/license.html> +' for a copy of the LGPLv3 License. +' +'************************************************************************* +'************************************************************************* + + + +' Be sure that all variables are dimensioned: +option explicit + +'************************************************************************* +' This Interface/Service test depends on the following GLOBAL variables, +' which must be specified in the object creation: + +' fireEvent() precedure +' located in component test + +'************************************************************************* + + + + + +Dim oListener1 As Object +Dim oListener2 As Object +Dim bL1called As Boolean +Dim bL2called As Boolean + + +Sub RunTest() + +'************************************************************************* +' INTERFACE: +' com.sun.star.accessibility.XAccessibleEventBroadcaster +'************************************************************************* +On Error Goto ErrHndl + Dim bOK As Boolean + Dim isTransient As Boolean + Dim stateSet As Variant + bOK = true + + 'out.log("Creating Listeners...") + oListener1 = createUNOListener("EL1_","com.sun.star.accessibility.XAccessibleEventListener") + oListener2 = createUNOListener("EL2_","com.sun.star.accessibility.XAccessibleEventListener") + bOK = bOK AND NOT isNULL(oListener1) AND NOT isNULL(oListener2) + if NOT bOK then out.log( "ERROR: Cannot create listeners...") + + if NOT hasUNOInterfaces(oObj,"com.sun.star.accessibility.XAccessibleContext") then + 'out.log("Object does not implement XAccessibleContext.") + isTransient = false + else + stateSet = oObj.getAccessibleStateSet() + isTransient = stateSet.contains(27) + End If + + Test.StartMethod("addEventListener()") + bOK = true + bL1called = false + bL2called = false + 'out.log("Adding two listeners...") + oObj.com_sun_star_accessibility_XAccessibleEventBroadcaster_addEventListener(oListener1) + oObj.com_sun_star_accessibility_XAccessibleEventBroadcaster_addEventListener(oListener2) + 'out.log("fire event") + fireEvent() + wait(500) + out.log("Listener1 called: "+bL1called) + out.log("Listener2 called: "+bL2called) + if NOT isTransient then + bOK = bOK AND bL1called AND bL2called + else + 'out.log("Object is transient, listeners aren't expected to call.") + bOK = true + End If + Test.MethodTested("addEventListener()",bOK) + + + Test.StartMethod("removeEventListener()") + bOK = true + bL1called = false + bL2called = false + 'out.log("Removing one listener...") + oObj.com_sun_star_accessibility_XAccessibleEventBroadcaster_removeEventListener(oListener1) + 'out.log("fire event") + fireEvent() + wait(500) + out.log("Listener1 called: "+bL1called) + out.log("Listener2 called: "+bL2called) + if NOT isTransient then + bOK = bOK AND NOT bL1called AND bL2called + else + 'out.log("Object is transient, listeners aren't expected to call.") + bOK = true + End If + Test.MethodTested("removeEventListener()",bOK) + + ' Removing the second listener... + oObj.com_sun_star_accessibility_XAccessibleEventBroadcaster_removeEventListener(oListener2) + + +Exit Sub +ErrHndl: + Test.Exception() + bOK = false + resume next +End Sub + +Sub EL1_notifyEvent(ev As Variant) + 'out.log("CallBack for Listener1 notifyEvent was called.") + bL1called = true +End Sub + +Sub EL1_disposing() +End Sub + +Sub EL2_notifyEvent(ev As Variant) + 'out.log("CallBack for Listener2 notifyEvent was called.") + bL2called = true +End Sub + +Sub EL2_disposing() +End Sub + +</script:module>
\ No newline at end of file |