Kaydet (Commit) 06d8e626 authored tarafından Armin Le Grand's avatar Armin Le Grand

Make getSdrModelFromUnoModel work with SdrModel&

Change-Id: Iea3af7db77ef778db7bbdf2c1b6b1b956fd57fec
Reviewed-on: https://gerrit.libreoffice.org/52592Tested-by: 's avatarJenkins <ci@libreoffice.org>
Reviewed-by: 's avatarArmin Le Grand <Armin.Le.Grand@cib.de>
üst aa02205f
...@@ -34,7 +34,11 @@ class SVX_DLLPUBLIC SvxUnoDrawMSFactory : public css::lang::XMultiServiceFactory ...@@ -34,7 +34,11 @@ class SVX_DLLPUBLIC SvxUnoDrawMSFactory : public css::lang::XMultiServiceFactory
{ {
protected: protected:
/** abstract SdrModel provider */ /** abstract SdrModel provider */
virtual SdrModel* getSdrModelFromUnoModel() const = 0; //TTTT make reference return // Every App has a DrwingLayer as internal Tooling, thus ist is
// not too hard to asl a UnoModel to hand back a DrawingLayer Model in the
// form of an SdrModel. Thus, returning a reference and make usages
// safer and easier is justified.
virtual SdrModel& getSdrModelFromUnoModel() const = 0; //TTTT make reference return
public: public:
SvxUnoDrawMSFactory() throw() {}; SvxUnoDrawMSFactory() throw() {};
......
...@@ -56,7 +56,7 @@ private: ...@@ -56,7 +56,7 @@ private:
protected: protected:
// SvxUnoDrawMSFactory // SvxUnoDrawMSFactory
virtual SdrModel* getSdrModelFromUnoModel() const override; virtual SdrModel& getSdrModelFromUnoModel() const override;
public: public:
SvxUnoDrawingModel( SdrModel* pDoc ) throw(); SvxUnoDrawingModel( SdrModel* pDoc ) throw();
......
...@@ -188,7 +188,7 @@ namespace reportdesign ...@@ -188,7 +188,7 @@ namespace reportdesign
protected: protected:
/** abstract SdrModel provider */ /** abstract SdrModel provider */
virtual SdrModel* getSdrModelFromUnoModel() const override; virtual SdrModel& getSdrModelFromUnoModel() const override;
public: public:
//TTTT Needed? Or same as above? //TTTT Needed? Or same as above?
......
...@@ -2020,9 +2020,10 @@ std::shared_ptr<rptui::OReportModel> OReportDefinition::getSdrModel(const uno::R ...@@ -2020,9 +2020,10 @@ std::shared_ptr<rptui::OReportModel> OReportDefinition::getSdrModel(const uno::R
return pReportModel; return pReportModel;
} }
SdrModel* OReportDefinition::getSdrModelFromUnoModel() const SdrModel& OReportDefinition::getSdrModelFromUnoModel() const
{ {
return m_pImpl->m_pReportModel.get(); OSL_ENSURE(m_pImpl->m_pReportModel.get(), "No SdrModel in ReportDesign, should not happen");
return *m_pImpl->m_pReportModel.get();
} }
uno::Reference< uno::XInterface > SAL_CALL OReportDefinition::createInstanceWithArguments( const OUString& aServiceSpecifier, const uno::Sequence< uno::Any >& _aArgs) uno::Reference< uno::XInterface > SAL_CALL OReportDefinition::createInstanceWithArguments( const OUString& aServiceSpecifier, const uno::Sequence< uno::Any >& _aArgs)
......
...@@ -125,7 +125,7 @@ protected: ...@@ -125,7 +125,7 @@ protected:
const SfxItemPropertySet& GetPropertySet() const { return aPropSet; } const SfxItemPropertySet& GetPropertySet() const { return aPropSet; }
/** abstract SdrModel provider */ /** abstract SdrModel provider */
virtual SdrModel* getSdrModelFromUnoModel() const override; virtual SdrModel& getSdrModelFromUnoModel() const override;
public: public:
ScModelObj(ScDocShell* pDocSh); ScModelObj(ScDocShell* pDocSh);
......
...@@ -373,7 +373,7 @@ void ScModelObj::CreateAndSet(ScDocShell* pDocSh) ...@@ -373,7 +373,7 @@ void ScModelObj::CreateAndSet(ScDocShell* pDocSh)
pDocSh->SetBaseModel( new ScModelObj(pDocSh) ); pDocSh->SetBaseModel( new ScModelObj(pDocSh) );
} }
SdrModel* ScModelObj::getSdrModelFromUnoModel() const SdrModel& ScModelObj::getSdrModelFromUnoModel() const
{ {
ScDocument& rDoc(pDocShell->GetDocument()); ScDocument& rDoc(pDocShell->GetDocument());
...@@ -382,7 +382,7 @@ SdrModel* ScModelObj::getSdrModelFromUnoModel() const ...@@ -382,7 +382,7 @@ SdrModel* ScModelObj::getSdrModelFromUnoModel() const
rDoc.InitDrawLayer(); rDoc.InitDrawLayer();
} }
return rDoc.GetDrawLayer(); return *rDoc.GetDrawLayer(); // TTTT should be reference
} }
ScModelObj::ScModelObj( ScDocShell* pDocSh ) : ScModelObj::ScModelObj( ScDocShell* pDocSh ) :
......
...@@ -130,7 +130,7 @@ private: ...@@ -130,7 +130,7 @@ private:
protected: protected:
/** abstract SdrModel provider */ /** abstract SdrModel provider */
virtual SdrModel* getSdrModelFromUnoModel() const override; virtual SdrModel& getSdrModelFromUnoModel() const override;
public: public:
SdXImpressDocument(::sd::DrawDocShell* pShell, bool bClipBoard); SdXImpressDocument(::sd::DrawDocShell* pShell, bool bClipBoard);
......
...@@ -2714,9 +2714,10 @@ void SdXImpressDocument::initializeDocument() ...@@ -2714,9 +2714,10 @@ void SdXImpressDocument::initializeDocument()
} }
} }
SdrModel* SdXImpressDocument::getSdrModelFromUnoModel() const SdrModel& SdXImpressDocument::getSdrModelFromUnoModel() const
{ {
return GetDoc(); OSL_ENSURE(GetDoc(), "No SdrModel in draw/Impress, should not happen");
return *GetDoc(); // TTTT should be reference
} }
void SAL_CALL SdXImpressDocument::dispose() void SAL_CALL SdXImpressDocument::dispose()
......
...@@ -39,9 +39,8 @@ using namespace ::svxform; ...@@ -39,9 +39,8 @@ using namespace ::svxform;
} }
else if ( rServiceSpecifier == "com.sun.star.drawing.ControlShape" ) else if ( rServiceSpecifier == "com.sun.star.drawing.ControlShape" )
{ {
SdrModel* pTargetModel = getSdrModelFromUnoModel(); SdrModel& rTargetModel(getSdrModelFromUnoModel());
OSL_ENSURE(pTargetModel, "Got no SdrModel for SdrShape construction (!)"); SdrObject* pObj = new FmFormObj(rTargetModel);
SdrObject* pObj = new FmFormObj(*pTargetModel);
xRet = static_cast<cppu::OWeakObject*>(static_cast<SvxShape_UnoImplHelper*>(new SvxShapeControl(pObj))); xRet = static_cast<cppu::OWeakObject*>(static_cast<SvxShape_UnoImplHelper*>(new SvxShapeControl(pObj)));
} }
......
...@@ -246,9 +246,10 @@ uno::Sequence< OUString > SvxUnoDrawMSFactory::concatServiceNames( uno::Sequence ...@@ -246,9 +246,10 @@ uno::Sequence< OUString > SvxUnoDrawMSFactory::concatServiceNames( uno::Sequence
return aSeq; return aSeq;
} }
SdrModel* SvxUnoDrawingModel::getSdrModelFromUnoModel() const SdrModel& SvxUnoDrawingModel::getSdrModelFromUnoModel() const
{ {
return mpDoc; OSL_ENSURE(mpDoc, "No SdrModel in UnoDrawingModel, should not happen");
return *mpDoc;
} }
SvxUnoDrawingModel::SvxUnoDrawingModel(SdrModel* pDoc) throw() SvxUnoDrawingModel::SvxUnoDrawingModel(SdrModel* pDoc) throw()
......
...@@ -201,7 +201,7 @@ private: ...@@ -201,7 +201,7 @@ private:
protected: protected:
/** abstract SdrModel provider */ /** abstract SdrModel provider */
virtual SdrModel* getSdrModelFromUnoModel() const override; virtual SdrModel& getSdrModelFromUnoModel() const override;
virtual ~SwXTextDocument() override; virtual ~SwXTextDocument() override;
public: public:
......
...@@ -450,10 +450,10 @@ SwXTextDocument::SwXTextDocument(SwDocShell* pShell) ...@@ -450,10 +450,10 @@ SwXTextDocument::SwXTextDocument(SwDocShell* pShell)
{ {
} }
SdrModel* SwXTextDocument::getSdrModelFromUnoModel() const SdrModel& SwXTextDocument::getSdrModelFromUnoModel() const
{ {
OSL_ENSURE(pDocShell->GetDoc()->getIDocumentDrawModelAccess().GetOrCreateDrawModel(), "No SdrModel in SwDoc, should not happen"); OSL_ENSURE(pDocShell->GetDoc()->getIDocumentDrawModelAccess().GetOrCreateDrawModel(), "No SdrModel in SwDoc, should not happen");
return pDocShell->GetDoc()->getIDocumentDrawModelAccess().GetDrawModel(); return *pDocShell->GetDoc()->getIDocumentDrawModelAccess().GetDrawModel();
} }
SwXTextDocument::~SwXTextDocument() SwXTextDocument::~SwXTextDocument()
......
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