Kaydet (Commit) eda334eb authored tarafından Kohei Yoshida's avatar Kohei Yoshida

Move Graphic member to the impl class.

Change-Id: Iee58a6c9b7081a2aa00f6f050574a5827840286b
üst 4ce9e4a6
...@@ -39,7 +39,6 @@ namespace frame { class XModel; } ...@@ -39,7 +39,6 @@ namespace frame { class XModel; }
namespace svt { class EmbeddedObjectRef; } namespace svt { class EmbeddedObjectRef; }
class Graphic;
class SvxUnoShapeModifyListener; class SvxUnoShapeModifyListener;
class SdrOle2ObjImpl; class SdrOle2ObjImpl;
...@@ -66,7 +65,6 @@ protected: ...@@ -66,7 +65,6 @@ protected:
private: private:
SdrOle2ObjImpl* mpImpl; SdrOle2ObjImpl* mpImpl;
Graphic* pGraphic;
OUString aProgName; OUString aProgName;
// Due to compatibility at SdrTextObj for now // Due to compatibility at SdrTextObj for now
......
...@@ -670,6 +670,7 @@ class SdrOle2ObjImpl ...@@ -670,6 +670,7 @@ class SdrOle2ObjImpl
public: public:
svt::EmbeddedObjectRef mxObjRef; svt::EmbeddedObjectRef mxObjRef;
Graphic* mpGraphic;
// TODO/LATER: do we really need this pointer? // TODO/LATER: do we really need this pointer?
GraphicObject* pGraphicObject; GraphicObject* pGraphicObject;
OUString aPersistName; // name of object in persist OUString aPersistName; // name of object in persist
...@@ -683,6 +684,7 @@ public: ...@@ -683,6 +684,7 @@ public:
OUString maLinkURL; OUString maLinkURL;
SdrOle2ObjImpl() : SdrOle2ObjImpl() :
mpGraphic(NULL),
pGraphicObject(NULL), pGraphicObject(NULL),
pLightClient (NULL), pLightClient (NULL),
mbLoadingOLEObjectFailed(false), mbLoadingOLEObjectFailed(false),
...@@ -694,6 +696,7 @@ public: ...@@ -694,6 +696,7 @@ public:
SdrOle2ObjImpl( const svt::EmbeddedObjectRef& rObjRef ) : SdrOle2ObjImpl( const svt::EmbeddedObjectRef& rObjRef ) :
mxObjRef(rObjRef), mxObjRef(rObjRef),
mpGraphic(NULL),
pGraphicObject(NULL), pGraphicObject(NULL),
pLightClient (NULL), pLightClient (NULL),
mbLoadingOLEObjectFailed(false), mbLoadingOLEObjectFailed(false),
...@@ -702,6 +705,12 @@ public: ...@@ -702,6 +705,12 @@ public:
{ {
mxObjRef.Lock(true); mxObjRef.Lock(true);
} }
~SdrOle2ObjImpl()
{
delete mpGraphic;
delete pGraphicObject;
}
}; };
...@@ -750,7 +759,6 @@ TYPEINIT1(SdrOle2Obj,SdrRectObj); ...@@ -750,7 +759,6 @@ TYPEINIT1(SdrOle2Obj,SdrRectObj);
SdrOle2Obj::SdrOle2Obj( bool bFrame_ ) : SdrOle2Obj::SdrOle2Obj( bool bFrame_ ) :
mpImpl(new SdrOle2ObjImpl), mpImpl(new SdrOle2ObjImpl),
pGraphic(NULL),
bFrame(bFrame_), bFrame(bFrame_),
bInDestruction(false), bInDestruction(false),
mbSuppressSetVisAreaSize(false), mbSuppressSetVisAreaSize(false),
...@@ -763,7 +771,6 @@ SdrOle2Obj::SdrOle2Obj( bool bFrame_ ) : ...@@ -763,7 +771,6 @@ SdrOle2Obj::SdrOle2Obj( bool bFrame_ ) :
SdrOle2Obj::SdrOle2Obj( const svt::EmbeddedObjectRef& rNewObjRef, const OUString& rNewObjName, const Rectangle& rNewRect, bool bFrame_ ) : SdrOle2Obj::SdrOle2Obj( const svt::EmbeddedObjectRef& rNewObjRef, const OUString& rNewObjName, const Rectangle& rNewRect, bool bFrame_ ) :
SdrRectObj(rNewRect), SdrRectObj(rNewRect),
mpImpl(new SdrOle2ObjImpl(rNewObjRef)), mpImpl(new SdrOle2ObjImpl(rNewObjRef)),
pGraphic(NULL),
bFrame(bFrame_), bFrame(bFrame_),
bInDestruction(false), bInDestruction(false),
mbSuppressSetVisAreaSize(false), mbSuppressSetVisAreaSize(false),
...@@ -799,10 +806,6 @@ SdrOle2Obj::~SdrOle2Obj() ...@@ -799,10 +806,6 @@ SdrOle2Obj::~SdrOle2Obj()
if ( mpImpl->mbConnected ) if ( mpImpl->mbConnected )
Disconnect(); Disconnect();
delete pGraphic;
delete mpImpl->pGraphicObject;
if(pModifyListener) if(pModifyListener)
{ {
pModifyListener->invalidate(); pModifyListener->invalidate();
...@@ -848,18 +851,18 @@ bool SdrOle2Obj::isUiActive() const ...@@ -848,18 +851,18 @@ bool SdrOle2Obj::isUiActive() const
void SdrOle2Obj::SetGraphic_Impl(const Graphic* pGrf) void SdrOle2Obj::SetGraphic_Impl(const Graphic* pGrf)
{ {
if ( pGraphic ) if (mpImpl->mpGraphic)
{ {
delete pGraphic; delete mpImpl->mpGraphic;
pGraphic = NULL; mpImpl->mpGraphic = NULL;
delete mpImpl->pGraphicObject; delete mpImpl->pGraphicObject;
mpImpl->pGraphicObject = NULL; mpImpl->pGraphicObject = NULL;
} }
if (pGrf!=NULL) if (pGrf)
{ {
pGraphic = new Graphic(*pGrf); mpImpl->mpGraphic = new Graphic(*pGrf);
mpImpl->pGraphicObject = new GraphicObject( *pGraphic ); mpImpl->pGraphicObject = new GraphicObject(*mpImpl->mpGraphic);
} }
SetChanged(); SetChanged();
...@@ -1510,7 +1513,7 @@ void SdrOle2Obj::SetObjRef( const com::sun::star::uno::Reference < com::sun::sta ...@@ -1510,7 +1513,7 @@ void SdrOle2Obj::SetObjRef( const com::sun::star::uno::Reference < com::sun::sta
if ( mpImpl->mxObjRef.is() ) if ( mpImpl->mxObjRef.is() )
{ {
DELETEZ( pGraphic ); DELETEZ(mpImpl->mpGraphic);
if ( (mpImpl->mxObjRef->getStatus( GetAspect() ) & embed::EmbedMisc::EMBED_NEVERRESIZE ) ) if ( (mpImpl->mxObjRef->getStatus( GetAspect() ) & embed::EmbedMisc::EMBED_NEVERRESIZE ) )
SetResizeProtect(true); SetResizeProtect(true);
...@@ -1666,16 +1669,16 @@ SdrOle2Obj& SdrOle2Obj::assignFrom( ...@@ -1666,16 +1669,16 @@ SdrOle2Obj& SdrOle2Obj::assignFrom(
aProgName = rOle2Obj.aProgName; aProgName = rOle2Obj.aProgName;
bFrame = rOle2Obj.bFrame; bFrame = rOle2Obj.bFrame;
if( rOle2Obj.pGraphic ) if (rOle2Obj.mpImpl->mpGraphic)
{ {
if( pGraphic ) if (mpImpl->mpGraphic)
{ {
delete pGraphic; delete mpImpl->mpGraphic;
delete mpImpl->pGraphicObject; delete mpImpl->pGraphicObject;
} }
pGraphic = new Graphic( *rOle2Obj.pGraphic ); mpImpl->mpGraphic = new Graphic(*rOle2Obj.mpImpl->mpGraphic);
mpImpl->pGraphicObject = new GraphicObject( *pGraphic ); mpImpl->pGraphicObject = new GraphicObject(*mpImpl->mpGraphic);
} }
if( pModel && rObj.GetModel() && !IsEmptyPresObj() ) if( pModel && rObj.GetModel() && !IsEmptyPresObj() )
...@@ -1905,7 +1908,7 @@ const Graphic* SdrOle2Obj::GetGraphic() const ...@@ -1905,7 +1908,7 @@ const Graphic* SdrOle2Obj::GetGraphic() const
{ {
if ( mpImpl->mxObjRef.is() ) if ( mpImpl->mxObjRef.is() )
return mpImpl->mxObjRef.GetGraphic(); return mpImpl->mxObjRef.GetGraphic();
return pGraphic; return mpImpl->mpGraphic;
} }
void SdrOle2Obj::GetNewReplacement() void SdrOle2Obj::GetNewReplacement()
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment