1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: TextSegment.idl,v $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
31 #ifndef __com_sun_star_accessibility_TextSegment_idl__
32 #define __com_sun_star_accessibility_TextSegment_idl__
34 module com
{ module sun
{ module star
{ module accessibility
{
36 /** This structure describes a text segment that is embedded in a larger
37 portion of text. It is used for example by the
38 <type>XAccessibleText</type> interface to describe a text portion that
39 was inserted into or deleted from an accessible text.
41 <p>The indices <member>TextSegment::SegmentStart</member> and
42 <member>TextSegment::SegmentEnd</member> refer to the enclosing text.
43 The <member>TextSegment::SegmentText</member> member contains the text
44 between these two indices including the start index but not the end
45 index. With it you can use this structure without having to
46 access the <type>XAccessibleText</type> interface that represents the
49 <p>An empty text segment is expressed by
50 <member>TextSegment::SegmentStart</member> and
51 <member>TextSegment::SegmentEnd</member> set to the same value. While a
52 value of -1 signals an error (like the request for a word after the last
53 character of a text) all other values define the empty string at that
56 <p>The <member>SegmentText</member> member is a copy of the
57 corresponding text segment of the enclosing text. Modifying this
58 structure does not alter the enclosing text.</p>
65 published
struct TextSegment
67 /** A copy of the text segment of the enclosing text delimited by the
68 text indices <member>TextSegment::SegmentStart</member> and
69 <member>TextSegment::SegmentEnd</member>. Modifying it does not
70 alter the enclosing text.
74 /** Index of the first character of the text segment represented by this
75 structure. The index refers to the enclosing text.
79 /** Index of the character directly behind the last character of the
80 text segment represented by this structure. The index refers to the