sd/source/filter/eppt/epptso.cxx | 57 +++++----------------- svx/source/customshapes/EnhancedCustomShape2d.cxx | 14 +++-- 2 files changed, 23 insertions(+), 48 deletions(-)
New commits: commit d6bebd18b3b25af0024ec3ae5bde17836b0085e3 Author: Caolán McNamara <caol...@redhat.com> Date: Wed May 15 15:17:16 2013 +0100 Revert "Resolves: #i119551# Avoid grouping shapes on import from PPT..." This reverts commit 8c23e31acc61406103c1565960e4c5b391902754. wrong one diff --git a/sd/source/filter/eppt/epptso.cxx b/sd/source/filter/eppt/epptso.cxx index 65c5b33..356ddfb 100644 --- a/sd/source/filter/eppt/epptso.cxx +++ b/sd/source/filter/eppt/epptso.cxx @@ -2242,10 +2242,7 @@ void PPTWriter::ImplCreateTextShape( EscherPropertyContainer& rPropOpt, EscherSo void PPTWriter::ImplWritePage( const PHLayout& rLayout, EscherSolverContainer& aSolverContainer, PageType ePageType, sal_Bool bMasterPage, int nPageNumber ) { - // #i119551# PPT does not support groups of polygons and text (MS patch KB2289187) - // sal_uInt32 nGroupLevel = 0; - - sal_uInt32 nInstance, nGroups, nShapes, nShapeCount, nPer, nLastPer, nIndices, nOlePictureId; + sal_uInt32 nInstance, nGroups, nShapes, nShapeCount, nPer, nLastPer, nIndices, nGroupLevel = 0, nOlePictureId; sal_uInt16 nEffectCount; ::com::sun::star::awt::Point aTextRefPoint; @@ -2500,9 +2497,8 @@ void PPTWriter::ImplWritePage( const PHLayout& rLayout, EscherSolverContainer& a aPolygon.Rotate( aRect.TopLeft(), (sal_uInt16)( mnAngle / 10 ) ); if ( ImplGetText() ) { - // #i119551# PPT does not support groups of polygons and text (MS patch KB2289187) - // mpPptEscherEx->EnterGroup( 0,0 ); - // nGroupLevel = mpPptEscherEx->GetGroupLevel(); + mpPptEscherEx->EnterGroup( 0,0 ); + nGroupLevel = mpPptEscherEx->GetGroupLevel(); bNeedText = sal_False; bAdditionalText = sal_True; mnTextSize = 0; @@ -2697,8 +2693,7 @@ void PPTWriter::ImplWritePage( const PHLayout& rLayout, EscherSolverContainer& a aTextRefPoint = ::com::sun::star::awt::Point( maRect.Left(), maRect.Top() ); mnTextSize = 0; bAdditionalText = sal_True; - // #i119551# PPT does not support groups of polygons and text (MS patch KB2289187) - // mpPptEscherEx->EnterGroup( &maRect,0 ); + mpPptEscherEx->EnterGroup( &maRect,0 ); } mpPptEscherEx->OpenContainer( ESCHER_SpContainer ); sal_uInt32 nFlags = 0xa00; // Flags: Connector | HasSpt @@ -2716,9 +2711,8 @@ void PPTWriter::ImplWritePage( const PHLayout& rLayout, EscherSolverContainer& a { if ( ImplGetText() ) { - // #i119551# PPT does not support groups of polygons and text (MS patch KB2289187) - // mpPptEscherEx->EnterGroup( 0,0 ); - // nGroupLevel = mpPptEscherEx->GetGroupLevel(); + mpPptEscherEx->EnterGroup( 0,0 ); + nGroupLevel = mpPptEscherEx->GetGroupLevel(); bAdditionalText = sal_True; mnTextSize = 0; } @@ -2736,9 +2730,8 @@ void PPTWriter::ImplWritePage( const PHLayout& rLayout, EscherSolverContainer& a { if ( ImplGetText() ) { - // #i119551# PPT does not support groups of polygons and text (MS patch KB2289187) - // mpPptEscherEx->EnterGroup( 0,0 ); - // nGroupLevel = mpPptEscherEx->GetGroupLevel(); + mpPptEscherEx->EnterGroup( 0,0 ); + nGroupLevel = mpPptEscherEx->GetGroupLevel(); bAdditionalText = sal_True; mnTextSize = 0; } @@ -2756,9 +2749,8 @@ void PPTWriter::ImplWritePage( const PHLayout& rLayout, EscherSolverContainer& a { if ( ImplGetText() ) { - // #i119551# PPT does not support groups of polygons and text (MS patch KB2289187) - // mpPptEscherEx->EnterGroup( 0,0 ); - // nGroupLevel = mpPptEscherEx->GetGroupLevel(); + mpPptEscherEx->EnterGroup( 0,0 ); + nGroupLevel = mpPptEscherEx->GetGroupLevel(); bAdditionalText = sal_True; mnTextSize = 0; } @@ -2776,9 +2768,8 @@ void PPTWriter::ImplWritePage( const PHLayout& rLayout, EscherSolverContainer& a { if ( ImplGetText() ) { - // #i119551# PPT does not support groups of polygons and text (MS patch KB2289187) - // mpPptEscherEx->EnterGroup( 0,0 ); - // nGroupLevel = mpPptEscherEx->GetGroupLevel(); + mpPptEscherEx->EnterGroup( 0,0 ); + nGroupLevel = mpPptEscherEx->GetGroupLevel(); bAdditionalText = sal_True; mnTextSize = 0; } @@ -2835,22 +2826,8 @@ void PPTWriter::ImplWritePage( const PHLayout& rLayout, EscherSolverContainer& a else { ImplCreateShape( ESCHER_ShpInst_PictureFrame, 0xa00, aSolverContainer ); - const Rectangle aOldRect100thmm(aRect100thmm); - if ( aPropOpt.CreateGraphicProperties( mXPropSet, OUString( "GraphicURL" ), sal_False, sal_True ) ) - { aPropOpt.AddOpt( ESCHER_Prop_LockAgainstGrouping, 0x800080 ); - - if(aOldRect100thmm != aRect100thmm) - { - // #119536# graphic has been adapted (rotated) so that it can be saved without angle, - // adapt local values as needed - maPosition = ImplMapPoint( ::com::sun::star::awt::Point( aRect100thmm.Left(), aRect100thmm.Top() ) ); - maSize = ImplMapSize( ::com::sun::star::awt::Size ( aRect100thmm.GetWidth(), aRect100thmm.GetHeight() ) ); - maRect = Rectangle( Point( maPosition.X, maPosition.Y ), Size( maSize.Width, maSize.Height ) ); - mnAngle = 0; - } - } } } } @@ -3516,10 +3493,8 @@ void PPTWriter::ImplWritePage( const PHLayout& rLayout, EscherSolverContainer& a mnAngle += 0x8000; mnAngle &=~0xffff; // round nAngle to full grad aPropOpt.AddOpt( ESCHER_Prop_Rotation, mnAngle ); - - // #i119551# PPT does not support groups of polygons and text (MS patch KB2289187) - // mpPptEscherEx->SetGroupSnapRect( nGroupLevel, maRect ); - // mpPptEscherEx->SetGroupLogicRect( nGroupLevel, maRect ); + mpPptEscherEx->SetGroupSnapRect( nGroupLevel, maRect ); + mpPptEscherEx->SetGroupLogicRect( nGroupLevel, maRect ); } if ( !pClientTextBox ) pClientTextBox = new SvMemoryStream( 0x200, 0x200 ); @@ -3541,9 +3516,7 @@ void PPTWriter::ImplWritePage( const PHLayout& rLayout, EscherSolverContainer& a delete pClientTextBox, pClientTextBox = NULL; mpPptEscherEx->CloseContainer(); // ESCHER_SpContainer - - // #i119551# PPT does not support groups of polygons and text (MS patch KB2289187) - // mpPptEscherEx->LeaveGroup(); + mpPptEscherEx->LeaveGroup(); } } ClearGroupTable(); // storing groups if any are still open, which should not be the case commit d7c7624024f1da26165869921f340f53026a423d Author: Andre Fischer <a...@apache.org> Date: Mon Jul 9 11:25:28 2012 +0000 Resolves: #i119519# Fixed import of closed borders from PPT... when an ellipse is involved. Reported by: liupingtan Patch by: Jianyuan Li Review by: Andre Fischer (cherry picked from commit da2c3ed52ae631dba11821f201a2fce49bf18c86) Change-Id: Iff8195365823b60a70641b9efeb9c9f6c86d5341 diff --git a/svx/source/customshapes/EnhancedCustomShape2d.cxx b/svx/source/customshapes/EnhancedCustomShape2d.cxx index f74e938..210f55b 100644 --- a/svx/source/customshapes/EnhancedCustomShape2d.cxx +++ b/svx/source/customshapes/EnhancedCustomShape2d.cxx @@ -1564,14 +1564,16 @@ void EnhancedCustomShape2d::CreateSubPath( sal_uInt16& rSrcPt, sal_uInt16& rSegm case ANGLEELLIPSE : { - if(aNewB2DPolygon.count() > 1L) + if ( nPntCount ) { - // #i76201# Add conversion to closed polygon when first and last points are equal - basegfx::tools::checkClosed(aNewB2DPolygon); - aNewB2DPolyPolygon.append(aNewB2DPolygon); + if(aNewB2DPolygon.count() > 1L) + { + // #i76201# Add conversion to closed polygon when first and last points are equal + basegfx::tools::checkClosed(aNewB2DPolygon); + aNewB2DPolyPolygon.append(aNewB2DPolygon); + } + aNewB2DPolygon.clear(); } - - aNewB2DPolygon.clear(); } case ANGLEELLIPSETO : {
_______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits