'************************************************************************* ' ' Licensed to the Apache Software Foundation (ASF) under one ' or more contributor license agreements. See the NOTICE file ' distributed with this work for additional information ' regarding copyright ownership. The ASF licenses this file ' to you under the Apache License, Version 2.0 (the ' "License"); you may not use this file except in compliance ' with the License. You may obtain a copy of the License at ' ' http://www.apache.org/licenses/LICENSE-2.0 ' ' Unless required by applicable law or agreed to in writing, ' software distributed under the License is distributed on an ' "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY ' KIND, either express or implied. See the License for the ' specific language governing permissions and limitations ' under the License. ' '************************************************************************* Dim iCB1_flushed As Integer Dim iCB2_flushed As Integer Sub RunTest() '************************************************************************* ' INTERFACE: ' com.sun.star.util.XFlushable '************************************************************************* On Error Goto ErrHndl Dim bOK As Boolean Dim oListener1 As Object Dim oListener2 As Object oListener1 = createUnoListener("CB1_", "com.sun.star.util.XFlushListener") oListener2 = createUnoListener("CB2_", "com.sun.star.util.XFlushListener") Test.StartMethod("addFlushListener()") bOK = true iCB1_flushed = 0 : iCB2_flushed = 0 Out.Log("Adding two listeners...") oObj.addFlushListener(oListener1) oObj.addFlushListener(oListener2) oObj.flush() bOK = bOK AND iCB1_flushed = 1 AND iCB2_flushed = 1 Test.MethodTested("addFlushListener()", bOK) Test.StartMethod("flush()") bOK = true oObj.flush() Test.MethodTested("flush()", bOK) Test.StartMethod("removeFlushListener()") bOK = true iCB1_flushed = 0 : iCB2_flushed = 0 Out.Log("Removing first listener") oObj.removeFlushListener(oListener1) oObj.flush() bOK = bOK AND iCB1_flushed = 0 AND iCB2_flushed = 1 Test.MethodTested("removeFlushListener()", bOK) Out.Log("Removing second listener") oObj.removeFlushListener(oListener2) Exit Sub ErrHndl: Test.Exception() bOK = false resume next End Sub Sub CB1_flushed(oEvent As Object) iCB1_flushed = iCB1_flushed + 1 Out.Log("CallBack function for the first listener was called.") End Sub Sub CB2_flushed(oEvent As Object) iCB2_flushed = iCB2_flushed + 1 Out.Log("CallBack function for the second listener was called.") End Sub