24#include <com/sun/star/uno/Any.hxx>
25#include <com/sun/star/uno/Sequence.hxx>
26#include <com/sun/star/beans/PropertyValue.hpp>
63 OUString aKeyName( setting.first );
64 AddNode( OUString(), aKeyName );
66 PropertyValue*
pValues = aValues.getArray();
68 for (
auto const& elem : setting.second)
91 for(
const auto& aKeyName : aNames )
93#if OSL_DEBUG_LEVEL > 2
94 SAL_INFO(
"vcl",
"found settings data for " << aKeyName );
98 std::transform(aKeys.begin(), aKeys.end(), aSettingsKeys.getArray(),
99 [&aKeyName](
const OUString& rKey) -> OUString { return aKeyName +
"/" + rKey; });
101 for(
int i = 0;
i < aValues.getLength();
i++ )
103 if(
auto pLine = o3tl::tryAccess<OUString>(aValues[
i]) )
105 if( !pLine->isEmpty() )
107#if OSL_DEBUG_LEVEL > 2
108 SAL_INFO(
"vcl",
" \"" << aKeys.getConstArray()[
i] <<
"\"=\"" << *pLine <<
"\"" );
117 std::unordered_map< OUString, SmallOUStrMap >::const_iterator
group =
m_aSettings.find( rGroup );
122 return group->second.find(rKey)->second;
127 bool bModified =
m_aSettings[ rGroup ][ rKey ] != rValue;
const PropertyValue * pValues
static css::uno::Sequence< css::uno::Any > GetProperties(css::uno::Reference< css::container::XHierarchicalNameAccess > const &xHierarchyAccess, const css::uno::Sequence< OUString > &rNames, bool bAllLocales)
static bool ReplaceSetProperties(css::uno::Reference< css::container::XHierarchicalNameAccess > const &xHierarchyAccess, const OUString &rNode, const css::uno::Sequence< css::beans::PropertyValue > &rValues, bool bAllLocales)
bool AddNode(const OUString &rNode, const OUString &rNewNode)
static css::uno::Sequence< OUString > GetNodeNames(css::uno::Reference< css::container::XHierarchicalNameAccess > const &xHierarchyAccess, const OUString &rNode, ConfigNameFormat eFormat)
OUString getValue(const OUString &rGroup, const OUString &rKey) const
std::unordered_map< OUString, SmallOUStrMap > m_aSettings
virtual ~SettingsConfigItem() override
virtual void ImplCommit() override
void setValue(const OUString &rGroup, const OUString &rKey, const OUString &rValue)
virtual void Notify(const css::uno::Sequence< OUString > &rPropertyNames) override
constexpr OUStringLiteral SETTINGS_CONFIGNODE
#define SAL_INFO(area, stream)
std::unique_ptr< vcl::SettingsConfigItem > mpSettingsConfigItem
::comphelper::NamedValueCollection m_aSettings
ImplSVData * ImplGetSVData()