merge the formfield patch from ooo-build
[ooovba.git] / offapi / com / sun / star / frame / Controller.idl
blob28730a34d774688c408aadda82c5a12f492b58e1
1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: Controller.idl,v $
10 * $Revision: 1.13 $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
30 #ifndef __com_sun_star_frame_Controller_idl__
31 #define __com_sun_star_frame_Controller_idl__
33 #ifndef __com_sun_star_frame_XController_idl__
34 #include <com/sun/star/frame/XController.idl>
35 #endif
37 #ifndef __com_sun_star_frame_XDispatchProvider_idl__
38 #include <com/sun/star/frame/XDispatchProvider.idl>
39 #endif
41 #ifndef __com_sun_star_awt_XWindow_idl__
42 #include <com/sun/star/awt/XWindow.idl>
43 #endif
45 #ifndef __com_sun_star_ui_XContextMenuInterception_idl__
46 #include <com/sun/star/ui/XContextMenuInterception.idl>
47 #endif
49 #ifndef __com_sun_star_awt_XUserInputInterception_idl__
50 #include <com/sun/star/awt/XUserInputInterception.idl>
51 #endif
53 #ifndef __com_sun_star_view_XSelectionSupplier_idl__
54 #include <com/sun/star/view/XSelectionSupplier.idl>
55 #endif
57 #ifndef __com_sun_star_datatransfer_XTransferableSupplier_idl__
58 #include <com/sun/star/datatransfer/XTransferableSupplier.idl>
59 #endif
61 //=============================================================================
63 module com { module sun { module star { module frame {
65 //=============================================================================
66 /** is an abstract service for a component which offers a deeper integration of
67 desktop components than a <type scope="com::sun::star::awt">XWindow</type>
68 can offer
70 <p>
71 Such components can be loaded into a <type>Frame</type> inside a <type>Desktop</type>
72 environment. A controller is a richer component then a pure window, but full featured
73 components need a <type>XModel</type> interface too.
74 <br>
75 (see service <type scope="com::sun::star::document">OfficeDocument</type> for further information)
76 <p>
78 @see com::sun::star::document::OfficeDocument
80 published service Controller
82 //-------------------------------------------------------------------------
83 /** with this interface, components viewed in a <type>Frame</type> can serve
84 events (by supplying dispatches)
86 interface XController;
88 //-------------------------------------------------------------------------
89 /** for certain functions which are useful at the UI
91 <p>
92 Mostly used by the <type>Frame</type> service, which contains this
93 controller object. There will be an interception mechanism for dispatches
94 available too.
95 </p>
97 @see XDispatch
98 @see XDispatchProviderInterception
100 interface XDispatchProvider;
102 //-------------------------------------------------------------------------
103 /** this interface enables the controller to get interceptors registered that
104 change context menue or prevent them from beeing executed
107 Don't mix it with <type>XDispatchProviderInterception</type> which
108 intercept calls of <member>XDispatch::dispatch()</member>.
109 </p>
111 [optional] interface com::sun::star::ui::XContextMenuInterception;
113 //-------------------------------------------------------------------------
114 /** makes it possible to intercept keyboard and mouse input.
116 [optional] interface com::sun::star::awt::XUserInputInterception;
118 //-------------------------------------------------------------------------
119 /** makes it possible to access and change the selection in a view
121 [optional] interface com::sun::star::view::XSelectionSupplier;
123 //-------------------------------------------------------------------------
124 /** makes it possible to work with clipboard data
126 [optional] interface com::sun::star::datatransfer::XTransferableSupplier;
129 //=============================================================================
131 }; }; }; };
133 #endif