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