/************************************************************************* * * $RCSfile: Shape.idl,v $ * * $Revision: 1.16 $ * * last change: $Author: obo $ $Date: 2004-06-03 19:19:48 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses * * - GNU Lesser General Public License Version 2.1 * - Sun Industry Standards Source License Version 1.1 * * Sun Microsystems Inc., October, 2000 * * GNU Lesser General Public License Version 2.1 * ============================================= * Copyright 2000 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 * * * Sun Industry Standards Source License Version 1.1 * ================================================= * The contents of this file are subject to the Sun Industry Standards * Source License Version 1.1 (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.openoffice.org/license.html. * * Software provided under this License is provided on an "AS IS" basis, * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS, * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING. * See the License for the specific provisions governing your rights and * obligations concerning the Software. * * The Initial Developer of the Original Code is: Sun Microsystems, Inc. * * Copyright: 2000 by Sun Microsystems, Inc. * * All Rights Reserved. * * Contributor(s): _______________________________________ * * ************************************************************************/ #ifndef __com_sun_star_drawing_Shape_idl__ #define __com_sun_star_drawing_Shape_idl__ #ifndef __com_sun_star_document_LinkTarget_idl__ #include #endif #ifndef __com_sun_star_drawing_XShape_idl__ #include #endif #ifndef __com_sun_star_lang_XComponent_idl__ #include #endif #ifndef __com_sun_star_style_XStyle_idl__ #include #endif #ifndef __com_sun_star_drawing_HomogenMatrix3_idl__ #include #endif #ifndef __com_sun_star_drawing_XGluePointsSupplier_idl__ #include #endif #ifndef __com_sun_star_container_XNameContainer_idl__ #include #endif //============================================================================= module com { module sun { module star { module drawing { //============================================================================= /** This abstract service specifies the general characteristics of all Shapes. @see XShape @see com::sun::star::lang::XComponent @see com::sun::star::text::XText @see ShapeDescriptor */ published service Shape { //------------------------------------------------------------------------- /** handles all the properties of this instance. */ interface com::sun::star::beans::XPropertySet; //------------------------------------------------------------------------- /** This gives you the size and position of this Shape and lets you change it. You can use getShapeType to determine what kind of shape this is. */ interface com::sun::star::drawing::XShape; //------------------------------------------------------------------------- /** is used for lifetime control of this Shape. */ interface com::sun::star::lang::XComponent; //------------------------------------------------------------------------- /** The XShapeDescriptor tells you what kind of Shape this instance is. */ interface com::sun::star::drawing::XShapeDescriptor; //------------------------------------------------------------------------- /** This interfaces gives access to an optional container of glue points. To have unique ids you should query the returned interface for XIdentifierContainer. */ [optional] interface com::sun::star::drawing::XGluePointsSupplier; //------------------------------------------------------------------------- /** is used to query or change the ZOrder of this Shape. */ [optional, property] long ZOrder; //------------------------------------------------------------------------- /** This is the ID of the Layer to which this Shape is attached. */ [optional, property] short LayerID; //------------------------------------------------------------------------- /** This is the name of the Layer to which this Shape is attached. */ [optional, property] string LayerName; //------------------------------------------------------------------------- /** If this is , the Shape is not visible on printer outputs. */ [optional, property] boolean Printable; //------------------------------------------------------------------------- /** With this set to , this Shape cannot be moved interactively in the user interface. */ [optional, property] boolean MoveProtect; //------------------------------------------------------------------------- /** This is the name of this Shape. */ [optional, property] string Name; //------------------------------------------------------------------------- /** With this set to , this Shape may not be sized interactively in the user interface. */ [optional, property] boolean SizeProtect; //------------------------------------------------------------------------- /** this property lets you get and set a style for this shape. */ [optional, property] com::sun::star::style::XStyle Style; //------------------------------------------------------------------------- /** this property lets you get and set the transformation matrix for this shape. The transformation is a 3x3 homogen matrix and can contain translation, rotation, shearing and scaling. */ [optional, property] com::sun::star::drawing::HomogenMatrix3 Transformation; //------------------------------------------------------------------------- /** this property stores xml attributes. They will be saved to and restored from automatic styles inside xml files. @see com::sun::star::xml::AttributeContainer */ [optional, property] com::sun::star::container::XNameContainer ShapeUserDefinedAttributes; }; //============================================================================= }; }; }; }; #endif