diff options
Diffstat (limited to 'svx/source/tbxctrls/fontworkgallery.cxx')
-rw-r--r-- | svx/source/tbxctrls/fontworkgallery.cxx | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/svx/source/tbxctrls/fontworkgallery.cxx b/svx/source/tbxctrls/fontworkgallery.cxx index cca40d210b01..1dadd4983cf5 100644 --- a/svx/source/tbxctrls/fontworkgallery.cxx +++ b/svx/source/tbxctrls/fontworkgallery.cxx @@ -197,7 +197,8 @@ void FontWorkGalleryDialog::insertSelectedFontwork() SdrPage* pPage = pModel->GetPage(0); if( pPage && pPage->GetObjCount() ) { - SdrObject* pNewObject = pPage->GetObj(0)->Clone(); + // Clone directly to target SdrModel + SdrObject* pNewObject(pPage->GetObj(0)->Clone(mpDestModel)); // center shape on current view OutputDevice* pOutDev = mpSdrView->GetFirstOutputDevice(); @@ -210,16 +211,15 @@ void FontWorkGalleryDialog::insertSelectedFontwork() aPagePos.AdjustY( -(aObjRect.GetHeight() / 2) ); tools::Rectangle aNewObjectRectangle(aPagePos, aObjRect.GetSize()); SdrPageView* pPV = mpSdrView->GetSdrPageView(); - pNewObject->SetLogicRect(aNewObjectRectangle); + if ( mppSdrObject ) { *mppSdrObject = pNewObject; - (*mppSdrObject)->SetModel( mpDestModel ); } else if( pPV ) { - mpSdrView->InsertObjectAtView( pNewObject, *pPV ); + mpSdrView->InsertObjectAtView( pNewObject, *pPV ); } } } |