1/************************************************************************* 2 * 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * 5 * Copyright 2000, 2010 Oracle and/or its affiliates. 6 * 7 * OpenOffice.org - a multi-platform office productivity suite 8 * 9 * This file is part of OpenOffice.org. 10 * 11 * OpenOffice.org is free software: you can redistribute it and/or modify 12 * it under the terms of the GNU Lesser General Public License version 3 13 * only, as published by the Free Software Foundation. 14 * 15 * OpenOffice.org is distributed in the hope that it will be useful, 16 * but WITHOUT ANY WARRANTY; without even the implied warranty of 17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18 * GNU Lesser General Public License version 3 for more details 19 * (a copy is included in the LICENSE file that accompanied this code). 20 * 21 * You should have received a copy of the GNU Lesser General Public License 22 * version 3 along with OpenOffice.org. If not, see 23 * <http://www.openoffice.org/license.html> 24 * for a copy of the LGPLv3 License. 25 * 26 ************************************************************************/ 27#ifndef __com_sun_star_drawing_FillProperties_idl__ 28#define __com_sun_star_drawing_FillProperties_idl__ 29 30#ifndef __com_sun_star_drawing_FillStyle_idl__ 31#include <com/sun/star/drawing/FillStyle.idl> 32#endif 33 34#ifndef __com_sun_star_util_Color_idl__ 35#include <com/sun/star/util/Color.idl> 36#endif 37 38#ifndef __com_sun_star_awt_Gradient_idl__ 39#include <com/sun/star/awt/Gradient.idl> 40#endif 41 42#ifndef __com_sun_star_drawing_Hatch_idl__ 43#include <com/sun/star/drawing/Hatch.idl> 44#endif 45 46#ifndef __com_sun_star_drawing_BitmapMode_idl__ 47#include <com/sun/star/drawing/BitmapMode.idl> 48#endif 49 50#ifndef __com_sun_star_awt_XBitmap_idl__ 51#include <com/sun/star/awt/XBitmap.idl> 52#endif 53 54#ifndef __com_sun_star_drawing_RectanglePoint_idl__ 55#include <com/sun/star/drawing/RectanglePoint.idl> 56#endif 57 58 59//============================================================================= 60 61module com { module sun { module star { module drawing { 62 63//============================================================================= 64 65/** This is a set of properties to describe the style for rendering an area. 66 */ 67published service FillProperties 68{ 69 //------------------------------------------------------------------------- 70 /** This enumeration selects the style the area will be filled with. 71 */ 72 [property] FillStyle FillStyle; 73 74 //------------------------------------------------------------------------- 75 /** If the property <member>FillStyle</member> is set to <const> 76 FillStyle::SOLID</const>, this is the color used. 77 */ 78 [property] com::sun::star::util::Color FillColor; 79 80 //------------------------------------------------------------------------- 81 /** This is the transparence of the filled area. 82 83 <p>This property is only valid if the property <member>FillStyle 84 </member> is set to <const>FillStyle::SOLID</const>. 85 */ 86 [property] short FillTransparence; 87 88 //------------------------------------------------------------------------- 89 /** If a gradient is used for transparency, this is the name of the 90 used transparence gradient style or it is empty. If you set the name 91 of a transparence gradient style contained in the document, this 92 style used. 93 */ 94 [property] string FillTransparenceGradientName; 95 96 97 //------------------------------------------------------------------------- 98 /** This describes the transparency of the fill area as a gradient. 99 */ 100 [optional, property] com::sun::star::awt::Gradient FillTransparenceGradient; 101 102 //------------------------------------------------------------------------- 103 /** If the property <member>FillStyle</member> is set to <const> 104 FillStyle::GRADIENT</const>, this is the name of the used fill 105 gradient style. 106 */ 107 [property] string FillGradientName; 108 109 //------------------------------------------------------------------------- 110 /** If the property <member>FillStyle</member> is set to <const> 111 FillStyle::GRADIENT</const>, this describes the gradient used. 112 */ 113 [optional, property] com::sun::star::awt::Gradient FillGradient; 114 115 //------------------------------------------------------------------------- 116 /** If the property <member>FillStyle</member> is set to <const> 117 FillStyle::HATCH</const>, this is the name of the used fill hatch 118 style. 119 */ 120 [property] string FillHatchName; 121 122 //------------------------------------------------------------------------- 123 /** If the property <member>FillStyle</member> is set to <const> 124 FillStyle::HATCH</const>, this describes the hatch used. 125 */ 126 [optional, property] Hatch FillHatch; 127 128 //------------------------------------------------------------------------- 129 /** if this is <TRUE/>, the transparent background of a 130 hatch filled area is drawn in the current background color. 131 */ 132 [property] boolean FillBackground; 133 134 //------------------------------------------------------------------------- 135 /** If the property <memebr>FillStyle</member> is set to <const> 136 FillStyle::BITMAP</const>, this is the name of the used fill bitmap 137 style. 138 */ 139 [property] string FillBitmapName; 140 141 //------------------------------------------------------------------------- 142 /** If the property <member>FillStyle</member> is set to <const> 143 FillStyle::BITMAP</const>, this is the bitmap used. 144 */ 145 [optional, property] com::sun::star::awt::XBitmap FillBitmap; 146 147 //------------------------------------------------------------------------- 148 /** If the property <member>FillStyle</member> is set to <const> 149 FillStyle::BITMAP</const>, this is a URL to the bitmap used. 150 */ 151 [optional, property] string FillBitmapURL; 152 153 //------------------------------------------------------------------------- 154 /** This is the horizontal offset where the tile starts. 155 156 <p>It is given in percent in relation to the width of the bitmap.</p> 157 */ 158 [property] short FillBitmapPositionOffsetX; 159 160 //------------------------------------------------------------------------- 161 /** This is the vertical offset where the tile starts. 162 163 <p>It is given in percent in relation to the height of the bitmap.</p> 164 */ 165 [property] short FillBitmapPositionOffsetY; 166 167 //------------------------------------------------------------------------- 168 /** Every second line of tiles is moved the given percent of the 169 witdh of the bitmap. 170 */ 171 [property] short FillBitmapOffsetX; 172 173 //------------------------------------------------------------------------- 174 /** Every second row of tiles is moved the given percent of the 175 height of the bitmap. 176 */ 177 [property] short FillBitmapOffsetY; 178 179 //------------------------------------------------------------------------- 180 /** The RectanglePoint specifies the position inside of the bitmap to 181 use as the top left position for rendering. 182 */ 183 [property] RectanglePoint FillBitmapRectanglePoint; 184 185 //------------------------------------------------------------------------- 186 /** specifies if the size is given in percentage or as an absolute value. 187 188 <p>If this is <TRUE/>, the properties <member>FillBitmapSizeX</member> 189 and <member>FillBitmapSizeY</member> contain the size of the tile in 190 percent of the size of the original bitmap. If this is <FALSE/>, the 191 size of the tile is specified with 1/100th mm. 192 */ 193 [property] boolean FillBitmapLogicalSize; 194 195 //------------------------------------------------------------------------- 196 /** This is the width of the tile for filling. 197 198 <p>Depending on the property <member>FillBitmapLogicalSize</member>, 199 this is either relative or absolute. 200 */ 201 [property] long FillBitmapSizeX; 202 203 //------------------------------------------------------------------------- 204 /** This is the height of the tile for filling. 205 206 <p>Depending on the property <member>FillBitmapLogicalSize</member>, 207 this is either relative or absolute. 208 */ 209 [property] long FillBitmapSizeY; 210 211 //------------------------------------------------------------------------- 212 /** this enum selects how a area is filled with a single bitmap. 213 214 <p>This property corresponds to the properties <member> 215 FillBitmapStretch</member> and <member>FillBitmapTile</member>.</p> 216 217 <p>If set to <const>BitmapMode::REPEAT</const>, the property 218 FillBitmapStretch is set to <FALSE/>, and the property FillBitmapTile 219 is set to <TRUE/>.</p> 220 221 <p>If set to <const>BitmapMode::STRETCH</const>, the property 222 FillBitmapStretch is set to <TRUE/>, and the property FillBitmapTile 223 is set to <FALSE/>.</p> 224 225 <p>If set to <const>BitmapMode::NO_REPEAT</const>, both properties 226 FillBitmapStretch and FillBitmapTile are set to <FALSE/>.</p> 227 */ 228 [property] BitmapMode FillBitmapMode; 229 230 //------------------------------------------------------------------------- 231 /** if set, the fill bitmap is stretched to fill the area of the shape. 232 233 <p>This property should not be used anymore and is included here for 234 completeness. The <member>FillBitmapMode</member> property can be used 235 instead to set all supported bitmap modes.</p> 236 237 <p>If set to <TRUE/>, the value of the FillBitmapMode property changes 238 to <const>BitmapMode::STRETCH</const>. BUT: behaviour is undefined, if 239 the property <member>FillBitmapTile</member> is <TRUE/> too.</p> 240 241 <p>If set to <FALSE/>, the value of the FillBitmapMode property 242 changes to <const>BitmapMode::REPEAT</const> or <const> 243 BitmapMode::NO_REPEAT</const>, depending on the current value of the 244 <member>FillBitmapTile</member> property.</p> 245 */ 246 [optional, property] boolean FillBitmapStretch; 247 248 //------------------------------------------------------------------------- 249 /** if set, the fill bitmap is repeated to fill the area of the shape. 250 251 <p>This property should not be used anymore and is included here for 252 completeness. The <member>FillBitmapMode</member> property can be used 253 instead to set all supported bitmap modes.</p> 254 255 <p>If set to <TRUE/>, the value of the FillBitmapMode property changes 256 to <const>BitmapMode::REPEAT</const>. BUT: behaviour is undefined, if 257 the property <member>FillBitmapStretch</member> is <TRUE/> too.</p> 258 259 <p>If set to <FALSE/>, the value of the FillBitmapMode property 260 changes to <const>BitmapMode::STRETCH</const> or <const> 261 BitmapMode::NO_REPEAT</const>, depending on the current value of the 262 <member>FillBitmapStretch</member> property.</p> 263 */ 264 [optional, property] boolean FillBitmapTile; 265 266 //------------------------------------------------------------------------- 267}; 268 269//============================================================================= 270 271}; }; }; }; 272 273#endif 274 275