From cb02490a1e35886bc2dc4a9889fdd6db742e5899 Mon Sep 17 00:00:00 2001 From: Krisztian Pinter Date: Thu, 31 Jul 2014 10:56:58 +0200 Subject: Make .soc loading lazy Change-Id: If7475d6c46faaa6f6f6cde494990e6573b3aadff --- svx/source/tbxctrls/Palette.cxx | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) (limited to 'svx/source/tbxctrls/Palette.cxx') diff --git a/svx/source/tbxctrls/Palette.cxx b/svx/source/tbxctrls/Palette.cxx index 95ebb589735c..496e0fcc678e 100644 --- a/svx/source/tbxctrls/Palette.cxx +++ b/svx/source/tbxctrls/Palette.cxx @@ -173,11 +173,11 @@ OString lcl_getToken(const OString& rStr, sal_Int32& index) // PaletteSOC ------------------------------------------------------------------ -PaletteSOC::PaletteSOC( const OUString &rFPath, const OUString &rFName ) +PaletteSOC::PaletteSOC( const OUString &rFPath, const OUString &rFName ) : + mbLoadedPalette( false ), + maFPath( rFPath ), + maName( rFName ) { - maName = rFName; - mpColorList = XPropertyList::AsColorList(XPropertyList::CreatePropertyListFromURL(XCOLOR_LIST, rFPath)); - mpColorList->Load(); } PaletteSOC::~PaletteSOC() @@ -191,13 +191,20 @@ const OUString& PaletteSOC::GetName() void PaletteSOC::LoadColorSet( SvxColorValueSet& rColorSet ) { + if( !mbLoadedPalette ) + { + mbLoadedPalette = true; + mpColorList = XPropertyList::AsColorList(XPropertyList::CreatePropertyListFromURL(XCOLOR_LIST, maFPath)); + mpColorList->Load(); + } rColorSet.Clear(); - rColorSet.addEntriesForXColorList( *mpColorList ); + if( mpColorList.is() ) + rColorSet.addEntriesForXColorList( *mpColorList ); } bool PaletteSOC::IsValid() { - return mpColorList.is(); + return true; } /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ -- cgit