1*cdf0e10cSrcweir<?xml version="1.0" encoding="UTF-8"?> 2*cdf0e10cSrcweir<!DOCTYPE script:module PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "module.dtd"> 3*cdf0e10cSrcweir<script:module xmlns:script="http://openoffice.org/2000/script" script:name="text_XTextRangeCompare" script:language="StarBasic"> 4*cdf0e10cSrcweir 5*cdf0e10cSrcweir 6*cdf0e10cSrcweir'************************************************************************* 7*cdf0e10cSrcweir' 8*cdf0e10cSrcweir' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 9*cdf0e10cSrcweir' 10*cdf0e10cSrcweir' Copyright 2000, 2010 Oracle and/or its affiliates. 11*cdf0e10cSrcweir' 12*cdf0e10cSrcweir' OpenOffice.org - a multi-platform office productivity suite 13*cdf0e10cSrcweir' 14*cdf0e10cSrcweir' This file is part of OpenOffice.org. 15*cdf0e10cSrcweir' 16*cdf0e10cSrcweir' OpenOffice.org is free software: you can redistribute it and/or modify 17*cdf0e10cSrcweir' it under the terms of the GNU Lesser General Public License version 3 18*cdf0e10cSrcweir' only, as published by the Free Software Foundation. 19*cdf0e10cSrcweir' 20*cdf0e10cSrcweir' OpenOffice.org is distributed in the hope that it will be useful, 21*cdf0e10cSrcweir' but WITHOUT ANY WARRANTY; without even the implied warranty of 22*cdf0e10cSrcweir' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 23*cdf0e10cSrcweir' GNU Lesser General Public License version 3 for more details 24*cdf0e10cSrcweir' (a copy is included in the LICENSE file that accompanied this code). 25*cdf0e10cSrcweir' 26*cdf0e10cSrcweir' You should have received a copy of the GNU Lesser General Public License 27*cdf0e10cSrcweir' version 3 along with OpenOffice.org. If not, see 28*cdf0e10cSrcweir' <http://www.openoffice.org/license.html> 29*cdf0e10cSrcweir' for a copy of the LGPLv3 License. 30*cdf0e10cSrcweir' 31*cdf0e10cSrcweir'************************************************************************* 32*cdf0e10cSrcweir'************************************************************************* 33*cdf0e10cSrcweir 34*cdf0e10cSrcweir 35*cdf0e10cSrcweir 36*cdf0e10cSrcweir' Be sure that all variables are dimensioned: 37*cdf0e10cSrcweiroption explicit 38*cdf0e10cSrcweir 39*cdf0e10cSrcweir 40*cdf0e10cSrcweir 41*cdf0e10cSrcweirSub RunTest() 42*cdf0e10cSrcweir 43*cdf0e10cSrcweir'************************************************************************* 44*cdf0e10cSrcweir' INTERFACE: 45*cdf0e10cSrcweir' com.sun.star.text.XTextRangeCompare 46*cdf0e10cSrcweir'************************************************************************* 47*cdf0e10cSrcweirOn Error Goto ErrHndl 48*cdf0e10cSrcweir Dim bOK As Boolean 49*cdf0e10cSrcweir 50*cdf0e10cSrcweir Dim oCursor1 As Object 51*cdf0e10cSrcweir Dim oCursor2 As Object 52*cdf0e10cSrcweir Dim nResult As Integer 53*cdf0e10cSrcweir Dim bEnd As Boolean 54*cdf0e10cSrcweir Dim bStart As Boolean 55*cdf0e10cSrcweir Dim cIfcShortName As String 56*cdf0e10cSrcweir 57*cdf0e10cSrcweir cIfcShortName = "XTextRangeCompare" 58*cdf0e10cSrcweir 59*cdf0e10cSrcweir nResult = 10 60*cdf0e10cSrcweir 61*cdf0e10cSrcweir Test.StartMethod("compareRegionEnds()") 62*cdf0e10cSrcweir Test.StartMethod("compareRegionStarts()") 63*cdf0e10cSrcweir 64*cdf0e10cSrcweir oCursor1 = oObj.createTextCursor() 65*cdf0e10cSrcweir oCursor2 = oObj.createTextCursor() 66*cdf0e10cSrcweir 67*cdf0e10cSrcweir nResult = oObj.compareRegionEnds(oCursor1, oCursor2) 68*cdf0e10cSrcweir bEnd = (nResult = 0) 69*cdf0e10cSrcweir nResult = oObj.compareRegionStarts(oCursor1, oCursor2) 70*cdf0e10cSrcweir bStart = (nResult = 0) 71*cdf0e10cSrcweir 72*cdf0e10cSrcweir oObj.insertString(oCursor1, cIfcShortName, false) 73*cdf0e10cSrcweir oObj.insertControlCharacter(oCursor1, 0, false) 74*cdf0e10cSrcweir oCursor2 = oObj.createTextCursor() 75*cdf0e10cSrcweir 76*cdf0e10cSrcweir oObj.insertString(oCursor2, cIfcShortName + cIfcShortName, false) 77*cdf0e10cSrcweir oObj.insertControlCharacter(oCursor2, 0, false) 78*cdf0e10cSrcweir 79*cdf0e10cSrcweir nResult = oObj.compareRegionEnds(oCursor1, oCursor2) 80*cdf0e10cSrcweir bEnd = bEnd AND (nResult = -1) 81*cdf0e10cSrcweir nResult = oObj.compareRegionEnds(oCursor2, oCursor1) 82*cdf0e10cSrcweir bEnd = bEnd AND (nResult = 1) 83*cdf0e10cSrcweir 84*cdf0e10cSrcweir nResult = oObj.compareRegionStarts(oCursor1, oCursor2) 85*cdf0e10cSrcweir bStart = (nResult = -1) 86*cdf0e10cSrcweir nResult = oObj.compareRegionStarts(oCursor2, oCursor1) 87*cdf0e10cSrcweir bStart = (nResult = 1) 88*cdf0e10cSrcweir 89*cdf0e10cSrcweir Test.MethodTested("compareRegionEnds()", bEnd) 90*cdf0e10cSrcweir Test.MethodTested("compareRegionStarts()", bStart) 91*cdf0e10cSrcweir 92*cdf0e10cSrcweirExit Sub 93*cdf0e10cSrcweirErrHndl: 94*cdf0e10cSrcweir Test.Exception() 95*cdf0e10cSrcweir bOK = false 96*cdf0e10cSrcweir resume next 97*cdf0e10cSrcweirEnd Sub 98*cdf0e10cSrcweir</script:module> 99