diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 09:06:44 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 09:06:44 +0000 |
commit | ed5640d8b587fbcfed7dd7967f3de04b37a76f26 (patch) | |
tree | 7a5f7c6c9d02226d7471cb3cc8fbbf631b415303 /offapi/com/sun/star/drawing/GenericDrawPage.idl | |
parent | Initial commit. (diff) | |
download | libreoffice-ed5640d8b587fbcfed7dd7967f3de04b37a76f26.tar.xz libreoffice-ed5640d8b587fbcfed7dd7967f3de04b37a76f26.zip |
Adding upstream version 4:7.4.7.upstream/4%7.4.7upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'offapi/com/sun/star/drawing/GenericDrawPage.idl')
-rw-r--r-- | offapi/com/sun/star/drawing/GenericDrawPage.idl | 166 |
1 files changed, 166 insertions, 0 deletions
diff --git a/offapi/com/sun/star/drawing/GenericDrawPage.idl b/offapi/com/sun/star/drawing/GenericDrawPage.idl new file mode 100644 index 000000000..05073deb3 --- /dev/null +++ b/offapi/com/sun/star/drawing/GenericDrawPage.idl @@ -0,0 +1,166 @@ +/* -*- 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_drawing_GenericDrawPage_idl__ +#define __com_sun_star_drawing_GenericDrawPage_idl__ + +#include <com/sun/star/drawing/XShapes.idl> + +#include <com/sun/star/drawing/XShapeGrouper.idl> + +#include <com/sun/star/drawing/XShapeCombiner.idl> + +#include <com/sun/star/drawing/XShapeBinder.idl> + +#include <com/sun/star/container/XNamed.idl> + +#include <com/sun/star/beans/XPropertySet.idl> + +#include <com/sun/star/view/PaperOrientation.idl> + +#include <com/sun/star/container/XNameContainer.idl> + + + module com { module sun { module star { module drawing { + +/** This abstract service is implemented by every page of a + DrawingDocument. + + Example to create and insert a couple of LineShapes: + + @code{.bas} + xPage = xDoc.DrawPages(0) + for x% = 0 to 200 + xShape = xProv.createInstance( "com::sun::star::drawing::LineShape" ) + xShape.LineColor = rgb( 255, 0, n%+20 ) + xShape.LineWidth = 20 + xShape.Position = Point( x%, 2*x% ) + xShape.Size = Size( 300-x%, 20 ) + xPage.add( xShape ) + next x% + @endcode + */ +published service GenericDrawPage +{ + + /** manages the Shapes of this page. + + <p>It also lets you add new Shapes. The program currently + requires that these Shapes be created by the factory of + the document. + + @see DrawingDocument + */ + interface com::sun::star::drawing::XShapes; + + /** With this interface you can group/ungroup a collection of + Shapes. + */ + interface com::sun::star::drawing::XShapeGrouper; + + /** With this interface you can combine/split a collection of + Shapes. + */ + [optional] interface com::sun::star::drawing::XShapeCombiner; + + /** With this interface you can bind/unbind a collection of + Shapes. + */ + [optional] interface com::sun::star::drawing::XShapeBinder; + + /** Gets or sets the name of this page. + + <p>Duplicated page names inside a document are not allowed. + */ + [optional] interface com::sun::star::container::XNamed; + + /** gives you access to the properties of this + DrawPage. + */ + [optional] interface com::sun::star::beans::XPropertySet; + + /** This is the border at the bottom. + */ + [optional, property] long BorderBottom; + + /** This is the border at the left. + */ + [optional, property] long BorderLeft; + + /** This is the border at the right. + */ + [optional, property] long BorderRight; + + /** This is the border at the top. + */ + [optional, property] long BorderTop; + + /** This is the height. + */ + [optional, property] long Height; + + /** This is the width. + */ + [optional, property] long Width; + + /** This is the number of this page, starting with 1. + */ + [optional, readonly, property] short Number; + + /** This is the orientation of this page. + */ + [optional, property] com::sun::star::view::PaperOrientation Orientation; + + + /** 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 UserDefinedAttributes; + + + /** this property is true if the averaged background filling colors luminance + is below an application specified threshold value. This can be used to + determine the actual value of an auto color. + */ + [readonly, optional, property] boolean IsBackgroundDark; + + + /** this index access defines a navigation order for the top level shapes + inside this page. + By default this is equal to the index access of the slide itself, + making the z-order the default navigation order for top level shapes. + */ + [optional, property] com::sun::star::container::XIndexAccess NavigationOrder; + + /** does the background cover the full page or only inside the + margins? + + @since LibreOffice 7.2 + */ + [optional, property] boolean BackgroundFullSize; + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |