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 .
20 #include "FillProperties.hxx"
22 #include <com/sun/star/beans/PropertyAttribute.hpp>
23 #include <com/sun/star/drawing/BitmapMode.hpp>
24 #include <com/sun/star/drawing/FillStyle.hpp>
25 #include <com/sun/star/drawing/RectanglePoint.hpp>
27 using namespace ::com::sun::star
;
29 using ::com::sun::star::beans::Property
;
37 void lcl_AddPropertiesToVector_without_BitmapProperties( ::std::vector
< ::com::sun::star::beans::Property
> & rOutProperties
)
39 rOutProperties
.push_back(
40 Property( "FillStyle",
41 FillProperties::PROP_FILL_STYLE
,
42 ::getCppuType( reinterpret_cast< const drawing::FillStyle
* >(0)),
43 beans::PropertyAttribute::BOUND
44 | beans::PropertyAttribute::MAYBEDEFAULT
));
46 rOutProperties
.push_back(
47 Property( "FillColor",
48 FillProperties::PROP_FILL_COLOR
,
49 ::getCppuType( reinterpret_cast< const sal_Int32
* >(0)),
50 beans::PropertyAttribute::BOUND
51 | beans::PropertyAttribute::MAYBEVOID
// "maybe auto"
52 | beans::PropertyAttribute::MAYBEDEFAULT
));
54 rOutProperties
.push_back(
55 Property( "FillTransparence",
56 FillProperties::PROP_FILL_TRANSPARENCE
,
57 ::getCppuType( reinterpret_cast< const sal_Int16
* >(0)),
58 beans::PropertyAttribute::BOUND
59 | beans::PropertyAttribute::MAYBEDEFAULT
));
61 rOutProperties
.push_back(
62 Property( "FillTransparenceGradientName",
63 FillProperties::PROP_FILL_TRANSPARENCE_GRADIENT_NAME
,
64 ::getCppuType( reinterpret_cast< const OUString
* >(0)),
65 beans::PropertyAttribute::BOUND
66 | beans::PropertyAttribute::MAYBEVOID
67 | beans::PropertyAttribute::MAYBEDEFAULT
));
69 rOutProperties
.push_back(
70 Property( "FillGradientName",
71 FillProperties::PROP_FILL_GRADIENT_NAME
,
72 ::getCppuType( reinterpret_cast< const OUString
* >(0)),
73 beans::PropertyAttribute::BOUND
74 | beans::PropertyAttribute::MAYBEVOID
75 | beans::PropertyAttribute::MAYBEDEFAULT
));
77 rOutProperties
.push_back(
78 beans::Property( "FillGradientStepCount",
79 FillProperties::PROP_FILL_GRADIENT_STEPCOUNT
,
80 ::getCppuType( reinterpret_cast< const sal_Int16
* >(0)),
81 beans::PropertyAttribute::BOUND
82 | beans::PropertyAttribute::MAYBEVOID
));
84 rOutProperties
.push_back(
85 Property( "FillHatchName",
86 FillProperties::PROP_FILL_HATCH_NAME
,
87 ::getCppuType( reinterpret_cast< const OUString
* >(0)),
88 beans::PropertyAttribute::BOUND
89 | beans::PropertyAttribute::MAYBEVOID
90 | beans::PropertyAttribute::MAYBEDEFAULT
));
92 //bitmap properties see lcl_AddPropertiesToVector_only_BitmapProperties()
94 rOutProperties
.push_back(
95 Property( "FillBackground",
96 FillProperties::PROP_FILL_BACKGROUND
,
97 ::getCppuType( reinterpret_cast< const sal_Bool
* >(0)),
98 beans::PropertyAttribute::BOUND
99 | beans::PropertyAttribute::MAYBEDEFAULT
));
102 void lcl_AddPropertiesToVector_only_BitmapProperties( ::std::vector
< ::com::sun::star::beans::Property
> & rOutProperties
)
104 rOutProperties
.push_back(
105 Property( "FillBitmapName",
106 FillProperties::PROP_FILL_BITMAP_NAME
,
107 ::getCppuType( reinterpret_cast< const OUString
* >(0)),
108 beans::PropertyAttribute::BOUND
109 | beans::PropertyAttribute::MAYBEVOID
110 | beans::PropertyAttribute::MAYBEDEFAULT
));
112 rOutProperties
.push_back(
113 Property( "FillBitmapOffsetX",
114 FillProperties::PROP_FILL_BITMAP_OFFSETX
,
115 ::getCppuType( reinterpret_cast< const sal_Int16
* >(0)),
116 beans::PropertyAttribute::BOUND
117 | beans::PropertyAttribute::MAYBEDEFAULT
));
119 rOutProperties
.push_back(
120 Property( "FillBitmapOffsetY",
121 FillProperties::PROP_FILL_BITMAP_OFFSETY
,
122 ::getCppuType( reinterpret_cast< const sal_Int16
* >(0)),
123 beans::PropertyAttribute::BOUND
124 | beans::PropertyAttribute::MAYBEDEFAULT
));
126 rOutProperties
.push_back(
127 Property( "FillBitmapPositionOffsetX",
128 FillProperties::PROP_FILL_BITMAP_POSITION_OFFSETX
,
129 ::getCppuType( reinterpret_cast< const sal_Int16
* >(0)),
130 beans::PropertyAttribute::BOUND
131 | beans::PropertyAttribute::MAYBEDEFAULT
));
133 rOutProperties
.push_back(
134 Property( "FillBitmapPositionOffsetY",
135 FillProperties::PROP_FILL_BITMAP_POSITION_OFFSETY
,
136 ::getCppuType( reinterpret_cast< const sal_Int16
* >(0)),
137 beans::PropertyAttribute::BOUND
138 | beans::PropertyAttribute::MAYBEDEFAULT
));
141 rOutProperties
.push_back(
142 Property( "FillBitmapRectanglePoint",
143 FillProperties::PROP_FILL_BITMAP_RECTANGLEPOINT
,
144 ::getCppuType( reinterpret_cast< const drawing::RectanglePoint
* >(0)),
145 beans::PropertyAttribute::BOUND
146 | beans::PropertyAttribute::MAYBEDEFAULT
));
148 rOutProperties
.push_back(
149 Property( "FillBitmapLogicalSize",
150 FillProperties::PROP_FILL_BITMAP_LOGICALSIZE
,
151 ::getCppuType( reinterpret_cast< const sal_Bool
* >(0)),
152 beans::PropertyAttribute::BOUND
153 | beans::PropertyAttribute::MAYBEDEFAULT
));
155 rOutProperties
.push_back(
156 Property( "FillBitmapSizeX",
157 FillProperties::PROP_FILL_BITMAP_SIZEX
,
158 ::getCppuType( reinterpret_cast< const sal_Int32
* >(0)),
159 beans::PropertyAttribute::BOUND
160 | beans::PropertyAttribute::MAYBEDEFAULT
));
162 rOutProperties
.push_back(
163 Property( "FillBitmapSizeY",
164 FillProperties::PROP_FILL_BITMAP_SIZEY
,
165 ::getCppuType( reinterpret_cast< const sal_Int32
* >(0)),
166 beans::PropertyAttribute::BOUND
167 | beans::PropertyAttribute::MAYBEDEFAULT
));
169 rOutProperties
.push_back(
170 Property( "FillBitmapMode",
171 FillProperties::PROP_FILL_BITMAP_MODE
,
172 ::getCppuType( reinterpret_cast< const drawing::BitmapMode
* >(0)),
173 beans::PropertyAttribute::BOUND
174 | beans::PropertyAttribute::MAYBEDEFAULT
));
178 void lcl_AddDefaultsToMap_without_BitmapProperties(
179 ::chart::tPropertyValueMap
& rOutMap
)
181 ::chart::PropertyHelper::setPropertyValueDefault( rOutMap
, FillProperties::PROP_FILL_STYLE
, drawing::FillStyle_SOLID
);
182 ::chart::PropertyHelper::setPropertyValueDefault
< sal_Int32
>( rOutMap
, FillProperties::PROP_FILL_COLOR
, 0xd9d9d9 ); // gray85
183 ::chart::PropertyHelper::setPropertyValueDefault
< sal_Int16
>( rOutMap
, FillProperties::PROP_FILL_TRANSPARENCE
, 0 );
184 ::chart::PropertyHelper::setPropertyValueDefault( rOutMap
, FillProperties::PROP_FILL_BACKGROUND
, false );
187 void lcl_AddDefaultsToMap_only_BitmapProperties(
188 ::chart::tPropertyValueMap
& rOutMap
)
190 uno::Any aSalInt16Zero
= uno::makeAny( sal_Int16( 0 ));
191 uno::Any aSalInt32SizeDefault
= uno::makeAny( sal_Int32( 0 ));
193 ::chart::PropertyHelper::setPropertyValueDefault
< sal_Int16
>( rOutMap
, FillProperties::PROP_FILL_BITMAP_OFFSETX
, 0 );
194 ::chart::PropertyHelper::setPropertyValueDefault
< sal_Int16
>( rOutMap
, FillProperties::PROP_FILL_BITMAP_OFFSETY
, 0 );
195 ::chart::PropertyHelper::setPropertyValueDefault
< sal_Int16
>( rOutMap
, FillProperties::PROP_FILL_BITMAP_POSITION_OFFSETX
, 0 );
196 ::chart::PropertyHelper::setPropertyValueDefault
< sal_Int16
>( rOutMap
, FillProperties::PROP_FILL_BITMAP_POSITION_OFFSETY
, 0 );
198 ::chart::PropertyHelper::setPropertyValueDefault( rOutMap
, FillProperties::PROP_FILL_BITMAP_RECTANGLEPOINT
, drawing::RectanglePoint_MIDDLE_MIDDLE
);
199 ::chart::PropertyHelper::setPropertyValueDefault( rOutMap
, FillProperties::PROP_FILL_BITMAP_LOGICALSIZE
, true );
200 ::chart::PropertyHelper::setPropertyValueDefault
< sal_Int32
>( rOutMap
, FillProperties::PROP_FILL_BITMAP_SIZEX
, 0 );
201 ::chart::PropertyHelper::setPropertyValueDefault
< sal_Int32
>( rOutMap
, FillProperties::PROP_FILL_BITMAP_SIZEY
, 0 );
202 ::chart::PropertyHelper::setPropertyValueDefault( rOutMap
, FillProperties::PROP_FILL_BITMAP_MODE
, drawing::BitmapMode_REPEAT
);
205 }//end anonymous namespace
207 void FillProperties::AddPropertiesToVector(
208 ::std::vector
< Property
> & rOutProperties
)
210 // Fill Properties see service drawing::FillProperties
212 lcl_AddPropertiesToVector_without_BitmapProperties( rOutProperties
);
213 lcl_AddPropertiesToVector_only_BitmapProperties( rOutProperties
);
216 void FillProperties::AddDefaultsToMap(
217 ::chart::tPropertyValueMap
& rOutMap
)
219 lcl_AddDefaultsToMap_without_BitmapProperties( rOutMap
);
220 lcl_AddDefaultsToMap_only_BitmapProperties( rOutMap
);
225 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */