blob: aa7ba34555f5335245bc65992fd65d83d1c0d99a [file] [log] [blame]
/**************************************************************
*
* 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_text_XSimpleText_idl__
#define __com_sun_star_text_XSimplText_idl__
#ifndef __com_sun_star_text_XTextRange_idl__
#include <com/sun/star/text/XTextRange.idl>
#endif
#ifndef __com_sun_star_text_XTextCursor_idl__
#include <com/sun/star/text/XTextCursor.idl>
#endif
#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
#include <com/sun/star/lang/IllegalArgumentException.idl>
#endif
#ifndef __com_sun_star_text_XTextContent_idl__
#include <com/sun/star/text/XTextContent.idl>
#endif
#ifndef __com_sun_star_container_NoSuchElementException_idl__
#include <com/sun/star/container/NoSuchElementException.idl>
#endif
//=============================================================================
module com { module sun { module star { module text {
//=============================================================================
/** is the main interface for a distinct text unit, i.e. the main text of
a document, the text for headers and footers or for single cells of a
table.@see XText
*/
published interface XSimpleText: com::sun::star::text::XTextRange
{
//-------------------------------------------------------------------------
/** @returns
a new instance of a <type>TextCursor</type> service which can
be used to travel in the given text context.
@see com::sun::star::text::TextCursor
*/
com::sun::star::text::XTextCursor createTextCursor();
//-------------------------------------------------------------------------
/** @returns
a new instance of a <type>TextCursor</type> which is located
at the specified <type>TextRange</type> to travel in the
given text context.
<p>The initial position is set to <var>aTextPosition</var>.
@param aTextPosition
specifies the start position for the new
<type>TextCursor</type>.
@see com::sun::star::text::TextCursor
*/
com::sun::star::text::XTextCursor createTextCursorByRange( [in] com::sun::star::text::XTextRange aTextPosition );
//-------------------------------------------------------------------------
/** inserts a string of characters into the text.
<p>The string may contain the following white spaces:
</p>
<ul>
<li>blank</li>
<li>tab</li>
<li>cr (which will insert a paragraph break)</li>
<li>lf (which will insert a line break)</li>
</ul>
@param xRange
specifies the position of insertion. For example,
<method>XSimpleText::createTextCursor</member> can be used to
get an <type>XTextRange</type> for this argument.
<p>If the parameter <member>bAbsorb</member> was <TRUE/>
the text range will contain the new inserted string, otherwise
the range (and it's text) will remain unchanged.
@param aString
specifies the string to insert.
@param bAbsorb
specifies whether the text spanned by <var>xRange</var> will be
replaced. If <TRUE/> then the content of <var>xRange</var> will
be replaced by <var>aString</var>, otherwise <var>aString</var>
will be inserted at the beginning of <var>xRange</var>.
@example
<listing>
xText.insertString( xTextCursor, "Hello " + aName$ + ",", false )
xText.insertControlCharacter( xTextCursor,
ControlCharacter_PARAGRAPH_BREAK, false );
xText.insertString( xTextCursor, "more text ...", false )
</listing>
*/
[oneway] void insertString( [in] com::sun::star::text::XTextRange xRange,
[in] string aString,
[in] boolean bAbsorb );
//-------------------------------------------------------------------------
/** inserts a control character (like a paragraph break or a hard
space) into the text.@see com::sun::star::text::ControlCharacter
*/
void insertControlCharacter( [in] com::sun::star::text::XTextRange xRange,
[in] short nControlCharacter,
[in] boolean bAbsorb )
raises( com::sun::star::lang::IllegalArgumentException );
};
//=============================================================================
}; }; }; };
#endif