xref: /trunk/main/svx/inc/svx/drawitem.hxx (revision 97e8a929)
1 /**************************************************************
2  *
3  * Licensed to the Apache Software Foundation (ASF) under one
4  * or more contributor license agreements.  See the NOTICE file
5  * distributed with this work for additional information
6  * regarding copyright ownership.  The ASF licenses this file
7  * to you under the Apache License, Version 2.0 (the
8  * "License"); you may not use this file except in compliance
9  * with the License.  You may obtain a copy of the License at
10  *
11  *   http://www.apache.org/licenses/LICENSE-2.0
12  *
13  * Unless required by applicable law or agreed to in writing,
14  * software distributed under the License is distributed on an
15  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16  * KIND, either express or implied.  See the License for the
17  * specific language governing permissions and limitations
18  * under the License.
19  *
20  *************************************************************/
21 
22 
23 #ifndef _SVX_DRAWITEM_HXX
24 #define _SVX_DRAWITEM_HXX
25 
26 // include ---------------------------------------------------------------
27 
28 #include <svl/poolitem.hxx>
29 #include <com/sun/star/uno/Sequence.hxx>
30 #include <com/sun/star/drawing/LineDash.hpp>
31 #include "svx/svxdllapi.h"
32 
33 //==================================================================
34 //	SvxColorTableItem
35 //==================================================================
36 
37 class XColorList;
38 
39 class SVX_DLLPUBLIC SvxColorTableItem: public SfxPoolItem
40 {
41 	XColorList*			pColorTable;
42 
43 public:
44 							TYPEINFO();
45 							SvxColorTableItem();
46 							SvxColorTableItem( XColorList* pTable,
47                                     sal_uInt16 nWhich  );
48 							SvxColorTableItem( const SvxColorTableItem& );
49 
50 	virtual SfxItemPresentation GetPresentation( SfxItemPresentation ePres,
51 									SfxMapUnit eCoreMetric,
52 									SfxMapUnit ePresMetric,
53                                     String &rText, const IntlWrapper * = 0 ) const;
54 
55 	virtual int 			operator==( const SfxPoolItem& ) const;
56 	virtual SfxPoolItem*	Clone( SfxItemPool *pPool = 0 ) const;
57 	virtual	sal_Bool        QueryValue( com::sun::star::uno::Any& rVal, sal_uInt8 nMemberId = 0 ) const;
58     virtual sal_Bool        PutValue( const com::sun::star::uno::Any& rVal, sal_uInt8 nMemberId );
59 
60 	XColorList*			GetColorTable() const { return pColorTable; }
61 	void			 		SetColorTable( XColorList* pTable ) {
62 									pColorTable = pTable; }
63 };
64 
65 
66 //==================================================================
67 //	SvxGradientListItem
68 //==================================================================
69 
70 
71 class XGradientList;
72 
73 class SVX_DLLPUBLIC SvxGradientListItem: public SfxPoolItem
74 {
75 	XGradientList*				pGradientList;
76 
77 public:
78 							TYPEINFO();
79 							SvxGradientListItem();
80 							SvxGradientListItem( XGradientList* pList,
81                                     sal_uInt16 nWhich  );
82 							SvxGradientListItem( const SvxGradientListItem& );
83 
84 	virtual SfxItemPresentation GetPresentation( SfxItemPresentation ePres,
85 									SfxMapUnit eCoreMetric,
86 									SfxMapUnit ePresMetric,
87                                     String &rText, const IntlWrapper * = 0 ) const;
88 
89 	virtual int 			operator==( const SfxPoolItem& ) const;
90 	virtual SfxPoolItem*	Clone( SfxItemPool *pPool = 0 ) const;
91 	virtual	sal_Bool        QueryValue( com::sun::star::uno::Any& rVal, sal_uInt8 nMemberId = 0 ) const;
92     virtual sal_Bool        PutValue( const com::sun::star::uno::Any& rVal, sal_uInt8 nMemberId );
93 
94 	XGradientList*			GetGradientList() const { return pGradientList; }
95 	void			 		SetGradientList( XGradientList* pList ) {
96 									pGradientList = pList; }
97 };
98 
99 
100 
101 //==================================================================
102 //	SvxHatchListItem
103 //==================================================================
104 
105 
106 class XHatchList;
107 
108 class SVX_DLLPUBLIC SvxHatchListItem: public SfxPoolItem
109 {
110 	XHatchList*				pHatchList;
111 
112 public:
113 							TYPEINFO();
114 							SvxHatchListItem();
115 							SvxHatchListItem( XHatchList* pList,
116                                     sal_uInt16 nWhich  );
117 							SvxHatchListItem( const SvxHatchListItem& );
118 
119 	virtual SfxItemPresentation GetPresentation( SfxItemPresentation ePres,
120 									SfxMapUnit eCoreMetric,
121 									SfxMapUnit ePresMetric,
122                                     String &rText, const IntlWrapper * = 0 ) const;
123 
124 	virtual int 			operator==( const SfxPoolItem& ) const;
125 	virtual SfxPoolItem*	Clone( SfxItemPool *pPool = 0 ) const;
126 	virtual	sal_Bool        QueryValue( com::sun::star::uno::Any& rVal, sal_uInt8 nMemberId = 0 ) const;
127     virtual sal_Bool        PutValue( const com::sun::star::uno::Any& rVal, sal_uInt8 nMemberId );
128 
129 	XHatchList*				GetHatchList() const { return pHatchList; }
130 	void			 		SetHatchList( XHatchList* pList ) {
131 									pHatchList = pList; }
132 };
133 
134 
135 
136 //==================================================================
137 //	SvxBitmapListItem
138 //==================================================================
139 
140 
141 class XBitmapList;
142 
143 class SVX_DLLPUBLIC SvxBitmapListItem: public SfxPoolItem
144 {
145 	XBitmapList*				pBitmapList;
146 
147 public:
148 							TYPEINFO();
149 							SvxBitmapListItem();
150 							SvxBitmapListItem( XBitmapList* pBL,
151                                     sal_uInt16 nWhich  );
152 							SvxBitmapListItem( const SvxBitmapListItem& );
153 
154 	virtual SfxItemPresentation GetPresentation( SfxItemPresentation ePres,
155 									SfxMapUnit eCoreMetric,
156 									SfxMapUnit ePresMetric,
157                                     String &rText, const IntlWrapper * = 0 ) const;
158 
159 	virtual int 			operator==( const SfxPoolItem& ) const;
160 	virtual SfxPoolItem*	Clone( SfxItemPool *pPool = 0 ) const;
161 	virtual	sal_Bool        QueryValue( com::sun::star::uno::Any& rVal, sal_uInt8 nMemberId = 0 ) const;
162     virtual sal_Bool        PutValue( const com::sun::star::uno::Any& rVal, sal_uInt8 nMemberId );
163 
164 	XBitmapList*			GetBitmapList() const { return pBitmapList; }
165 	void			 		SetBitmapList( XBitmapList* pList ) {
166 									pBitmapList = pList; }
167 };
168 
169 
170 
171 //==================================================================
172 //	SvxDashListItem
173 //==================================================================
174 
175 
176 class XDashList;
177 
178 class SVX_DLLPUBLIC SvxDashListItem: public SfxPoolItem
179 {
180 	XDashList*				pDashList;
181 
182 public:
183 							TYPEINFO();
184 							SvxDashListItem();
185 							SvxDashListItem( XDashList* pList,
186                                     sal_uInt16 nWhich  );
187 							SvxDashListItem( const SvxDashListItem& );
188 
189 	virtual SfxItemPresentation GetPresentation( SfxItemPresentation ePres,
190 									SfxMapUnit eCoreMetric,
191 									SfxMapUnit ePresMetric,
192                                     String &rText, const IntlWrapper * = 0 ) const;
193 
194 	virtual int 			operator==( const SfxPoolItem& ) const;
195 	virtual SfxPoolItem*	Clone( SfxItemPool *pPool = 0 ) const;
196 	virtual	sal_Bool        QueryValue( com::sun::star::uno::Any& rVal, sal_uInt8 nMemberId = 0 ) const;
197     virtual sal_Bool        PutValue( const com::sun::star::uno::Any& rVal, sal_uInt8 nMemberId );
198 
199 	XDashList*	  			GetDashList() const { return pDashList; }
200 	void			 		SetDashList( XDashList* pList );
201 };
202 
203 
204 
205 //==================================================================
206 //	SvxLineEndListItem
207 //==================================================================
208 
209 
210 class XLineEndList;
211 
212 class SVX_DLLPUBLIC SvxLineEndListItem: public SfxPoolItem
213 {
214 	XLineEndList*	 		pLineEndList;
215 
216 public:
217 							TYPEINFO();
218 							SvxLineEndListItem();
219 							SvxLineEndListItem( XLineEndList* pList,
220                                     sal_uInt16 nWhich  );
221 							SvxLineEndListItem( const SvxLineEndListItem& );
222 
223 	virtual SfxItemPresentation GetPresentation( SfxItemPresentation ePres,
224 									SfxMapUnit eCoreMetric,
225 									SfxMapUnit ePresMetric,
226                                     String &rText, const IntlWrapper * = 0 ) const;
227 
228 	virtual int 			operator==( const SfxPoolItem& ) const;
229 	virtual SfxPoolItem*	Clone( SfxItemPool *pPool = 0 ) const;
230 	virtual	sal_Bool        QueryValue( com::sun::star::uno::Any& rVal, sal_uInt8 nMemberId = 0 ) const;
231     virtual sal_Bool        PutValue( const com::sun::star::uno::Any& rVal, sal_uInt8 nMemberId );
232 
233 	XLineEndList*			GetLineEndList() const { return pLineEndList; }
234 	void			 		SetLineEndList( XLineEndList* pList ) {
235 									pLineEndList = pList; }
236 };
237 
238 
239 
240 
241 #endif
242 
243