Line data Source code
1 : /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 : /*
3 : * This file is part of the LibreOffice project.
4 : *
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/.
8 : *
9 : * This file incorporates work covered by the following license notice:
10 : *
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 .
18 : */
19 :
20 : #include <svx/svxids.hrc>
21 : #include <svx/drawitem.hxx>
22 : #include <svx/xtable.hxx>
23 :
24 : using namespace ::com::sun::star;
25 :
26 202 : TYPEINIT1_FACTORY( SvxColorListItem, SfxPoolItem , new SvxColorListItem );
27 202 : TYPEINIT1_FACTORY( SvxGradientListItem, SfxPoolItem , new SvxGradientListItem );
28 202 : TYPEINIT1_FACTORY( SvxHatchListItem, SfxPoolItem , new SvxHatchListItem );
29 202 : TYPEINIT1_FACTORY( SvxBitmapListItem, SfxPoolItem , new SvxBitmapListItem );
30 334 : TYPEINIT1_FACTORY( SvxDashListItem, SfxPoolItem , new SvxDashListItem );
31 202 : TYPEINIT1_FACTORY( SvxLineEndListItem, SfxPoolItem , new SvxLineEndListItem );
32 :
33 0 : SvxColorListItem::SvxColorListItem()
34 : {
35 0 : }
36 :
37 :
38 10828 : SvxColorListItem::SvxColorListItem( XColorListRef pTable, sal_uInt16 nW ) :
39 : SfxPoolItem( nW ),
40 10828 : pColorList( pTable )
41 : {
42 10828 : }
43 :
44 :
45 14242 : SvxColorListItem::SvxColorListItem( const SvxColorListItem& rItem ) :
46 : SfxPoolItem( rItem ),
47 14242 : pColorList( rItem.pColorList )
48 : {
49 14242 : }
50 :
51 0 : bool SvxColorListItem::GetPresentation
52 : (
53 : SfxItemPresentation /*ePres*/,
54 : SfxMapUnit /*eCoreUnit*/,
55 : SfxMapUnit /*ePresUnit*/,
56 : OUString& rText, const IntlWrapper *
57 : ) const
58 : {
59 0 : rText = OUString();
60 0 : return false;
61 : }
62 :
63 238 : bool SvxColorListItem::operator==( const SfxPoolItem& rItem ) const
64 : {
65 : DBG_ASSERT( SfxPoolItem::operator==( rItem ), "unequal type" );
66 238 : return static_cast<const SvxColorListItem&>(rItem).pColorList == pColorList;
67 : }
68 :
69 14242 : SfxPoolItem* SvxColorListItem::Clone( SfxItemPool * ) const
70 : {
71 14242 : return new SvxColorListItem( *this );
72 : }
73 :
74 :
75 : // Should be a template class but ...
76 : #define QUERY_PUT_IMPL(svtype, xtype) \
77 : bool svtype::QueryValue( com::sun::star::uno::Any& rVal, sal_uInt8 ) const \
78 : { \
79 : rVal = uno::makeAny( uno::Reference< uno::XWeak >( p##xtype.get() ) ); \
80 : return true; \
81 : } \
82 : \
83 : bool svtype::PutValue( const com::sun::star::uno::Any& rVal, sal_uInt8 ) \
84 : { \
85 : uno::Reference< uno::XWeak > xRef; \
86 : if( rVal >>= xRef ) { \
87 : p##xtype = X##xtype##Ref(dynamic_cast<X##xtype *>(xRef.get())); \
88 : return true; \
89 : } \
90 : return false; \
91 : }
92 :
93 0 : QUERY_PUT_IMPL( SvxColorListItem, ColorList )
94 :
95 0 : SvxGradientListItem::SvxGradientListItem()
96 : {
97 0 : }
98 :
99 10138 : SvxGradientListItem::SvxGradientListItem( XGradientListRef pList, sal_uInt16 nW ) :
100 : SfxPoolItem( nW ),
101 10138 : pGradientList( pList )
102 : {
103 10138 : }
104 :
105 :
106 13552 : SvxGradientListItem::SvxGradientListItem( const SvxGradientListItem& rItem ) :
107 : SfxPoolItem( rItem ),
108 13552 : pGradientList( rItem.pGradientList )
109 : {
110 13552 : }
111 :
112 :
113 :
114 0 : bool SvxGradientListItem::GetPresentation
115 : (
116 : SfxItemPresentation /*ePres*/,
117 : SfxMapUnit /*eCoreUnit*/,
118 : SfxMapUnit /*ePresUnit*/,
119 : OUString& rText, const IntlWrapper *
120 : ) const
121 : {
122 0 : rText = OUString();
123 0 : return false;
124 : }
125 :
126 :
127 238 : bool SvxGradientListItem::operator==( const SfxPoolItem& rItem ) const
128 : {
129 : DBG_ASSERT( SfxPoolItem::operator==( rItem ), "unequal type" );
130 238 : return static_cast<const SvxGradientListItem&>(rItem).pGradientList == pGradientList;
131 : }
132 :
133 :
134 13552 : SfxPoolItem* SvxGradientListItem::Clone( SfxItemPool * ) const
135 : {
136 13552 : return new SvxGradientListItem( *this );
137 : }
138 :
139 :
140 0 : QUERY_PUT_IMPL( SvxGradientListItem, GradientList )
141 :
142 0 : SvxHatchListItem::SvxHatchListItem()
143 : {
144 0 : }
145 :
146 :
147 10138 : SvxHatchListItem::SvxHatchListItem( XHatchListRef pList, sal_uInt16 nW ) :
148 : SfxPoolItem( nW ),
149 10138 : pHatchList( pList )
150 : {
151 10138 : }
152 :
153 :
154 13552 : SvxHatchListItem::SvxHatchListItem( const SvxHatchListItem& rItem ) :
155 : SfxPoolItem( rItem ),
156 13552 : pHatchList( rItem.pHatchList )
157 : {
158 13552 : }
159 :
160 :
161 :
162 0 : bool SvxHatchListItem::GetPresentation
163 : (
164 : SfxItemPresentation /*ePres*/,
165 : SfxMapUnit /*eCoreUnit*/,
166 : SfxMapUnit /*ePresUnit*/,
167 : OUString& rText, const IntlWrapper *
168 : ) const
169 : {
170 0 : rText = OUString();
171 0 : return false;
172 : }
173 :
174 :
175 238 : bool SvxHatchListItem::operator==( const SfxPoolItem& rItem ) const
176 : {
177 : DBG_ASSERT( SfxPoolItem::operator==( rItem ), "unequal type" );
178 238 : return static_cast<const SvxHatchListItem&>(rItem).pHatchList == pHatchList;
179 : }
180 :
181 :
182 13552 : SfxPoolItem* SvxHatchListItem::Clone( SfxItemPool * ) const
183 : {
184 13552 : return new SvxHatchListItem( *this );
185 : }
186 :
187 0 : QUERY_PUT_IMPL( SvxHatchListItem, HatchList )
188 :
189 0 : SvxBitmapListItem::SvxBitmapListItem()
190 : {
191 0 : }
192 :
193 10138 : SvxBitmapListItem::SvxBitmapListItem( XBitmapListRef pList, sal_uInt16 nW ) :
194 : SfxPoolItem( nW ),
195 10138 : pBitmapList( pList )
196 : {
197 10138 : }
198 :
199 13552 : SvxBitmapListItem::SvxBitmapListItem( const SvxBitmapListItem& rItem ) :
200 : SfxPoolItem( rItem ),
201 13552 : pBitmapList( rItem.pBitmapList )
202 : {
203 13552 : }
204 :
205 0 : bool SvxBitmapListItem::GetPresentation
206 : (
207 : SfxItemPresentation /*ePres*/,
208 : SfxMapUnit /*eCoreUnit*/,
209 : SfxMapUnit /*ePresUnit*/,
210 : OUString& rText, const IntlWrapper *
211 : ) const
212 : {
213 0 : rText = OUString();
214 0 : return false;
215 : }
216 :
217 238 : bool SvxBitmapListItem::operator==( const SfxPoolItem& rItem ) const
218 : {
219 : DBG_ASSERT( SfxPoolItem::operator==( rItem ), "unequal type" );
220 238 : return static_cast<const SvxBitmapListItem&>(rItem).pBitmapList == pBitmapList;
221 : }
222 :
223 13552 : SfxPoolItem* SvxBitmapListItem::Clone( SfxItemPool * ) const
224 : {
225 13552 : return new SvxBitmapListItem( *this );
226 : }
227 :
228 0 : QUERY_PUT_IMPL( SvxBitmapListItem, BitmapList )
229 :
230 0 : SvxDashListItem::SvxDashListItem() :
231 0 : pDashList( 0 )
232 : {
233 0 : }
234 :
235 6764 : SvxDashListItem::SvxDashListItem( XDashListRef pList, sal_uInt16 nW ) :
236 : SfxPoolItem( nW ),
237 6764 : pDashList( pList )
238 : {
239 6764 : }
240 :
241 6764 : SvxDashListItem::SvxDashListItem( const SvxDashListItem& rItem ) :
242 : SfxPoolItem( rItem ),
243 6764 : pDashList( rItem.pDashList )
244 : {
245 6764 : }
246 :
247 0 : bool SvxDashListItem::GetPresentation
248 : (
249 : SfxItemPresentation /*ePres*/,
250 : SfxMapUnit /*eCoreUnit*/,
251 : SfxMapUnit /*ePresUnit*/,
252 : OUString& rText, const IntlWrapper *
253 : ) const
254 : {
255 0 : rText = OUString();
256 0 : return false;
257 : }
258 :
259 0 : bool SvxDashListItem::operator==( const SfxPoolItem& rItem ) const
260 : {
261 : DBG_ASSERT( SfxPoolItem::operator==( rItem ), "unequal type" );
262 0 : return static_cast<const SvxDashListItem&>(rItem).pDashList == pDashList;
263 : }
264 :
265 6764 : SfxPoolItem* SvxDashListItem::Clone( SfxItemPool * ) const
266 : {
267 6764 : return new SvxDashListItem( *this );
268 : }
269 :
270 0 : QUERY_PUT_IMPL( SvxDashListItem, DashList )
271 :
272 0 : SvxLineEndListItem::SvxLineEndListItem()
273 : {
274 0 : }
275 :
276 6764 : SvxLineEndListItem::SvxLineEndListItem( XLineEndListRef pList, sal_uInt16 nW ) :
277 : SfxPoolItem( nW ),
278 6764 : pLineEndList( pList )
279 : {
280 6764 : }
281 :
282 6764 : SvxLineEndListItem::SvxLineEndListItem( const SvxLineEndListItem& rItem ) :
283 : SfxPoolItem( rItem ),
284 6764 : pLineEndList( rItem.pLineEndList )
285 : {
286 6764 : }
287 :
288 0 : bool SvxLineEndListItem::GetPresentation
289 : (
290 : SfxItemPresentation /*ePres*/,
291 : SfxMapUnit /*eCoreUnit*/,
292 : SfxMapUnit /*ePresUnit*/,
293 : OUString& rText, const IntlWrapper *
294 : ) const
295 : {
296 0 : rText = OUString();
297 0 : return false;
298 : }
299 :
300 0 : bool SvxLineEndListItem::operator==( const SfxPoolItem& rItem ) const
301 : {
302 : DBG_ASSERT( SfxPoolItem::operator==( rItem ), "unequal type" );
303 0 : return static_cast<const SvxLineEndListItem&>(rItem).pLineEndList == pLineEndList;
304 : }
305 :
306 6764 : SfxPoolItem* SvxLineEndListItem::Clone( SfxItemPool * ) const
307 : {
308 6764 : return new SvxLineEndListItem( *this );
309 : }
310 :
311 651 : QUERY_PUT_IMPL( SvxLineEndListItem, LineEndList )
312 :
313 :
314 : /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
|