merged tag ooo/OOO330_m14
[LibreOffice.git] / offapi / com / sun / star / ui / UIElementSettings.idl
blob575ff9ca1d71a3d8039f82049ace23bbe799ab9a
1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 * Copyright 2000, 2010 Oracle and/or its affiliates.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * This file is part of OpenOffice.org.
11 * OpenOffice.org is free software: you can redistribute it and/or modify
12 * it under the terms of the GNU Lesser General Public License version 3
13 * only, as published by the Free Software Foundation.
15 * OpenOffice.org is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 * GNU Lesser General Public License version 3 for more details
19 * (a copy is included in the LICENSE file that accompanied this code).
21 * You should have received a copy of the GNU Lesser General Public License
22 * version 3 along with OpenOffice.org. If not, see
23 * <http://www.openoffice.org/license.html>
24 * for a copy of the LGPLv3 License.
26 ************************************************************************/
28 #ifndef __com_sun_star_ui_UIElementSettings_idl__
29 #define __com_sun_star_ui_UIElementSettings_idl__
31 #ifndef __com_sun_star_container_XIndexAccess_idl__
32 #include <com/sun/star/container/XIndexAccess.idl>
33 #endif
35 #ifndef __com_sun_star_lang_XSingleComponentFactory_idl__
36 #include <com/sun/star/lang/XSingleComponentFactory.idl>
37 #endif
39 //=============================================================================
41 module com { module sun { module star { module ui {
43 //=============================================================================
45 /**
46 describes the internal structure of a configurable user interface element.
48 <p>
49 No assumption is made about any graphical representation:
50 You could have a menu or a toolbar working with the same UIElementSettings
51 although limitations based on the real user interface element may be visible.
52 </p>
54 @since OOo 2.0.0
56 service UIElementSettings
58 /** provides access to the structure of the user interface element.
60 <p>
61 The container contains the items of the user interface element. Every
62 item is stored as a sequence of <type scope="com::sun::star::beans">PropertyValue</type>.
63 The properties insides the sequence are defined by the service <type scope="com::sun::star::ui">ItemDescriptor</type>.
64 It depends on the function which provides these service if the container is shareable read-only or exclusive writeable.
66 @see com::sun::star::ui::ItemDescriptor
67 @see com::sun::star::ui::ItemType
68 @see com::sun::star::ui::ItemStyle
69 </p>
71 interface ::com::sun::star::container::XIndexAccess;
74 /** provides access to an optional factory interface to create sub container.
76 <p>
77 The factory should be used to create sub container within this user interface element settings. This interface is only
78 available if the container is exclusive writable.
79 </p>
81 [optional] interface ::com::sun::star::lang::XSingleComponentFactory;
83 /** determine an optional user interface name of the user interface element.
85 <p>
86 A toolbar can show a its user interface name on the window title, when it is in floating mode.
87 </p>
89 [optional, property] string UIName;
92 }; }; }; };
94 #endif