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#ifndef __com_sun_star_ui_ModuleUIConfigurationManager_idl__ 24#define __com_sun_star_ui_ModuleUIConfigurationManager_idl__ 25 26#ifndef __com_sun_star_lang_XInitialization_idl__ 27#include <com/sun/star/lang/XInitialization.idl> 28#endif 29 30#ifndef __com_sun_star_ui_XUIConfigurationManager_idl__ 31#include <com/sun/star/ui/XUIConfigurationManager.idl> 32#endif 33 34#ifndef __com_sun_star_ui_XUIConfigurationPersistence_idl__ 35#include <com/sun/star/ui/XUIConfigurationPersistence.idl> 36#endif 37 38#ifndef __com_sun_star_ui_XModuleUIConfigurationManager_idl__ 39#include <com/sun/star/ui/XModuleUIConfigurationManager.idl> 40#endif 41 42#ifndef __com_sun_star_ui_XUIConfiguration_idl__ 43#include <com/sun/star/ui/XUIConfiguration.idl> 44#endif 45 46module com { module sun { module star { module ui { 47 48/** specifies a user interface configuration manager which gives access to user interface 49 configuration data of a module. 50 51 <p> 52 A module user interface configuratio manager supports two layers of configuration settings 53 data:<br/> 54 1. Layer: A module default user interface configuration which describe all user interface 55 elements settings that are used by OpenOffice. It is not possible to insert, remove or change 56 elements settings in this layer through the interfaces.</br> 57 2. Layer: A module user interface configuration which only contains customized user interface 58 elements and user-defined ones. All changes on user interface element settings are done on 59 this layer.</br> 60 </p> 61 62 @since OpenOffice 2.0 63*/ 64 65service ModuleUIConfigurationManager 66{ 67 /** provides a function to initialize a module user interface configuration manager instance. 68 69 <p> 70 A module user interface configuration manager instance needs the following arguments as 71 <type scope="com::sun::star::beans">PropertyValue</type> to be in a working state: 72 <ul> 73 <li><b>DefaultConfigStorage</b>a reference to a <type scope="com::sun::star::embed">Storage</type> that 74 contains the default module user interface configuration settings.</li> 75 <li><b>UserConfigStorage</b>a reference to a <type scope="com::sun::star::embed">Storage</type> that 76 contains the user-defined module user interface configuration settings.</li> 77 <li><b>ModuleIdentifier</b>string that provides the module identifier.</li> 78 <li><b>UserRootCommit</b>a reference to a <type scope="com::sun::star::embed">XTransactedObject</type> which 79 represents the customizable root storage. Every implementation must use this reference to commit its 80 changes also at the root storage.</li> 81 </ul> 82 A non-initialized module user interface configuration manager cannot be used, it is treated 83 as a read-only container. 84 </p> 85 */ 86 interface com::sun::star::lang::XInitialization; 87 88 /** provides access to persistence functions to load/store user interface element 89 settings from/to a module storage. 90 */ 91 interface com::sun::star::ui::XUIConfigurationPersistence; 92 93 /** provides functions to change, insert and remove user interface element settings 94 from a module user interface configuration manager. 95 */ 96 interface com::sun::star::ui::XUIConfigurationManager; 97 98 /** provides access to the default layer of a module based ui configuration 99 manager. 100 */ 101 interface com::sun::star::ui::XModuleUIConfigurationManager; 102 103 /** provides functions to add and remove listeners for changes within a module user 104 interface configuration manager. 105 */ 106 interface com::sun::star::ui::XUIConfiguration; 107}; 108 109//============================================================================= 110 111}; }; }; }; 112 113#endif 114