xref: /AOO41X/main/qadevOOo/tests/basic/ifc/text/XMailMergeBroadcaster/text_XMailMergeBroadcaster.xba (revision 5979ef3c542ac870a02043decc543300c0ec3dfb)
1<?xml version="1.0" encoding="UTF-8"?>
2<script:module xmlns:script="http://openoffice.org/2000/script" script:name="text_XMailMergeBroadcaster" script:language="StarBasic">
3
4'*************************************************************************
5'
6' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
7'
8' Copyright 2000, 2010 Oracle and/or its affiliates.
9'
10' OpenOffice.org - a multi-platform office productivity suite
11'
12' This file is part of OpenOffice.org.
13'
14' OpenOffice.org is free software: you can redistribute it and/or modify
15' it under the terms of the GNU Lesser General Public License version 3
16' only, as published by the Free Software Foundation.
17'
18' OpenOffice.org is distributed in the hope that it will be useful,
19' but WITHOUT ANY WARRANTY; without even the implied warranty of
20' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
21' GNU Lesser General Public License version 3 for more details
22' (a copy is included in the LICENSE file that accompanied this code).
23'
24' You should have received a copy of the GNU Lesser General Public License
25' version 3 along with OpenOffice.org.  If not, see
26' <http://www.openoffice.org/license.html>
27' for a copy of the LGPLv3 License.
28'
29'*************************************************************************
30'*************************************************************************
31
32'*************************************************************************
33' This Interface/Service test depends on the following GLOBAL variables,
34' which must be specified in the object creation:
35
36'   Global FUNCTION XMailMergeEvent()
37'   This function fires an event which causes a listner call
38
39
40'*************************************************************************
41
42' Be sure that all variables are dimensioned:
43option explicit
44
45    Dim bCB1 as Boolean
46    Dim bCB2 as Boolean
47
48
49Sub RunTest()
50
51'*************************************************************************
52' INTERFACE:
53' com.sun.star.text.XMailMergeBroadcaster
54'*************************************************************************
55On Error Goto ErrHndl
56    Dim bOK As Boolean
57    Dim oListener1 as Object
58    Dim oListener2 as Object
59
60    Out.Log("create two listeners")
61    oListener1 = createUNOListener("CB1_", "com.sun.star.text.XMailMergeListener")
62    oListener2 = createUNOListener("CB2_", "com.sun.star.text.XMailMergeListener")
63
64    Test.StartMethod("addMailMergeEventListener()")
65    bCB1 = FALSE
66    bCB2 = FALSE
67    bOK = TRUE
68    oObj.addMailMergeEventListener(oListener1)
69    oObj.addMailMergeEventListener(oListener2)
70    XMailMergeEvent()
71    out.dbg("call oObj.execute()")
72    out.dbg("Listener1: " + bCB1 + " ; Listener2: " + bCB2)
73    bOK = bOK AND bCB1 AND bCB2
74    Test.MethodTested("addMailMergeEventListener()", bOK)
75
76    Test.StartMethod("removeMailMergeEventListener()")
77    bCB1 = FALSE
78    bCB2 = FALSE
79    bOK = TRUE
80    out.dbg("remove Listener1")
81    oObj.removeMailMergeEventListener(oListener1)
82    out.dbg("call oObj.execute()")
83    XMailMergeEvent()
84    out.dbg("Listener1: " + bCB1 + " ; Listener2: " + bCB2)
85    bOK = bOK AND NOT bCB1 AND bCB2
86    Test.MethodTested("removeMailMergeEventListener()", bOK)
87
88
89Exit Sub
90ErrHndl:
91    Test.Exception()
92    bOK = false
93    resume next
94End Sub
95
96Sub CB1_notifyMailMergeEvent()
97    out.dbg("CB1_notifyMailMergeEvent() was clled.")
98    bCB1 = TRUE
99end Sub
100
101Sub CB2_notifyMailMergeEvent()
102    out.dbg("CB2_notifyMailMergeEvent() was clled.")
103    bCB2 = TRUE
104end Sub
105
106</script:module>
107