diff options
Diffstat (limited to 'offapi/com/sun/star/accessibility/XAccessibleTextMarkup.idl')
-rw-r--r-- | offapi/com/sun/star/accessibility/XAccessibleTextMarkup.idl | 124 |
1 files changed, 124 insertions, 0 deletions
diff --git a/offapi/com/sun/star/accessibility/XAccessibleTextMarkup.idl b/offapi/com/sun/star/accessibility/XAccessibleTextMarkup.idl new file mode 100644 index 000000000..bf9fb3617 --- /dev/null +++ b/offapi/com/sun/star/accessibility/XAccessibleTextMarkup.idl @@ -0,0 +1,124 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * 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 . + */ + +#ifndef __com_sun_star_accessibility_XAccessibleTextMarkup_idl__ +#define __com_sun_star_accessibility_XAccessibleTextMarkup_idl__ + +#include <com/sun/star/uno/XInterface.idl> +#include <com/sun/star/lang/IllegalArgumentException.idl> +#include <com/sun/star/lang/IndexOutOfBoundsException.idl> +#include <com/sun/star/accessibility/XAccessibleText.idl> +#include <com/sun/star/accessibility/TextSegment.idl> + +module com { module sun { module star { module accessibility { + + interface XAccessibleTextMarkup; + + +/** Implement this interface to expose the text markups of a text. + + <p>The XAccessibleTextMarkup interface is the main interface + to expose text markups in a text, typically of a text document, that are + used to reference other (parts of) documents. For supporting the + XAccessibleTextMarkup::getTextMarkupIndex() method of this + interface and other character related methods of the + XAccessibleTextMarkup interface, it is necessary to also + support the XAccessibleText interface.</p> + + @see XAccessibleText + + @since OOo 3.0 +*/ +interface XAccessibleTextMarkup + : ::com::sun::star::accessibility::XAccessibleText +{ + /** Returns the number of text markup of the given text markup type + of a text. + + <p>Throws IllegalArgumentException, if given text + markup type is out of valid range.</p> + + @param TextMarkupType + This specifies the type of text markups, whose count should + be returned - see TextMarkupType. + + @return + The number of text markup of the given text markup type. + Returns 0 if there is no text markup. + */ + long getTextMarkupCount ( [in] long TextMarkupType ) + raises (::com::sun::star::lang::IllegalArgumentException); + + /** Returns the text segment of the text markup of the given index and + of the given text mark type + + <p>Throws IndexOutOfBoundsException, if given index + is out of valid range.</p> + <p>Throws IllegalArgumentException, if given text + markup type is out of valid range.</p> + + @param TextMarkupIndex + This index specifies the text markup to return. + + @param TextMarkupType + This specifies the type of the text markup to be returned - see + TextMarkupType. + + @return + If the given index is in range [0..getTextMarkupCount(TextMarkupType)-1], + the text segment - see TextSegment - of the text markup + of the given text markup type is returned. + */ + TextSegment getTextMarkup ( [in] long TextMarkupIndex, + [in] long TextMarkupType ) + raises (::com::sun::star::lang::IndexOutOfBoundsException, + ::com::sun::star::lang::IllegalArgumentException); + + /** returns a sequence of the text segments of the text markups at the given + character index and of the given text markup type. + + <p>Throws IndexOutOfBoundsException, if given character + index is out of range [0..number of characters in the text).</p> + <p>Throws IllegalArgumentException, if given text + markup type is out of valid range.</p> + + @param CharIndex + This index specifies the character index in the text. + + @param TextMarkupType + This specifies the type of the text markups to be returned - see + TextMarkupType. + + @return + If character index is in range [0..number of characters in the text-1], + a sequence of TextSegments of the text markups at + given character index of the given text markup type are returned. + The sequence is empty, if no such text markup is found. + */ + sequence<TextSegment> getTextMarkupAtIndex ( [in] long CharIndex, + [in] long TextMarkupType ) + raises (::com::sun::star::lang::IndexOutOfBoundsException, + ::com::sun::star::lang::IllegalArgumentException); +}; + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |