impress200: #i114089# clear user any after they are applied to the shape

This commit is contained in:
Christian Lippka 2010-08-26 21:50:11 +02:00
parent 27d42b733f
commit 0cd40f9bff
3 changed files with 14 additions and 9 deletions

View file

@ -64,6 +64,7 @@ public:
sal_Bool AreThereOwnUsrAnys() const { return (pCombiList ? sal_True : sal_False); }
::com::sun::star::uno::Any* GetUsrAnyForID(sal_uInt16 nWID) const;
void AddUsrAnyForID(const ::com::sun::star::uno::Any& rAny, sal_uInt16 nWID);
void ClearAllUsrAny();
com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > getPropertySetInfo() const;
const SfxItemPropertyMapEntry* getPropertyMapEntries() const {return _pMap;}

View file

@ -71,15 +71,7 @@ SvxItemPropertySet::SvxItemPropertySet( const SfxItemPropertyMapEntry* pMap, Sfx
//----------------------------------------------------------------------
SvxItemPropertySet::~SvxItemPropertySet()
{
/*
if(pItemPool)
delete pItemPool;
pItemPool = NULL;
*/
if(pCombiList)
delete pCombiList;
pCombiList = NULL;
ClearAllUsrAny();
}
//----------------------------------------------------------------------
@ -111,6 +103,17 @@ void SvxItemPropertySet::AddUsrAnyForID(const uno::Any& rAny, sal_uInt16 nWID)
pCombiList->Insert(pNew);
}
//----------------------------------------------------------------------
void SvxItemPropertySet::ClearAllUsrAny()
{
if(pCombiList)
delete pCombiList;
pCombiList = NULL;
}
//----------------------------------------------------------------------
sal_Bool SvxUnoCheckForPositiveValue( const uno::Any& rVal )
{
sal_Bool bConvert = sal_True; // the default is that all metric items must be converted

View file

@ -708,6 +708,7 @@ void SvxItemPropertySet_ObtainSettingsFromPropertySet(const SvxItemPropertySet&
// next entry
++aSrcIt;
}
const_cast< SvxItemPropertySet& >(rPropSet).ClearAllUsrAny();
}
}