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#ifndef __com_sun_star_ui_UIElementSettings_idl__ 25#define __com_sun_star_ui_UIElementSettings_idl__ 26 27#ifndef __com_sun_star_container_XIndexAccess_idl__ 28#include <com/sun/star/container/XIndexAccess.idl> 29#endif 30 31#ifndef __com_sun_star_lang_XSingleComponentFactory_idl__ 32#include <com/sun/star/lang/XSingleComponentFactory.idl> 33#endif 34 35//============================================================================= 36 37module com { module sun { module star { module ui { 38 39//============================================================================= 40 41/** 42 describes the internal structure of a configurable user interface element. 43 44 <p> 45 No assumption is made about any graphical representation: 46 You could have a menu or a toolbar working with the same UIElementSettings 47 although limitations based on the real user interface element may be visible. 48 </p> 49 50 @since OOo 2.0 51*/ 52service UIElementSettings 53{ 54 /** provides access to the structure of the user interface element. 55 56 <p> 57 The container contains the items of the user interface element. Every 58 item is stored as a sequence of <type scope="com::sun::star::beans">PropertyValue</type>. 59 The properties insides the sequence are defined by the service <type scope="com::sun::star::ui">ItemDescriptor</type>. 60 It depends on the function which provides these service if the container is shareable read-only or exclusive writeable. 61 62 @see com::sun::star::ui::ItemDescriptor 63 @see com::sun::star::ui::ItemType 64 @see com::sun::star::ui::ItemStyle 65 </p> 66 */ 67 interface ::com::sun::star::container::XIndexAccess; 68 69 70 /** provides access to an optional factory interface to create sub container. 71 72 <p> 73 The factory should be used to create sub container within this user interface element settings. This interface is only 74 available if the container is exclusive writable. 75 </p> 76 */ 77 [optional] interface ::com::sun::star::lang::XSingleComponentFactory; 78 79 /** determine an optional user interface name of the user interface element. 80 81 <p> 82 A toolbar can show a its user interface name on the window title, when it is in floating mode. 83 </p> 84 */ 85 [optional, property] string UIName; 86}; 87 88}; }; }; }; 89 90#endif 91