/*************************************************************************
 *
 *  $RCSfile: Text.idl,v $
 *
 *  $Revision: 1.7.4.2 $
 *
 *  last change: $Author: mi $ $Date: 2003/01/21 17:50:57 $
 *
 *  The Contents of this file are made available subject to the terms of
 *  either of the following licenses
 *
 *         - GNU Lesser General Public License Version 2.1
 *         - Sun Industry Standards Source License Version 1.1
 *
 *  Sun Microsystems Inc., October, 2000
 *
 *  GNU Lesser General Public License Version 2.1
 *  =============================================
 *  Copyright 2000 by Sun Microsystems, Inc.
 *  901 San Antonio Road, Palo Alto, CA 94303, USA
 *
 *  This library is free software; you can redistribute it and/or
 *  modify it under the terms of the GNU Lesser General Public
 *  License version 2.1, as published by the Free Software Foundation.
 *
 *  This library 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 for more details.
 *
 *  You should have received a copy of the GNU Lesser General Public
 *  License along with this library; if not, write to the Free Software
 *  Foundation, Inc., 59 Temple Place, Suite 330, Boston,
 *  MA  02111-1307  USA
 *
 *
 *  Sun Industry Standards Source License Version 1.1
 *  =================================================
 *  The contents of this file are subject to the Sun Industry Standards
 *  Source License Version 1.1 (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.openoffice.org/license.html.
 *
 *  Software provided under this License is provided on an "AS IS" basis,
 *  WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
 *  WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
 *  MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
 *  See the License for the specific provisions governing your rights and
 *  obligations concerning the Software.
 *
 *  The Initial Developer of the Original Code is: Sun Microsystems, Inc.
 *
 *  Copyright: 2000 by Sun Microsystems, Inc.
 *
 *  All Rights Reserved.
 *
 *  Contributor(s): _______________________________________
 *
 *
 ************************************************************************/
#ifndef __com_sun_star_text_Text_idl__
#define __com_sun_star_text_Text_idl__

#ifndef __com_sun_star_container_XEnumerationAccess_idl__
#include <com/sun/star/container/XEnumerationAccess.idl>
#endif
#ifndef __com_sun_star_beans_XPropertySet_idl__
#include <com/sun/star/beans/XPropertySet.idl>
#endif
#ifndef __com_sun_star_beans_PropertyValues_idl__
#include <com/sun/star/beans/PropertyValues.idl>
#endif


//=============================================================================

 module com {  module sun {  module star {  module text {

interface XText;
interface XTextRangeMover;
interface XTextRangeCompare;
interface XRelativeTextContentInsert;
//=============================================================================

// DocMerge from xml: service com::sun::star::text::Text
/** is an independent piece of text which consists of a
	series of one or more paragraphs.

	<p>This service is used, for example, for the text of a TextDocument
	or the text in a cell or TextFrame.

	@see com::sun::star::text::TextDocument
	@see com::sun::star::text::TextFrame
	@see com::sun::star::table::Cell
 */
service Text
{


	// DocMerge from xml: service com::sun::star::text::Text: interface com::sun::star::container::XEnumerationAccess
	/** This is the factory for an enumeration of the paragraphs in this text.

		<p>This interface is mainly useful for exporting the text to a
		data format.
	 */
	interface com::sun::star::container::XEnumerationAccess;


	// DocMerge from xml: service com::sun::star::text::Text: interface com::sun::star::text::XText
	/** provides a cursor factory and the possibility to insert and remove contents.
	 */
	interface XText;


	// DocMerge from xml: service com::sun::star::text::Text: interface com::sun::star::text::XTextRangeCompare
	/** optional interface to compare postions of <type>TextRange</type>
				instances within this text.
	 */
	[optional] interface XTextRangeCompare;


	// DocMerge from xml: service com::sun::star::text::Text: interface com::sun::star::text::XTextRangeMover
	/** makes it possible to change the position of paragraphs.

	 */
	[optional] interface XTextRangeMover;

	// DocMerge from xml: service com::sun::star::text::Text: interface com::sun::star::text::XRelativeTextContentInsert
	/** makes it possible to insert a new text content, before or
			   	after existing text contents.

		   		@deprecated hack
	 */
	[optional] interface XRelativeTextContentInsert;

    /** provides properties valid for the complete text object
     */
    [optional] interface ::com::sun::star::container::XEnumerationAccess;
    /** contains the properties of a redline at the start of the document.<br>
    The sequence contains the following properties
    <UL>
        <LI><P>string RedlineAuthor        </P></LI>
        <LI><P>com::sun::star::util::DateTime RedlineDate_Time     </P></LI>
        <LI><P>string RedlineComment       </P></LI>
        <LI><P>string RedlineType          </P></LI>
        <LI><P>string RedlineIdentifier    </P></LI>
        <LI><P>boolean IsCollapsed          </P></LI>
        <LI><P>boolean IsStart              </P></LI>
        <LI><P>boolean MergeLastPara        </P></LI>
        <LI><P>[maybevoid] com::sun::star::text::XText RedlineText  (maybevoid)</P></LI>
        <LI><P>com::sun::star::beans::PropertyValues RedlineSuccessorData
            (contains the same properties except for the RedlineSuccessorData</P></LI>
    </UL>
     @see EndRedline
     */
    [optional, property] ::com::sun::star::beans::PropertyValues StartRedline;
    /** contains the properties of a redline at the start of the document.
    The sequence contains the following properties
    <UL>
        <LI><P>string RedlineAuthor        </P></LI>
        <LI><P>com::sun::star::util::DateTime RedlineDate_Time     </P></LI>
        <LI><P>string RedlineComment       </P></LI>
        <LI><P>string RedlineType          </P></LI>
        <LI><P>string RedlineIdentifier    </P></LI>
        <LI><P>boolean IsCollapsed          </P></LI>
        <LI><P>boolean IsStart              </P></LI>
        <LI><P>boolean MergeLastPara        </P></LI>
        <LI><P>[maybevoid] com::sun::star::text::XText RedlineText  (maybevoid)</P></LI>
        <LI><P>com::sun::star::beans::PropertyValues RedlineSuccessorData
            (contains the same properties except for the RedlineSuccessorData</P></LI>
    </UL>
     @see StartRedline
     */
    [optional, maybevoid, property] ::com::sun::star::beans::PropertyValues EndRedline;
};

//=============================================================================

}; }; }; };

#endif
