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 _UNOCONTROLS_PROGRESSMONITOR_CTRL_HXX
29 #define _UNOCONTROLS_PROGRESSMONITOR_CTRL_HXX
30 
31 //____________________________________________________________________________________________________________
32 //	includes of other projects
33 //____________________________________________________________________________________________________________
34 
35 #include <com/sun/star/awt/XFileDialog.hpp>
36 #include <com/sun/star/awt/XTextComponent.hpp>
37 #include <com/sun/star/awt/XListBox.hpp>
38 #include <com/sun/star/awt/XProgressMonitor.hpp>
39 #include <com/sun/star/awt/TextAlign.hpp>
40 #include <com/sun/star/awt/XScrollBar.hpp>
41 #include <com/sun/star/awt/XVclContainerPeer.hpp>
42 #include <com/sun/star/awt/XTabControllerModel.hpp>
43 #include <com/sun/star/awt/XMessageBox.hpp>
44 #include <com/sun/star/awt/XTextEditField.hpp>
45 #include <com/sun/star/awt/Style.hpp>
46 #include <com/sun/star/awt/XTimeField.hpp>
47 #include <com/sun/star/awt/XVclWindowPeer.hpp>
48 #include <com/sun/star/awt/XControlModel.hpp>
49 #include <com/sun/star/awt/XSpinField.hpp>
50 #include <com/sun/star/awt/XUnoControlContainer.hpp>
51 #include <com/sun/star/awt/XTextLayoutConstrains.hpp>
52 #include <com/sun/star/awt/XNumericField.hpp>
53 #include <com/sun/star/awt/XButton.hpp>
54 #include <com/sun/star/awt/XTextArea.hpp>
55 #include <com/sun/star/awt/XImageButton.hpp>
56 #include <com/sun/star/awt/XFixedText.hpp>
57 #include <com/sun/star/awt/XControlContainer.hpp>
58 #include <com/sun/star/awt/XDialog.hpp>
59 #include <com/sun/star/awt/ScrollBarOrientation.hpp>
60 #include <com/sun/star/awt/XRadioButton.hpp>
61 #include <com/sun/star/awt/XCurrencyField.hpp>
62 #include <com/sun/star/awt/XPatternField.hpp>
63 #include <com/sun/star/awt/VclWindowPeerAttribute.hpp>
64 #include <com/sun/star/awt/XTabController.hpp>
65 #include <com/sun/star/awt/XVclContainer.hpp>
66 #include <com/sun/star/awt/XDateField.hpp>
67 #include <com/sun/star/awt/XComboBox.hpp>
68 #include <com/sun/star/awt/XControl.hpp>
69 #include <com/sun/star/awt/XCheckBox.hpp>
70 #include <com/sun/star/awt/MessageBoxCommand.hpp>
71 #include <com/sun/star/awt/XLayoutConstrains.hpp>
72 #include <com/sun/star/awt/XProgressBar.hpp>
73 
74 //____________________________________________________________________________________________________________
75 //	includes of my own project
76 //____________________________________________________________________________________________________________
77 #include "basecontainercontrol.hxx"
78 
79 //____________________________________________________________________________________________________________
80 //	namespace
81 //____________________________________________________________________________________________________________
82 
83 namespace unocontrols{
84 
85 #define	UNO3_ANY										::com::sun::star::uno::Any
86 #define	UNO3_OUSTRING									::rtl::OUString
87 #define	UNO3_RECTANGLE									::com::sun::star::awt::Rectangle
88 #define	UNO3_REFERENCE									::com::sun::star::uno::Reference
89 #define	UNO3_RUNTIMEEXCEPTION							::com::sun::star::uno::RuntimeException
90 #define	UNO3_SEQUENCE									::com::sun::star::uno::Sequence
91 #define	UNO3_SIZE										::com::sun::star::awt::Size
92 #define	UNO3_TYPE										::com::sun::star::uno::Type
93 #define	UNO3_XACTIONLISTENER							::com::sun::star::awt::XActionListener
94 #define	UNO3_XBUTTON									::com::sun::star::awt::XButton
95 #define	UNO3_XCONTROLMODEL								::com::sun::star::awt::XControlModel
96 #define	UNO3_XFIXEDTEXT									::com::sun::star::awt::XFixedText
97 #define	UNO3_XGRAPHICS									::com::sun::star::awt::XGraphics
98 #define	UNO3_XLAYOUTCONSTRAINS							::com::sun::star::awt::XLayoutConstrains
99 #define	UNO3_XMULTISERVICEFACTORY						::com::sun::star::lang::XMultiServiceFactory
100 #define	UNO3_XPROGRESSBAR								::com::sun::star::awt::XProgressBar
101 #define	UNO3_XPROGRESSMONITOR							::com::sun::star::awt::XProgressMonitor
102 #define	UNO3_XTOOLKIT									::com::sun::star::awt::XToolkit
103 #define	UNO3_XWINDOWPEER								::com::sun::star::awt::XWindowPeer
104 
105 //____________________________________________________________________________________________________________
106 //	defines
107 //____________________________________________________________________________________________________________
108 
109 #define	SERVICENAME_PROGRESSMONITOR						"com.sun.star.awt.XProgressMonitor"
110 #define	IMPLEMENTATIONNAME_PROGRESSMONITOR				"stardiv.UnoControls.ProgressMonitor"
111 #define FREEBORDER										10														// border around and between the controls
112 #define WIDTH_RELATION									4														// reserve 1/4 for button width and rest for progressbar width
113 #define HEIGHT_RELATION									5														// reserve 1/5 for button and progressbar heigth and rest for text height
114 #define FIXEDTEXT_SERVICENAME							"com.sun.star.awt.UnoControlFixedText"
115 #define BUTTON_SERVICENAME								"com.sun.star.awt.UnoControlButton"
116 #define	FIXEDTEXT_MODELNAME								"com.sun.star.awt.UnoControlFixedTextModel"
117 #define	BUTTON_MODELNAME								"com.sun.star.awt.UnoControlButtonModel"
118 #define	CONTROLNAME_TEXT								"Text"													// identifier the control in container
119 #define	CONTROLNAME_BUTTON								"Button"												//  			-||-
120 #define	CONTROLNAME_PROGRESSBAR							"ProgressBar"											//  			-||-
121 #define	DEFAULT_BUTTONLABEL								"Abbrechen"
122 #define	DEFAULT_TOPIC									"\0"
123 #define	DEFAULT_TEXT									"\0"
124 #define	BACKGROUNDCOLOR									TRGB_COLORDATA( 0x00, 0xC0, 0xC0, 0xC0 )				// lighgray
125 #define	LINECOLOR_BRIGHT								TRGB_COLORDATA( 0x00, 0xFF, 0xFF, 0xFF )				// white
126 #define	LINECOLOR_SHADOW								TRGB_COLORDATA( 0x00, 0x00, 0x00, 0x00 )				// black
127 #define	HEIGHT_PROGRESSBAR								15
128 // Overwrite defines from basecontrol.hxx!!!
129 #undef	DEFAULT_WIDTH
130 #undef	DEFAULT_HEIGHT
131 #define DEFAULT_WIDTH 									350
132 #define DEFAULT_HEIGHT									100
133 
134 //____________________________________________________________________________________________________________
135 //	structs, types
136 //____________________________________________________________________________________________________________
137 
138 ///	Item of TextList
139 struct IMPL_TextlistItem
140 {
141 	UNO3_OUSTRING	sTopic	;	/// Left site of textline in dialog
142 	UNO3_OUSTRING	sText	;	/// Right site of textline in dialog
143 };
144 
145 /// Define a list-class for struct IMPL_TextlistItem
146 class IMPL_Textlist ;
147 DECLARE_LIST( IMPL_Textlist, IMPL_TextlistItem* )
148 
149 //____________________________________________________________________________________________________________
150 //	class declaration
151 //____________________________________________________________________________________________________________
152 
153 class ProgressMonitor	: public UNO3_XLAYOUTCONSTRAINS
154 						, public UNO3_XBUTTON
155 						, public UNO3_XPROGRESSMONITOR
156 						, public BaseContainerControl
157 {
158 
159 //____________________________________________________________________________________________________________
160 //	public methods
161 //____________________________________________________________________________________________________________
162 
163 public:
164 
165 	//________________________________________________________________________________________________________
166 	//	construct/destruct
167 	//________________________________________________________________________________________________________
168 
169 	/**_______________________________________________________________________________________________________
170 		@short
171 		@descr
172 
173 		@seealso
174 
175 		@param
176 
177 		@return
178 
179 		@onerror
180 	*/
181 
182 	ProgressMonitor( const UNO3_REFERENCE< UNO3_XMULTISERVICEFACTORY >& xFactory );
183 
184 	/**_______________________________________________________________________________________________________
185 		@short
186 		@descr
187 
188 		@seealso
189 
190 		@param
191 
192 		@return
193 
194 		@onerror
195 	*/
196 
197 	virtual	~ProgressMonitor();
198 
199 	//________________________________________________________________________________________________________
200 	//	XInterface
201 	//________________________________________________________________________________________________________
202 
203 	/**_______________________________________________________________________________________________________
204 		@short		give answer, if interface is supported
205 		@descr		The interfaces are searched by type.
206 
207 		@seealso	XInterface
208 
209 		@param      "rType" is the type of searched interface.
210 
211 		@return		Any		information about found interface
212 
213 		@onerror	A RuntimeException is thrown.
214 	*/
215 
216 	virtual UNO3_ANY SAL_CALL queryInterface( const UNO3_TYPE& aType ) throw( UNO3_RUNTIMEEXCEPTION );
217 
218 	/**_______________________________________________________________________________________________________
219 		@short		increment refcount
220 		@descr		-
221 
222 		@seealso	XInterface
223 		@seealso	release()
224 
225 		@param		-
226 
227 		@return		-
228 
229 		@onerror	A RuntimeException is thrown.
230 	*/
231 
232     virtual void SAL_CALL acquire() throw();
233 
234 	/**_______________________________________________________________________________________________________
235 		@short		decrement refcount
236 		@descr		-
237 
238 		@seealso	XInterface
239 		@seealso	acquire()
240 
241 		@param		-
242 
243 		@return		-
244 
245 		@onerror	A RuntimeException is thrown.
246 	*/
247 
248     virtual void SAL_CALL release() throw();
249 
250 	//________________________________________________________________________________________________________
251 	//	XTypeProvider
252 	//________________________________________________________________________________________________________
253 
254 	/**_______________________________________________________________________________________________________
255 		@short		get information about supported interfaces
256 		@descr      -
257 
258 		@seealso	XTypeProvider
259 
260 		@param      -
261 
262 		@return		Sequence of types of all supported interfaces
263 
264 		@onerror	A RuntimeException is thrown.
265 	*/
266 
267 	virtual UNO3_SEQUENCE< UNO3_TYPE > SAL_CALL getTypes() throw( UNO3_RUNTIMEEXCEPTION );
268 
269 	//________________________________________________________________________________________________________
270 	//	XAggregation
271 	//________________________________________________________________________________________________________
272 
273 	/**_______________________________________________________________________________________________________
274 		@short		-
275 		@descr		-
276 
277 		@seealso	-
278 
279 		@param		-
280 
281 		@return		-
282 
283 		@onerror	-
284 	*/
285 
286 	virtual UNO3_ANY SAL_CALL queryAggregation( const UNO3_TYPE& aType ) throw( UNO3_RUNTIMEEXCEPTION );
287 
288 	//________________________________________________________________________________________________________
289 	//	XProgressMonitor
290 	//________________________________________________________________________________________________________
291 
292 	/**_______________________________________________________________________________________________________
293 		@short		add topic to dialog
294 		@descr		Add a topic with a text in right textlist (used for FixedText-member).<BR>
295 					( "beforeProgress" fix the right list ). The dialog metric is recalculated.
296 
297 		@seealso	removeText(), updateText()
298 
299 		@param		sTopic				Name of topic<BR>
300 	 									[sTopic != "" && sTopic != NULL]
301 		@param		sText				Value of topic<BR>
302 	 									[sText != "" && sText != NULL]
303 		@param		bbeforeProgress		Position of topic<BR>
304 	 									[True => before progressbar / False => below progressbar]
305 
306 		@return		-
307 
308 		@onerror	DEBUG	= Assertion<BR>
309 					RELEASE	= nothing
310 	*/
311 
312 	virtual void SAL_CALL addText(	const	UNO3_OUSTRING&	sTopic			,
313 									const	UNO3_OUSTRING&	sText			,
314 											sal_Bool		bbeforeProgress	) throw( UNO3_RUNTIMEEXCEPTION );
315 
316 	/**_______________________________________________________________________________________________________
317 		@short		-
318 		@descr		-
319 
320 		@seealso	-
321 
322 		@param		-
323 
324 		@return		-
325 
326 		@onerror	-
327 	*/
328 
329 	virtual void SAL_CALL removeText(	const	UNO3_OUSTRING&	sTopic			,
330 												sal_Bool		bbeforeProgress	) throw( UNO3_RUNTIMEEXCEPTION );
331 
332 	/**_______________________________________________________________________________________________________
333 		@short		-
334 		@descr		-
335 
336 		@seealso	-
337 
338 		@param		-
339 
340 		@return		-
341 
342 		@onerror	-
343 	*/
344 
345 	virtual void SAL_CALL updateText(	const	UNO3_OUSTRING&	sTopic			,
346 										const	UNO3_OUSTRING&	sText			,
347 												sal_Bool		bbeforeProgress	) throw( UNO3_RUNTIMEEXCEPTION );
348 
349 	//________________________________________________________________________________________________________
350 	//	XProgressBar
351 	//________________________________________________________________________________________________________
352 
353 	/**_______________________________________________________________________________________________________
354 		@short		-
355 		@descr		-
356 
357 		@seealso	-
358 
359 		@param		-
360 
361 		@return		-
362 
363 		@onerror	-
364 	*/
365 
366     virtual void SAL_CALL setForegroundColor( sal_Int32 nColor ) throw( UNO3_RUNTIMEEXCEPTION );
367 
368 	/**_______________________________________________________________________________________________________
369 		@short		-
370 		@descr		-
371 
372 		@seealso	-
373 
374 		@param		-
375 
376 		@return		-
377 
378 		@onerror	-
379 	*/
380 
381     virtual void SAL_CALL setBackgroundColor( sal_Int32 nColor ) throw( UNO3_RUNTIMEEXCEPTION );
382 
383 	/**_______________________________________________________________________________________________________
384 		@short		-
385 		@descr		-
386 
387 		@seealso	-
388 
389 		@param		-
390 
391 		@return		-
392 
393 		@onerror	-
394 	*/
395 
396     virtual void SAL_CALL setValue( sal_Int32 nValue ) throw( UNO3_RUNTIMEEXCEPTION );
397 
398 	/**_______________________________________________________________________________________________________
399 		@short		-
400 		@descr		-
401 
402 		@seealso	-
403 
404 		@param		-
405 
406 		@return		-
407 
408 		@onerror	-
409 	*/
410 
411     virtual void SAL_CALL setRange(	sal_Int32	nMin	,
412 									sal_Int32	nMax	) throw( UNO3_RUNTIMEEXCEPTION );
413 
414 	/**_______________________________________________________________________________________________________
415 		@short		-
416 		@descr		-
417 
418 		@seealso	-
419 
420 		@param		-
421 
422 		@return		-
423 
424 		@onerror	-
425 	*/
426 
427     virtual sal_Int32 SAL_CALL getValue() throw( UNO3_RUNTIMEEXCEPTION );
428 
429 	//________________________________________________________________________________________________________
430 	//	XButton
431 	//________________________________________________________________________________________________________
432 
433 	/**_______________________________________________________________________________________________________
434 		@short		-
435 		@descr		-
436 
437 		@seealso	-
438 
439 		@param		-
440 
441 		@return		-
442 
443 		@onerror	-
444 	*/
445 
446 	virtual void SAL_CALL addActionListener( const UNO3_REFERENCE< UNO3_XACTIONLISTENER >& xListener ) throw( UNO3_RUNTIMEEXCEPTION );
447 
448 	/**_______________________________________________________________________________________________________
449 		@short		-
450 		@descr		-
451 
452 		@seealso	-
453 
454 		@param		-
455 
456 		@return		-
457 
458 		@onerror	-
459 	*/
460 
461 	virtual void SAL_CALL removeActionListener( const UNO3_REFERENCE< UNO3_XACTIONLISTENER >& xListener ) throw( UNO3_RUNTIMEEXCEPTION );
462 
463 	/**_______________________________________________________________________________________________________
464 		@short		-
465 		@descr		-
466 
467 		@seealso	-
468 
469 		@param		-
470 
471 		@return		-
472 
473 		@onerror	-
474 	*/
475 
476 	virtual void SAL_CALL setLabel( const UNO3_OUSTRING& sLabel ) throw( UNO3_RUNTIMEEXCEPTION );
477 
478 	/**_______________________________________________________________________________________________________
479 		@short		-
480 		@descr		-
481 
482 		@seealso	-
483 
484 		@param		-
485 
486 		@return		-
487 
488 		@onerror	-
489 	*/
490 
491 	virtual	void SAL_CALL setActionCommand( const UNO3_OUSTRING& sCommand ) throw( UNO3_RUNTIMEEXCEPTION );
492 
493 	//________________________________________________________________________________________________________
494 	// 	XLayoutConstrains
495 	//________________________________________________________________________________________________________
496 
497 	/**_______________________________________________________________________________________________________
498 		@short		-
499 		@descr		-
500 
501 		@seealso	-
502 
503 		@param		-
504 
505 		@return		-
506 
507 		@onerror	-
508 	*/
509 
510     virtual UNO3_SIZE SAL_CALL getMinimumSize() throw( UNO3_RUNTIMEEXCEPTION );
511 
512 	/**_______________________________________________________________________________________________________
513 		@short		-
514 		@descr		-
515 
516 		@seealso	-
517 
518 		@param		-
519 
520 		@return		-
521 
522 		@onerror	-
523 	*/
524 
525     virtual UNO3_SIZE SAL_CALL getPreferredSize() throw( UNO3_RUNTIMEEXCEPTION );
526 
527 	/**_______________________________________________________________________________________________________
528 		@short		-
529 		@descr		-
530 
531 		@seealso	-
532 
533 		@param		-
534 
535 		@return		-
536 
537 		@onerror	-
538 	*/
539 
540     virtual UNO3_SIZE SAL_CALL calcAdjustedSize( const UNO3_SIZE& aNewSize ) throw( UNO3_RUNTIMEEXCEPTION );
541 
542 	//________________________________________________________________________________________________________
543 	//	XControl
544 	//________________________________________________________________________________________________________
545 
546 	/**_______________________________________________________________________________________________________
547 		@short		-
548 		@descr		-
549 
550 		@seealso	-
551 
552 		@param		-
553 
554 		@return		-
555 
556 		@onerror	-
557 	*/
558 
559     virtual void SAL_CALL createPeer(	const	UNO3_REFERENCE< UNO3_XTOOLKIT >&	xToolkit	,
560 										const	UNO3_REFERENCE< UNO3_XWINDOWPEER >&	xParent		) throw( UNO3_RUNTIMEEXCEPTION );
561 
562 	/**_______________________________________________________________________________________________________
563 		@short		-
564 		@descr		-
565 
566 		@seealso	-
567 
568 		@param		-
569 
570 		@return		-
571 
572 		@onerror	-
573 	*/
574 
575     virtual sal_Bool SAL_CALL setModel( const UNO3_REFERENCE< UNO3_XCONTROLMODEL >& xModel ) throw( UNO3_RUNTIMEEXCEPTION );
576 
577 	/**_______________________________________________________________________________________________________
578 		@short		-
579 		@descr		-
580 
581 		@seealso	-
582 
583 		@param		-
584 
585 		@return		-
586 
587 		@onerror	-
588 	*/
589 
590     virtual UNO3_REFERENCE< UNO3_XCONTROLMODEL > SAL_CALL getModel() throw( UNO3_RUNTIMEEXCEPTION );
591 
592 	//________________________________________________________________________________________________________
593 	//	XComponent
594 	//________________________________________________________________________________________________________
595 
596 	/**_______________________________________________________________________________________________________
597 		@short		-
598 		@descr		-
599 
600 		@seealso	-
601 
602 		@param		-
603 
604 		@return		-
605 
606 		@onerror	-
607 	*/
608 
609 	virtual void SAL_CALL dispose() throw( UNO3_RUNTIMEEXCEPTION );
610 
611 	//________________________________________________________________________________________________________
612 	//	XWindow
613 	//________________________________________________________________________________________________________
614 
615 	/**_______________________________________________________________________________________________________
616 		@short		-
617 		@descr		-
618 
619 		@seealso	-
620 
621 		@param		-
622 
623 		@return		-
624 
625 		@onerror	-
626 	*/
627 
628 	virtual void SAL_CALL setPosSize(	sal_Int32	nX		,
629 										sal_Int32	nY		,
630 										sal_Int32	nWidth	,
631 										sal_Int32	nHeight	,
632 										sal_Int16	nFlags	) throw( UNO3_RUNTIMEEXCEPTION );
633 
634 	//________________________________________________________________________________________________________
635 	//	BaseControl
636 	//________________________________________________________________________________________________________
637 
638 	/**_______________________________________________________________________________________________________
639 		@short		-
640 		@descr		-
641 
642 		@seealso	-
643 
644 		@param		-
645 
646 		@return		-
647 
648 		@onerror	-
649 	*/
650 
651     static const UNO3_SEQUENCE< UNO3_OUSTRING > impl_getStaticSupportedServiceNames();
652 
653 	/**_______________________________________________________________________________________________________
654 		@short		-
655 		@descr		-
656 
657 		@seealso	-
658 
659 		@param		-
660 
661 		@return		-
662 
663 		@onerror	-
664 	*/
665 
666     static const UNO3_OUSTRING impl_getStaticImplementationName();
667 
668 //____________________________________________________________________________________________________________
669 //	protected methods
670 //____________________________________________________________________________________________________________
671 
672 protected:
673 
674 	/**_______________________________________________________________________________________________________
675 		@short		-
676 		@descr		-
677 
678 		@seealso	-
679 
680 		@param		-
681 
682 		@return		-
683 
684 		@onerror	-
685 	*/
686 
687 	virtual void impl_paint(		sal_Int32							nX			,
688 									sal_Int32							nY			,
689 							const	UNO3_REFERENCE< UNO3_XGRAPHICS >&	xGraphics	);
690 
691 //____________________________________________________________________________________________________________
692 // private methods
693 //____________________________________________________________________________________________________________
694 
695 private:
696     using BaseControl::impl_recalcLayout;
697 	/**_______________________________________________________________________________________________________
698 		@short		-
699 		@descr		-
700 
701 		@seealso	-
702 
703 		@param		-
704 
705 		@return		-
706 
707 		@onerror	-
708 	*/
709 
710 	void impl_recalcLayout();
711 
712 	/**_______________________________________________________________________________________________________
713 		@short		-
714 		@descr		-
715 
716 		@seealso	-
717 
718 		@param		-
719 
720 		@return		-
721 
722 		@onerror	-
723 	*/
724 
725 	void impl_rebuildFixedText();
726 
727 	/**_______________________________________________________________________________________________________
728 		@short		-
729 		@descr		-
730 
731 		@seealso	-
732 
733 		@param		-
734 
735 		@return		-
736 
737 		@onerror	-
738 	*/
739 
740 	void impl_cleanMemory();
741 
742 	/**_______________________________________________________________________________________________________
743 		@short		-
744 		@descr		-
745 
746 		@seealso	-
747 
748 		@param		-
749 
750 		@return		-
751 
752 		@onerror	-
753 	*/
754 
755 	IMPL_TextlistItem* impl_searchTopic(	const	UNO3_OUSTRING&	sTopic			,
756 		 											sal_Bool		bbeforeProgress	);
757 
758 //____________________________________________________________________________________________________________
759 // debug methods
760 //____________________________________________________________________________________________________________
761 
762 private:
763 
764 	/**_______________________________________________________________________________________________________
765 		@short		-
766 		@descr		-
767 
768 		@seealso	-
769 
770 		@param		-
771 
772 		@return		-
773 
774 		@onerror	-
775 	*/
776 
777 	#ifdef DBG_UTIL
778 
779 	sal_Bool impl_debug_checkParameter( const UNO3_OUSTRING& sTopic, const UNO3_OUSTRING& sText, sal_Bool bbeforeProgress );	// addText, updateText
780 	sal_Bool impl_debug_checkParameter( const UNO3_OUSTRING& rTopic, sal_Bool bbeforeProgress );								// removeText
781 
782 	#endif
783 //____________________________________________________________________________________________________________
784 // private variables
785 //____________________________________________________________________________________________________________
786 
787 private:
788 
789 	IMPL_Textlist*							m_pTextlist_Top			;	// Elements before progress
790 	UNO3_REFERENCE< UNO3_XFIXEDTEXT > 		m_xTopic_Top			;	// (used, if parameter "beforeProgress"=sal_True in "addText, updateText, removeText")
791 	UNO3_REFERENCE< UNO3_XFIXEDTEXT > 		m_xText_Top				;
792 
793 	IMPL_Textlist*							m_pTextlist_Bottom		;	// Elements below of progress
794 	UNO3_REFERENCE< UNO3_XFIXEDTEXT > 		m_xTopic_Bottom			;	// (used, if parameter "beforeProgress"=sal_False in "addText, updateText, removeText")
795 	UNO3_REFERENCE< UNO3_XFIXEDTEXT > 		m_xText_Bottom			;
796 
797 	UNO3_REFERENCE< UNO3_XPROGRESSBAR > 	m_xProgressBar			;
798 	UNO3_REFERENCE< UNO3_XBUTTON > 			m_xButton				;
799 	UNO3_RECTANGLE							m_a3DLine				;
800 
801 };	// class ProgressMonitor
802 
803 }	// namespace unocontrols
804 
805 #endif	// #ifndef _UNOCONTROLS_PROGRESSMONITOR_CTRL_HXX
806