update dev300-m58
[ooovba.git] / offapi / com / sun / star / rendering / XParametricPolyPolygon2DFactory.idl
blob87f318f634ad0f783d2752715437afaf6af9f789
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: XParametricPolyPolygon2DFactory.idl,v $
10 * $Revision: 1.6 $
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_rendering_XParametricPolyPolygon2DFactory_idl__
31 #define __com_sun_star_rendering_XParametricPolyPolygon2DFactory_idl__
33 #ifndef __com_sun_star_uno_XInterface_idl__
34 #include <com/sun/star/uno/XInterface.idl>
35 #endif
36 #ifndef __com_sun_star_lang_IllegalArgumentException_idl__
37 #include <com/sun/star/lang/IllegalArgumentException.idl>
38 #endif
39 #ifndef __com_sun_star_geometry_RealRectangle2D_idl__
40 #include <com/sun/star/geometry/RealRectangle2D.idl>
41 #endif
42 #ifndef __com_sun_star_rendering_XColorSpace_idl__
43 #include <com/sun/star/rendering/XColorSpace.idl>
44 #endif
47 module com { module sun { module star { module rendering {
49 interface XParametricPolyPolygon2D;
51 /** This interface provides factory methods to generate various
52 ready-made XParametricPolyPolygon2Ds
54 interface XParametricPolyPolygon2DFactory : ::com::sun::star::uno::XInterface
56 /** Create a linear gradient.
58 The gradient varies linearly between colors. the color positions on <0, 1> interval are given by stops values
59 in the x direction, and has constant color for fixed x
60 coordinate value in y direction
62 XParametricPolyPolygon2D createLinearHorizontalGradient( [in] sequence<Color> colors, [in] sequence<double> stops )
63 raises (com::sun::star::lang::IllegalArgumentException);
65 /** Create an axial gradient.
67 The gradient has middleColor in the middle, and varies
68 linearly between middleColor and endColor to both sides in the
69 x direction. For fixed x coordinate, the gradient has constant
70 color value in y direction.
72 XParametricPolyPolygon2D createAxialHorizontalGradient( [in] sequence<Color> colors, [in] sequence<double> stops )
73 raises (com::sun::star::lang::IllegalArgumentException);
75 /** Create an elliptical gradient.
77 The gradient has centerColor in the middle, and varies
78 linearly between center and endColor via concentric ellipses
79 around the center point. Note that the absolute size of the
80 rectangle given at this method does not matter, only it's
81 aspect ratio: if this aspect ratio is 1, the gradient is
82 circular. If it's not 1, the gradient is elliptical, with the
83 special twist that the aspect ratio is maintained also for the
84 center color: the gradient will not collapse into a single
85 point, but become a line of center color.
87 XParametricPolyPolygon2D createEllipticalGradient( [in] sequence<Color> colors, [in] sequence<double> stops, [in] ::com::sun::star::geometry::RealRectangle2D boundRect )
88 raises (com::sun::star::lang::IllegalArgumentException);
90 /** Create a rectangular gradient.
92 The gradient has centerColor in the middle, and varies
93 linearly between center and endColor via rectangular boxes
94 around the center point. Note that the absolute size of the
95 rectangle given at this method does not matter, only it's
96 aspect ratio: if this aspect ratio is 1, the gradient is
97 quadratic. If it's not 1, the gradient is rectangular, with
98 the special twist that the aspect ratio is maintained also for
99 the center color: the gradient will not collapse into a single
100 point, but become a line of center color.
102 XParametricPolyPolygon2D createRectangularGradient( [in] sequence<Color> colors, [in] sequence<double> stops, [in] ::com::sun::star::geometry::RealRectangle2D boundRect )
103 raises (com::sun::star::lang::IllegalArgumentException);
105 /** Create a line hash of vertical lines.
107 The hashing consists of vertical lines, with colors varying
108 linearly between leftColor and rightColor, when going from
109 left to right
111 XParametricPolyPolygon2D createVerticalLinesHatch( [in] sequence<ColorComponent> leftColor, [in] sequence<ColorComponent> rightColor )
112 raises (com::sun::star::lang::IllegalArgumentException);
114 /** Create a line hash of orthogonally crossing lines.
116 The hashing consists of vertical and horizontal lines, with
117 colors varying linearly between leftTopColor and
118 rightBottomColor, when going from left to right (for the
119 vertical lines) and from top tzo bottom (for the horizontal
120 lines).
122 XParametricPolyPolygon2D createOrthogonalLinesHatch( [in] sequence<ColorComponent> leftTopColor, [in] sequence<ColorComponent> rightBottomColor )
123 raises (com::sun::star::lang::IllegalArgumentException);
125 /** Create a repeating line hash pattern of three crossing lines.
127 The hashing consists of vertical and horizontal lines plus
128 diagonal lines from left, top to bottom, right. Each of the
129 three groups of lines varies the line color of distinct lines
130 linearly from startColor to endColor, starting at the leftmost
131 or topmost position.
133 XParametricPolyPolygon2D createThreeCrossingLinesHatch( [in] sequence<ColorComponent> startColor, [in] sequence<ColorComponent> endColor )
134 raises (com::sun::star::lang::IllegalArgumentException);
136 /** Create a repeating line hash pattern of four crossing lines.
138 The hashing consists of vertical and horizontal lines plus
139 diagonal lines in both directions. Each of the four groups of
140 lines varies the line color of distinct lines linearly from
141 startColor to endColor, starting at the leftmost or topmost
142 position.
144 XParametricPolyPolygon2D createFourCrossingLinesHatch( [in] sequence<ColorComponent> startColor, [in] sequence<ColorComponent> endColor )
145 raises (com::sun::star::lang::IllegalArgumentException);
148 //=============================================================================
150 /// Service providing a <type>XParametricPolyPolygon2DFactory</type> service
151 service ParametricPolyPolygon2DFactory: XParametricPolyPolygon2DFactory;
153 }; }; }; };
155 #endif