summaryrefslogtreecommitdiffstats
path: root/offapi/com/sun/star/accessibility/XAccessibleTextMarkup.idl
diff options
context:
space:
mode:
Diffstat (limited to 'offapi/com/sun/star/accessibility/XAccessibleTextMarkup.idl')
-rw-r--r--offapi/com/sun/star/accessibility/XAccessibleTextMarkup.idl124
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: */