/*************************************************************************
 *
 *  $RCSfile: SpreadsheetDocumentSettings.idl,v $
 *
 *  $Revision: 1.8 $
 *
 *  last change: $Author: nn $ $Date: 2002/11/29 13:18:32 $
 *
 *  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_sheet_SpreadsheetDocumentSettings_idl__
#define __com_sun_star_sheet_SpreadsheetDocumentSettings_idl__

#ifndef __com_sun_star_beans_XPropertySet_idl__
#include <com/sun/star/beans/XPropertySet.idl>
#endif

#ifndef __com_sun_star_util_Date_idl__
#include <com/sun/star/util/Date.idl>
#endif

#ifndef __com_sun_star_i18n_XForbiddenCharacters_idl__
#include <com/sun/star/i18n/XForbiddenCharacters.idl>
#endif

#ifndef __com_sun_star_lang_Locale_idl__
#include <com/sun/star/lang/Locale.idl>
#endif

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

module com {  module sun {  module star {  module sheet {

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

/** contributes properties to control the configuration which is global
	for all views of a spreadsheet document.

	@deprecated

	@see com::sun::star::sheet::SpreadsheetDocument
 */
service SpreadsheetDocumentSettings
{
	//-------------------------------------------------------------------------

//! service PropertySet
	/** provides access to the properties.
	 */
	interface com::sun::star::beans::XPropertySet;

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

	/** enables iterated calculation of circular references.
	 */
	[property] boolean IsIterationEnabled;

	//-------------------------------------------------------------------------

	/** specifies how many iterations are carried out.

		<p>This setting is only used, if iteration is enabled using
		<member>SpreadsheetDocumentSettings::IsIterationEnabled</member>.</p>
	 */
	[property] long IterationCount;

	//-------------------------------------------------------------------------

	/** specifies the point at which a change in results will stop
		the iteration.

		<p>More exactly it specifies a difference in the change of the
		result between two iterations. If the result difference
		is less than or equal to this epsilon-value, the iteration
		is stopped.</p>

		<p>This setting is only used, if iteration is enabled using
		<member>SpreadsheetDocumentSettings::IsIterationEnabled</member>.</p>
	 */
	[property] double IterationEpsilon;

	//-------------------------------------------------------------------------

	/** specifies the number of decimals in the default number format.
	 */
	[property] short StandardDecimals;

	//-------------------------------------------------------------------------

	/** specifies the date that is represented by the value zero.
	 */
	[property] com::sun::star::util::Date NullDate;

	//-------------------------------------------------------------------------

	/** specifies the width of default tabulators.
	 */
	[property] short DefaultTabStop;

	//-------------------------------------------------------------------------

	/** specifies whether upper and lower cases are treated as equal
		when comparing cells.
	 */
	[property] boolean IgnoreCase;

	//-------------------------------------------------------------------------

	/** specifies whether calculations are performed with the rounded
		values displayed in cells (set to <TRUE/>) instead of the
		internal values (set to <FALSE/>).
	 */
	[property] boolean CalcAsShown;

	//-------------------------------------------------------------------------

	/** specifies whether filter criteria must match entire cell contents.
	 */
	[property] boolean MatchWholeCell;

	//-------------------------------------------------------------------------

	/** enables online spell checking.
	 */
	[property] boolean SpellOnline;

	//-------------------------------------------------------------------------

	/** specifies whether column or row labels are looked up from
		anywhere on the sheet.

		<p>Explicitly defined label ranges are used even if this property
		is set to <FALSE/>.</p>

		@see com::sun::star::sheet::LabelRanges
	 */
	[property] boolean LookUpLabels;

	//-------------------------------------------------------------------------

    /** specifies whether regular expressions in formulas are enabled,
        e.g., for functions which look up spreadsheet contents.
     */
    [property] boolean RegularExpressions;

	//-------------------------------------------------------------------------

    /** contains the interface XForbiddenCharacters.
     */
    [readonly, optional, property] com::sun::star::i18n::XForbiddenCharacters ForbiddenCharacters;

	//-------------------------------------------------------------------------

    /** If this property is set the document has DrawPages. Use this
		property to find out, whether the document has DrawPages or not,
		because the getDrawPage method on the XDrawPageSupplier and the
		getDrawPages method on the XDrawPagesSupplier always creates the
		DrawPages if there are none; and this is very slow and needs more
		memory.
     */
    [readonly, optional, property] boolean HasDrawPages;

	//-------------------------------------------------------------------------

	/** contains the standard document language for Western text.
	 */
	[optional, property] com::sun::star::lang::Locale CharLocale;

	//-------------------------------------------------------------------------

	/** contains the standard document language for Asian text.
	 */
	[optional, property] com::sun::star::lang::Locale CharLocaleAsian;

	//-------------------------------------------------------------------------

	/** contains the standard document language for Complex text.
	 */
	[optional, property] com::sun::star::lang::Locale CharLocaleComplex;

};

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

}; }; }; };

#endif

