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="text_XSentenceCursor" script:language="StarBasic"> 4 5 6'************************************************************************* 7' 8' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 9' 10' Copyright 2000, 2010 Oracle and/or its affiliates. 11' 12' OpenOffice.org - a multi-platform office productivity suite 13' 14' This file is part of OpenOffice.org. 15' 16' OpenOffice.org is free software: you can redistribute it and/or modify 17' it under the terms of the GNU Lesser General Public License version 3 18' only, as published by the Free Software Foundation. 19' 20' OpenOffice.org is distributed in the hope that it will be useful, 21' but WITHOUT ANY WARRANTY; without even the implied warranty of 22' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 23' GNU Lesser General Public License version 3 for more details 24' (a copy is included in the LICENSE file that accompanied this code). 25' 26' You should have received a copy of the GNU Lesser General Public License 27' version 3 along with OpenOffice.org. If not, see 28' <http://www.openoffice.org/license.html> 29' for a copy of the LGPLv3 License. 30' 31'************************************************************************* 32***** 33'************************************************************************* 34 35 36 37' Be sure that all variables are dimensioned: 38option explicit 39 40 41 42Sub RunTest() 43 44'************************************************************************* 45' INTERFACE: 46' com.sun.star.text.XSentenceCursor 47'************************************************************************* 48On Error Goto ErrHndl 49 Dim bOK As Boolean 50 51 oObj.Text.String = "Sentence two. Sentence three." 52 53 oObj.gotoEnd(false) 54 55 Test.StartMethod("gotoStartOfSentence()") 56 bOK = true 57 oObj.gotoStartOfSentence(false) 58 oObj.String = "1" 59 Out.Log("Current text: '" + oObj.Text.String + "'") 60 bOK = bOK AND inStr(1, oObj.Text.String, "1Sentence three.") <> 0 61 Test.MethodTested("gotoStartOfSentence()", bOK) 62 63 Test.StartMethod("isStartOfSentence()") 64 Test.StartMethod("isEndOfSentence()") 65 bOK = true 66 oObj.gotoStartOfSentence(false) 67 bOK = bOK AND oObj.isStartOfSentence() 68 bOK = bOK AND NOT oObj.isEndOfSentence() 69 oObj.gotoEndOfSentence(false) 70 bOK = bOK AND NOT oObj.isStartOfSentence() 71 bOK = bOK AND oObj.isEndOfSentence() 72 Test.MethodTested("isStartOfSentence()", bOK) 73 Test.MethodTested("isEndOfSentence()", bOK) 74 75 76 Test.StartMethod("gotoEndOfSentence()") 77 bOK = true 78 oObj.gotoEndOfSentence(false) 79 oObj.String = "2" 80 Out.Log("Current text: '" + oObj.Text.String + "'") 81 bOK = bOK AND inStr(1, oObj.Text.String, "three.2") <> 0 82 Test.MethodTested("gotoEndOfSentence()", bOK) 83 84 Test.StartMethod("gotoPreviousSentence()") 85 bOK = true 86 oObj.gotoPreviousSentence(false) 87 oObj.String = "3" 88 Out.Log("Current text: '" + oObj.Text.String + "'") 89 bOK = bOK AND inStr(1, oObj.Text.String, "3Sentence two.") <> 0 90 Test.MethodTested("gotoPreviousSentence()", bOK) 91 92 Test.StartMethod("gotoNextSentence()") 93 bOK = true 94 oObj.gotoNextSentence(false) 95 oObj.String = "4" 96 Out.Log("Current text: '" + oObj.Text.String + "'") 97 bOK = bOK AND inStr(1, oObj.Text.String, "41") <> 0 98 Test.MethodTested("gotoNextSentence()", bOK) 99 100Exit Sub 101ErrHndl: 102 Test.Exception() 103 bOK = false 104 resume next 105End Sub 106</script:module> 107