summaryrefslogtreecommitdiff
path: root/svx/source/svdraw/svdoole2.cxx
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2017-05-07 15:42:35 +0100
committerCaolán McNamara <caolanm@redhat.com>2017-05-07 17:24:18 +0100
commit0e99a36c695d6349c8096654ddad70f962f312d0 (patch)
treee8a74e81bd5d0b42570846c83f7f21352c9a5156 /svx/source/svdraw/svdoole2.cxx
parent274e3ec0c06e667868eca1b75193500ba92d7c14 (diff)
split clear and set graphic
Change-Id: I3e98e872574e9edbe97099e93d787cbbcced60dd
Diffstat (limited to 'svx/source/svdraw/svdoole2.cxx')
-rw-r--r--svx/source/svdraw/svdoole2.cxx26
1 files changed, 16 insertions, 10 deletions
diff --git a/svx/source/svdraw/svdoole2.cxx b/svx/source/svdraw/svdoole2.cxx
index b331d5d848d7..1ab690845bb2 100644
--- a/svx/source/svdraw/svdoole2.cxx
+++ b/svx/source/svdraw/svdoole2.cxx
@@ -758,8 +758,9 @@ bool SdrOle2Obj::isUiActive() const
return mpImpl->mxObjRef.is() && embed::EmbedStates::UI_ACTIVE == mpImpl->mxObjRef->getCurrentState();
}
-void SdrOle2Obj::SetGraphic_Impl(const Graphic* pGrf)
+void SdrOle2Obj::SetGraphic(const Graphic& rGrf)
{
+ // only for setting a preview graphic
if (mpImpl->mpGraphic)
{
delete mpImpl->mpGraphic;
@@ -768,20 +769,25 @@ void SdrOle2Obj::SetGraphic_Impl(const Graphic* pGrf)
mpImpl->mpGraphicObject = nullptr;
}
- if (pGrf)
- {
- mpImpl->mpGraphic = new Graphic(*pGrf);
- mpImpl->mpGraphicObject = new GraphicObject(*mpImpl->mpGraphic);
- }
+ mpImpl->mpGraphic = new Graphic(rGrf);
+ mpImpl->mpGraphicObject = new GraphicObject(*mpImpl->mpGraphic);
SetChanged();
BroadcastObjectChange();
}
-void SdrOle2Obj::SetGraphic(const Graphic* pGrf)
+void SdrOle2Obj::ClearGraphic()
{
- // only for setting a preview graphic
- SetGraphic_Impl( pGrf );
+ if (mpImpl->mpGraphic)
+ {
+ delete mpImpl->mpGraphic;
+ mpImpl->mpGraphic = nullptr;
+ delete mpImpl->mpGraphicObject;
+ mpImpl->mpGraphicObject = nullptr;
+ }
+
+ SetChanged();
+ BroadcastObjectChange();
}
void SdrOle2Obj::SetProgName( const OUString& rName )
@@ -1896,7 +1902,7 @@ void SdrOle2Obj::GetObjRef_Impl()
// perhaps preview not valid anymore
// This line changes the modified state of the model
- SetGraphic_Impl( nullptr );
+ ClearGraphic();
// if status was not set before, force it back
// to not set, so that SetGraphic(0L) above does not