/************************************************************** * * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file * distributed with this work for additional information * regarding copyright ownership. The ASF licenses this file * to you under the Apache License, Version 2.0 (the * "License"); you may not use this file except in compliance * with the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. See the License for the * specific language governing permissions and limitations * under the License. * *************************************************************/ #ifndef __com_sun_star_accessibility_TextSegment_idl__ #define __com_sun_star_accessibility_TextSegment_idl__ module com { module sun { module star { module accessibility { /** This structure describes a text segment that is embedded in a larger portion of text. It is used for example by the XAccessibleText interface to describe a text portion that was inserted into or deleted from an accessible text.

The indices TextSegment::SegmentStart and TextSegment::SegmentEnd refer to the enclosing text. The TextSegment::SegmentText member contains the text between these two indices including the start index but not the end index. With it you can use this structure without having to access the XAccessibleText interface that represents the enclosing text.

An empty text segment is expressed by TextSegment::SegmentStart and TextSegment::SegmentEnd set to the same value. While a value of -1 signals an error (like the request for a word after the last character of a text) all other values define the empty string at that position.

The SegmentText member is a copy of the corresponding text segment of the enclosing text. Modifying this structure does not alter the enclosing text.

@see XAccessibleText @since OOo 1.1.2 */ published struct TextSegment { /** A copy of the text segment of the enclosing text delimited by the text indices TextSegment::SegmentStart and TextSegment::SegmentEnd. Modifying it does not alter the enclosing text. */ string SegmentText; /** Index of the first character of the text segment represented by this structure. The index refers to the enclosing text. */ long SegmentStart; /** Index of the character directly behind the last character of the text segment represented by this structure. The index refers to the enclosing text. */ long SegmentEnd; }; }; }; }; }; #endif