/* -*- 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_presentation_DocumentSettings_idl__
#define __com_sun_star_presentation_DocumentSettings_idl__

#include <com/sun/star/document/HeaderFooterSettings.idl>
#include <com/sun/star/document/Settings.idl>


module com {  module sun {  module star {  module presentation {


/** describes properties that apply to the whole presentation document.
 */
published service DocumentSettings
{
    /** This service documents the common properties of an office document
     */
    service com::sun::star::document::Settings;


    /** This service configures the header and footer settings during print
     */
    [optional] service com::sun::star::document::HeaderFooterSettings;


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


    /** enables or disables the printing of the drawing pages
     */
    [optional, property] boolean IsPrintDrawing;

    /** enables or disables the printing of the notes pages
     */
    [optional, property] boolean IsPrintNotes;

    /** enables or disables the printing of the handout pages
     */
    [optional, property] boolean IsPrintHandout;

    /** enables or disables the printing of the outline pages
     */
    [optional, property] boolean IsPrintOutline;

    /** enables or disables the printing of draw pages that
        are marked hidden
     */
    [optional, property] boolean IsPrintHiddenPages;

    // Note: the following properties exist also in
    // css::drawing::DocumentSettings


    /** enables or disables the fitting of the page to the printable
        area during print
     */
    [optional, property] boolean IsPrintFitPage;

    /** if this is true and the paper size for printing is larger than
        the paper size of the printer than the content is tiled over
        multiple pages.
     */
    [optional, property] boolean IsPrintTilePage;

    /** is the number format used for page number fields

        Values 0-7 are supported.

        @see com::sun::star::style::NumberingType
     */
    [optional, property] long PageNumberFormat;

    /** If this is true, the distance between two paragraphs is
        the sum of ParaBottomMargin of the previous and ParaTopMargin of
        the next paragraph. If false, only the greater of the two is
        chosen.
     */
    [optional, property] boolean ParagraphSummation;

};


}; }; }; };

#endif

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