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