/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/*
 * This file is part of the LibreOffice project.
 *
 * This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
 *
 * This file incorporates work covered by the following license notice:
 *
 *   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 .
 */


#ifndef __com_sun_star_text_BaseIndex_idl__
#define __com_sun_star_text_BaseIndex_idl__

#include <com/sun/star/util/Color.idl>
#include <com/sun/star/util/XRefreshable.idl>
#include <com/sun/star/text/XDocumentIndex.idl>
#include <com/sun/star/container/XIndexReplace.idl>
#include <com/sun/star/text/XTextColumns.idl>
#include <com/sun/star/style/GraphicLocation.idl>
#include <com/sun/star/lang/Locale.idl>
#include <com/sun/star/text/XTextSection.idl>


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

/** specifies the basic service of different indexes within a document.@see com::sun::star::text::DocumentIndex
        @see com::sun::star::text::ContentIndex
        @see com::sun::star::text::UserDefinedIndex
        @see com::sun::star::text::IllustrationsIndex
        @see com::sun::star::text::TableIndex
        @see com::sun::star::text::ObjectIndex
 */
published service BaseIndex
{
    interface com::sun::star::text::XDocumentIndex;

    /** @since LibreOffice 4.0 */
    [optional] interface com::sun::star::util::XRefreshable;

    /** contains the title of the index.*/
    [property] string Title;
    /** determines if the index is protected.*/
    [property] boolean IsProtected;
    /** contains the name of the paragraph style that is applied to the heading.*/
    [property] string ParaStyleHeading;
    /** contains the name of the paragraph style that is applied to the 1st level.*/
    [property] string ParaStyleLevel1;
    /** contains the name of the paragraph style that is applied to the 2nd level.*/
    [optional, property] string ParaStyleLevel2;
    /** contains the name of the paragraph style that is applied to the 3rd level.*/
    [optional, property] string ParaStyleLevel3;
    /** contains the name of the paragraph style that is applied to the 4th level.*/
    [optional, property] string ParaStyleLevel4;
    /** contains the name of the paragraph style that is applied to the 5th level.*/
    [optional, property] string ParaStyleLevel5;
    /** contains the name of the paragraph style that is applied to the 6th level.*/
    [optional, property] string ParaStyleLevel6;
    /** contains the name of the paragraph style that is applied to the 7th level.*/
    [optional, property] string ParaStyleLevel7;
    /** contains the name of the paragraph style that is applied to the 8th level.*/
    [optional, property] string ParaStyleLevel8;
    /** contains the name of the paragraph style that is applied to the 9th level.*/
    [optional, property] string ParaStyleLevel9;
    /** contains the name of the paragraph style that is applied to the 10th level.*/
    [optional, property] string ParaStyleLevel10;
    /** contains the name of the paragraph style that is applied to the separator level.*/
    [optional, property] string ParaStyleSeparator;
    /** contains the column interface.*/
    [property] XTextColumns TextColumns;
    /** contains the URL of a graphic file that is displayed as background graphic*/
    [property] string BackGraphicURL;
    /** contains the name of the filter of the graphic file that is
         displayed as background graphic*/
    [property] string BackGraphicFilter;
    /** determines the position of the background graphic.@see GraphicLocation
     */
    [property] com::sun::star::style::GraphicLocation BackGraphicLocation;
    /** specifies the color of the background.
     */
    [property] com::sun::star::util::Color BackColor;

    /** If `TRUE`, the background color value in "BackColor" is not visible.
     */
    [property] boolean BackTransparent;

    /** returns the interface of the level format of the index.
     <p>
        The description of the format of the levels depends on the type of the document index.
     </p>
     @see DocumentIndexLevelFormat
     */
    [optional, property] com::sun::star::container::XIndexReplace LevelFormat;
    /** determines if the content of the document index is created from the
         complete document content or from the current chapter only.
     <p> It is not available in the bibliography</p>*/
    [optional, property] boolean CreateFromChapter;
    /** the text section containing the content of the index */
    [property] com::sun::star::text::XTextSection ContentSection;
    /** the text section containing the header of the index */
    [property] com::sun::star::text::XTextSection HeaderSection;
};


}; }; }; };

#endif


/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
