1cdf0e10cSrcweir<?xml version="1.0" encoding="UTF-8"?> 2cdf0e10cSrcweir<script:module xmlns:script="http://openoffice.org/2000/script" script:name="text_XMailMergeBroadcaster" script:language="StarBasic"> 3cdf0e10cSrcweir 4cdf0e10cSrcweir'************************************************************************* 5cdf0e10cSrcweir' 6*f94e042dSAndrew Rist' Licensed to the Apache Software Foundation (ASF) under one 7*f94e042dSAndrew Rist' or more contributor license agreements. See the NOTICE file 8*f94e042dSAndrew Rist' distributed with this work for additional information 9*f94e042dSAndrew Rist' regarding copyright ownership. The ASF licenses this file 10*f94e042dSAndrew Rist' to you under the Apache License, Version 2.0 (the 11*f94e042dSAndrew Rist' "License"); you may not use this file except in compliance 12*f94e042dSAndrew Rist' with the License. You may obtain a copy of the License at 13*f94e042dSAndrew Rist' 14*f94e042dSAndrew Rist' http://www.apache.org/licenses/LICENSE-2.0 15*f94e042dSAndrew Rist' 16*f94e042dSAndrew Rist' Unless required by applicable law or agreed to in writing, 17*f94e042dSAndrew Rist' software distributed under the License is distributed on an 18*f94e042dSAndrew Rist' "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 19*f94e042dSAndrew Rist' KIND, either express or implied. See the License for the 20*f94e042dSAndrew Rist' specific language governing permissions and limitations 21*f94e042dSAndrew Rist' under the License. 22cdf0e10cSrcweir' 23cdf0e10cSrcweir'************************************************************************* 24cdf0e10cSrcweir 25*f94e042dSAndrew Rist 26*f94e042dSAndrew Rist 27cdf0e10cSrcweir'************************************************************************* 28cdf0e10cSrcweir' This Interface/Service test depends on the following GLOBAL variables, 29cdf0e10cSrcweir' which must be specified in the object creation: 30cdf0e10cSrcweir 31cdf0e10cSrcweir' Global FUNCTION XMailMergeEvent() 32cdf0e10cSrcweir' This function fires an event which causes a listner call 33cdf0e10cSrcweir 34cdf0e10cSrcweir 35cdf0e10cSrcweir'************************************************************************* 36cdf0e10cSrcweir 37cdf0e10cSrcweir' Be sure that all variables are dimensioned: 38cdf0e10cSrcweiroption explicit 39cdf0e10cSrcweir 40cdf0e10cSrcweir Dim bCB1 as Boolean 41cdf0e10cSrcweir Dim bCB2 as Boolean 42cdf0e10cSrcweir 43cdf0e10cSrcweir 44cdf0e10cSrcweirSub RunTest() 45cdf0e10cSrcweir 46cdf0e10cSrcweir'************************************************************************* 47cdf0e10cSrcweir' INTERFACE: 48cdf0e10cSrcweir' com.sun.star.text.XMailMergeBroadcaster 49cdf0e10cSrcweir'************************************************************************* 50cdf0e10cSrcweirOn Error Goto ErrHndl 51cdf0e10cSrcweir Dim bOK As Boolean 52cdf0e10cSrcweir Dim oListener1 as Object 53cdf0e10cSrcweir Dim oListener2 as Object 54cdf0e10cSrcweir 55cdf0e10cSrcweir Out.Log("create two listeners") 56cdf0e10cSrcweir oListener1 = createUNOListener("CB1_", "com.sun.star.text.XMailMergeListener") 57cdf0e10cSrcweir oListener2 = createUNOListener("CB2_", "com.sun.star.text.XMailMergeListener") 58cdf0e10cSrcweir 59cdf0e10cSrcweir Test.StartMethod("addMailMergeEventListener()") 60cdf0e10cSrcweir bCB1 = FALSE 61cdf0e10cSrcweir bCB2 = FALSE 62cdf0e10cSrcweir bOK = TRUE 63cdf0e10cSrcweir oObj.addMailMergeEventListener(oListener1) 64cdf0e10cSrcweir oObj.addMailMergeEventListener(oListener2) 65cdf0e10cSrcweir XMailMergeEvent() 66cdf0e10cSrcweir out.dbg("call oObj.execute()") 67cdf0e10cSrcweir out.dbg("Listener1: " + bCB1 + " ; Listener2: " + bCB2) 68cdf0e10cSrcweir bOK = bOK AND bCB1 AND bCB2 69cdf0e10cSrcweir Test.MethodTested("addMailMergeEventListener()", bOK) 70cdf0e10cSrcweir 71cdf0e10cSrcweir Test.StartMethod("removeMailMergeEventListener()") 72cdf0e10cSrcweir bCB1 = FALSE 73cdf0e10cSrcweir bCB2 = FALSE 74cdf0e10cSrcweir bOK = TRUE 75cdf0e10cSrcweir out.dbg("remove Listener1") 76cdf0e10cSrcweir oObj.removeMailMergeEventListener(oListener1) 77cdf0e10cSrcweir out.dbg("call oObj.execute()") 78cdf0e10cSrcweir XMailMergeEvent() 79cdf0e10cSrcweir out.dbg("Listener1: " + bCB1 + " ; Listener2: " + bCB2) 80cdf0e10cSrcweir bOK = bOK AND NOT bCB1 AND bCB2 81cdf0e10cSrcweir Test.MethodTested("removeMailMergeEventListener()", bOK) 82cdf0e10cSrcweir 83cdf0e10cSrcweir 84cdf0e10cSrcweirExit Sub 85cdf0e10cSrcweirErrHndl: 86cdf0e10cSrcweir Test.Exception() 87cdf0e10cSrcweir bOK = false 88cdf0e10cSrcweir resume next 89cdf0e10cSrcweirEnd Sub 90cdf0e10cSrcweir 91cdf0e10cSrcweirSub CB1_notifyMailMergeEvent() 92cdf0e10cSrcweir out.dbg("CB1_notifyMailMergeEvent() was clled.") 93cdf0e10cSrcweir bCB1 = TRUE 94cdf0e10cSrcweirend Sub 95cdf0e10cSrcweir 96cdf0e10cSrcweirSub CB2_notifyMailMergeEvent() 97cdf0e10cSrcweir out.dbg("CB2_notifyMailMergeEvent() was clled.") 98cdf0e10cSrcweir bCB2 = TRUE 99cdf0e10cSrcweirend Sub 100cdf0e10cSrcweir 101cdf0e10cSrcweir</script:module> 102