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="frame_XFrameLoader" 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' This Interface/Service test depends on the following GLOBAL variables,
41' which must be specified in the object creation:
42
43' Global FrameLoaderURL As String
44'Global FrameLoaderFrame As Object ' optional
45'Global FrameLoaderArgs As Variant ' optional
46
47'*************************************************************************
48
49
50
51
52
53Sub RunTest()
54
55'*************************************************************************
56' INTERFACE:
57' com.sun.star.form.XFrameLoader
58'*************************************************************************
59On Error Goto ErrHndl
60    Dim bOK As Boolean
61    Dim frame As Object
62    Dim args As Variant
63    Dim listener As Object
64
65    if IsNULL(FrameLoaderFrame) then
66        Out.log("Frame is NULL")
67        Dim oDsk As Object
68        oDsk = createUnoService("com.sun.star.frame.Desktop")
69        frame = oDsk.getCurrentFrame()
70    else
71        frame = FrameLoaderFrame
72    endif
73
74    if IsArray(FrameLoaderArgs) then
75        Out.log("Args isn't array")
76        Dim emptyAr As Variant
77        args = emptyAr
78    else
79        args = FrameLoaderArgs
80    endif
81
82    listener = createUnoListener("L_", "com.sun.star.frame.XLoadEventListener")
83    initListener()
84
85    Test.StartMethod("cancel()")
86
87    oObj.load(frame, FrameLoaderURL, args, listener)
88    oObj.cancel()
89    wait(200)
90
91    bOK = loadCancelled OR loadFinished
92
93    Test.MethodTested("cancel()", bOK)
94
95    Test.StartMethod("load()")
96
97    initListener()
98    oObj.load(frame, FrameLoaderURL, args, listener)
99    wait(200)
100    bOK = loadFinished AND Not loadCancelled
101
102    Test.MethodTested("load()", bOK)
103Exit Sub
104ErrHndl:
105    Test.Exception()
106    bOK = false
107    resume next
108End Sub
109
110Sub initListener()
111    loadFinished = false
112    loadCancelled = false
113End Sub
114
115Dim loadFinished As Boolean
116Dim loadCancelled As Boolean
117
118Sub L_loadFinished()
119   Out.Log("Listener: loadFinished")
120   loadFinished = true
121End Sub
122
123Sub L_loadCancelled()
124   Out.Log("Listener: loadCancelled")
125   loadCancelled = true
126End Sub
127</script:module>
128