summaryrefslogtreecommitdiff
path: root/qadevOOo/tests/basic/ifc/awt/XTopWindow/awt_XTopWindow.xba
blob: 7e69cee5760b857256ed32cd487c5ffb3af77641 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
<?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="awt_XTopWindow" 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



Sub RunTest()

'*************************************************************************
' INTERFACE: 
' com.sun.star.awt.XTopWindow
'*************************************************************************
On Error Goto ErrHndl
    Dim bOK As Boolean
    Dim list1 As Object, list2 As Object
    Dim aDoc As Object
    
    list1 = createUnoListener("L1_", "com.sun.star.awt.XTopWindowListener")
    list2 = createUnoListener("L2_", "com.sun.star.awt.XTopWindowListener")
    
    l1Called = false
    l2Called = false

    Test.StartMethod("addTopWindowListener()")
    bOK = true

    oObj.addTopWindowListener(list1)
    oObj.addTopWindowListener(list2)

    Test.StartMethod("removeTopWindowListener()")
    oObj.removeTopWindowListener(list1)

    Out.Log("Creating a doc ...")
    aDoc = utils.createDocument("swriter", "Window On Top")
    Out.Log("Doc created.")
    wait(1000)

    Test.StartMethod("toFront()")
    bOK = true
    activated = false
    deactivated = false
    oObj.toFront()
    wait(1000)
    bOK = bOK AND activated AND NOT deactivated
    Test.MethodTested("toFront()", bOK)

    Test.StartMethod("toBack()")
    bOK = true
    activated = false
    deactivated = false
    oObj.toBack()
    wait(1000)
    bOK = bOK AND deactivated AND NOT activated
    Test.MethodTested("toBack()", bOK)
    
    Out.Log("Disposing a doc ...")
    aDoc.dispose()
    Out.Log("Doc disposed.")
    wait(1000)

    bOK = L2Called
    Test.MethodTested("addTopWindowListener()", bOK)
    bOK = bOK AND NOT L1Called
    Test.MethodTested("removeTopWindowListener()", bOK)

    Test.StartMethod("setMenuBar()")
    bOK = true
    Dim menu As Object
    menu = createUnoService("com.sun.star.awt.MenuBar")
    menu.insertItem(1, "MenuItem", com.sun.star.awt.MenuItemStyle.CHECKABLE, 1)
    oObj.setMenuBar(menu)
    Test.MethodTested("setMenuBar()", bOK)

Exit Sub
ErrHndl:
    Test.Exception()
    bOK = false
    resume next
End Sub

Dim L1Called As Boolean
Dim L2Called As Boolean

Dim activated As Boolean
Dim deactivated As Boolean

Sub L1_windowActivated()
    L1Called = true
End Sub
Sub L1_windowDeactivated()
    L1Called = true
End Sub

Sub L2_windowActivated()
    L2Called = true
    activated = true
    Out.Log("Activated ...")
End Sub
Sub L2_windowDeactivated()
    L2Called = true
    deactivated = true
    Out.Log("Deactivated ...")
End Sub
</script:module>