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