/*************************************************************************
 *
 *  OpenOffice.org - a multi-platform office productivity suite
 *
 *  $RCSfile: EnhancedCustomShapePath.idl,v $
 *
 *  $Revision: 1.3 $
 *
 *  last change: $Author: rt $ $Date: 2005-09-07 23:31:33 $
 *
 *  The Contents of this file are made available subject to
 *  the terms of GNU Lesser General Public License Version 2.1.
 *
 *
 *    GNU Lesser General Public License Version 2.1
 *    =============================================
 *    Copyright 2005 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
 *
 ************************************************************************/
#ifndef __com_sun_star_drawing_EnhancedCustomShapePath_idl__
#define __com_sun_star_drawing_EnhancedCustomShapePath_idl__

#ifndef __com_sun_star_awt_Size_idl__
#include <com/sun/star/awt/Size.idl>
#endif
#ifndef __com_sun_star_awt_Point_idl__
#include <com/sun/star/awt/Point.idl>
#endif
#ifndef __com_sun_star_beans_PropertyValue_idl__
#include <com/sun/star/beans/PropertyValue.idl>
#endif
#ifndef __com_sun_star_drawing_EnhancedCustomShapeParameterPair_idl__
#include <com/sun/star/drawing/EnhancedCustomShapeParameterPair.idl>
#endif
#ifndef __sun_star_drawing_EnhancedCustomShapeSegment_idl__
#include <com/sun/star/drawing/EnhancedCustomShapeSegment.idl>
#endif
#ifndef __sun_star_drawing_EnhancedCustomShapeTextFrame_idl__
#include <com/sun/star/drawing/EnhancedCustomShapeTextFrame.idl>
#endif


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

module com { module sun { module star { module drawing {

//=============================================================================
/**
  This service may be represented by a ::com::sun::star::beans::PropertyValue [].
*/

service EnhancedCustomShapePath
{
    /** This property is specifying the points that makes the geometry of the shape
    */
    [optional, property] sequence<::com::sun::star::drawing::EnhancedCustomShapeParameterPair> Coordinates;

    /** This property specifies the commands and the way the Coordinates have to be interpreted.
    */
    [optional, property] sequence<::com::sun::star::drawing::EnhancedCustomShapeSegment> Segments;

    /** This property specifies the horizontal StretchPoint that has to be used. No stretching is used if
        this property is omitted.
    */
    [optional, property] long StretchX;

    /** This property specifies the vertical StretchPoint that has to be used. No stretching is used if
        this property is omitted.
    */
    [optional, property] long StretchY;

    /** This property specifies the text frames that can be used with the shape. In general
       the first text frame is used, except the shape is containing vertical text, then the object
       tries to use the second text frame. The default text frame will be as big as the shape.
    */
    [optional, property] sequence<::com::sun::star::drawing::EnhancedCustomShapeTextFrame> TextFrames;

    /** This property specifies custom glue points
    */
    [optional, property] sequence<::com::sun::star::drawing::EnhancedCustomShapeParameterPair> GluePoints;

    /** This property specifies GluePoint leaving directions.
    */
    [optional, property] sequence< double > GluePointLeavingDirections;

    /** This property defines the GluePoint type. The values that can be used are
        specified in com::sun::star::drawing::EnhancedCustomShapeGluePointType
    */
    [optional, property] short GluePointType;

    /** This property specifies if this shape supports the EnhancedCustomShapeExtrusion
        properties. The default is true.
    */
    [optional, property] boolean ExtrusionAllowed;

    /** This property specifies if this shape supports concentric gradient fill. The default
        is false.
    */
    [optional, property] boolean ConcentricGradientFillAllowed;

    /** This property specifies if this shape supports concentric gradient fill. The
        default is false;
    */
    [optional, property] boolean TextPathAllowed;
};

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

}; }; }; };

#endif

