/*************************************************************************
 *
 *  OpenOffice.org - a multi-platform office productivity suite
 *
 *  $RCSfile: GluePoint2.idl,v $
 *
 *  $Revision: 1.7 $
 *
 *  last change: $Author: rt $ $Date: 2005-09-07 23:34:50 $
 *
 *  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_GluePoint2_idl__
#define __com_sun_star_drawing_GluePoint2_idl__

#ifndef __com_sun_star_drawing_Alignment_idl__
#include <com/sun/star/drawing/Alignment.idl>
#endif

#ifndef __com_sun_star_awt_Point_idl__
#include <com/sun/star/awt/Point.idl>
#endif

#ifndef __com_sun_star_drawing_EscapeDirection_idl__
#include <com/sun/star/drawing/EscapeDirection.idl>
#endif

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

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

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

/** This struct defines the attributes of a glue point.
    <p>A glue point is a position inside a drawing shape where an edge
    of a connector shape can be connected.</p>
 */
published struct GluePoint2
{
    /** This is the position of this glue point. Depending on
        the flag <code>IsRelative</code>, this is either in 1/100cm
        or in 1/100%.

    <!-- Dennis: Is the % correct? -->
     */
    com::sun::star::awt::Point Position;

    /** if this flag is set to true, the position of this glue point
        is given in 1/100% values instead of 1/100cm. */
    boolean IsRelative;

    /** if this glue points position is not relative, this enum
        specifies the vertical and horizontal alignment of this
        point. The alignment specifies how the glue point is
        moved if the shape is resized. */
    com::sun::star::drawing::Alignment PositionAlignment;

    /** this member specifies the escape direction for a glue
        point. The escape direction is the direction the connecting
        line escapes the shape. */

    com::sun::star::drawing::EscapeDirection Escape;

    /** if this flag is set to false, this is a default glue
        point. Some shapes may have default glue points attached
        to them which cannot be altered or removed. */
    boolean IsUserDefined;
};

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

}; }; }; };

#endif

