/************************************************************** * * 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_XAccessibleEditableText_idl__ #define __com_sun_star_accessibility_XAccessibleEditableText_idl__ #ifndef __com_sun_star_accessibility_XAccessibleText_idl__ #include #endif #ifndef __com_sun_star_lang_IndexOutOfBoundsException_idl__ #include #endif #ifndef __com_sun_star_beans_PropertyValue_idl__ #include #endif module com { module sun { module star { module accessibility { /** Implement this interface to give read and write access to a text representation.

This interface is typically used in conjunction with the XAccessibleText interface and extents it about the ability to modify the text represented by that interface.

@since OpenOffice 1.1.2 */ published interface XAccessibleEditableText : ::com::sun::star::accessibility::XAccessibleText { /** Copies the text range into the clipboard.

The specified text between and including the two given indices is copied into the system clipboard and is deleted afterwards from the text represented by this object. This is equivalent to calling first XAccessibleText::copyText and then XAccessibleEditableText::deleteText with the given start and end indices.

The text indices are interpreted like those in the XAccessibleText::getTextRange method.

@param nStartIndex Start index of the text to moved into the clipboard. The valid range is 0..length. @param nEndIndex End index of the text to moved into the clipboard. The valid range is 0..length. @return Returns a flag that indicates whether the operation has been executed successfully. @throws ::com::sun::star::lang::IndexOutOfBoundsException if the indices are invalid */ boolean cutText ([in] long nStartIndex, [in] long nEndIndex) raises (::com::sun::star::lang::IndexOutOfBoundsException); /** Pastes text from the clipboard.

The text in the system clipboard is pasted into the text represented by this object at the given index. This method is similar to the XAccessibleEditableText::insertText method. If the index is not valid then the system clipboard text is not inserted.

@param nIndex Index at which to insert the text from the system clipboard into the text represented by this object. The valid range is 0..length. @return Returns a flag that indicates whether the operation has been executed successfully. @throws ::com::sun::star::lang::IndexOutOfBoundsException if the index is invalid */ boolean pasteText ([in] long nIndex) raises (::com::sun::star::lang::IndexOutOfBoundsException); /** Deletes a range of text.

The text between and including the two given indices is deleted from the text represented by this object.

The text indices are interpreted like those in the XAccessibleText::getTextRange method.

@param nStartIndex Start index of the text to be deleted. The valid range is 0..length. @param nEndIndex End index of the text to be deleted. The valid range is 0..length. @return Returns a flag that indicates whether the operation has been executed successfully. @throws ::com::sun::star::lang::IndexOutOfBoundsException if the indices are invalid */ boolean deleteText ([in] long nStartIndex, [in] long nEndIndex) raises (::com::sun::star::lang::IndexOutOfBoundsException); /** Inserts text at the specified position.

The specified string is inserted at the given index into the text represented by this object.

@param sText Text that is inserted. @param nIndex Index at which to insert the text. The valid range is 0..length. @return Returns a flag that indicates whether the operation has been executed successfully. @throws ::com::sun::star::lang::IndexOutOfBoundsException if the indices are invalid */ boolean insertText ([in] string sText, [in] long nIndex) raises (::com::sun::star::lang::IndexOutOfBoundsException); /** Replaces text.

The text between the two given indices is replaced by the specified replacement string. This method is equivalent to calling first XAccessibleEditableText::deleteText with the two indices and afterwards calling XAccessibleEditableText::insertText with the replacement text and the start index.

The text indices are interpreted like those in the XAccessibleText::getTextRange method.

@param nStartIndex Start index of the text to be replaced. The valid range is 0..length. @param nEndIndex Start index of the text to be replaced. The valid range is 0..length. @param sReplacement The Text that replaces the text between the given indices. @return Returns a flag that indicates whether the operation has been executed successfully. @throws ::com::sun::star::lang::IndexOutOfBoundsException if the indices are invalid */ boolean replaceText ([in] long nStartIndex, [in] long nEndIndex, [in] string sReplacement) raises (::com::sun::star::lang::IndexOutOfBoundsException); /** Replaces the attributes of a text range by the given set of attributes.

Sets the attributes for the text between and including the two given indices to those given. The old attributes of this text portion are replaced by the new list of attributes.

The text indices are interpreted like those in the XAccessibleText::getTextRange method.

@param nStartIndex Start index of the text whose attributes are modified. The valid range is 0..length. @param nEndIndex Start index of the text whose attributes are modified. The valid range is 0..length. @param aAttributeSet Set of attributes that replaces the old list of attributes of the specified text portion. @return Returns a flag that indicates whether the operation has been executed successfully. @throws ::com::sun::star::lang::IndexOutOfBoundsException if the indices are invalid */ boolean setAttributes ([in] long nStartIndex, [in] long nEndIndex, [in] sequence<::com::sun::star::beans::PropertyValue> aAttributeSet) raises (::com::sun::star::lang::IndexOutOfBoundsException); /** Replaces the whole text with the given text.

The text content of this object is set to the given string.

@param sText The new text that replaces the old text. @return Returns a flag that indicates whether the operation has been executed successfully. */ boolean setText ([in] string sText); }; }; }; }; }; #endif