1cdf0e10cSrcweir<?xml version="1.0" encoding="UTF-8"?> 2cdf0e10cSrcweir<!DOCTYPE script:module PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "module.dtd"> 3cdf0e10cSrcweir<script:module xmlns:script="http://openoffice.org/2000/script" script:name="form_XSubmit" script:language="StarBasic"> 4cdf0e10cSrcweir 5cdf0e10cSrcweir 6cdf0e10cSrcweir'************************************************************************* 7cdf0e10cSrcweir' 8*3709053cSAndrew Rist' Licensed to the Apache Software Foundation (ASF) under one 9*3709053cSAndrew Rist' or more contributor license agreements. See the NOTICE file 10*3709053cSAndrew Rist' distributed with this work for additional information 11*3709053cSAndrew Rist' regarding copyright ownership. The ASF licenses this file 12*3709053cSAndrew Rist' to you under the Apache License, Version 2.0 (the 13*3709053cSAndrew Rist' "License"); you may not use this file except in compliance 14*3709053cSAndrew Rist' with the License. You may obtain a copy of the License at 15*3709053cSAndrew Rist' 16*3709053cSAndrew Rist' http://www.apache.org/licenses/LICENSE-2.0 17*3709053cSAndrew Rist' 18*3709053cSAndrew Rist' Unless required by applicable law or agreed to in writing, 19*3709053cSAndrew Rist' software distributed under the License is distributed on an 20*3709053cSAndrew Rist' "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 21*3709053cSAndrew Rist' KIND, either express or implied. See the License for the 22*3709053cSAndrew Rist' specific language governing permissions and limitations 23*3709053cSAndrew Rist' under the License. 24cdf0e10cSrcweir' 25cdf0e10cSrcweir'************************************************************************* 26cdf0e10cSrcweir 27cdf0e10cSrcweir 28cdf0e10cSrcweir 29*3709053cSAndrew Rist 30*3709053cSAndrew Rist 31cdf0e10cSrcweir' Be sure that all variables are dimensioned: 32cdf0e10cSrcweiroption explicit 33cdf0e10cSrcweir 34cdf0e10cSrcweir 35cdf0e10cSrcweir 36cdf0e10cSrcweirSub RunTest() 37cdf0e10cSrcweir 38cdf0e10cSrcweir'************************************************************************* 39cdf0e10cSrcweir' INTERFACE: 40cdf0e10cSrcweir' com.sun.star.form.XSubmit 41cdf0e10cSrcweir'************************************************************************* 42cdf0e10cSrcweirOn Error Goto ErrHndl 43cdf0e10cSrcweir Dim bOK As Boolean 44cdf0e10cSrcweir Dim list1 As Object, list2 As Object 45cdf0e10cSrcweir Dim event As new com.sun.star.awt.MouseEvent 46cdf0e10cSrcweir 47cdf0e10cSrcweir Test.StartMethod("addSubmitListener()") 48cdf0e10cSrcweir 49cdf0e10cSrcweir l1Called = 0 : l2Called = 0 50cdf0e10cSrcweir 51cdf0e10cSrcweir bOK = true 52cdf0e10cSrcweir list1 = createUnoListener("L1_", "com.sun.star.form.XSubmitListener") 53cdf0e10cSrcweir list2 = createUnoListener("L2_", "com.sun.star.form.XSubmitListener") 54cdf0e10cSrcweir 55cdf0e10cSrcweir Out.Log("add two listeners") 56cdf0e10cSrcweir oObj.addSubmitListener(list1) 57cdf0e10cSrcweir oObj.addSubmitListener(list2) 58cdf0e10cSrcweir 59cdf0e10cSrcweir Test.StartMethod("removeSubmitListener()") 60cdf0e10cSrcweir Out.Log("remove listener 1") 61cdf0e10cSrcweir oObj.removeSubmitListener(list1) 62cdf0e10cSrcweir 63cdf0e10cSrcweir Test.StartMethod("submit()") 64cdf0e10cSrcweir 65cdf0e10cSrcweir l1Called = false 66cdf0e10cSrcweir l2Called = false 67cdf0e10cSrcweir 68cdf0e10cSrcweir oObj.TargetURL = "someserver" 69cdf0e10cSrcweir oObj.submit(NULL_OBJECT, event) 70cdf0e10cSrcweir 71cdf0e10cSrcweir wait(500) 72cdf0e10cSrcweir 73cdf0e10cSrcweir Out.Log("Listener1 was called " + l1Called + " times." 74cdf0e10cSrcweir Out.Log("Listener2 was called " + l2Called + " times." 75cdf0e10cSrcweir 76cdf0e10cSrcweir Test.MethodTested("addSubmitListener()", l2Called = 1) 77cdf0e10cSrcweir Test.MethodTested("submit()", l2Called > 0) 78cdf0e10cSrcweir Test.MethodTested("removeSubmitListener()", l1Called = 0) 79cdf0e10cSrcweir 80cdf0e10cSrcweir Out.Log("remove listener 2") 81cdf0e10cSrcweir oObj.removeSubmitListener(list2) 82cdf0e10cSrcweir 83cdf0e10cSrcweirExit Sub 84cdf0e10cSrcweirErrHndl: 85cdf0e10cSrcweir Test.Exception() 86cdf0e10cSrcweir bOK = false 87cdf0e10cSrcweir resume next 88cdf0e10cSrcweirEnd Sub 89cdf0e10cSrcweir 90cdf0e10cSrcweirDim l1Called As Integer 91cdf0e10cSrcweirDim l2Called As Integer 92cdf0e10cSrcweir 93cdf0e10cSrcweirFunction L1_approveSubmit() As Boolean 94cdf0e10cSrcweir l1Called = l1Called + 1 95cdf0e10cSrcweir L1_approveSubmit = true 96cdf0e10cSrcweirEnd Function 97cdf0e10cSrcweir 98cdf0e10cSrcweirFunction L2_approveSubmit() As Boolean 99cdf0e10cSrcweir l2Called = l2Called + 1 100cdf0e10cSrcweir L2_approveSubmit = true 101cdf0e10cSrcweirEnd Function 102cdf0e10cSrcweir</script:module> 103