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="form_XFormController" 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 otherWin As Object 44 45'************************************************************************* 46 47 48 49 50 51 52Sub RunTest() 53 54'************************************************************************* 55' INTERFACE: 56' com.sun.star.form.XFormController 57'************************************************************************* 58On Error Goto ErrHndl 59 Dim bOK As Boolean 60 Dim cntrl As Object 61 Dim list1 As Object, list2 As Object 62 63 Test.StartMethod("getCurrentControl()") 64 bOK = true 65 cntrl = oObj.getCurrentControl() 66 bOK = bOK AND NOT isNull(cntrl) 67 Test.MethodTested("getCurrentControl()", bOK) 68 69 Test.StartMethod("addActivateListener()") 70 bOK = true 71 list1 = createUnoListener("L1_", "com.sun.star.form.XFormControllerListener") 72 list2 = createUnoListener("L2_", "com.sun.star.form.XFormControllerListener") 73 oObj.addActivateListener(list1) 74 oObj.addActivateListener(list2) 75 76 Test.StartMethod("removeActivateListener()") 77 oObj.removeActivateListener(list1) 78 79 if NOT hasUnoInterfaces(cntrl, "com.sun.star.awt.XWindow") then 80 Out.Log("The oObj.getCurrentControl() return object doesn't support") 81 Out.Log("com.sun.star.awt.XWindow interface required for testing !!!") 82 Out.Log("Interface test must be redesigned thus !!!") 83 else 84 cntrl.setFocus() 85 wait(500) 86 otherWin.setFocus() 87 wait(500) 88 end if 89 90 Test.MethodTested("addActivateListener()", L2called) 91 Test.MethodTested("removeActivateListener()", _ 92 L2called AND NOT L1called) 93 94Exit Sub 95ErrHndl: 96 Test.Exception() 97 bOK = false 98 resume next 99End Sub 100 101Dim L1called As Boolean 102Dim L2called As Boolean 103 104Sub L1_formActivated(ev As Object) 105 L1called = true 106 Out.Log("L1 activated Called !!!!!!!!!") 107end Sub 108 109Sub L1_formDeactivated(ev As Object) 110 L1called = true 111 Out.Log("L1 deactivated Called !!!!!!!!!") 112end Sub 113 114Sub L2_formActivated() 115 L2called = true 116 Out.Log("L2 activated Called !!!!!!!!!") 117end Sub 118 119Sub L2_formDeactivated() 120 L2called = true 121 Out.Log("L2 deactivated Called !!!!!!!!!") 122end Sub 123</script:module> 124