xref: /trunk/main/svtools/source/inc/unoiface.hxx (revision 01aa44aa)
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 
24 #ifndef _SVT_UNOIFACE_HXX
25 #define _SVT_UNOIFACE_HXX
26 
27 #include <toolkit/awt/vclxwindow.hxx>
28 #include <toolkit/awt/vclxwindows.hxx>
29 #include <toolkit/helper/listenermultiplexer.hxx>
30 
31 #include <cppuhelper/typeprovider.hxx>
32 
33 #include <com/sun/star/awt/XTextArea.hpp>
34 #include <com/sun/star/awt/XTextComponent.hpp>
35 #include <com/sun/star/awt/XTextLayoutConstrains.hpp>
36 #include <svtools/svmedit.hxx>
37 #include <svtools/fmtfield.hxx>
38 
39 
40 #include <comphelper/uno3.hxx>
41 #include <cppuhelper/implbase2.hxx>
42 #include <cppuhelper/implbase3.hxx>
43 #include <com/sun/star/awt/XItemEventBroadcaster.hpp>
44 
45 
46 namespace com { namespace sun { namespace star { namespace util {
47     class XNumberFormatsSupplier;
48 } } } }
49 
50 class SvNumberFormatsSupplierObj;
51 
52 //	----------------------------------------------------
53 //	class VCLXMultiLineEdit
54 //	----------------------------------------------------
55 class VCLXMultiLineEdit :	public ::com::sun::star::awt::XTextComponent,
56 							public ::com::sun::star::awt::XTextArea,
57 							public ::com::sun::star::awt::XTextLayoutConstrains,
58 							public VCLXWindow
59 {
60 private:
61 	TextListenerMultiplexer maTextListeners;
62     LineEnd                 meLineEndType;
63 
64 protected:
65     void                ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent );
66 
67 public:
68 					VCLXMultiLineEdit();
69 					~VCLXMultiLineEdit();
70 
71 	// ::com::sun::star::uno::XInterface
72     ::com::sun::star::uno::Any					SAL_CALL queryInterface( const ::com::sun::star::uno::Type & rType ) throw(::com::sun::star::uno::RuntimeException);
acquire()73 	void										SAL_CALL acquire() throw()	{ VCLXWindow::acquire(); }
release()74 	void										SAL_CALL release() throw()	{ VCLXWindow::release(); }
75 
76     // ::com::sun::star::lang::XTypeProvider
77 	::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type >	SAL_CALL getTypes() throw(::com::sun::star::uno::RuntimeException);
78 	::com::sun::star::uno::Sequence< sal_Int8 >						SAL_CALL getImplementationId() throw(::com::sun::star::uno::RuntimeException);
79 
80 	// ::com::sun::star::awt::XTextComponent
81     void SAL_CALL addTextListener( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XTextListener >& l ) throw(::com::sun::star::uno::RuntimeException);
82     void SAL_CALL removeTextListener( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XTextListener >& l ) throw(::com::sun::star::uno::RuntimeException);
83     void SAL_CALL setText( const ::rtl::OUString& aText ) throw(::com::sun::star::uno::RuntimeException);
84     void SAL_CALL insertText( const ::com::sun::star::awt::Selection& Sel, const ::rtl::OUString& Text ) throw(::com::sun::star::uno::RuntimeException);
85     ::rtl::OUString SAL_CALL getText(  ) throw(::com::sun::star::uno::RuntimeException);
86     ::rtl::OUString SAL_CALL getSelectedText(  ) throw(::com::sun::star::uno::RuntimeException);
87     void SAL_CALL setSelection( const ::com::sun::star::awt::Selection& aSelection ) throw(::com::sun::star::uno::RuntimeException);
88     ::com::sun::star::awt::Selection SAL_CALL getSelection(  ) throw(::com::sun::star::uno::RuntimeException);
89     sal_Bool SAL_CALL isEditable(  ) throw(::com::sun::star::uno::RuntimeException);
90     void SAL_CALL setEditable( sal_Bool bEditable ) throw(::com::sun::star::uno::RuntimeException);
91     void SAL_CALL setMaxTextLen( sal_Int16 nLen ) throw(::com::sun::star::uno::RuntimeException);
92     sal_Int16 SAL_CALL getMaxTextLen(  ) throw(::com::sun::star::uno::RuntimeException);
93 
94 	//XTextArea
95     ::rtl::OUString SAL_CALL getTextLines(  ) throw(::com::sun::star::uno::RuntimeException);
96 
97 	// ::com::sun::star::awt::XLayoutConstrains
98     ::com::sun::star::awt::Size SAL_CALL getMinimumSize(  ) throw(::com::sun::star::uno::RuntimeException);
99     ::com::sun::star::awt::Size SAL_CALL getPreferredSize(  ) throw(::com::sun::star::uno::RuntimeException);
100     ::com::sun::star::awt::Size SAL_CALL calcAdjustedSize( const ::com::sun::star::awt::Size& aNewSize ) throw(::com::sun::star::uno::RuntimeException);
101 
102 	// ::com::sun::star::awt::XTextLayoutConstrains
103     ::com::sun::star::awt::Size SAL_CALL getMinimumSize( sal_Int16 nCols, sal_Int16 nLines ) throw(::com::sun::star::uno::RuntimeException);
104     void SAL_CALL getColumnsAndLines( sal_Int16& nCols, sal_Int16& nLines ) throw(::com::sun::star::uno::RuntimeException);
105 
106 	// ::com::sun::star::awt::XVclWindowPeer
107     void SAL_CALL setProperty( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Any& Value ) throw(::com::sun::star::uno::RuntimeException);
108     ::com::sun::star::uno::Any SAL_CALL getProperty( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::uno::RuntimeException);
109 
110     // ::com::sun::star::awt::XWindow
111     void SAL_CALL setFocus(  ) throw(::com::sun::star::uno::RuntimeException);
112 
113     static void     ImplGetPropertyIds( std::list< sal_uInt16 > &aIds );
GetPropertyIds(std::list<sal_uInt16> & aIds)114     virtual void    GetPropertyIds( std::list< sal_uInt16 > &aIds ) { return ImplGetPropertyIds( aIds ); }
115 };
116 
117 
118 //	----------------------------------------------------
119 //	class VCLXFileControl
120 //	----------------------------------------------------
121 class VCLXFileControl : ::com::sun::star::awt::XTextComponent, public ::com::sun::star::awt::XTextLayoutConstrains, public VCLXWindow
122 {
123 protected:
124 	DECL_LINK( 	 	ModifyHdl, Edit* );
125 	TextListenerMultiplexer	maTextListeners;
126 
127 public:
128 					VCLXFileControl();
129 					~VCLXFileControl();
130 
131 	void 			SetWindow( Window* pWindow );
132 
133 	// ::com::sun::star::uno::XInterface
134     ::com::sun::star::uno::Any					SAL_CALL queryInterface( const ::com::sun::star::uno::Type & rType ) throw(::com::sun::star::uno::RuntimeException);
acquire()135 	void										SAL_CALL acquire() throw()	{ VCLXWindow::acquire(); }
release()136 	void										SAL_CALL release() throw()	{ VCLXWindow::release(); }
137 
138     // ::com::sun::star::lang::XTypeProvider
139 	::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type >	SAL_CALL getTypes() throw(::com::sun::star::uno::RuntimeException);
140 	::com::sun::star::uno::Sequence< sal_Int8 >						SAL_CALL getImplementationId() throw(::com::sun::star::uno::RuntimeException);
141 
142 	// ::com::sun::star::awt::XTextComponent
143     void SAL_CALL addTextListener( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XTextListener >& l ) throw(::com::sun::star::uno::RuntimeException);
144     void SAL_CALL removeTextListener( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XTextListener >& l ) throw(::com::sun::star::uno::RuntimeException);
145     void SAL_CALL setText( const ::rtl::OUString& aText ) throw(::com::sun::star::uno::RuntimeException);
146     void SAL_CALL insertText( const ::com::sun::star::awt::Selection& Sel, const ::rtl::OUString& Text ) throw(::com::sun::star::uno::RuntimeException);
147     ::rtl::OUString SAL_CALL getText(  ) throw(::com::sun::star::uno::RuntimeException);
148     ::rtl::OUString SAL_CALL getSelectedText(  ) throw(::com::sun::star::uno::RuntimeException);
149     void SAL_CALL setSelection( const ::com::sun::star::awt::Selection& aSelection ) throw(::com::sun::star::uno::RuntimeException);
150     ::com::sun::star::awt::Selection SAL_CALL getSelection(  ) throw(::com::sun::star::uno::RuntimeException);
151     sal_Bool SAL_CALL isEditable(  ) throw(::com::sun::star::uno::RuntimeException);
152     void SAL_CALL setEditable( sal_Bool bEditable ) throw(::com::sun::star::uno::RuntimeException);
153     void SAL_CALL setMaxTextLen( sal_Int16 nLen ) throw(::com::sun::star::uno::RuntimeException);
154     sal_Int16 SAL_CALL getMaxTextLen(  ) throw(::com::sun::star::uno::RuntimeException);
155 
156 	// ::com::sun::star::awt::XLayoutConstrains
157     ::com::sun::star::awt::Size SAL_CALL getMinimumSize(  ) throw(::com::sun::star::uno::RuntimeException);
158     ::com::sun::star::awt::Size SAL_CALL getPreferredSize(  ) throw(::com::sun::star::uno::RuntimeException);
159     ::com::sun::star::awt::Size SAL_CALL calcAdjustedSize( const ::com::sun::star::awt::Size& aNewSize ) throw(::com::sun::star::uno::RuntimeException);
160 
161 	// ::com::sun::star::awt::XTextLayoutConstrains
162     ::com::sun::star::awt::Size SAL_CALL getMinimumSize( sal_Int16 nCols, sal_Int16 nLines ) throw(::com::sun::star::uno::RuntimeException);
163     void SAL_CALL getColumnsAndLines( sal_Int16& nCols, sal_Int16& nLines ) throw(::com::sun::star::uno::RuntimeException);
164 
165     void SAL_CALL setProperty( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Any& Value) throw(::com::sun::star::uno::RuntimeException);
166 
167     static void     ImplGetPropertyIds( std::list< sal_uInt16 > &aIds );
GetPropertyIds(std::list<sal_uInt16> & aIds)168     virtual void    GetPropertyIds( std::list< sal_uInt16 > &aIds ) { return ImplGetPropertyIds( aIds ); }
169 };
170 
171 //	----------------------------------------------------
172 //	class SVTXFormattedField
173 //	----------------------------------------------------
174 
175 class SVTXFormattedField : public VCLXSpinField
176 {
177 protected:
178 	SvNumberFormatsSupplierObj*	m_pCurrentSupplier;
179 	sal_Bool					bIsStandardSupplier;
180 
181 	sal_Int32					nKeyToSetDelayed;
182 
GetFormattedField() const183 	FormattedField*				GetFormattedField() const { return (FormattedField*)GetWindow(); }
184 
185 public:
186 	SVTXFormattedField();
187 	~SVTXFormattedField();
188 
189 	// ::com::sun::star::awt::XVclWindowPeer
190     void SAL_CALL setProperty( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Any& Value ) throw(::com::sun::star::uno::RuntimeException);
191     ::com::sun::star::uno::Any SAL_CALL getProperty( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::uno::RuntimeException);
192 
193 protected:
194 	::com::sun::star::uno::Reference< ::com::sun::star::util::XNumberFormatsSupplier >  getFormatsSupplier(void) const;
195 	void	setFormatsSupplier(const ::com::sun::star::uno::Reference< ::com::sun::star::util::XNumberFormatsSupplier > & xSupplier);
196 	sal_Int32	getFormatKey(void) const;
197 	void	setFormatKey(sal_Int32 nKey);
198 
199 	void	SetValue(const ::com::sun::star::uno::Any& rValue);
200 	::com::sun::star::uno::Any	GetValue();
201 
202 	void	SetTreatAsNumber(sal_Bool bSet);
203 	sal_Bool	GetTreatAsNumber();
204 
205 	void	SetDefaultValue(const ::com::sun::star::uno::Any& rValue);
206 	::com::sun::star::uno::Any	GetDefaultValue();
207 
208 	void	SetMinValue(const ::com::sun::star::uno::Any& rValue);
209 	::com::sun::star::uno::Any	GetMinValue();
210 
211 	void	SetMaxValue(const ::com::sun::star::uno::Any& rValue);
212 	::com::sun::star::uno::Any	GetMaxValue();
213 
214 	void	NotifyTextListeners();
215 	::com::sun::star::uno::Any	convertEffectiveValue(const ::com::sun::star::uno::Any& rValue);
216 
217 	virtual void	SetWindow(Window* _pWindow);
218 
219     static void     ImplGetPropertyIds( std::list< sal_uInt16 > &aIds );
GetPropertyIds(std::list<sal_uInt16> & aIds)220     virtual void    GetPropertyIds( std::list< sal_uInt16 > &aIds ) { return ImplGetPropertyIds( aIds ); }
221 };
222 
223 
224 
225 //	----------------------------------------------------
226 //	class SVTXRoadmap
227 //	----------------------------------------------------
228 
229 namespace svt
230 {
231     class ORoadmap;
232 }
233 
234 struct RMItemData
235 {
236     sal_Bool            b_Enabled;
237     sal_Int32           n_ID;
238     ::rtl::OUString     Label;
239 };
240 
241 typedef ::cppu::ImplInheritanceHelper3  <   VCLXGraphicControl
242                                         ,   ::com::sun::star::container::XContainerListener
243                                         ,   ::com::sun::star::beans::XPropertyChangeListener
244                                         ,   ::com::sun::star::awt::XItemEventBroadcaster
245                                         >   SVTXRoadmap_Base;
246 class SVTXRoadmap : public SVTXRoadmap_Base
247 
248 
249 {
250 private:
251     ItemListenerMultiplexer 	maItemListeners;
252 
253     RMItemData CurRMItemData;
254     RMItemData GetRMItemData( const ::com::sun::star::container::ContainerEvent& _rEvent );
255 
256 protected:
GetRoadmap() const257     ::svt::ORoadmap*				GetRoadmap() const { return (::svt::ORoadmap*)GetWindow(); }
258     void                            ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent );
259 
260 	~SVTXRoadmap();
261 
262 public:
263 	SVTXRoadmap();
264 
disposing(const::com::sun::star::lang::EventObject & Source)265     void SAL_CALL disposing( const ::com::sun::star::lang::EventObject& Source ) throw(::com::sun::star::uno::RuntimeException) { VCLXWindow::disposing( Source ); }
266 
267 	// ::com::sun::star::awt::XVclWindowPeer
268     void SAL_CALL setProperty( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Any& Value ) throw(::com::sun::star::uno::RuntimeException);
269 
270     ::com::sun::star::uno::Any SAL_CALL getProperty( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::uno::RuntimeException);
271 
272     // XContainerListener
273     void SAL_CALL elementInserted( const ::com::sun::star::container::ContainerEvent& rEvent )throw(::com::sun::star::uno::RuntimeException);
274     void SAL_CALL elementRemoved( const ::com::sun::star::container::ContainerEvent& rEvent )throw(::com::sun::star::uno::RuntimeException);
275     void SAL_CALL elementReplaced( const ::com::sun::star::container::ContainerEvent& rEvent )throw(::com::sun::star::uno::RuntimeException);
276 
277     // XItemEventBroadcaster
278     virtual void SAL_CALL addItemListener( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XItemListener >& l ) throw (::com::sun::star::uno::RuntimeException);
279     virtual void SAL_CALL removeItemListener( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XItemListener >& l ) throw (::com::sun::star::uno::RuntimeException);
280 
281     // XPropertyChangeListener
282     virtual void SAL_CALL propertyChange( const ::com::sun::star::beans::PropertyChangeEvent& evt ) throw (::com::sun::star::uno::RuntimeException);
283 
284 protected:
285 
286     // VCLXGraphicControl overridables
287     virtual void    ImplSetNewImage();
288 
289     static void     ImplGetPropertyIds( std::list< sal_uInt16 > &aIds );
GetPropertyIds(std::list<sal_uInt16> & aIds)290     virtual void    GetPropertyIds( std::list< sal_uInt16 > &aIds ) { return ImplGetPropertyIds( aIds ); }
291 };
292 
293 
294 
295 //	----------------------------------------------------
296 //	class SVTXNumericField
297 //	----------------------------------------------------
298 class SVTXNumericField : public ::com::sun::star::awt::XNumericField, public SVTXFormattedField
299 {
300 public:
301 					SVTXNumericField();
302 					~SVTXNumericField();
303 
304 	// ::com::sun::star::uno::XInterface
305     ::com::sun::star::uno::Any					SAL_CALL queryInterface( const ::com::sun::star::uno::Type & rType ) throw(::com::sun::star::uno::RuntimeException);
acquire()306 	void										SAL_CALL acquire() throw()	{ SVTXFormattedField::acquire(); }
release()307 	void										SAL_CALL release() throw()	{ SVTXFormattedField::release(); }
308 
309     // ::com::sun::star::lang::XTypeProvider
310 	::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type >	SAL_CALL getTypes() throw(::com::sun::star::uno::RuntimeException);
311 	::com::sun::star::uno::Sequence< sal_Int8 >						SAL_CALL getImplementationId() throw(::com::sun::star::uno::RuntimeException);
312 
313 	// ::com::sun::star::awt::XNumericField
314     void SAL_CALL setValue( double Value ) throw(::com::sun::star::uno::RuntimeException);
315     double SAL_CALL getValue(  ) throw(::com::sun::star::uno::RuntimeException);
316     void SAL_CALL setMin( double Value ) throw(::com::sun::star::uno::RuntimeException);
317     double SAL_CALL getMin(  ) throw(::com::sun::star::uno::RuntimeException);
318     void SAL_CALL setMax( double Value ) throw(::com::sun::star::uno::RuntimeException);
319     double SAL_CALL getMax(  ) throw(::com::sun::star::uno::RuntimeException);
320     void SAL_CALL setFirst( double Value ) throw(::com::sun::star::uno::RuntimeException);
321     double SAL_CALL getFirst(  ) throw(::com::sun::star::uno::RuntimeException);
322     void SAL_CALL setLast( double Value ) throw(::com::sun::star::uno::RuntimeException);
323     double SAL_CALL getLast(  ) throw(::com::sun::star::uno::RuntimeException);
324     void SAL_CALL setSpinSize( double Value ) throw(::com::sun::star::uno::RuntimeException);
325     double SAL_CALL getSpinSize(  ) throw(::com::sun::star::uno::RuntimeException);
326     void SAL_CALL setDecimalDigits( sal_Int16 nDigits ) throw(::com::sun::star::uno::RuntimeException);
327     sal_Int16 SAL_CALL getDecimalDigits(  ) throw(::com::sun::star::uno::RuntimeException);
328     void SAL_CALL setStrictFormat( sal_Bool bStrict ) throw(::com::sun::star::uno::RuntimeException);
329     sal_Bool SAL_CALL isStrictFormat(  ) throw(::com::sun::star::uno::RuntimeException);
330 
331     static void     ImplGetPropertyIds( std::list< sal_uInt16 > &aIds );
GetPropertyIds(std::list<sal_uInt16> & aIds)332     virtual void    GetPropertyIds( std::list< sal_uInt16 > &aIds ) { return ImplGetPropertyIds( aIds ); }
333 };
334 
335 //	----------------------------------------------------
336 //	class VCLXCurrencyField
337 //	----------------------------------------------------
338 class SVTXCurrencyField : public ::com::sun::star::awt::XCurrencyField, public SVTXFormattedField
339 {
340 public:
341 					SVTXCurrencyField();
342 					~SVTXCurrencyField();
343 
344 	// ::com::sun::star::uno::XInterface
345     ::com::sun::star::uno::Any					SAL_CALL queryInterface( const ::com::sun::star::uno::Type & rType ) throw(::com::sun::star::uno::RuntimeException);
acquire()346 	void										SAL_CALL acquire() throw()	{ SVTXFormattedField::acquire(); }
release()347 	void										SAL_CALL release() throw()	{ SVTXFormattedField::release(); }
348 
349     // ::com::sun::star::lang::XTypeProvider
350 	::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type >	SAL_CALL getTypes() throw(::com::sun::star::uno::RuntimeException);
351 	::com::sun::star::uno::Sequence< sal_Int8 >						SAL_CALL getImplementationId() throw(::com::sun::star::uno::RuntimeException);
352 
353 	// ::com::sun::star::awt::XVclWindowPeer
354     void SAL_CALL setProperty( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Any& Value ) throw(::com::sun::star::uno::RuntimeException);
355     ::com::sun::star::uno::Any SAL_CALL getProperty( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::uno::RuntimeException);
356 
357 	// ::com::sun::star::awt::XCurrencyField
358     void SAL_CALL setValue( double Value ) throw(::com::sun::star::uno::RuntimeException);
359     double SAL_CALL getValue(  ) throw(::com::sun::star::uno::RuntimeException);
360     void SAL_CALL setMin( double Value ) throw(::com::sun::star::uno::RuntimeException);
361     double SAL_CALL getMin(  ) throw(::com::sun::star::uno::RuntimeException);
362     void SAL_CALL setMax( double Value ) throw(::com::sun::star::uno::RuntimeException);
363     double SAL_CALL getMax(  ) throw(::com::sun::star::uno::RuntimeException);
364     void SAL_CALL setFirst( double Value ) throw(::com::sun::star::uno::RuntimeException);
365     double SAL_CALL getFirst(  ) throw(::com::sun::star::uno::RuntimeException);
366     void SAL_CALL setLast( double Value ) throw(::com::sun::star::uno::RuntimeException);
367     double SAL_CALL getLast(  ) throw(::com::sun::star::uno::RuntimeException);
368     void SAL_CALL setSpinSize( double Value ) throw(::com::sun::star::uno::RuntimeException);
369     double SAL_CALL getSpinSize(  ) throw(::com::sun::star::uno::RuntimeException);
370     void SAL_CALL setDecimalDigits( sal_Int16 nDigits ) throw(::com::sun::star::uno::RuntimeException);
371     sal_Int16 SAL_CALL getDecimalDigits(  ) throw(::com::sun::star::uno::RuntimeException);
372     void SAL_CALL setStrictFormat( sal_Bool bStrict ) throw(::com::sun::star::uno::RuntimeException);
373     sal_Bool SAL_CALL isStrictFormat(  ) throw(::com::sun::star::uno::RuntimeException);
374 
375     static void     ImplGetPropertyIds( std::list< sal_uInt16 > &aIds );
GetPropertyIds(std::list<sal_uInt16> & aIds)376     virtual void    GetPropertyIds( std::list< sal_uInt16 > &aIds ) { return ImplGetPropertyIds( aIds ); }
377 };
378 
379 //	----------------------------------------------------
380 //	class VCLXProgressBar
381 //	----------------------------------------------------
382 class VCLXProgressBar :	public ::com::sun::star::awt::XProgressBar,
383 						public VCLXWindow
384 {
385 private:
386 	sal_Int32	m_nValue;
387 	sal_Int32	m_nValueMin;
388 	sal_Int32	m_nValueMax;
389 
390 protected:
391 	void			ImplUpdateValue();
392 
393 public:
394 					VCLXProgressBar();
395 					~VCLXProgressBar();
396 
397 	// ::com::sun::star::uno::XInterface
398     ::com::sun::star::uno::Any					SAL_CALL queryInterface( const ::com::sun::star::uno::Type & rType ) throw(::com::sun::star::uno::RuntimeException);
acquire()399 	void										SAL_CALL acquire() throw()	{ VCLXWindow::acquire(); }
release()400 	void										SAL_CALL release() throw()	{ VCLXWindow::release(); }
401 
402     // ::com::sun::star::lang::XTypeProvider
403 	::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type >	SAL_CALL getTypes() throw(::com::sun::star::uno::RuntimeException);
404 	::com::sun::star::uno::Sequence< sal_Int8 >						SAL_CALL getImplementationId() throw(::com::sun::star::uno::RuntimeException);
405 
406 	// ::com::sun::star::awt::XProgressBar
407     void SAL_CALL setForegroundColor( sal_Int32 nColor ) throw(::com::sun::star::uno::RuntimeException);
408     void SAL_CALL setBackgroundColor( sal_Int32 nColor ) throw(::com::sun::star::uno::RuntimeException);
409     void SAL_CALL setValue( sal_Int32 nValue ) throw(::com::sun::star::uno::RuntimeException);
410     void SAL_CALL setRange(	sal_Int32 nMin, sal_Int32 nMax ) throw(::com::sun::star::uno::RuntimeException );
411     sal_Int32 SAL_CALL getValue() throw(::com::sun::star::uno::RuntimeException);
412 
413 	// ::com::sun::star::awt::VclWindowPeer
414     void SAL_CALL setProperty( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Any& Value ) throw(::com::sun::star::uno::RuntimeException);
415     ::com::sun::star::uno::Any SAL_CALL getProperty( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::uno::RuntimeException);
416 
417     static void     ImplGetPropertyIds( std::list< sal_uInt16 > &aIds );
GetPropertyIds(std::list<sal_uInt16> & aIds)418     virtual void    GetPropertyIds( std::list< sal_uInt16 > &aIds ) { return ImplGetPropertyIds( aIds ); }
419 };
420 
421 //	----------------------------------------------------
422 //	class SVTXDateField
423 //	----------------------------------------------------
424 class SVTXDateField : public VCLXDateField
425 {
426 public:
427 					SVTXDateField();
428 					~SVTXDateField();
429 
430 	// ::com::sun::star::awt::VclWindowPeer
431     void SAL_CALL setProperty( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Any& Value ) throw(::com::sun::star::uno::RuntimeException);
432 
433     static void     ImplGetPropertyIds( std::list< sal_uInt16 > &aIds );
GetPropertyIds(std::list<sal_uInt16> & aIds)434     virtual void    GetPropertyIds( std::list< sal_uInt16 > &aIds ) { return ImplGetPropertyIds( aIds ); }
435 };
436 
437 #endif	// _SVT_UNOIFACE_HXX
438