/************************************************************************* * * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * Copyright 2008 by Sun Microsystems, Inc. * * OpenOffice.org - a multi-platform office productivity suite * * $RCSfile: XFlatParagraph.idl,v $ * $Revision: 1.3 $ * * This file is part of OpenOffice.org. * * OpenOffice.org is free software: you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License version 3 * only, as published by the Free Software Foundation. * * OpenOffice.org is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License version 3 for more details * (a copy is included in the LICENSE file that accompanied this code). * * You should have received a copy of the GNU Lesser General Public License * version 3 along with OpenOffice.org. If not, see * * for a copy of the LGPLv3 License. * ************************************************************************/ #ifndef __com_sun_star_text_XFlatParagraph_idl__ #define __com_sun_star_text_XFlatParagraph_idl__ #ifndef __com_sun_star_uno_XInterface_idl__ #include #endif #ifndef __com_sun_star_lang_Locale_idl__ #include #endif #ifndef __com_sun_star_lang_IllegalArgumentException_idl__ #include #endif #ifndef __com_sun_star_beans_PropertyValue_idl__ #include #endif #ifndef __com_sun_star_text_XTextMarkup_idl__ #include #endif //============================================================================= module com { module sun { module star { module text { //============================================================================= /** provides functionality to ... @since OOo 3.0 */ interface XFlatParagraph: com::sun::star::text::XTextMarkup { //------------------------------------------------------------------------- /** get the content of the paragraph @returns the content of the paragraph. */ string getText(); //------------------------------------------------------------------------- /** check whether the content has been modified @returns if the content has been modified, otherwise. */ boolean isModified(); //------------------------------------------------------------------------- /** change the 'checked' flag of the respective text node, i.e., mark the text node as 'processed' @param nType type, see TextMarkupType. @param bVal the respective text node has been processed the respective text node needs to be processed again later */ void setChecked( [in] long nType, [in] boolean bVal ); //------------------------------------------------------------------------- /** returns whether the respective text node has already been processed @param nType type, see TextMarkupType. @returns if the respective text node has been checked otherwise. */ boolean isChecked( [in] long nType ); //------------------------------------------------------------------------- /** get the language of the specific text @param nPos start index of the text. @param nLen the length of the text. @returns the locale for the language identified. If no language could be identified, the locale will be empty. @throws IllegalArgumentException when any argument is wrong. */ com::sun::star::lang::Locale getLanguageOfText( [in] long nPos, [in] long nLen ) raises( com::sun::star::lang::IllegalArgumentException ); //------------------------------------------------------------------------- /** get the single most probable language of the specific text, especially after getLanguageOfText fails @param nPos start index of the text. @param nLen the length of the text. @returns the locale for the language identified. @throws IllegalArgumentException when any argument is wrong. */ com::sun::star::lang::Locale getPrimaryLanguageOfText( [in] long nPos, [in] long nLen ) raises( com::sun::star::lang::IllegalArgumentException ); //------------------------------------------------------------------------- /** replace the specific text with new text. @param nPos start index of the text. @param nLen the length of the text. @param nNewText new text. @param aAttributes the given set of attributes e.g. Language @throws IllegalArgumentException when any argument is wrong. */ void changeText( [in] long nPos, [in] long nLen, [in] string aNewText, [in] sequence<::com::sun::star::beans::PropertyValue> aAttributes ) raises( com::sun::star::lang::IllegalArgumentException ); //------------------------------------------------------------------------- /** replace the attributes of the specific text with the given set of attributes. @param nPos start index of the text. @param nLen the length of the text. @param aAttributes the given set of attributes e.g. Language. @throws IllegalArgumentException when any argument is wrong. */ void changeAttributes( [in] long nPos, [in] long nLen, [in] sequence<::com::sun::star::beans::PropertyValue> aAttributes ) raises( com::sun::star::lang::IllegalArgumentException ); //------------------------------------------------------------------------- /** get a list of indexes that separate each two different languages @returns a list of indices. */ sequence< long > getLanguagePortions(); }; //============================================================================= }; }; }; }; #endif