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="sheet_XAreaLink" 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 38 39Sub RunTest() 40 41'************************************************************************* 42' INTERFACE: 43' com.sun.star.sheet.XAreaLink 44'************************************************************************* 45On Error Goto ErrHndl 46 Dim bOK As Boolean 47 48 49 Test.StartMethod("getSourceArea()") 50 bOK = true 51 Dim cArea As String 52 cArea = oObj.getSourceArea() 53 bOK = bOK AND NOT isNULL(cArea) 54 Test.MethodTested("getSourceArea()", bOK) 55 56 57 Test.StartMethod("setSourceArea()") 58 bOK = true 59 Dim oldArea As String 60 Dim newArea As String 61 oldArea = oObj.getSourceArea() 62 newArea = "Sheet0.I6:G8" 63 Out.Log("Set SourceArea to '" & newArea & "'") 64 oObj.setSourceArea(newArea) 65 newArea = oObj.getSourceArea() 66 Out.Log("SourceArea is '" & newArea & "'") 67 bOK = bOK AND oldArea <> newArea 68 oObj.setSourceArea(oldArea) 69 Test.MethodTested("setSourceArea()", bOK) 70 71 Test.StartMethod("getDestArea()") 72 Dim oArea As Object 73 bOK = true 74 oArea = oObj.getDestArea() 75 bOK = bOK AND NOT isNULL(oArea) 76 Test.MethodTested("getDestArea()", bOK) 77 78 Test.StartMethod("setDestArea()") 79 Dim sNewArea As New com.sun.star.table.CellRangeAddress 80 Dim sOldArea As Object 81 82 bOK = true 83 sOldArea = oObj.getDestArea() 84 85 sNewArea.Sheet = sOldArea.Sheet 86 sNewArea.StartRow = sOldArea.StartRow + 1 87 sNewArea.StartColumn = sOldArea.StartColumn + 1 88 sNewArea.EndRow = sOldArea.EndRow + 1 89 sNewArea.EndColumn = sOldArea.EndColumn + 1 90 91 oObj.setDestArea(sNewArea) 92 93 bOK = bOK AND NOT isNULL(oObj.getDestArea()) 94 if (bOK) then 95 bOK = bOK AND (sOldArea.Sheet = oObj.getDestArea.Sheet) 96 bOK = bOK AND (sOldArea.StartRow = oObj.getDestArea.StartRow - 1) 97 bOK = bOK AND (sOldArea.StartColumn = oObj.getDestArea.StartColumn - 1) 98 bOK = bOK AND (sOldArea.EndRow = oObj.getDestArea.EndRow - 1) 99 bOK = bOK AND (sOldArea.EndColumn = oObj.getDestArea.EndColumn - 1) 100 end if 101 102 oObj.setDestArea(sOldArea) 103 104 Test.MethodTested("setDestArea()", bOK) 105 106Exit Sub 107ErrHndl: 108 Test.Exception() 109 bOK = false 110 resume next 111End Sub 112</script:module> 113