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