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_XSubmit" 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 37' Be sure that all variables are dimensioned: 38option explicit 39 40 41 42Sub RunTest() 43 44'************************************************************************* 45' INTERFACE: 46' com.sun.star.form.XSubmit 47'************************************************************************* 48On Error Goto ErrHndl 49 Dim bOK As Boolean 50 Dim list1 As Object, list2 As Object 51 Dim event As new com.sun.star.awt.MouseEvent 52 53 Test.StartMethod("addSubmitListener()") 54 55 l1Called = 0 : l2Called = 0 56 57 bOK = true 58 list1 = createUnoListener("L1_", "com.sun.star.form.XSubmitListener") 59 list2 = createUnoListener("L2_", "com.sun.star.form.XSubmitListener") 60 61 Out.Log("add two listeners") 62 oObj.addSubmitListener(list1) 63 oObj.addSubmitListener(list2) 64 65 Test.StartMethod("removeSubmitListener()") 66 Out.Log("remove listener 1") 67 oObj.removeSubmitListener(list1) 68 69 Test.StartMethod("submit()") 70 71 l1Called = false 72 l2Called = false 73 74 oObj.TargetURL = "someserver" 75 oObj.submit(NULL_OBJECT, event) 76 77 wait(500) 78 79 Out.Log("Listener1 was called " + l1Called + " times." 80 Out.Log("Listener2 was called " + l2Called + " times." 81 82 Test.MethodTested("addSubmitListener()", l2Called = 1) 83 Test.MethodTested("submit()", l2Called > 0) 84 Test.MethodTested("removeSubmitListener()", l1Called = 0) 85 86 Out.Log("remove listener 2") 87 oObj.removeSubmitListener(list2) 88 89Exit Sub 90ErrHndl: 91 Test.Exception() 92 bOK = false 93 resume next 94End Sub 95 96Dim l1Called As Integer 97Dim l2Called As Integer 98 99Function L1_approveSubmit() As Boolean 100 l1Called = l1Called + 1 101 L1_approveSubmit = true 102End Function 103 104Function L2_approveSubmit() As Boolean 105 l2Called = l2Called + 1 106 L2_approveSubmit = true 107End Function 108</script:module> 109