1/**************************************************************
2 *
3 * Licensed to the Apache Software Foundation (ASF) under one
4 * or more contributor license agreements.  See the NOTICE file
5 * distributed with this work for additional information
6 * regarding copyright ownership.  The ASF licenses this file
7 * to you under the Apache License, Version 2.0 (the
8 * "License"); you may not use this file except in compliance
9 * with the License.  You may obtain a copy of the License at
10 *
11 *   http://www.apache.org/licenses/LICENSE-2.0
12 *
13 * Unless required by applicable law or agreed to in writing,
14 * software distributed under the License is distributed on an
15 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16 * KIND, either express or implied.  See the License for the
17 * specific language governing permissions and limitations
18 * under the License.
19 *
20 *************************************************************/
21
22
23
24
25#ifndef __com_sun_star_sdb_ContentLoader_idl__
26#define __com_sun_star_sdb_ContentLoader_idl__
27
28#ifndef __com_sun_star_frame_Frame_idl__
29#include <com/sun/star/frame/FrameLoader.idl>
30#endif
31
32module com {  module sun {  module star {  module sdb {
33
34//=============================================================================
35/** implements a loader for various datasource-related user interface components.
36
37	<p>Usually, you don't deal with this loader directly. Instead, use an instance with
38    the <type scope="com::sun::star::frame">XComponentLoader</type> interface, and pass
39    one of the below-mentioned URLs to it.</p>
40
41	@see com::sun::star::frame::XComponentLoader
42	@see com::sun::star::frame::Desktop
43*/
44published service ContentLoader
45{
46	/** ensures the basic functionality.
47
48		<p>
49		Supporting this service ensures that you can plug any of the components
50		the loader can create into an arbitrary frame.
51		</p>
52
53		The loader should be registered for the URL scheme
54		<b>
55		.component:DB/ *
56		</b>
57		, the concrete URLs supported are:
58		<ul>
59			<li><b>.component:DB/DataSourceBrowser</b><br/>
60				Using this URL creates an instance of the
61				<type scope="com::sun::star::sdb">DataSourceBrowser</type>
62				service and plugs it into the frame passed to the loader.
63			</li>
64			<li><b>.component:DB/FormGridView</b><br/>
65				Using this URL creates an instance of the
66				<type scope="com::sun::star::sdb">ExternalSourceBrowser</type>
67				service and plugs it into the frame passed to the loader.
68			</li>
69			<li><b>.component:DB/QueryDesign</b><br/>
70				Using this URL creates an instance of the
71				<type scope="com::sun::star::sdb">QueryDesign</type>
72				service and plugs it into the frame passed to the loader.
73			</li>
74			<li><b>.component:DB/TableDesign</b><br/>
75				Using this URL creates an instance of the
76				<type scope="com::sun::star::sdb">TableDesign</type>
77				service and plugs it into the frame passed to the loader.
78			</li>
79			<li><b>.component:DB/RelationDesign</b><br/>
80				Using this URL creates an instance of the
81				<type scope="com::sun::star::sdb">RelationDesign</type>
82				service and plugs it into the frame passed to the loader.
83			</li>
84		</ul>
85
86		The parameters passed to the
87		<member scope="com::sun::star::frame">XFrameLoader::load()</member>
88		are forwarded to the object being created,
89		in particular to its
90		<type scope="com::sun::star::lang">XInitialization</type>
91		interface.
92	**/
93	service com::sun::star::frame::FrameLoader;
94};
95
96//=============================================================================
97}; }; }; };
98
99#endif
100