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="awt_XRadioButton" 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.awt.XRadioButton
46'*************************************************************************
47On Error Goto ErrHndl
48    Dim bOK As Boolean
49    Dim newVal, oldVal As Variant
50    Dim oListener As Object
51    Dim listenerCalled As Boolean
52
53    'Flag should be 'true', because itemStateListener called only interactively
54    listenerCalled = true
55    oListener = createUNOListener("iSC_","com.sun.star.awt.XItemListener")
56
57    Test.StartMethod("addItemListener()")
58    Test.StartMethod("removeItemListener()")
59    oObj.addItemListener(oListener)
60    oObj.removeItemListener(oListener)
61    bOK = true AND listenerCalled
62    Test.MethodTested("addItemListener()", bOK)
63    Test.MethodTested("removeItemListener()", bOK)
64
65    Test.StartMethod("getState()")
66    Test.StartMethod("setState()")
67    bOK = true
68    oldVal = oObj.getState()
69    Out.Log("value before: "+oldVal)
70    if (oldVal) then
71        oObj.setState(false)
72    else
73        oObj.setState(true)
74    endif
75    newVal = oObj.getState()
76    Out.Log("value after: "+newVal)
77    bOK = bOK AND (oldVal &lt;&gt; newVal)
78    Test.MethodTested("getState()", bOK)
79    Test.MethodTested("setState()", bOK)
80
81    Test.StartMethod("setLabel()")
82    bOK = true
83    oObj.setLabel("newLabel")
84    Test.MethodTested("setLabel()", bOK)
85
86Exit Sub
87ErrHndl:
88    Test.Exception()
89    bOK = false
90    resume next
91End Sub
92
93Sub iSC_itemStateChanged()
94    Out.Log("CallBack for oListener itemStateChanged was called.")
95    listenerCalled = true
96End Sub
97
98</script:module>
99