diff options
Diffstat (limited to 'qadevOOo/tests/basic/ifc/table/XCellCursor/table_XCellCursor.xba')
-rw-r--r-- | qadevOOo/tests/basic/ifc/table/XCellCursor/table_XCellCursor.xba | 144 |
1 files changed, 144 insertions, 0 deletions
diff --git a/qadevOOo/tests/basic/ifc/table/XCellCursor/table_XCellCursor.xba b/qadevOOo/tests/basic/ifc/table/XCellCursor/table_XCellCursor.xba new file mode 100644 index 000000000000..b681dfa1a334 --- /dev/null +++ b/qadevOOo/tests/basic/ifc/table/XCellCursor/table_XCellCursor.xba @@ -0,0 +1,144 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE script:module PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "module.dtd"> +<script:module xmlns:script="http://openoffice.org/2000/script" script:name="table_XCellCursor" script:language="StarBasic"> + + +'************************************************************************* +' +' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +' +' Copyright 2000, 2010 Oracle and/or its affiliates. +' +' OpenOffice.org - a multi-platform office productivity suite +' +' 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 +' <http://www.openoffice.org/license.html> +' for a copy of the LGPLv3 License. +' +'************************************************************************* +'************************************************************************* + + + +' Be sure that all variables are dimensioned: +option explicit + +'************************************************************************* +'XCellCursor walks in a range of data. That +' means: If you have the range (A1:B10) filled +' with data gotoStart() goes to (A1), gotoEnd() +' goes to (B10). But: you must insite this range. +' If you are in (C3) you will nerver go to (A1). + +'************************************************************************* + + + + + + +Sub RunTest() + +'************************************************************************* +' INTERFACE: +' com.sun.star.table.XCellCursor +'************************************************************************* +On Error Goto ErrHndl + Dim bOK As Boolean + Dim bSupport As Boolean + Dim ResetCols As Integer, ResetRows As Long + Dim nStartSCol, nStartECol As Integer + Dim nStartSRow, nStartERow As Long + Dim nNextECol As Integer, nNextERow As Long + Dim nEndECol As Integer, nEndERow As Long + Dim nPrevECol As Integer, nPrevERow As Long + Dim nOffECol As Integer, nOffERow As Long + Dim oAddress As Object + + if hasUnoInterfaces(oObj, "com.sun.star.sheet.XSheetCellCursor") then + bSupport = true + ResetCols = oObj.getColumns().getCount() + ResetRows = oObj.getRows().getCount() + else + bSupport = false + end if + + Test.StartMethod("gotoStart()") + bOK = true + oObj.gotoStart() + oAddress = oObj.getRangeAddress() + nStartSCol = oAddress.StartColumn + nStartECol = oAddress.EndColumn + nStartSRow = oAddress.StartRow + nStartERow = oAddress.EndRow + bOK = bOK AND (nStartSCol = nStartECol) AND (nStartSRow = nStartERow) + Out.Log("nStartSCol = " & nStartSCol & " nStartECol = " & nStartECol &_ + " nStartSRow = " & nStartSRow & " nStartERow = " & nStartERow) + Test.MethodTested("gotoStart()", bOK) + + Test.StartMethod("gotoNext()") + bOK = true + oObj.gotoNext() + oAddress = oObj.getRangeAddress() + nNextECol = oAddress.EndColumn + nNextERow = oAddress.EndRow + bOK = bOK AND ((nNextECol = nStartSCol + 1) OR (nNextERow = nStartSRow + 1)) + Out.Log("nNextECol = " & nNextECol & " nNextERow = " & nNextERow) + Test.MethodTested("gotoNext()", bOK) + + Test.StartMethod("gotoEnd()") + bOK = true + oObj.gotoEnd() + oAddress = oObj.getRangeAddress() + nEndECol = oAddress.EndColumn + nEndERow = oAddress.EndRow + bOK = bOK AND ((nEndECol > nStartECol) OR (nEndERow > nStartERow)) + Out.Log("nEndSCol = " & nEndECol & " nEndERow = " & nEndERow) + Test.MethodTested("gotoEnd()", bOK) + + Test.StartMethod("gotoPrevious()") + bOK = true + oObj.gotoPrevious() + oAddress = oObj.getRangeAddress() + nPrevECol = oAddress.EndColumn + nPrevERow = oAddress.EndRow + bOK = bOK AND ((nPrevECol < nEndECol) OR (nPrevERow < nEndERow)) + Out.Log("nPrevECol = " & nPrevECol & " nPrevERow = " & nPrevERow) + Test.MethodTested("gotoPrevious()", bOK) + + Test.StartMethod("gotoOffset()") + bOK = true + oObj.gotoStart() + oObj.gotoOffset(1,1) + oAddress = oObj.getRangeAddress() + nOffECol = oAddress.EndColumn + nOffERow = oAddress.EndRow + bOK = bOK AND (nOffECol = nStartSCol + 1) AND (nOffERow = nStartSRow + 1) + Out.Log("nOffECol = " & nOffECol & " nOffERow = " & nOffERow) + Test.MethodTested("gotoOffset()", bOK) + + if bSupport then + Out.Log("Reset to old range: " & ResetCols & "," & ResetRows) + oObj.collapseToSize(ResetCols, ResetRows) + end if + +Exit Sub +ErrHndl: + Test.Exception() + bOK = false + resume next +End Sub +</script:module> |