update dev300-m58
[ooovba.git] / offapi / com / sun / star / ui / XUIConfigurationPersistence.idl
blobc0b33e63fdcd473f134ec41fe5ed01d2c1f6b3a7
1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: XUIConfigurationPersistence.idl,v $
10 * $Revision: 1.4 $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
31 #ifndef __com_sun_star_ui_XUIConfigurationPersistence_idl__
32 #define __com_sun_star_ui_XUIConfigurationPersistence_idl__
34 #ifndef __com_sun_star_embed_XStorage_idl__
35 #include <com/sun/star/embed/XStorage.idl>
36 #endif
38 module com { module sun { module star { module ui {
40 /** specifies a persistence interface which supports to load/store user
41 interface configuration data to a storage and to retrieve information
42 about the current state.
44 @since OOo 2.0.0
47 interface XUIConfigurationPersistence : ::com::sun::star::uno::XInterface
49 /** reloads the configuration data from the storage and reinitialize
50 the user interface configuration manager instance with this data.
52 <p>
53 It is up to the implementation if it defers the first loading process
54 until the first data request using <type>XUIConfigurationManager</type>
55 interface.
56 </p>
58 void reload() raises ( ::com::sun::star::uno::Exception );
60 /** stores the configuration data to the storage provided by
61 <member>setStorage</member> from the storage and initialize the
62 user interface configuration manager instance with the newly
63 data. This call can throw an
64 <type scope="com::sun::star::io">IOException</type> if
65 <member>store</member> cannot store its data into the internal
66 storage.
68 void store() raises ( ::com::sun::star::uno::Exception );
70 /** stores the configuration data to the provided storage, ignoring
71 the previously set storage by <member>setStorage</member>. Can
72 be used to make copy of the current user interface configuration
73 data to another storage. This call will throw an
74 <type scope="com::sun::star::io">IOException</type> if the provided
75 storage is in read-only mode.
77 @param Storage
78 all configuration data will be stored to this storage.
80 void storeToStorage( [in] ::com::sun::star::embed::XStorage Storage ) raises ( ::com::sun::star::uno::Exception );
82 /** provides the current modify state of the configuration manager
83 instance.
85 @return
86 <TRUE/> if the configuration manager has changed since the
87 last <member>store</member> call. <FALSE/> if the configuration
88 manager has not been changed.
90 boolean isModified();
92 /** provides the current read-only state of the user configuration
93 manager. Storing a user interface configuration to a read-only storage
94 is not possible. A read-only configuration manager instance will also
95 not support any changes to its configuration settings.
97 @return
98 <TRUE/> if the configuration manager storage is read-only otherwise
99 <FALSE/>.
101 boolean isReadOnly();
104 //=============================================================================
106 }; }; }; };
108 #endif