'************************************************************************* ' ' 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: sheet_XSheetCellCursor.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 Sub RunTest() '************************************************************************* ' INTERFACE: ' com.sun.star.sheet.XSheetCellCursor '************************************************************************* On Error Goto ErrHndl Dim bOK As Boolean Dim nCols As Integer, nRows As Long Dim ResetCols As Integer, ResetRows As Long Dim oRange As Variant ResetCols = oObj.getColumns().getCount() ResetRows = oObj.getRows().getCount() Test.StartMethod("collapseToCurrentRegion()") bOK = true oObj.collapseToCurrentRegion() nCols = oObj.getColumns().getCount() nRows = oObj.getRows().getCount() bOK = bOK AND (nCols > 0) AND (nRows > 0) Out.Log("collapseToCurrentRegion(): nCols = " & nCols & "(>0) nRows = " & nRows & "(>0)") Test.MethodTested("collapseToCurrentRegion()", bOK) 'collapseToMergedArea goes into the area. But you must be insite ' of one cell of these area Test.StartMethod("collapseToMergedArea()") bOK = true oObj.collapseToSize(5,6) oRange = oObj.getCellRangeByPosition(0,0,2,2) oRange.merge(true) oObj.gotoStart() oObj.collapseToMergedArea() nCols = oObj.getColumns().getCount() nRows = oObj.getRows().getCount() bOK = bOK AND (nCols = 3) AND (nRows = 3) Out.Log("collapseToMergedArea(): nCols = " & nCols & "(3) nRows = " & nRows & "(3)") Test.MethodTested("collapseToMergedArea()", bOK) oRange.merge(false) Test.StartMethod("collapseToSize()") bOK = true oObj.collapseToSize(5,6) nCols = oObj.getColumns().getCount() nRows = oObj.getRows().getCount() bOK = bOK AND (nCols = 5 ) AND (nRows = 6) Out.Log("collapseToSize(): nCols = " & nCols & "(5) nRows = " & nRows & "(6)") Test.MethodTested("collapseToSize()", bOK) Test.StartMethod("collapseToCurrentArray()") oObj.collapseToSize(5,6) oRange = oObj.getCellRangeByPosition(0,0,2,3) oRange.setArrayFormula("A1:A3") bOK = true oObj.collapseToCurrentArray() nCols = oObj.getColumns().getCount() nRows = oObj.getRows().getCount() bOK = bOK AND (nCols = 3) AND (nRows = 4) Out.Log("collapseToCurrentArray(): nCols = " & nCols & "(3) nRows = " & nRows & "(4)") Test.MethodTested("collapseToCurrentArray()", bOK) oRange.setArrayFormula("") Test.StartMethod("expandToEntireColumns()") bOK = true oObj.collapseToSize(1,1) oObj.expandToEntireColumns() nCols = oObj.getColumns().getCount() nRows = oObj.getRows().getCount() bOK = bOK AND (nCols = 1) AND (nRows >= 32000) Out.Log("expandToEntireColumns(): nCols = " & nCols & "(1) nRows = " & nRows & "(>=32000)") Test.MethodTested("expandToEntireColumns()", bOK) Test.StartMethod("expandToEntireRows()") bOK = true oObj.collapseToSize(1,1) oObj.expandToEntireRows() nCols = oObj.getColumns().getCount() nRows = oObj.getRows().getCount() bOK = bOK AND (nCols >= 256) AND (nRows = 1) Out.Log("expandToEntireRows(): nCols = " & nCols & "(>=256) nRows = " & nRows & "(1)") Test.MethodTested("expandToEntireRows()", bOK) Out.Log("Reset to old range: " & ResetCols & "," & ResetRows) oObj.collapseToSize(ResetCols, ResetRows) Exit Sub ErrHndl: Test.Exception() bOK = false resume next End Sub