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 ' Licensed to the Apache Software Foundation (ASF) under one 9 ' or more contributor license agreements. See the NOTICE file 10 ' distributed with this work for additional information 11 ' regarding copyright ownership. The ASF licenses this file 12 ' to you under the Apache License, Version 2.0 (the 13 ' "License"); you may not use this file except in compliance 14 ' with the License. You may obtain a copy of the License at 15 ' 16 ' http://www.apache.org/licenses/LICENSE-2.0 17 ' 18 ' Unless required by applicable law or agreed to in writing, 19 ' software distributed under the License is distributed on an 20 ' "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 21 ' KIND, either express or implied. See the License for the 22 ' specific language governing permissions and limitations 23 ' under the License. 24 ' 25 '************************************************************************* 26 27 28 29 30 31 32 33 Sub RunTest() 34 35 '************************************************************************* 36 ' INTERFACE: 37 ' com.sun.star.sheet.XAreaLink 38 '************************************************************************* 39 On Error Goto ErrHndl 40 Dim bOK As Boolean 41 42 43 Test.StartMethod("getSourceArea()") 44 bOK = true 45 Dim cArea As String 46 cArea = oObj.getSourceArea() 47 bOK = bOK AND NOT isNULL(cArea) 48 Test.MethodTested("getSourceArea()", bOK) 49 50 51 Test.StartMethod("setSourceArea()") 52 bOK = true 53 Dim oldArea As String 54 Dim newArea As String 55 oldArea = oObj.getSourceArea() 56 newArea = "Sheet0.I6:G8" 57 Out.Log("Set SourceArea to '" & newArea & "'") 58 oObj.setSourceArea(newArea) 59 newArea = oObj.getSourceArea() 60 Out.Log("SourceArea is '" & newArea & "'") 61 bOK = bOK AND oldArea <> newArea 62 oObj.setSourceArea(oldArea) 63 Test.MethodTested("setSourceArea()", bOK) 64 65 Test.StartMethod("getDestArea()") 66 Dim oArea As Object 67 bOK = true 68 oArea = oObj.getDestArea() 69 bOK = bOK AND NOT isNULL(oArea) 70 Test.MethodTested("getDestArea()", bOK) 71 72 Test.StartMethod("setDestArea()") 73 Dim sNewArea As New com.sun.star.table.CellRangeAddress 74 Dim sOldArea As Object 75 76 bOK = true 77 sOldArea = oObj.getDestArea() 78 79 sNewArea.Sheet = sOldArea.Sheet 80 sNewArea.StartRow = sOldArea.StartRow + 1 81 sNewArea.StartColumn = sOldArea.StartColumn + 1 82 sNewArea.EndRow = sOldArea.EndRow + 1 83 sNewArea.EndColumn = sOldArea.EndColumn + 1 84 85 oObj.setDestArea(sNewArea) 86 87 bOK = bOK AND NOT isNULL(oObj.getDestArea()) 88 if (bOK) then 89 bOK = bOK AND (sOldArea.Sheet = oObj.getDestArea.Sheet) 90 bOK = bOK AND (sOldArea.StartRow = oObj.getDestArea.StartRow - 1) 91 bOK = bOK AND (sOldArea.StartColumn = oObj.getDestArea.StartColumn - 1) 92 bOK = bOK AND (sOldArea.EndRow = oObj.getDestArea.EndRow - 1) 93 bOK = bOK AND (sOldArea.EndColumn = oObj.getDestArea.EndColumn - 1) 94 end if 95 96 oObj.setDestArea(sOldArea) 97 98 Test.MethodTested("setDestArea()", bOK) 99 100 Exit Sub 101 ErrHndl: 102 Test.Exception() 103 bOK = false 104 resume next 105 End Sub 106 </script:module> 107