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="sw_SwXDocumentIndex" script:language="StarBasic"> 4cdf0e10cSrcweir 5cdf0e10cSrcweir 6cdf0e10cSrcweir'************************************************************************* 7cdf0e10cSrcweir' 8*1cbee2cdSAndrew Rist' Licensed to the Apache Software Foundation (ASF) under one 9*1cbee2cdSAndrew Rist' or more contributor license agreements. See the NOTICE file 10*1cbee2cdSAndrew Rist' distributed with this work for additional information 11*1cbee2cdSAndrew Rist' regarding copyright ownership. The ASF licenses this file 12*1cbee2cdSAndrew Rist' to you under the Apache License, Version 2.0 (the 13*1cbee2cdSAndrew Rist' "License"); you may not use this file except in compliance 14*1cbee2cdSAndrew Rist' with the License. You may obtain a copy of the License at 15*1cbee2cdSAndrew Rist' 16*1cbee2cdSAndrew Rist' http://www.apache.org/licenses/LICENSE-2.0 17*1cbee2cdSAndrew Rist' 18*1cbee2cdSAndrew Rist' Unless required by applicable law or agreed to in writing, 19*1cbee2cdSAndrew Rist' software distributed under the License is distributed on an 20*1cbee2cdSAndrew Rist' "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 21*1cbee2cdSAndrew Rist' KIND, either express or implied. See the License for the 22*1cbee2cdSAndrew Rist' specific language governing permissions and limitations 23*1cbee2cdSAndrew Rist' under the License. 24cdf0e10cSrcweir' 25cdf0e10cSrcweir'************************************************************************* 26cdf0e10cSrcweir 27cdf0e10cSrcweir 28cdf0e10cSrcweir 29*1cbee2cdSAndrew Rist 30*1cbee2cdSAndrew Rist 31cdf0e10cSrcweir' Be sure that all variables are dimensioned: 32cdf0e10cSrcweiroption explicit 33cdf0e10cSrcweir 34cdf0e10cSrcweir 35cdf0e10cSrcweir' REQUIRED VARIABLES for interface/service tests: 36cdf0e10cSrcweirGlobal oCollection As Object 37cdf0e10cSrcweirGlobal oComponentInstance As Object ' it will be disposed 38cdf0e10cSrcweirGlobal oXTextContent as Object 39cdf0e10cSrcweirGlobal oXTextContentRange as Object 40cdf0e10cSrcweir 41cdf0e10cSrcweir 42cdf0e10cSrcweir 43cdf0e10cSrcweirSub CreateObj() 44cdf0e10cSrcweir 45cdf0e10cSrcweir'************************************************************************* 46cdf0e10cSrcweir' COMPONENT: 47cdf0e10cSrcweir' sw.SwXDocumentIndex 48cdf0e10cSrcweir'************************************************************************* 49cdf0e10cSrcweirOn Error Goto ErrHndl 50cdf0e10cSrcweir Dim i As Integer 51cdf0e10cSrcweir Dim n As Integer 52cdf0e10cSrcweir Dim oCursor As Object 53cdf0e10cSrcweir Dim oSearch As Object 54cdf0e10cSrcweir Dim oFound As Object 55cdf0e10cSrcweir Dim oIndexEntry As Object 56cdf0e10cSrcweir Dim oFoundPos As Object 57cdf0e10cSrcweir Dim oIndex As Object 58cdf0e10cSrcweir 59cdf0e10cSrcweir oDoc = utils.createDocument("swriter", cObjectName) 60cdf0e10cSrcweir oCursor = oDoc.Text.createTextCursor() 61cdf0e10cSrcweir 62cdf0e10cSrcweir ' write some strings to document 63cdf0e10cSrcweir for i = 1 to 10 64cdf0e10cSrcweir oCursor.gotoEnd(false) 65cdf0e10cSrcweir oDoc.Text.insertString(oCursor, cObjectName, false) 66cdf0e10cSrcweir oDoc.Text.insertControlCharacter(oCursor, 0, false) 67cdf0e10cSrcweir next i 68cdf0e10cSrcweir 69cdf0e10cSrcweir ' insert some IndexMakrs 70cdf0e10cSrcweir oSearch = oDoc.createSearchDescriptor() 71cdf0e10cSrcweir oSearch.SearchString = cObjectName 72cdf0e10cSrcweir oFound = oDoc.findAll(oSearch) 73cdf0e10cSrcweir 74cdf0e10cSrcweir for n = 0 to oFound.Count - 5 75cdf0e10cSrcweir oFoundPos = oFound(n) 76cdf0e10cSrcweir oIndexEntry = oDoc.createInstance("com.sun.star.text.DocumentIndexMark") 77cdf0e10cSrcweir oDoc.text.insertTextContent(oFoundPos, oIndexEntry, true) 78cdf0e10cSrcweir next n 79cdf0e10cSrcweir 80cdf0e10cSrcweir 'create an index 81cdf0e10cSrcweir oIndex = oDoc.createInstance("com.sun.star.text.DocumentIndex") 82cdf0e10cSrcweir oDoc.Text.insertTextContent(oCursor, oIndex, false) 83cdf0e10cSrcweir oObj = oIndex 84cdf0e10cSrcweir 85cdf0e10cSrcweir oXTextContent = oDoc.createInstance("com.sun.star.text.DocumentIndex") 86cdf0e10cSrcweir oXTextContentRange = oDoc.Text.createTextCursor() 87cdf0e10cSrcweir 88cdf0e10cSrcweir oIndex = oDoc.createInstance("com.sun.star.text.ContentIndex") 89cdf0e10cSrcweir oDoc.Text.insertTextContent(oCursor, oIndex, false) 90cdf0e10cSrcweir oIndex = oDoc.createInstance("com.sun.star.text.ContentIndex") 91cdf0e10cSrcweir oDoc.Text.insertTextContent(oCursor, oIndex, false) 92cdf0e10cSrcweir oIndex = oDoc.createInstance("com.sun.star.text.ContentIndex") 93cdf0e10cSrcweir oDoc.Text.insertTextContent(oCursor, oIndex, false) 94cdf0e10cSrcweir oComponentInstance = oIndex 95cdf0e10cSrcweir 96cdf0e10cSrcweir oCollection = oDoc.getDocumentIndexes() 97cdf0e10cSrcweir 98cdf0e10cSrcweirExit Sub 99cdf0e10cSrcweirErrHndl: 100cdf0e10cSrcweir Test.Exception() 101cdf0e10cSrcweirEnd Sub 102cdf0e10cSrcweir</script:module> 103