/* -*- 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_Shape_idl__
#define __com_sun_star_presentation_Shape_idl__

#include <com/sun/star/util/Color.idl>
#include <com/sun/star/presentation/AnimationEffect.idl>

#include <com/sun/star/presentation/ClickAction.idl>

#include <com/sun/star/presentation/AnimationSpeed.idl>



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


/** this service is supported from all shapes inside a PresentationDocument.


    This usually enhances objects of type com::sun::star::drawing::Shape with
    presentation properties.
*/
published service Shape
{

    /** is a generic URL for the property OnClick.
     */
    [property] string Bookmark;


    /** This is the color for dimming this shape.

        <p>This color is used if the property com::sun::star::drawing::Shape::DimPrev
        is `TRUE` and com::sun::star::drawing::Shape::DimHide is `FALSE`.</p>
     */
    [property] com::sun::star::util::Color DimColor;


    /** If this property and the property com::sun::star::drawing::Shape::DimPrev
        are both `TRUE`, the shape is hidden instead of dimmed to a color.
     */
    [property] boolean DimHide;


    /** If this property is `TRUE`, this shape is dimmed to the color of
        property com::sun::star::drawing::Shape::DimColor after executing its
        animation effect.
     */
    [property] boolean DimPrevious;


    /** selects the animation effect of this shape.
     */
    [property] com::sun::star::presentation::AnimationEffect Effect;


    /** If this is a default presentation object and if it is empty,
        this property is `TRUE`.
     */
    [property] boolean IsEmptyPresentationObject;


    /** If this is a presentation object, this property is `TRUE`.
        <p>Presentation objects are objects like TitleTextShape and
        OutlinerShape.</p>
     */
    [readonly, property] boolean IsPresentationObject;


    /** selects an action performed after the user clicks
        on this shape.
     */
    [property] com::sun::star::presentation::ClickAction OnClick;


    /** If this property is `TRUE`, the sound of this shape is played in
        full.

        <p>The default behavior is to stop the sound after completing the
        animation effect.</p>
     */
    [property] boolean PlayFull;


    /** This is the position of this shape in the order of the shapes which
        can be animated on its page.

        <p>The animations are executed in this order, starting at the shape
        with the PresentationOrder "one."  You can change the order by
        changing this number. Setting it to "one" makes this shape the
        first shape in the execution order for the animation effects.</p>
     */
    [property] long PresentationOrder;


    /** This is the URL to a sound file that is played while the animation
        effect of this shape is running.
     */
    [property] string Sound;


    /** If this property is set to `TRUE`, a sound is played while the
        animation effect is executed.
     */
    [property] boolean SoundOn;


    /** This is the speed of the animation effect.
     */
    [property] com::sun::star::presentation::AnimationSpeed Speed;


    /** This is the animation effect for the text inside this shape.
     */
    [property] com::sun::star::presentation::AnimationEffect TextEffect;


    /** specifies an "OLE2" verb for the ClickAction VERB in
        the property com::sun::star::drawing::Shape::OnClick.
     */
    [property] long Verb;

};


}; }; }; };

#endif

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