1<?xml version="1.0" encoding="UTF-8"?> 2<!DOCTYPE script:module PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "module.dtd"> 3<script:module xmlns:script="http://openoffice.org/2000/script" script:name="form_XChangeBroadcaster" script:language="StarBasic"> 4 5 6'************************************************************************* 7' 8' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 9' 10' Copyright 2000, 2010 Oracle and/or its affiliates. 11' 12' OpenOffice.org - a multi-platform office productivity suite 13' 14' This file is part of OpenOffice.org. 15' 16' OpenOffice.org is free software: you can redistribute it and/or modify 17' it under the terms of the GNU Lesser General Public License version 3 18' only, as published by the Free Software Foundation. 19' 20' OpenOffice.org is distributed in the hope that it will be useful, 21' but WITHOUT ANY WARRANTY; without even the implied warranty of 22' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 23' GNU Lesser General Public License version 3 for more details 24' (a copy is included in the LICENSE file that accompanied this code). 25' 26' You should have received a copy of the GNU Lesser General Public License 27' version 3 along with OpenOffice.org. If not, see 28' <http://www.openoffice.org/license.html> 29' for a copy of the LGPLv3 License. 30' 31'************************************************************************* 32'************************************************************************* 33 34 35 36' Be sure that all variables are dimensioned: 37option explicit 38 39 40 41Sub RunTest() 42 43'************************************************************************* 44' INTERFACE: 45' com.sun.star.form.XChangeBroadcaster 46'************************************************************************* 47On Error Goto ErrHndl 48 Dim list1 As Object, list2 As Object 49 Dim bOK As Boolean 50 51 52 Test.StartMethod("addChangeListener()") 53 bOK = true 54 55 56 list1 = createUnoListener("L1_", "com.sun.star.form.XChangeListener") 57 list2 = createUnoListener("L2_", "com.sun.star.form.XChangeListener") 58 59 oObj.addChangeListener(list1) 60 oObj.addChangeListener(list2) 61 62 Test.StartMethod("removeChangeListener()") 63 64 oObj.removeChangeListener(list1) 65 66 L1called = false 67 L2called = false 68 69 Out.Log("The action for listener calling must be perfomed interactively") 70 71 bOK = bOK AND L2called 72 Test.MethodTested("addChangeListener()", bOK) 73 74 bOK = bOK AND NOT L1called 75 Test.MethodTested("removeChangeListener()", bOK) 76 77Exit Sub 78ErrHndl: 79 Test.Exception() 80 bOK = false 81 resume next 82End Sub 83 84Dim L1called as Boolean 85Dim L2called as Boolean 86 87Sub L1_disposing() 88End Sub 89 90Sub L2_disposing() 91End Sub 92 93Sub L1_changed() 94 L1called = true 95 96End Sub 97 98Sub L2_changed() 99 L2called = true 100 101End Sub 102 103</script:module> 104