| /************************************************************** | 
 |  *  | 
 |  * 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 | 
 |  *  | 
 |  * Unless required by applicable law or agreed to in writing, | 
 |  * software distributed under the License is distributed on an | 
 |  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY | 
 |  * KIND, either express or implied.  See the License for the | 
 |  * specific language governing permissions and limitations | 
 |  * under the License. | 
 |  *  | 
 |  *************************************************************/ | 
 |  | 
 |  | 
 |  | 
 | #ifndef __com_sun_star_ui_XUIConfiguration_idl__ | 
 | #define __com_sun_star_ui_XUIConfiguration_idl__ | 
 |  | 
 | #ifndef __com_sun_star_ui_XUIConfigurationListener_idl__ | 
 | #include <com/sun/star/ui/XUIConfigurationListener.idl> | 
 | #endif | 
 |  | 
 | module com { module sun { module star { module ui { | 
 |  | 
 | /** supports to notify other implementations about changes of a user | 
 |     interface configuration manager. | 
 |  | 
 |     <p> | 
 |     The <type>XUIConfiguration</type> interface is provided for user | 
 |     interface configuration managers which need to broadcast changes | 
 |     within the container; that means the actions of adding, replacing | 
 |     and removing elements are broadcast to listeners. | 
 |     </p> | 
 |  | 
 |     <p>This can be useful for UI to enable/disable some functions without | 
 |     actually accessing the data.</p> | 
 |  | 
 |     @since OOo 2.0 | 
 | */ | 
 |  | 
 | published interface XUIConfiguration : ::com::sun::star::uno::XInterface | 
 | { | 
 |     /** adds the specified listener to receive events when elements are | 
 |         changed, inserted or removed. | 
 |  | 
 |         <p> | 
 |         It is suggested to allow multiple registration of the same | 
 |         listener, thus for each time a listener is added, it has to be | 
 |         removed. | 
 |  | 
 |         @see XUIConfigurationListener | 
 |         </p> | 
 |     */ | 
 |     void addConfigurationListener( [in] ::com::sun::star::ui::XUIConfigurationListener Listener ); | 
 |  | 
 |     /** removes the specified listener so it does not receive any events | 
 |         from this user interface configuration manager. | 
 |  | 
 |         <p>It is suggested to allow multiple registration of the same | 
 |         listener, thus for each time a listener is added, it has to be | 
 |         removed. | 
 |  | 
 |         @see XUIConfigurationListener | 
 |         </p> | 
 |      */ | 
 |     void removeConfigurationListener( [in] ::com::sun::star::ui::XUIConfigurationListener Listener ); | 
 | }; | 
 |  | 
 | //============================================================================= | 
 |  | 
 | }; }; }; }; | 
 |  | 
 | #endif |