1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
20 module com
{ module sun
{ module star
{ module accessibility
{
22 interface XAccessibleTextMarkup
;
25 /** Implement this interface to expose the text markups of a text.
27 <p>The XAccessibleTextMarkup interface is the main interface
28 to expose text markups in a text, typically of a text document, that are
29 used to reference other (parts of) documents. For supporting the
30 XAccessibleTextMarkup::getTextMarkupIndex() method of this
31 interface and other character related methods of the
32 XAccessibleTextMarkup interface, it is necessary to also
33 support the XAccessibleText interface.</p>
39 interface XAccessibleTextMarkup
40 : ::com
::sun
::star
::accessibility
::XAccessibleText
42 /** Returns the number of text markup of the given text markup type
45 <p>Throws IllegalArgumentException, if given text
46 markup type is out of valid range.</p>
49 This specifies the type of text markups, whose count should
50 be returned - see TextMarkupType.
53 The number of text markup of the given text markup type.
54 Returns 0 if there is no text markup.
56 long getTextMarkupCount
( [in] long TextMarkupType
)
57 raises
(::com
::sun
::star
::lang
::IllegalArgumentException
);
59 /** Returns the text segment of the text markup of the given index and
60 of the given text mark type
62 <p>Throws IndexOutOfBoundsException, if given index
63 is out of valid range.</p>
64 <p>Throws IllegalArgumentException, if given text
65 markup type is out of valid range.</p>
67 @param TextMarkupIndex
68 This index specifies the text markup to return.
71 This specifies the type of the text markup to be returned - see
75 If the given index is in range [0..getTextMarkupCount(TextMarkupType)-1],
76 the text segment - see TextSegment - of the text markup
77 of the given text markup type is returned.
79 TextSegment getTextMarkup
( [in] long TextMarkupIndex
,
80 [in] long TextMarkupType
)
81 raises
(::com
::sun
::star
::lang
::IndexOutOfBoundsException
,
82 ::com
::sun
::star
::lang
::IllegalArgumentException
);
84 /** returns a sequence of the text segments of the text markups at the given
85 character index and of the given text markup type.
87 <p>Throws IndexOutOfBoundsException, if given character
88 index is out of range [0..number of characters in the text).</p>
89 <p>Throws IllegalArgumentException, if given text
90 markup type is out of valid range.</p>
93 This index specifies the character index in the text.
96 This specifies the type of the text markups to be returned - see
100 If character index is in range [0..number of characters in the text-1],
101 a sequence of TextSegments of the text markups at
102 given character index of the given text markup type are returned.
103 The sequence is empty, if no such text markup is found.
105 sequence
<TextSegment
> getTextMarkupAtIndex
( [in] long CharIndex
,
106 [in] long TextMarkupType
)
107 raises
(::com
::sun
::star
::lang
::IndexOutOfBoundsException
,
108 ::com
::sun
::star
::lang
::IllegalArgumentException
);
113 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */