'************************************************************************* ' ' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ' ' Copyright 2008 by Sun Microsystems, Inc. ' ' OpenOffice.org - a multi-platform office productivity suite ' ' $RCSfile: util_XRefreshable.xba,v $ ' ' $Revision: 1.3 $ ' ' This file is part of OpenOffice.org. ' ' OpenOffice.org is free software: you can redistribute it and/or modify ' it under the terms of the GNU Lesser General Public License version 3 ' only, as published by the Free Software Foundation. ' ' OpenOffice.org is distributed in the hope that it will be useful, ' but WITHOUT ANY WARRANTY; without even the implied warranty of ' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ' GNU Lesser General Public License version 3 for more details ' (a copy is included in the LICENSE file that accompanied this code). ' ' You should have received a copy of the GNU Lesser General Public License ' version 3 along with OpenOffice.org. If not, see ' ' for a copy of the LGPLv3 License. ' '************************************************************************* '************************************************************************* ' Be sure that all variables are dimensioned: option explicit Dim nCB1Val As Integer Dim nCB2Val As Integer Sub RunTest() '************************************************************************* ' INTERFACE: ' com.sun.star.util.XRefreshable '************************************************************************* On Error Goto ErrHndl Dim bOK As Boolean Dim oListener1, oListener2 As Object Dim nCount As Integer bOK = true nCount = 0 nCB1Val = 0 nCB2Val = 0 Out.Log("Create two listeners...") oListener1 = createUNOListener("CB1_", "com.sun.star.util.XRefreshListener") oListener2 = createUNOListener("CB2_", "com.sun.star.util.XRefreshListener") Out.Log("Adding two refresh listeners") oObj.addRefreshListener(oListener1) oObj.addRefreshListener(oListener2) Test.StartMethod("addRefreshListener()") bOK = true oObj.refresh() bOK = bOK AND (nCB1Val = 1) AND (nCB2Val = 1) Test.MethodTested("addRefreshListener()", bOK) Test.StartMethod("removeRefreshListener()") bOK = true Out.Log("Removing second refresh listener") oObj.removeRefreshListener(oListener2) oObj.refresh() bOK = bOK AND (nCB1Val = 2) AND (nCB2Val = 1) Test.MethodTested("removeRefreshListener()", bOK) Test.StartMethod("refresh()") bOK = true bOK = bOK AND (nCB1Val = 2) AND (nCB2Val = 1) Test.MethodTested("refresh()", bOK) Out.Log("Removing first refresh listener") oObj.removeRefreshListener(oListener1) Exit Sub ErrHndl: Test.Exception() bOK = false resume next End Sub Sub CB1_refreshed() Out.Log("First listener CallBack called") nCB1Val = nCB1Val + 1 End Sub Sub CB2_refreshed() Out.Log("Second listener CallBack called") nCB2Val = nCB2Val + 1 End Sub