1d1766043SAndrew Rist/**************************************************************
2*4f7439aaSmseidel *
3d1766043SAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one
4d1766043SAndrew Rist * or more contributor license agreements.  See the NOTICE file
5d1766043SAndrew Rist * distributed with this work for additional information
6d1766043SAndrew Rist * regarding copyright ownership.  The ASF licenses this file
7d1766043SAndrew Rist * to you under the Apache License, Version 2.0 (the
8d1766043SAndrew Rist * "License"); you may not use this file except in compliance
9d1766043SAndrew Rist * with the License.  You may obtain a copy of the License at
10*4f7439aaSmseidel *
11d1766043SAndrew Rist *   http://www.apache.org/licenses/LICENSE-2.0
12*4f7439aaSmseidel *
13d1766043SAndrew Rist * Unless required by applicable law or agreed to in writing,
14d1766043SAndrew Rist * software distributed under the License is distributed on an
15d1766043SAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16d1766043SAndrew Rist * KIND, either express or implied.  See the License for the
17d1766043SAndrew Rist * specific language governing permissions and limitations
18d1766043SAndrew Rist * under the License.
19*4f7439aaSmseidel *
20d1766043SAndrew Rist *************************************************************/
21d1766043SAndrew Rist
22d1766043SAndrew Rist
23cdf0e10cSrcweir
24cdf0e10cSrcweir#ifndef __com_sun_star_embed_DocumentCloser_idl__
25cdf0e10cSrcweir#define __com_sun_star_embed_DocumentCloser_idl__
26cdf0e10cSrcweir
27cdf0e10cSrcweir#ifndef __com_sun_star_lang_XComponent_idl__
28cdf0e10cSrcweir#include <com/sun/star/lang/XComponent.idl>
29cdf0e10cSrcweir#endif
30cdf0e10cSrcweir#ifndef __com_sun_star_uno_XInterface_idl__
31cdf0e10cSrcweir#include <com/sun/star/uno/XInterface.idl>
32cdf0e10cSrcweir#endif
33cdf0e10cSrcweir#ifndef __com_sun_star_frame_XFrame_idl__
34cdf0e10cSrcweir#include <com/sun/star/frame/XFrame.idl>
35cdf0e10cSrcweir#endif
36cdf0e10cSrcweir#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
37cdf0e10cSrcweir#include <com/sun/star/lang/IllegalArgumentException.idl>
38cdf0e10cSrcweir#endif
39cdf0e10cSrcweir#ifndef __com_sun_star_frame_DoubleInitializationException_idl__
40cdf0e10cSrcweir#include <com/sun/star/frame/DoubleInitializationException.idl>
41cdf0e10cSrcweir#endif
42cdf0e10cSrcweir
43cdf0e10cSrcweir//=============================================================================
44*4f7439aaSmseidelmodule com { module sun { module star { module embed {
45cdf0e10cSrcweir
46cdf0e10cSrcweir//-----------------------------------------------------------------------------
47cdf0e10cSrcweir/** The main task of this service is to close an office document frame embedded
48cdf0e10cSrcweir	in an application running in another process correctly.
49*4f7439aaSmseidel
50cdf0e10cSrcweir	<p>
51cdf0e10cSrcweir	The usual usage of this service is to create it, initialize with document
52cdf0e10cSrcweir	frame, and to dispose the service. While disposing the service will do all
53cdf0e10cSrcweir	the required actions to let the frame be closed using
54cdf0e10cSrcweir	<type scope="com::sun::star::util">XCloseable</type>::close( true ). Thus
55cdf0e10cSrcweir	in case there is a code that prevents closing of the frame the code
56*4f7439aaSmseidel	automatically becomes the owner of the frame.
57cdf0e10cSrcweir	</p>
58cdf0e10cSrcweir
59cdf0e10cSrcweir	<p>
60cdf0e10cSrcweir	In addition the code will disconnect the VCL window the frame is based on
61cdf0e10cSrcweir	from the container system window.
62cdf0e10cSrcweir	</p>
63cdf0e10cSrcweir*/
64cdf0e10cSrcweirpublished service DocumentCloser : com::sun::star::lang::XComponent
65cdf0e10cSrcweir{
66*4f7439aaSmseidel	/** is used to initialize the object on its creation.
67cdf0e10cSrcweir
68cdf0e10cSrcweir		@param xFrame
69cdf0e10cSrcweir				the frame of the document that should be closed.
70cdf0e10cSrcweir
71cdf0e10cSrcweir	 */
72cdf0e10cSrcweir	DocumentCloserCtor1( [in] com::sun::star::frame::XFrame xFrame )
73cdf0e10cSrcweir		raises( ::com::sun::star::lang::IllegalArgumentException,
74cdf0e10cSrcweir				::com::sun::star::frame::DoubleInitializationException,
75cdf0e10cSrcweir				::com::sun::star::uno::Exception );
76cdf0e10cSrcweir
77cdf0e10cSrcweir};
78cdf0e10cSrcweir
79cdf0e10cSrcweir//=============================================================================
80cdf0e10cSrcweir
81cdf0e10cSrcweir}; }; }; };
82cdf0e10cSrcweir
83cdf0e10cSrcweir#endif
84cdf0e10cSrcweir
85