update dev300-m58
[ooovba.git] / offapi / com / sun / star / drawing / Shape.idl
blob1e1c1d40fafe1f730a70600744817a74eb4a7442
1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: Shape.idl,v $
10 * $Revision: 1.20 $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
30 #ifndef __com_sun_star_drawing_Shape_idl__
31 #define __com_sun_star_drawing_Shape_idl__
33 #ifndef __com_sun_star_document_LinkTarget_idl__
34 #include <com/sun/star/document/LinkTarget.idl>
35 #endif
37 #ifndef __com_sun_star_drawing_XShape_idl__
38 #include <com/sun/star/drawing/XShape.idl>
39 #endif
41 #ifndef __com_sun_star_lang_XComponent_idl__
42 #include <com/sun/star/lang/XComponent.idl>
43 #endif
45 #ifndef __com_sun_star_style_XStyle_idl__
46 #include <com/sun/star/style/XStyle.idl>
47 #endif
49 #ifndef __com_sun_star_drawing_HomogenMatrix3_idl__
50 #include <com/sun/star/drawing/HomogenMatrix3.idl>
51 #endif
53 #ifndef __com_sun_star_drawing_XGluePointsSupplier_idl__
54 #include <com/sun/star/drawing/XGluePointsSupplier.idl>
55 #endif
57 #ifndef __com_sun_star_container_XNameContainer_idl__
58 #include <com/sun/star/container/XNameContainer.idl>
59 #endif
61 #ifndef __com_sun_star_beans_XTolerantMultiPropertySet_idl__
62 #include <com/sun/star/beans/XTolerantMultiPropertySet.idl>
63 #endif
65 //=============================================================================
67 module com { module sun { module star { module drawing {
69 //=============================================================================
71 /** This abstract service specifies the general characteristics of all
72 <type>Shape</type>s.
74 @see XShape
75 @see com::sun::star::lang::XComponent
76 @see com::sun::star::text::XText
77 @see ShapeDescriptor
79 published service Shape
81 //-------------------------------------------------------------------------
83 /** handles all the properties of this instance.
85 interface com::sun::star::beans::XPropertySet;
87 //-------------------------------------------------------------------------
89 /** This gives you the size and position of this <type>Shape</type>
90 and lets you change it. You can use <member>getShapeType</member>
91 to determine what kind of shape this is.
93 interface com::sun::star::drawing::XShape;
95 //-------------------------------------------------------------------------
97 /** is used for lifetime control of this <type>Shape</type>.
99 interface com::sun::star::lang::XComponent;
101 //-------------------------------------------------------------------------
103 /** The <type>XShapeDescriptor</type> tells you what kind of
104 <type>Shape</type> this instance is.
106 interface com::sun::star::drawing::XShapeDescriptor;
108 //-------------------------------------------------------------------------
110 /** This interfaces gives access to an optional container of glue points.
111 To have unique ids you should query the returned interface for
112 <type scope="com::sun::star::container">XIdentifierContainer</type>.
114 [optional] interface com::sun::star::drawing::XGluePointsSupplier;
116 //-------------------------------------------------------------------------
118 [optional] interface com::sun::star::beans::XTolerantMultiPropertySet;
120 //-------------------------------------------------------------------------
122 /** is used to query or change the ZOrder of this <type>Shape</type>. */
123 [optional, property] long ZOrder;
125 //-------------------------------------------------------------------------
127 /** This is the ID of the <type>Layer</type> to which this
128 <type>Shape</type> is attached.
130 [optional, property] short LayerID;
132 //-------------------------------------------------------------------------
134 /** This is the name of the <type>Layer</type> to which this
135 <type>Shape</type> is attached.
137 [optional, property] string LayerName;
139 //-------------------------------------------------------------------------
141 /** If this is <FALSE/>, the <type>Shape</type> is not visible
142 on printer outputs.
144 [optional, property] boolean Printable;
146 //-------------------------------------------------------------------------
148 /** With this set to <TRUE/>, this <type>Shape</type>
149 cannot be moved interactively in the user interface.
151 [optional, property] boolean MoveProtect;
153 //-------------------------------------------------------------------------
155 /** This is the name of this <type>Shape</type>.
157 [optional, property] string Name;
159 //-------------------------------------------------------------------------
161 /** With this set to <TRUE/>, this <type>Shape</type> may not be
162 sized interactively in the user interface.
164 [optional, property] boolean SizeProtect;
166 //-------------------------------------------------------------------------
168 /** this property lets you get and set a style for this shape.
170 [optional, property] com::sun::star::style::XStyle Style;
172 //-------------------------------------------------------------------------
174 /** this property lets you get and set the transformation matrix
175 for this shape.
177 The transformation is a 3x3 homogen matrix and can contain
178 translation, rotation, shearing and scaling.
180 [optional, property] com::sun::star::drawing::HomogenMatrix3 Transformation;
182 //-------------------------------------------------------------------------
184 /** this property stores xml attributes.
185 They will be saved to and restored from automatic styles inside xml files.
187 @see com::sun::star::xml::AttributeContainer
189 [optional, property] com::sun::star::container::XNameContainer ShapeUserDefinedAttributes;
191 //-------------------------------------------------------------------------
193 /** this property stores the navigation order of this shape. If this value
194 is negative, the navigation order for this shapes page is equal to
195 the z-order.
197 [optional, property] long NavigationOrder;
199 /** this property lets you get and set a hyperlink for this shape.
201 [optional, property] string Hyperlink;
204 //=============================================================================
206 }; }; }; };
208 #endif