1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
21 module com
{ module sun
{ module star
{ module drawing
{
24 /** This is a set of properties to describe the style for rendering an area.
26 published service FillProperties
28 /** This enumeration selects the style the area will be filled with.
30 [property
] FillStyle FillStyle
;
32 /** If the property #FillStyle is set to
33 FillStyle::SOLID, this is the color used.
35 [property
] com
::sun
::star
::util
::Color FillColor
;
37 /** This is the transparence of the filled area.
39 <p>This property is only valid if the property #FillStyle
40 is set to FillStyle::SOLID.
42 [property
] short FillTransparence
;
44 /** If a gradient is used for transparency, this is the name of the
45 used transparence gradient style or it is empty. If you set the name
46 of a transparence gradient style contained in the document, this
49 [property
] string FillTransparenceGradientName
;
52 /** This describes the transparency of the fill area as a gradient.
54 [optional, property
] com
::sun
::star
::awt
::Gradient FillTransparenceGradient
;
56 /** If the property #FillStyle is set to
57 FillStyle::GRADIENT, this is the name of the used fill
60 [property
] string FillGradientName
;
62 /** If the property #FillStyle is set to
63 FillStyle::GRADIENT, this describes the gradient used.
65 [optional, property
] com
::sun
::star
::awt
::Gradient FillGradient
;
67 /** If the property #FillStyle is set to
68 FillStyle::HATCH, this is the name of the used fill hatch
71 [property
] string FillHatchName
;
73 /** If the property #FillStyle is set to
74 FillStyle::HATCH, this describes the hatch used.
76 [optional, property
] Hatch FillHatch
;
78 /** if this is `TRUE`, the transparent background of a
79 hatch filled area is drawn in the current background color.
81 [property
] boolean FillBackground
;
83 /** If the property #FillStyle is set to
84 FillStyle::BITMAP, this is the name of the used fill bitmap
87 [property
] string FillBitmapName
;
89 /** If the property #FillStyle is set to
90 FillStyle::BITMAP, this is the bitmap used.
92 [optional, property
] com
::sun
::star
::awt
::XBitmap FillBitmap
;
94 /** If the property #FillStyle is set to
95 FillStyle::BITMAP, this is a URL to the bitmap used.
97 @deprecated as of LibreOffice 6.1, use FillBitmap
99 Note the new behaviour since it this was deprecated:
100 This property can only be set and only external URLs are
101 supported (no more vnd.sun.star.GraphicObject scheme). When a
102 URL is set, then it will load the bitmap and set the FillBitmap
105 [optional, property
] string FillBitmapURL
;
107 /** This is the horizontal offset where the tile starts.
109 <p>It is given in percent in relation to the width of the bitmap.</p>
111 [property
] short FillBitmapPositionOffsetX
;
113 /** This is the vertical offset where the tile starts.
115 <p>It is given in percent in relation to the height of the bitmap.</p>
117 [property
] short FillBitmapPositionOffsetY
;
119 /** Every second line of tiles is moved the given percent of the
122 [property
] short FillBitmapOffsetX
;
124 /** Every second row of tiles is moved the given percent of the
125 height of the bitmap.
127 [property
] short FillBitmapOffsetY
;
129 /** The RectanglePoint specifies the position inside of the bitmap to
130 use as the top left position for rendering.
132 [property
] RectanglePoint FillBitmapRectanglePoint
;
134 /** specifies if the size is given in percentage or as an absolute value.
136 <p>If this is `TRUE`, the properties #FillBitmapSizeX
137 and #FillBitmapSizeY contain the size of the tile in
138 percent of the size of the original bitmap. If this is `FALSE`, the
139 size of the tile is specified with 1/100th mm.
141 [property
] boolean FillBitmapLogicalSize
;
143 /** This is the width of the tile for filling.
145 <p>Depending on the property #FillBitmapLogicalSize,
146 this is either relative or absolute.
148 [property
] long FillBitmapSizeX
;
150 /** This is the height of the tile for filling.
152 <p>Depending on the property #FillBitmapLogicalSize,
153 this is either relative or absolute.
155 [property
] long FillBitmapSizeY
;
157 /** this enum selects how an area is filled with a single bitmap.
159 <p>This property corresponds to the properties
160 #FillBitmapStretch and #FillBitmapTile.</p>
162 <p>If set to BitmapMode::REPEAT, the property
163 FillBitmapStretch is set to `FALSE`, and the property FillBitmapTile
164 is set to `TRUE`.</p>
166 <p>If set to BitmapMode::STRETCH, the property
167 FillBitmapStretch is set to `TRUE`, and the property FillBitmapTile
168 is set to `FALSE`.</p>
170 <p>If set to BitmapMode::NO_REPEAT, both properties
171 FillBitmapStretch and FillBitmapTile are set to `FALSE`.</p>
173 [property
] BitmapMode FillBitmapMode
;
175 /** if set, the fill bitmap is stretched to fill the area of the shape.
177 <p>This property should not be used anymore and is included here for
178 completeness. The #FillBitmapMode property can be used
179 instead to set all supported bitmap modes.</p>
181 <p>If set to `TRUE`, the value of the FillBitmapMode property changes
182 to BitmapMode::STRETCH. BUT: behavior is undefined, if
183 the property #FillBitmapTile is `TRUE` too.</p>
185 <p>If set to `FALSE`, the value of the FillBitmapMode property
186 changes to BitmapMode::REPEAT or BitmapMode::NO_REPEAT,
187 depending on the current value of the
188 #FillBitmapTile property.</p>
190 [optional, property
] boolean FillBitmapStretch
;
192 /** if set, the fill bitmap is repeated to fill the area of the shape.
194 <p>This property should not be used anymore and is included here for
195 completeness. The #FillBitmapMode property can be used
196 instead to set all supported bitmap modes.</p>
198 <p>If set to `TRUE`, the value of the FillBitmapMode property changes
199 to BitmapMode::REPEAT. BUT: behavior is undefined, if
200 the property #FillBitmapStretch is `TRUE` too.</p>
202 <p>If set to `FALSE`, the value of the FillBitmapMode property
203 changes to BitmapMode::STRETCH or BitmapMode::NO_REPEAT,
204 depending on the current value of the
205 #FillBitmapStretch property.</p>
207 [optional, property
] boolean FillBitmapTile
;
209 /** contains the cropping of the object.
211 If the property #FillBitmapMode is set to BitmapMode::STRETCH,
212 this is the cropping, otherwise it is empty.
214 @see com::sun::star::text::GraphicCrop
215 @since LibreOffice 4.3
217 [optional, property
] com
::sun
::star
::text
::GraphicCrop GraphicCrop
;
219 /** If this is `TRUE`, and FillStyle is FillStyle::NONE:
220 The area displays the slide background
222 @since LibreOffice 7.5
224 [optional, property
] boolean FillUseSlideBackground
;
231 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */