1*cdf0e10cSrcweir /*************************************************************************
2*cdf0e10cSrcweir  *
3*cdf0e10cSrcweir  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4*cdf0e10cSrcweir  *
5*cdf0e10cSrcweir  * Copyright 2000, 2010 Oracle and/or its affiliates.
6*cdf0e10cSrcweir  *
7*cdf0e10cSrcweir  * OpenOffice.org - a multi-platform office productivity suite
8*cdf0e10cSrcweir  *
9*cdf0e10cSrcweir  * This file is part of OpenOffice.org.
10*cdf0e10cSrcweir  *
11*cdf0e10cSrcweir  * OpenOffice.org is free software: you can redistribute it and/or modify
12*cdf0e10cSrcweir  * it under the terms of the GNU Lesser General Public License version 3
13*cdf0e10cSrcweir  * only, as published by the Free Software Foundation.
14*cdf0e10cSrcweir  *
15*cdf0e10cSrcweir  * OpenOffice.org is distributed in the hope that it will be useful,
16*cdf0e10cSrcweir  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17*cdf0e10cSrcweir  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18*cdf0e10cSrcweir  * GNU Lesser General Public License version 3 for more details
19*cdf0e10cSrcweir  * (a copy is included in the LICENSE file that accompanied this code).
20*cdf0e10cSrcweir  *
21*cdf0e10cSrcweir  * You should have received a copy of the GNU Lesser General Public License
22*cdf0e10cSrcweir  * version 3 along with OpenOffice.org.  If not, see
23*cdf0e10cSrcweir  * <http://www.openoffice.org/license.html>
24*cdf0e10cSrcweir  * for a copy of the LGPLv3 License.
25*cdf0e10cSrcweir  *
26*cdf0e10cSrcweir  ************************************************************************/
27*cdf0e10cSrcweir 
28*cdf0e10cSrcweir #ifndef _UNOCONTROLS_FRAMECONTROL_CTRL_HXX
29*cdf0e10cSrcweir #define _UNOCONTROLS_FRAMECONTROL_CTRL_HXX
30*cdf0e10cSrcweir 
31*cdf0e10cSrcweir //______________________________________________________________________________________________________________
32*cdf0e10cSrcweir //	includes of other projects
33*cdf0e10cSrcweir //______________________________________________________________________________________________________________
34*cdf0e10cSrcweir 
35*cdf0e10cSrcweir #include <com/sun/star/frame/XFrameActionListener.hpp>
36*cdf0e10cSrcweir #include <com/sun/star/frame/XComponentLoader.hpp>
37*cdf0e10cSrcweir #include <com/sun/star/frame/XFrame.hpp>
38*cdf0e10cSrcweir #include <com/sun/star/frame/FrameActionEvent.hpp>
39*cdf0e10cSrcweir #include <com/sun/star/frame/FrameAction.hpp>
40*cdf0e10cSrcweir #include <com/sun/star/lang/XServiceName.hpp>
41*cdf0e10cSrcweir #include <com/sun/star/lang/XServiceInfo.hpp>
42*cdf0e10cSrcweir #include <com/sun/star/lang/XConnectionPointContainer.hpp>
43*cdf0e10cSrcweir #include <cppuhelper/propshlp.hxx>
44*cdf0e10cSrcweir 
45*cdf0e10cSrcweir //______________________________________________________________________________________________________________
46*cdf0e10cSrcweir //	includes of my own project
47*cdf0e10cSrcweir //______________________________________________________________________________________________________________
48*cdf0e10cSrcweir #include "basecontrol.hxx"
49*cdf0e10cSrcweir #include "OConnectionPointContainerHelper.hxx"
50*cdf0e10cSrcweir 
51*cdf0e10cSrcweir //______________________________________________________________________________________________________________
52*cdf0e10cSrcweir //	namespaces
53*cdf0e10cSrcweir //______________________________________________________________________________________________________________
54*cdf0e10cSrcweir 
55*cdf0e10cSrcweir namespace unocontrols{
56*cdf0e10cSrcweir 
57*cdf0e10cSrcweir #define	UNO3_ANY										::com::sun::star::uno::Any
58*cdf0e10cSrcweir #define	UNO3_ILLEGALARGUMENTEXCEPTION					::com::sun::star::lang::IllegalArgumentException
59*cdf0e10cSrcweir #define	UNO3_IPROPERTYARRAYHELPER						::cppu::IPropertyArrayHelper
60*cdf0e10cSrcweir #define	UNO3_OBROADCASTHELPER							::cppu::OBroadcastHelper
61*cdf0e10cSrcweir #define	UNO3_OCONNECTIONPOINTCONTAINERHELPER			OConnectionPointContainerHelper
62*cdf0e10cSrcweir #define	UNO3_OMULTITYPEINTERFACECONTAINERHELPER			::cppu::OMultiTypeInterfaceContainerHelper
63*cdf0e10cSrcweir #define	UNO3_OPROPERTYSETHELPER							::cppu::OPropertySetHelper
64*cdf0e10cSrcweir #define	UNO3_OUSTRING									::rtl::OUString
65*cdf0e10cSrcweir #define	UNO3_PROPERTY									::com::sun::star::beans::Property
66*cdf0e10cSrcweir #define	UNO3_PROPERTYVALUE								::com::sun::star::beans::PropertyValue
67*cdf0e10cSrcweir #define	UNO3_REFERENCE									::com::sun::star::uno::Reference
68*cdf0e10cSrcweir #define	UNO3_RUNTIMEEXCEPTION							::com::sun::star::uno::RuntimeException
69*cdf0e10cSrcweir #define	UNO3_SEQUENCE									::com::sun::star::uno::Sequence
70*cdf0e10cSrcweir #define	UNO3_TYPE										::com::sun::star::uno::Type
71*cdf0e10cSrcweir #define	UNO3_WINDOWDESCRIPTOR                           ::com::sun::star::awt::WindowDescriptor
72*cdf0e10cSrcweir #define	UNO3_XCONNECTIONPOINT							::com::sun::star::lang::XConnectionPoint
73*cdf0e10cSrcweir #define	UNO3_XCONNECTIONPOINTCONTAINER					::com::sun::star::lang::XConnectionPointContainer
74*cdf0e10cSrcweir #define	UNO3_XCONTROLMODEL								::com::sun::star::awt::XControlModel
75*cdf0e10cSrcweir #define	UNO3_XFRAME										::com::sun::star::frame::XFrame
76*cdf0e10cSrcweir #define	UNO3_XGRAPHICS									::com::sun::star::awt::XGraphics
77*cdf0e10cSrcweir #define	UNO3_XINTERFACE									::com::sun::star::uno::XInterface
78*cdf0e10cSrcweir #define	UNO3_XMULTISERVICEFACTORY						::com::sun::star::lang::XMultiServiceFactory
79*cdf0e10cSrcweir #define	UNO3_XPROPERTYSETINFO							::com::sun::star::beans::XPropertySetInfo
80*cdf0e10cSrcweir #define	UNO3_XTOOLKIT									::com::sun::star::awt::XToolkit
81*cdf0e10cSrcweir #define	UNO3_XWINDOWPEER								::com::sun::star::awt::XWindowPeer
82*cdf0e10cSrcweir 
83*cdf0e10cSrcweir //______________________________________________________________________________________________________________
84*cdf0e10cSrcweir //	defines
85*cdf0e10cSrcweir //______________________________________________________________________________________________________________
86*cdf0e10cSrcweir 
87*cdf0e10cSrcweir #define	SERVICENAME_FRAMECONTROL						"com.sun.star.frame.FrameControl"
88*cdf0e10cSrcweir #define	IMPLEMENTATIONNAME_FRAMECONTROL					"stardiv.UnoControls.FrameControl"
89*cdf0e10cSrcweir #define	PROPERTYNAME_LOADERARGUMENTS					"LoaderArguments"
90*cdf0e10cSrcweir #define	PROPERTYNAME_COMPONENTURL						"ComponentURL"
91*cdf0e10cSrcweir #define	PROPERTYNAME_FRAME								"Frame"
92*cdf0e10cSrcweir #define	ERRORTEXT_VOSENSHURE							"This is an invalid property handle."
93*cdf0e10cSrcweir #define PROPERTY_COUNT									3                                       				// you must count the propertys
94*cdf0e10cSrcweir #define PROPERTYHANDLE_COMPONENTURL						0														// Id must be the index into the array
95*cdf0e10cSrcweir #define PROPERTYHANDLE_FRAME							1
96*cdf0e10cSrcweir #define PROPERTYHANDLE_LOADERARGUMENTS					2
97*cdf0e10cSrcweir 
98*cdf0e10cSrcweir //______________________________________________________________________________________________________________
99*cdf0e10cSrcweir //	class
100*cdf0e10cSrcweir //______________________________________________________________________________________________________________
101*cdf0e10cSrcweir 
102*cdf0e10cSrcweir class FrameControl	: public UNO3_XCONTROLMODEL
103*cdf0e10cSrcweir 					, public UNO3_XCONNECTIONPOINTCONTAINER
104*cdf0e10cSrcweir 					, public BaseControl								// This order is neccessary for right initialization of m_aMutex!
105*cdf0e10cSrcweir 					, public UNO3_OBROADCASTHELPER
106*cdf0e10cSrcweir 					, public UNO3_OPROPERTYSETHELPER
107*cdf0e10cSrcweir {
108*cdf0e10cSrcweir 
109*cdf0e10cSrcweir //______________________________________________________________________________________________________________
110*cdf0e10cSrcweir //	public methods
111*cdf0e10cSrcweir //______________________________________________________________________________________________________________
112*cdf0e10cSrcweir 
113*cdf0e10cSrcweir public:
114*cdf0e10cSrcweir 
115*cdf0e10cSrcweir 	//__________________________________________________________________________________________________________
116*cdf0e10cSrcweir 	//	construct/destruct
117*cdf0e10cSrcweir 	//__________________________________________________________________________________________________________
118*cdf0e10cSrcweir 
119*cdf0e10cSrcweir 	/**_________________________________________________________________________________________________________
120*cdf0e10cSrcweir 		@short
121*cdf0e10cSrcweir 		@descr
122*cdf0e10cSrcweir 
123*cdf0e10cSrcweir 		@seealso
124*cdf0e10cSrcweir 
125*cdf0e10cSrcweir 		@param
126*cdf0e10cSrcweir 
127*cdf0e10cSrcweir 		@return
128*cdf0e10cSrcweir 
129*cdf0e10cSrcweir 		@onerror
130*cdf0e10cSrcweir 	*/
131*cdf0e10cSrcweir 
132*cdf0e10cSrcweir 	FrameControl( const UNO3_REFERENCE< UNO3_XMULTISERVICEFACTORY >& xFactory );
133*cdf0e10cSrcweir 
134*cdf0e10cSrcweir 	/**_________________________________________________________________________________________________________
135*cdf0e10cSrcweir 		@short
136*cdf0e10cSrcweir 		@descr
137*cdf0e10cSrcweir 
138*cdf0e10cSrcweir 		@seealso
139*cdf0e10cSrcweir 
140*cdf0e10cSrcweir 		@param
141*cdf0e10cSrcweir 
142*cdf0e10cSrcweir 		@return
143*cdf0e10cSrcweir 
144*cdf0e10cSrcweir 		@onerror
145*cdf0e10cSrcweir 	*/
146*cdf0e10cSrcweir 
147*cdf0e10cSrcweir 	virtual	~FrameControl();
148*cdf0e10cSrcweir 
149*cdf0e10cSrcweir 	//__________________________________________________________________________________________________________
150*cdf0e10cSrcweir 	//	XInterface
151*cdf0e10cSrcweir 	//__________________________________________________________________________________________________________
152*cdf0e10cSrcweir 
153*cdf0e10cSrcweir 	/**_________________________________________________________________________________________________________
154*cdf0e10cSrcweir 		@short
155*cdf0e10cSrcweir 		@descr
156*cdf0e10cSrcweir 
157*cdf0e10cSrcweir 		@seealso
158*cdf0e10cSrcweir 
159*cdf0e10cSrcweir 		@param
160*cdf0e10cSrcweir 
161*cdf0e10cSrcweir 		@return
162*cdf0e10cSrcweir 
163*cdf0e10cSrcweir 		@onerror
164*cdf0e10cSrcweir 	*/
165*cdf0e10cSrcweir 
166*cdf0e10cSrcweir 	virtual UNO3_ANY SAL_CALL queryInterface( const UNO3_TYPE& aType ) throw( UNO3_RUNTIMEEXCEPTION );
167*cdf0e10cSrcweir 
168*cdf0e10cSrcweir 	/**_______________________________________________________________________________________________________
169*cdf0e10cSrcweir 		@short		increment refcount
170*cdf0e10cSrcweir 		@descr		-
171*cdf0e10cSrcweir 
172*cdf0e10cSrcweir 		@seealso	XInterface
173*cdf0e10cSrcweir 		@seealso	release()
174*cdf0e10cSrcweir 
175*cdf0e10cSrcweir 		@param		-
176*cdf0e10cSrcweir 
177*cdf0e10cSrcweir 		@return		-
178*cdf0e10cSrcweir 
179*cdf0e10cSrcweir 		@onerror	A RuntimeException is thrown.
180*cdf0e10cSrcweir 	*/
181*cdf0e10cSrcweir 
182*cdf0e10cSrcweir     virtual void SAL_CALL acquire() throw();
183*cdf0e10cSrcweir 
184*cdf0e10cSrcweir 	/**_______________________________________________________________________________________________________
185*cdf0e10cSrcweir 		@short		decrement refcount
186*cdf0e10cSrcweir 		@descr		-
187*cdf0e10cSrcweir 
188*cdf0e10cSrcweir 		@seealso	XInterface
189*cdf0e10cSrcweir 		@seealso	acquire()
190*cdf0e10cSrcweir 
191*cdf0e10cSrcweir 		@param		-
192*cdf0e10cSrcweir 
193*cdf0e10cSrcweir 		@return		-
194*cdf0e10cSrcweir 
195*cdf0e10cSrcweir 		@onerror	A RuntimeException is thrown.
196*cdf0e10cSrcweir 	*/
197*cdf0e10cSrcweir 
198*cdf0e10cSrcweir     virtual void SAL_CALL release() throw();
199*cdf0e10cSrcweir 
200*cdf0e10cSrcweir 	//__________________________________________________________________________________________________________
201*cdf0e10cSrcweir 	//	XTypeProvider
202*cdf0e10cSrcweir 	//__________________________________________________________________________________________________________
203*cdf0e10cSrcweir 
204*cdf0e10cSrcweir 	/**_________________________________________________________________________________________________________
205*cdf0e10cSrcweir 		@short
206*cdf0e10cSrcweir 		@descr
207*cdf0e10cSrcweir 
208*cdf0e10cSrcweir 		@seealso
209*cdf0e10cSrcweir 
210*cdf0e10cSrcweir 		@param
211*cdf0e10cSrcweir 
212*cdf0e10cSrcweir 		@return
213*cdf0e10cSrcweir 
214*cdf0e10cSrcweir 		@onerror
215*cdf0e10cSrcweir 	*/
216*cdf0e10cSrcweir 
217*cdf0e10cSrcweir 	virtual UNO3_SEQUENCE< UNO3_TYPE > SAL_CALL getTypes() throw( UNO3_RUNTIMEEXCEPTION );
218*cdf0e10cSrcweir 
219*cdf0e10cSrcweir 	//__________________________________________________________________________________________________________
220*cdf0e10cSrcweir 	//	XAggregation
221*cdf0e10cSrcweir 	//__________________________________________________________________________________________________________
222*cdf0e10cSrcweir 
223*cdf0e10cSrcweir 	/**_________________________________________________________________________________________________________
224*cdf0e10cSrcweir 		@short
225*cdf0e10cSrcweir 		@descr
226*cdf0e10cSrcweir 
227*cdf0e10cSrcweir 		@seealso
228*cdf0e10cSrcweir 
229*cdf0e10cSrcweir 		@param
230*cdf0e10cSrcweir 
231*cdf0e10cSrcweir 		@return
232*cdf0e10cSrcweir 
233*cdf0e10cSrcweir 		@onerror
234*cdf0e10cSrcweir 	*/
235*cdf0e10cSrcweir 
236*cdf0e10cSrcweir 	UNO3_ANY SAL_CALL queryAggregation( const UNO3_TYPE& aType ) throw( UNO3_RUNTIMEEXCEPTION );
237*cdf0e10cSrcweir 
238*cdf0e10cSrcweir 	//__________________________________________________________________________________________________________
239*cdf0e10cSrcweir 	//	XControl
240*cdf0e10cSrcweir 	//__________________________________________________________________________________________________________
241*cdf0e10cSrcweir 
242*cdf0e10cSrcweir 	/**_________________________________________________________________________________________________________
243*cdf0e10cSrcweir 		@short
244*cdf0e10cSrcweir 		@descr
245*cdf0e10cSrcweir 
246*cdf0e10cSrcweir 		@seealso
247*cdf0e10cSrcweir 
248*cdf0e10cSrcweir 		@param
249*cdf0e10cSrcweir 
250*cdf0e10cSrcweir 		@return
251*cdf0e10cSrcweir 
252*cdf0e10cSrcweir 		@onerror
253*cdf0e10cSrcweir 	*/
254*cdf0e10cSrcweir 
255*cdf0e10cSrcweir     virtual void SAL_CALL createPeer(	const	UNO3_REFERENCE< UNO3_XTOOLKIT >&	xToolkit	,
256*cdf0e10cSrcweir 										const	UNO3_REFERENCE< UNO3_XWINDOWPEER >&	xParent		) throw( UNO3_RUNTIMEEXCEPTION );
257*cdf0e10cSrcweir 
258*cdf0e10cSrcweir 	/**_________________________________________________________________________________________________________
259*cdf0e10cSrcweir 		@short
260*cdf0e10cSrcweir 		@descr
261*cdf0e10cSrcweir 
262*cdf0e10cSrcweir 		@seealso
263*cdf0e10cSrcweir 
264*cdf0e10cSrcweir 		@param
265*cdf0e10cSrcweir 
266*cdf0e10cSrcweir 		@return
267*cdf0e10cSrcweir 
268*cdf0e10cSrcweir 		@onerror
269*cdf0e10cSrcweir 	*/
270*cdf0e10cSrcweir 
271*cdf0e10cSrcweir     virtual sal_Bool SAL_CALL setModel( const UNO3_REFERENCE< UNO3_XCONTROLMODEL >& xModel ) throw( UNO3_RUNTIMEEXCEPTION );
272*cdf0e10cSrcweir 
273*cdf0e10cSrcweir 	/**_________________________________________________________________________________________________________
274*cdf0e10cSrcweir 		@short
275*cdf0e10cSrcweir 		@descr
276*cdf0e10cSrcweir 
277*cdf0e10cSrcweir 		@seealso
278*cdf0e10cSrcweir 
279*cdf0e10cSrcweir 		@param
280*cdf0e10cSrcweir 
281*cdf0e10cSrcweir 		@return
282*cdf0e10cSrcweir 
283*cdf0e10cSrcweir 		@onerror
284*cdf0e10cSrcweir 	*/
285*cdf0e10cSrcweir 
286*cdf0e10cSrcweir     virtual UNO3_REFERENCE< UNO3_XCONTROLMODEL > SAL_CALL getModel() throw( UNO3_RUNTIMEEXCEPTION );
287*cdf0e10cSrcweir 
288*cdf0e10cSrcweir 	//__________________________________________________________________________________________________________
289*cdf0e10cSrcweir     //	XComponent
290*cdf0e10cSrcweir 	//__________________________________________________________________________________________________________
291*cdf0e10cSrcweir 
292*cdf0e10cSrcweir 	/**_________________________________________________________________________________________________________
293*cdf0e10cSrcweir 		@short
294*cdf0e10cSrcweir 		@descr
295*cdf0e10cSrcweir 
296*cdf0e10cSrcweir 		@seealso
297*cdf0e10cSrcweir 
298*cdf0e10cSrcweir 		@param
299*cdf0e10cSrcweir 
300*cdf0e10cSrcweir 		@return
301*cdf0e10cSrcweir 
302*cdf0e10cSrcweir 		@onerror
303*cdf0e10cSrcweir 	*/
304*cdf0e10cSrcweir 
305*cdf0e10cSrcweir     virtual void SAL_CALL dispose() throw( UNO3_RUNTIMEEXCEPTION );
306*cdf0e10cSrcweir 
307*cdf0e10cSrcweir 	//__________________________________________________________________________________________________________
308*cdf0e10cSrcweir 	//	XView
309*cdf0e10cSrcweir 	//__________________________________________________________________________________________________________
310*cdf0e10cSrcweir 
311*cdf0e10cSrcweir 	/**_________________________________________________________________________________________________________
312*cdf0e10cSrcweir 		@short
313*cdf0e10cSrcweir 		@descr
314*cdf0e10cSrcweir 
315*cdf0e10cSrcweir 		@seealso
316*cdf0e10cSrcweir 
317*cdf0e10cSrcweir 		@param
318*cdf0e10cSrcweir 
319*cdf0e10cSrcweir 		@return
320*cdf0e10cSrcweir 
321*cdf0e10cSrcweir 		@onerror
322*cdf0e10cSrcweir 	*/
323*cdf0e10cSrcweir 
324*cdf0e10cSrcweir     virtual sal_Bool SAL_CALL setGraphics( const UNO3_REFERENCE< UNO3_XGRAPHICS >& xDevice ) throw( UNO3_RUNTIMEEXCEPTION );
325*cdf0e10cSrcweir 
326*cdf0e10cSrcweir 	/**_________________________________________________________________________________________________________
327*cdf0e10cSrcweir 		@short
328*cdf0e10cSrcweir 		@descr
329*cdf0e10cSrcweir 
330*cdf0e10cSrcweir 		@seealso
331*cdf0e10cSrcweir 
332*cdf0e10cSrcweir 		@param
333*cdf0e10cSrcweir 
334*cdf0e10cSrcweir 		@return
335*cdf0e10cSrcweir 
336*cdf0e10cSrcweir 		@onerror
337*cdf0e10cSrcweir 	*/
338*cdf0e10cSrcweir 
339*cdf0e10cSrcweir     virtual UNO3_REFERENCE< UNO3_XGRAPHICS > SAL_CALL getGraphics() throw( UNO3_RUNTIMEEXCEPTION );
340*cdf0e10cSrcweir 
341*cdf0e10cSrcweir 	//__________________________________________________________________________________________________________
342*cdf0e10cSrcweir 	//	XConnectionPointContainer
343*cdf0e10cSrcweir 	//__________________________________________________________________________________________________________
344*cdf0e10cSrcweir 
345*cdf0e10cSrcweir 	/**_________________________________________________________________________________________________________
346*cdf0e10cSrcweir 		@short
347*cdf0e10cSrcweir 		@descr
348*cdf0e10cSrcweir 
349*cdf0e10cSrcweir 		@seealso
350*cdf0e10cSrcweir 
351*cdf0e10cSrcweir 		@param
352*cdf0e10cSrcweir 
353*cdf0e10cSrcweir 		@return
354*cdf0e10cSrcweir 
355*cdf0e10cSrcweir 		@onerror
356*cdf0e10cSrcweir 	*/
357*cdf0e10cSrcweir 
358*cdf0e10cSrcweir 	virtual UNO3_SEQUENCE< UNO3_TYPE > SAL_CALL getConnectionPointTypes() throw( UNO3_RUNTIMEEXCEPTION );
359*cdf0e10cSrcweir 
360*cdf0e10cSrcweir 	/**_________________________________________________________________________________________________________
361*cdf0e10cSrcweir 		@short
362*cdf0e10cSrcweir 		@descr
363*cdf0e10cSrcweir 
364*cdf0e10cSrcweir 		@seealso
365*cdf0e10cSrcweir 
366*cdf0e10cSrcweir 		@param
367*cdf0e10cSrcweir 
368*cdf0e10cSrcweir 		@return
369*cdf0e10cSrcweir 
370*cdf0e10cSrcweir 		@onerror
371*cdf0e10cSrcweir 	*/
372*cdf0e10cSrcweir 
373*cdf0e10cSrcweir     virtual UNO3_REFERENCE< UNO3_XCONNECTIONPOINT > SAL_CALL queryConnectionPoint( const UNO3_TYPE& aType ) throw( UNO3_RUNTIMEEXCEPTION );
374*cdf0e10cSrcweir 
375*cdf0e10cSrcweir 	/**_________________________________________________________________________________________________________
376*cdf0e10cSrcweir 		@short
377*cdf0e10cSrcweir 		@descr
378*cdf0e10cSrcweir 
379*cdf0e10cSrcweir 		@seealso
380*cdf0e10cSrcweir 
381*cdf0e10cSrcweir 		@param
382*cdf0e10cSrcweir 
383*cdf0e10cSrcweir 		@return
384*cdf0e10cSrcweir 
385*cdf0e10cSrcweir 		@onerror
386*cdf0e10cSrcweir 	*/
387*cdf0e10cSrcweir 
388*cdf0e10cSrcweir     virtual void SAL_CALL advise(	const	UNO3_TYPE&							aType		,
389*cdf0e10cSrcweir 									const	UNO3_REFERENCE< UNO3_XINTERFACE >&	xListener	) throw( UNO3_RUNTIMEEXCEPTION );
390*cdf0e10cSrcweir 
391*cdf0e10cSrcweir 	/**_________________________________________________________________________________________________________
392*cdf0e10cSrcweir 		@short
393*cdf0e10cSrcweir 		@descr
394*cdf0e10cSrcweir 
395*cdf0e10cSrcweir 		@seealso
396*cdf0e10cSrcweir 
397*cdf0e10cSrcweir 		@param
398*cdf0e10cSrcweir 
399*cdf0e10cSrcweir 		@return
400*cdf0e10cSrcweir 
401*cdf0e10cSrcweir 		@onerror
402*cdf0e10cSrcweir 	*/
403*cdf0e10cSrcweir 
404*cdf0e10cSrcweir     virtual void SAL_CALL unadvise(	const	UNO3_TYPE&							aType		,
405*cdf0e10cSrcweir 									const	UNO3_REFERENCE< UNO3_XINTERFACE >&	xListener	) throw( UNO3_RUNTIMEEXCEPTION );
406*cdf0e10cSrcweir 
407*cdf0e10cSrcweir 	//__________________________________________________________________________________________________________
408*cdf0e10cSrcweir 	//	impl but public methods to register service!
409*cdf0e10cSrcweir 	//__________________________________________________________________________________________________________
410*cdf0e10cSrcweir 
411*cdf0e10cSrcweir 	/**_________________________________________________________________________________________________________
412*cdf0e10cSrcweir 		@short
413*cdf0e10cSrcweir 		@descr
414*cdf0e10cSrcweir 
415*cdf0e10cSrcweir 		@seealso
416*cdf0e10cSrcweir 
417*cdf0e10cSrcweir 		@param
418*cdf0e10cSrcweir 
419*cdf0e10cSrcweir 		@return
420*cdf0e10cSrcweir 
421*cdf0e10cSrcweir 		@onerror
422*cdf0e10cSrcweir 	*/
423*cdf0e10cSrcweir 
424*cdf0e10cSrcweir     static const UNO3_SEQUENCE< UNO3_OUSTRING > impl_getStaticSupportedServiceNames();
425*cdf0e10cSrcweir 
426*cdf0e10cSrcweir 	/**_________________________________________________________________________________________________________
427*cdf0e10cSrcweir 		@short
428*cdf0e10cSrcweir 		@descr
429*cdf0e10cSrcweir 
430*cdf0e10cSrcweir 		@seealso
431*cdf0e10cSrcweir 
432*cdf0e10cSrcweir 		@param
433*cdf0e10cSrcweir 
434*cdf0e10cSrcweir 		@return
435*cdf0e10cSrcweir 
436*cdf0e10cSrcweir 		@onerror
437*cdf0e10cSrcweir 	*/
438*cdf0e10cSrcweir 
439*cdf0e10cSrcweir     static const UNO3_OUSTRING impl_getStaticImplementationName();
440*cdf0e10cSrcweir 
441*cdf0e10cSrcweir //______________________________________________________________________________________________________________
442*cdf0e10cSrcweir //	protected methods
443*cdf0e10cSrcweir //______________________________________________________________________________________________________________
444*cdf0e10cSrcweir 
445*cdf0e10cSrcweir protected:
446*cdf0e10cSrcweir     using OPropertySetHelper::getFastPropertyValue;
447*cdf0e10cSrcweir 	//__________________________________________________________________________________________________________
448*cdf0e10cSrcweir 	//	OPropertySetHelper
449*cdf0e10cSrcweir 	//__________________________________________________________________________________________________________
450*cdf0e10cSrcweir 
451*cdf0e10cSrcweir 	/**_________________________________________________________________________________________________________
452*cdf0e10cSrcweir 		@short
453*cdf0e10cSrcweir 		@descr
454*cdf0e10cSrcweir 
455*cdf0e10cSrcweir 		@seealso
456*cdf0e10cSrcweir 
457*cdf0e10cSrcweir 		@param
458*cdf0e10cSrcweir 
459*cdf0e10cSrcweir 		@return
460*cdf0e10cSrcweir 
461*cdf0e10cSrcweir 		@onerror
462*cdf0e10cSrcweir 	*/
463*cdf0e10cSrcweir 
464*cdf0e10cSrcweir 	virtual sal_Bool SAL_CALL convertFastPropertyValue(			UNO3_ANY&	rConvertedValue	,
465*cdf0e10cSrcweir 																UNO3_ANY&	rOldValue		,
466*cdf0e10cSrcweir 																sal_Int32	nHandle			,
467*cdf0e10cSrcweir 														const	UNO3_ANY&	rValue			) throw( UNO3_ILLEGALARGUMENTEXCEPTION );
468*cdf0e10cSrcweir 
469*cdf0e10cSrcweir 	/**_________________________________________________________________________________________________________
470*cdf0e10cSrcweir 		@short
471*cdf0e10cSrcweir 		@descr
472*cdf0e10cSrcweir 
473*cdf0e10cSrcweir 		@seealso
474*cdf0e10cSrcweir 
475*cdf0e10cSrcweir 		@param
476*cdf0e10cSrcweir 
477*cdf0e10cSrcweir 		@return
478*cdf0e10cSrcweir 
479*cdf0e10cSrcweir 		@onerror
480*cdf0e10cSrcweir 	*/
481*cdf0e10cSrcweir 
482*cdf0e10cSrcweir 	virtual void SAL_CALL setFastPropertyValue_NoBroadcast(			sal_Int32	nHandle	,
483*cdf0e10cSrcweir 						  									const	UNO3_ANY&	rValue	) throw ( ::com::sun::star::uno::Exception );
484*cdf0e10cSrcweir 
485*cdf0e10cSrcweir 	/**_________________________________________________________________________________________________________
486*cdf0e10cSrcweir 		@short
487*cdf0e10cSrcweir 		@descr
488*cdf0e10cSrcweir 
489*cdf0e10cSrcweir 		@seealso
490*cdf0e10cSrcweir 
491*cdf0e10cSrcweir 		@param
492*cdf0e10cSrcweir 
493*cdf0e10cSrcweir 		@return
494*cdf0e10cSrcweir 
495*cdf0e10cSrcweir 		@onerror
496*cdf0e10cSrcweir 	*/
497*cdf0e10cSrcweir 
498*cdf0e10cSrcweir 	virtual void SAL_CALL getFastPropertyValue(	UNO3_ANY&	rValue	,
499*cdf0e10cSrcweir 						  						sal_Int32	nHandle	) const ;
500*cdf0e10cSrcweir 
501*cdf0e10cSrcweir 	/**_________________________________________________________________________________________________________
502*cdf0e10cSrcweir 		@short
503*cdf0e10cSrcweir 		@descr
504*cdf0e10cSrcweir 
505*cdf0e10cSrcweir 		@seealso
506*cdf0e10cSrcweir 
507*cdf0e10cSrcweir 		@param
508*cdf0e10cSrcweir 
509*cdf0e10cSrcweir 		@return
510*cdf0e10cSrcweir 
511*cdf0e10cSrcweir 		@onerror
512*cdf0e10cSrcweir 	*/
513*cdf0e10cSrcweir 
514*cdf0e10cSrcweir 	virtual UNO3_IPROPERTYARRAYHELPER& SAL_CALL getInfoHelper();
515*cdf0e10cSrcweir 
516*cdf0e10cSrcweir 	//__________________________________________________________________________________________________________
517*cdf0e10cSrcweir 	//	XPropertySet
518*cdf0e10cSrcweir 	//__________________________________________________________________________________________________________
519*cdf0e10cSrcweir 
520*cdf0e10cSrcweir 	/**_________________________________________________________________________________________________________
521*cdf0e10cSrcweir 		@short
522*cdf0e10cSrcweir 		@descr
523*cdf0e10cSrcweir 
524*cdf0e10cSrcweir 		@seealso
525*cdf0e10cSrcweir 
526*cdf0e10cSrcweir 		@param
527*cdf0e10cSrcweir 
528*cdf0e10cSrcweir 		@return
529*cdf0e10cSrcweir 
530*cdf0e10cSrcweir 		@onerror
531*cdf0e10cSrcweir 	*/
532*cdf0e10cSrcweir 
533*cdf0e10cSrcweir 	UNO3_REFERENCE< UNO3_XPROPERTYSETINFO > SAL_CALL getPropertySetInfo() throw( UNO3_RUNTIMEEXCEPTION );
534*cdf0e10cSrcweir 
535*cdf0e10cSrcweir 	//__________________________________________________________________________________________________________
536*cdf0e10cSrcweir 	//	BaseControl
537*cdf0e10cSrcweir 	//__________________________________________________________________________________________________________
538*cdf0e10cSrcweir 
539*cdf0e10cSrcweir 	/**_________________________________________________________________________________________________________
540*cdf0e10cSrcweir 		@short
541*cdf0e10cSrcweir 		@descr
542*cdf0e10cSrcweir 
543*cdf0e10cSrcweir 		@seealso
544*cdf0e10cSrcweir 
545*cdf0e10cSrcweir 		@param
546*cdf0e10cSrcweir 
547*cdf0e10cSrcweir 		@return
548*cdf0e10cSrcweir 
549*cdf0e10cSrcweir 		@onerror
550*cdf0e10cSrcweir 	*/
551*cdf0e10cSrcweir 
552*cdf0e10cSrcweir 	virtual UNO3_WINDOWDESCRIPTOR* impl_getWindowDescriptor( const UNO3_REFERENCE< UNO3_XWINDOWPEER >& xParentPeer );
553*cdf0e10cSrcweir 
554*cdf0e10cSrcweir //______________________________________________________________________________________________________________
555*cdf0e10cSrcweir //	private methods
556*cdf0e10cSrcweir //______________________________________________________________________________________________________________
557*cdf0e10cSrcweir 
558*cdf0e10cSrcweir private:
559*cdf0e10cSrcweir 
560*cdf0e10cSrcweir 	/**_________________________________________________________________________________________________________
561*cdf0e10cSrcweir 		@short
562*cdf0e10cSrcweir 		@descr
563*cdf0e10cSrcweir 
564*cdf0e10cSrcweir 		@seealso
565*cdf0e10cSrcweir 
566*cdf0e10cSrcweir 		@param
567*cdf0e10cSrcweir 
568*cdf0e10cSrcweir 		@return
569*cdf0e10cSrcweir 
570*cdf0e10cSrcweir 		@onerror
571*cdf0e10cSrcweir 	*/
572*cdf0e10cSrcweir 
573*cdf0e10cSrcweir 	void impl_createFrame(	const	UNO3_REFERENCE< UNO3_XWINDOWPEER >&		xPeer			,
574*cdf0e10cSrcweir 							const	UNO3_OUSTRING&							sURL			,
575*cdf0e10cSrcweir 							const	UNO3_SEQUENCE< UNO3_PROPERTYVALUE >&	seqArguments	);
576*cdf0e10cSrcweir 
577*cdf0e10cSrcweir 	/**_________________________________________________________________________________________________________
578*cdf0e10cSrcweir 		@short
579*cdf0e10cSrcweir 		@descr
580*cdf0e10cSrcweir 
581*cdf0e10cSrcweir 		@seealso
582*cdf0e10cSrcweir 
583*cdf0e10cSrcweir 		@param
584*cdf0e10cSrcweir 
585*cdf0e10cSrcweir 		@return
586*cdf0e10cSrcweir 
587*cdf0e10cSrcweir 		@onerror
588*cdf0e10cSrcweir 	*/
589*cdf0e10cSrcweir 
590*cdf0e10cSrcweir     void impl_deleteFrame();
591*cdf0e10cSrcweir 
592*cdf0e10cSrcweir 	/**_________________________________________________________________________________________________________
593*cdf0e10cSrcweir 		@short
594*cdf0e10cSrcweir 		@descr
595*cdf0e10cSrcweir 
596*cdf0e10cSrcweir 		@seealso
597*cdf0e10cSrcweir 
598*cdf0e10cSrcweir 		@param
599*cdf0e10cSrcweir 
600*cdf0e10cSrcweir 		@return
601*cdf0e10cSrcweir 
602*cdf0e10cSrcweir 		@onerror
603*cdf0e10cSrcweir 	*/
604*cdf0e10cSrcweir 
605*cdf0e10cSrcweir 	static const UNO3_SEQUENCE< UNO3_PROPERTY > impl_getStaticPropertyDescriptor();
606*cdf0e10cSrcweir 
607*cdf0e10cSrcweir 
608*cdf0e10cSrcweir //______________________________________________________________________________________________________________
609*cdf0e10cSrcweir //	private variables
610*cdf0e10cSrcweir //______________________________________________________________________________________________________________
611*cdf0e10cSrcweir 
612*cdf0e10cSrcweir private:
613*cdf0e10cSrcweir 
614*cdf0e10cSrcweir 	UNO3_REFERENCE< UNO3_XFRAME >				m_xFrame					;
615*cdf0e10cSrcweir 	UNO3_OUSTRING								m_sComponentURL				;
616*cdf0e10cSrcweir 	UNO3_SEQUENCE< UNO3_PROPERTYVALUE >			m_seqLoaderArguments		;
617*cdf0e10cSrcweir 	UNO3_OMULTITYPEINTERFACECONTAINERHELPER		m_aInterfaceContainer		;
618*cdf0e10cSrcweir 	UNO3_OCONNECTIONPOINTCONTAINERHELPER		m_aConnectionPointContainer	;
619*cdf0e10cSrcweir 
620*cdf0e10cSrcweir };	// class FrameControl
621*cdf0e10cSrcweir 
622*cdf0e10cSrcweir }	// namespace unocontrols
623*cdf0e10cSrcweir 
624*cdf0e10cSrcweir #endif	// #ifndef _UNOCONTROLS_FRAMECONTROL_CTRL_HXX
625