diff options
author | Stephan Bergmann <sbergman@redhat.com> | 2012-07-25 18:54:38 +0200 |
---|---|---|
committer | Stephan Bergmann <sbergman@redhat.com> | 2012-07-25 19:10:19 +0200 |
commit | cf7c9599e776eba8e14614cecb528d3da5778190 (patch) | |
tree | b71a0f46f1975e298197eac6d70a186b3048ada2 /offapi/com/sun | |
parent | 3605cb216faab6659f4bf90e76d9387df3ac08f6 (diff) |
Make comphelper/configuration.hxx work for localized properties
See aebf5bf22304c73e121b16dc0b51f909c5f34c28 "fdo#52232 ConfigurationSet wrapper
unusable for localized properties" for a discussion of the problems with the
original design.
1 Redesigned configmgr's localized property access to understand ['*<locale>']
paths that select the best existing value match for the requested <locale>.
Adapted ConfigurationWrapper::getLocalizedPropertyValue accordingly.
2 Redesigned ConfigurationChanges to fix the locale at instantiation time.
That takes care of ConfigurationWrapper::setLocalizedPropertyValue,
ConfigurationWrapper::getGroupReadWrite, and
ConfigurationWrapper::getSetReadWrite. (This required an additional constructor
parameter for the ReadWriteAccess service, to specify a locale at instantiation
time.)
3 Redesigned ReadOnlyAccess to be a service that fixes the locale at
instantiation time. That allows to take care of
ConfigurationWrapper::getGroupReadOnly and ConfigurationWrapper::getSetReadOnly.
Change-Id: I2ae7342b278b6f4222a0189a1deb2a53e204059f
Diffstat (limited to 'offapi/com/sun')
-rw-r--r-- | offapi/com/sun/star/configuration/ReadOnlyAccess.idl | 15 | ||||
-rw-r--r-- | offapi/com/sun/star/configuration/ReadWriteAccess.idl | 15 |
2 files changed, 22 insertions, 8 deletions
diff --git a/offapi/com/sun/star/configuration/ReadOnlyAccess.idl b/offapi/com/sun/star/configuration/ReadOnlyAccess.idl index aaeb6da809ad..1da059352f5c 100644 --- a/offapi/com/sun/star/configuration/ReadOnlyAccess.idl +++ b/offapi/com/sun/star/configuration/ReadOnlyAccess.idl @@ -34,13 +34,20 @@ module com { module sun { module star { module configuration { -/* Provides easy read-only access to the complete configuration. +/** Provides easy read-only access to the complete configuration. - <p>This singleton is still unpublished and unstable.</p> + <p>This service is still unpublished and unstable.</p> - @since LibreOffice 3.6 + @since LibreOffice 3.7 */ -singleton ReadOnlyAccess: com::sun::star::container::XHierarchicalNameAccess; +service ReadOnlyAccess: com::sun::star::container::XHierarchicalNameAccess { + /** Service constructor. + + @param locale a string representation of the locale to use for localized + properties; use <code>*</code> for all-locale access + */ + create([in] string locale); +}; }; }; }; }; diff --git a/offapi/com/sun/star/configuration/ReadWriteAccess.idl b/offapi/com/sun/star/configuration/ReadWriteAccess.idl index bae50bc2092d..2522baabe409 100644 --- a/offapi/com/sun/star/configuration/ReadWriteAccess.idl +++ b/offapi/com/sun/star/configuration/ReadWriteAccess.idl @@ -34,13 +34,20 @@ module com { module sun { module star { module configuration { -/* Provides easy read/write access to the complete configuration. +/** Provides easy read/write access to the complete configuration. - <p>This service is still unpublished and unstable.</p> + <p>This service is still unpublished and unstable.</p> - @since LibreOffice 3.6 + @since LibreOffice 3.7 */ -service ReadWriteAccess: com::sun::star::configuration::XReadWriteAccess; +service ReadWriteAccess: com::sun::star::configuration::XReadWriteAccess { + /** Service constructor. + + @param locale a string representation of the locale to use for localized + properties; use <code>*</code> for all-locale access + */ + create([in] string locale); +}; }; }; }; }; |