blob: 4a99eb0d96ea0d7515ecc5c09c724a6f57bb8fbb (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
|
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/*
* This file is part of the LibreOffice project.
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* This file incorporates work covered by the following license notice:
*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed
* with this work for additional information regarding copyright
* ownership. The ASF licenses this file to you under the Apache
* License, Version 2.0 (the "License"); you may not use this file
* except in compliance with the License. You may obtain a copy of
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
#ifndef __com_sun_star_frame_SynchronousFrameLoader_idl__
#define __com_sun_star_frame_SynchronousFrameLoader_idl__
#include <com/sun/star/frame/XSynchronousFrameLoader.idl>
#include <com/sun/star/lang/XInitialization.idl>
#include <com/sun/star/container/XNamed.idl>
module com { module sun { module star { module frame {
/** derivations of this abstract service are used to load components
into Frames of the environment
<p>
Concrete implementations of this service register, for example,
for file name extensions or MIME types to load appropriate
components. The components loaded are at least Controller.
Instead of service FrameLoader this one use synchronous
processes to load the component.
</p>
@see FrameLoader
*/
published service SynchronousFrameLoader
{
/** support synchronous loading of component
*/
interface XSynchronousFrameLoader;
/** support initialization of loader with its own configuration!
<p>
Concrete implementations should use it to get her own configuration data
directly after creation by the FrameLoaderFactory.
Otherwise they must use normal configuration API to do so.
</p>
*/
[optional] interface com::sun::star::lang::XInitialization;
/** provides access to the internal name of this frame loader
<p>
The internal name is a part of his configuration and will be passed by
the FrameLoaderFactory after creation
if optional interface com::sun::star::lang::XInitialization
is supported. Value of function com::sun::star::container::XNamed::getName() can be
used on service FrameLoaderFactory to get further information about this loader.
Setting of this name by calling com::sun::star::container::XNamed::setName() must be
forwarded to same factory service. He should decide, if it's allowed or not.
The reason: prevent code against name ambiguities.
</p>
*/
[optional] interface com::sun::star::container::XNamed;
};
}; }; }; };
#endif
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
|