[Libreoffice-commits] .: patches/dev300
Radek DoulÃk
rodo at kemper.freedesktop.org
Fri Oct 8 06:49:44 PDT 2010
patches/dev300/apply | 24
patches/dev300/oox-fix-list-style-apply.diff | 13
patches/dev300/oox-import-drawing-font-spacing.diff | 20
patches/dev300/oox-import-fix-ole2-shapes.diff | 21
patches/dev300/oox-pptx-import-fix-customshapes-and-groups.diff | 104 ---
patches/dev300/oox-pptx-import-fix-groups-2.diff | 99 ---
patches/dev300/oox-pptx-import-fix-layout.diff | 69 --
patches/dev300/oox-pptx-import-fix-placeholder-text-style.diff | 169 -----
patches/dev300/oox-pptx-import-fix-text-body-properties.diff | 49 -
patches/dev300/oox-pptx-import-fix-transition-auto-advance.diff | 110 ---
patches/dev300/oox-smartart-import.diff | 8
patches/dev300/oox-xlsx-import-fix-connector-shape.diff | 2
patches/dev300/pptx-gfx-layout-fix.diff | 322 ----------
13 files changed, 7 insertions(+), 1003 deletions(-)
New commits:
commit 04ae9ad15222b630eb1ae237b035215d1fc9bd47
Author: Radek Doulik <rodo at novell.com>
Date: Fri Oct 8 15:37:22 2010 +0200
pptx import patches merged to rawbuild
diff --git a/patches/dev300/apply b/patches/dev300/apply
index b526637..0c1ce5f 100644
--- a/patches/dev300/apply
+++ b/patches/dev300/apply
@@ -1546,8 +1546,6 @@ buildfix-oox-depends-on-unotools.diff
# FIXME dev300-m83 oox-fix-placeholder-layout.diff, n#485316, n#480223, rodo
-oox-fix-list-style-apply.diff, n#485417, rodo
-
# FIXME: 2009-09-02: Applies but causes compilation errors. --tml
# oox-import-chart-externalref.diff, n#480868, janneke
@@ -1571,20 +1569,8 @@ oox-xlsx-import-fix-connector-shape.diff, n#549331, Fong
# FIXME_ 2009-09-02: Applies but causes compilation errors. --tml
# oox-import-sheet-protect.diff, n#481317, janneke
-oox-import-drawing-font-spacing.diff, n#479822, rodo
# FIXME dev300-m83 oox-import-text-vert-anchor-and-anchorctr.diff, n#479829, rodo
-# FIXME ooo330-m2: this diff has been disabled in dev300-m83; setPlaceholder was included in the upstream m83 source
-# setPlaceholder is missing in the upstream ooo330-m2 sources; it seems that they reverted the change
-# they also played with some placeholder in pptshape.cxx and commented it out again;
-# it seems that upstream added findPlaceholder methods
-# so ???
-# pmladek enabled this diff for ooo330-m2 because setPlaceholder was used in more diffs that were enabled with dev300-m83
-oox-pptx-import-fix-layout.diff, n#480223, rodo
-
-[ OpenGLTransitions and OOXML ]
-oox-pptx-import-fix-transition-auto-advance.diff, n#480243, rodo
-
[ OOXML ]
# FIXME: 2009-08-12: Does not apply, upstream code refactored, not
# clear what to do. --tml
@@ -2252,9 +2238,6 @@ pptx-snapshot-at-ooxml03-creation.diff
pptx-the-rest-from-git.diff
pptx-export-empty-animations-node-and-groupshape-fix.diff, rodo
-# ugly temp fix to make GraphicShapeContext recognise layout
-pptx-gfx-layout-fix.diff, thorsten
-
# handles case where a connector shape is not connected
pptx-fix-connector-crash.diff, n#499129, thorsten
@@ -2722,7 +2705,6 @@ transogl-transitions-newsflash-pptin.diff
[ Fixes ]
sd-pptx-export-build-fix.diff, rodo
sd-pptx-export-build-fix-2.diff, rodo
-oox-import-fix-ole2-shapes.diff, n#593611, rodo
svx-fix-layout-build.diff, rodo
sfx2-style-edit-greyentry.diff, i#85003, simonaw
@@ -2733,8 +2715,6 @@ netbook-window-decoration-update.diff, n#621116, rodo
oox-sc-notes.diff, muthusuba
[ Fixes ]
-oox-pptx-import-fix-customshapes-and-groups.diff, n#621739, rodo
-oox-pptx-import-fix-groups-2.diff, n#619678, rodo
# soffice process doesn't block ( under linux ) connect
# to raised office instance instead ( should work for windows too )
smoketest-officeconnection-fix.diff
@@ -2747,7 +2727,3 @@ sc-single-right.diff, td123
sd_effects_styles.diff, pixie
symbols-20-august.diff, i#11167, jopsen
vEdit-13-August.diff, jopsen
-
-[ OOXML ]
-oox-pptx-import-fix-placeholder-text-style.diff, n#592906, n#479834, rodo
-oox-pptx-import-fix-text-body-properties.diff, n#621744, rodo
diff --git a/patches/dev300/oox-fix-list-style-apply.diff b/patches/dev300/oox-fix-list-style-apply.diff
deleted file mode 100644
index 9d09b95..0000000
--- a/patches/dev300/oox-fix-list-style-apply.diff
+++ /dev/null
@@ -1,13 +0,0 @@
---- oox/source/ppt/pptshape.cxx.old 2010-07-22 13:12:44.000000000 +0200
-+++ oox/source/ppt/pptshape.cxx 2010-07-29 21:06:00.000000000 +0200
-@@ -186,8 +186,9 @@ void PPTShape::addShape(
- */
- if ( sServiceName.getLength() )
- {
-+ // use style from master slide for placeholders only, otherwise use slide's style, which might be the default style from presentation
- if ( !aMasterTextListStyle.get() )
-- aMasterTextListStyle = rSlidePersist.getMasterPersist().get() ? rSlidePersist.getMasterPersist()->getOtherTextStyle() : rSlidePersist.getOtherTextStyle();
-+ aMasterTextListStyle = ( mnSubType && rSlidePersist.getMasterPersist().get() ) ? rSlidePersist.getMasterPersist()->getOtherTextStyle() : rSlidePersist.getOtherTextStyle();
- setMasterTextListStyle( aMasterTextListStyle );
-
- Reference< XShape > xShape( createAndInsert( rFilterBase, sServiceName, pTheme, rxShapes, pShapeRect, bClearText ) );
diff --git a/patches/dev300/oox-import-drawing-font-spacing.diff b/patches/dev300/oox-import-drawing-font-spacing.diff
deleted file mode 100644
index 05514ca..0000000
--- a/patches/dev300/oox-import-drawing-font-spacing.diff
+++ /dev/null
@@ -1,20 +0,0 @@
----
- .../drawingml/textcharacterpropertiescontext.cxx | 2 ++
- 1 files changed, 2 insertions(+), 0 deletions(-)
-
-diff --git oox/source/drawingml/textcharacterpropertiescontext.cxx oox/source/drawingml/textcharacterpropertiescontext.cxx
-index c74dba5..9fa4851 100644
---- oox/source/drawingml/textcharacterpropertiescontext.cxx
-+++ oox/source/drawingml/textcharacterpropertiescontext.cxx
-@@ -60,6 +60,8 @@ TextCharacterPropertiesContext::TextCharacterPropertiesContext(
- mrTextCharacterProperties.moLang = aAttribs.getString( XML_lang );
- if ( aAttribs.hasAttribute( XML_sz ) )
- mrTextCharacterProperties.moHeight = aAttribs.getInteger( XML_sz );
-+ if ( aAttribs.hasAttribute( XML_spc ) )
-+ mrTextCharacterProperties.moSpacing = aAttribs.getInteger( XML_spc );
- if ( aAttribs.hasAttribute( XML_u ) )
- mrTextCharacterProperties.moUnderline = aAttribs.getToken( XML_u );
- if ( aAttribs.hasAttribute( XML_strike ) )
---
-1.7.0.1
-
diff --git a/patches/dev300/oox-import-fix-ole2-shapes.diff b/patches/dev300/oox-import-fix-ole2-shapes.diff
deleted file mode 100644
index 0f00b15..0000000
--- a/patches/dev300/oox-import-fix-ole2-shapes.diff
+++ /dev/null
@@ -1,21 +0,0 @@
----
- oox/source/ppt/pptshape.cxx | 3 ++-
- 1 files changed, 2 insertions(+), 1 deletions(-)
-
-diff --git oox/source/ppt/pptshape.cxx oox/source/ppt/pptshape.cxx
-index 48810e2..c24478e 100644
---- oox/source/ppt/pptshape.cxx
-+++ oox/source/ppt/pptshape.cxx
-@@ -83,7 +83,8 @@ void PPTShape::addShape(
- Reference< lang::XMultiServiceFactory > xServiceFact( rFilterBase.getModel(), UNO_QUERY_THROW );
- sal_Bool bClearText = sal_False;
-
-- if ( sServiceName != OUString::createFromAscii( "com.sun.star.drawing.GraphicObjectShape" ) )
-+ if ( sServiceName != OUString::createFromAscii( "com.sun.star.drawing.GraphicObjectShape" ) &&
-+ sServiceName != OUString::createFromAscii( "com.sun.star.drawing.OLE2Shape" ) )
- {
- switch( mnSubType )
- {
---
-1.7.0.1
-
diff --git a/patches/dev300/oox-pptx-import-fix-customshapes-and-groups.diff b/patches/dev300/oox-pptx-import-fix-customshapes-and-groups.diff
deleted file mode 100644
index 747837b..0000000
--- a/patches/dev300/oox-pptx-import-fix-customshapes-and-groups.diff
+++ /dev/null
@@ -1,104 +0,0 @@
-diff -rup oox/inc/oox/drawingml/shape.hxx oox-broken-with-changes/inc/oox/drawingml/shape.hxx
---- oox/inc/oox/drawingml/shape.hxx 2010-08-13 18:05:48.000000000 +0200
-+++ oox-broken-with-changes/inc/oox/drawingml/shape.hxx 2010-08-13 13:43:49.000000000 +0200
-@@ -127,6 +127,9 @@ public:
- void setSize( com::sun::star::awt::Size aSize ){ maSize = aSize; }
- const com::sun::star::awt::Size& getSize() const { return maSize; }
-
-+ void setChildPosition( com::sun::star::awt::Point nPosition ){ maChPosition = nPosition; }
-+ void setChildSize( com::sun::star::awt::Size aSize ){ maChSize = aSize; }
-+
- void setRotation( sal_Int32 nRotation ) { mnRotation = nRotation; }
- void setFlip( sal_Bool bFlipH, sal_Bool bFlipV ) { mbFlipH = bFlipH; mbFlipV = bFlipV; }
- void addChild( const ShapePtr pChildPtr ) { maChildren.push_back( pChildPtr ); }
-@@ -198,6 +201,9 @@ protected:
- ShapeIdMap* pShapeMap );
-
- std::vector< ShapePtr > maChildren; // only used for group shapes
-+ com::sun::star::awt::Size maChSize; // only used for group shapes
-+ com::sun::star::awt::Point maChPosition; // only used for group shapes
-+
- TextBodyPtr mpTextBody;
- LinePropertiesPtr mpLinePropertiesPtr;
- FillPropertiesPtr mpFillPropertiesPtr;
-diff -rup oox/source/drawingml/customshapegeometry.cxx oox-broken-with-changes/source/drawingml/customshapegeometry.cxx
---- oox/source/drawingml/customshapegeometry.cxx 2010-08-13 18:05:48.000000000 +0200
-+++ oox-broken-with-changes/source/drawingml/customshapegeometry.cxx 2010-08-12 16:09:04.000000000 +0200
-@@ -403,7 +403,7 @@ static EnhancedCustomShapeParameter GetA
- }
- if ( ( n >= '0' ) && ( n <= '9' ) )
- { // seems to be a ST_Coordinate
-- aRet.Value = Any( rValue.toInt32() );
-+ aRet.Value = Any( (sal_Int32)(rValue.toInt32() / 5) );
- aRet.Type = EnhancedCustomShapeParameterType::NORMAL;
- }
- else
-diff -rup oox/source/drawingml/customshapeproperties.cxx oox-broken-with-changes/source/drawingml/customshapeproperties.cxx
---- oox/source/drawingml/customshapeproperties.cxx 2010-08-13 18:05:48.000000000 +0200
-+++ oox-broken-with-changes/source/drawingml/customshapeproperties.cxx 2010-08-12 16:20:12.000000000 +0200
-@@ -131,6 +131,11 @@ void CustomShapeProperties::pushToPropSe
- aAdjustmentVal.State = PropertyState_DIRECT_VALUE;
- aAdjustmentSeq[ nAdjustmentIndex ] = aAdjustmentVal;
- }
-+ } else {
-+ EnhancedCustomShapeAdjustmentValue aAdjustmentVal;
-+ aAdjustmentVal.Value <<= (*aIter).maFormula.toInt32();
-+ aAdjustmentVal.State = PropertyState_DIRECT_VALUE;
-+ aAdjustmentSeq[ 0 ] = aAdjustmentVal;
- }
- aIter++;
- }
-diff -rup oox/source/drawingml/shape.cxx oox-broken-with-changes/source/drawingml/shape.cxx
---- oox/source/drawingml/shape.cxx 2010-08-13 18:05:48.000000000 +0200
-+++ oox-broken-with-changes/source/drawingml/shape.cxx 2010-08-13 18:06:54.000000000 +0200
-@@ -267,24 +267,14 @@ void Shape::addChildren(
- {
- awt::Rectangle aShapeRect;
- awt::Rectangle* pShapeRect = 0;
-- if ( ( nGlobalLeft != SAL_MAX_INT32 ) && ( nGlobalRight != SAL_MIN_INT32 ) && ( nGlobalTop != SAL_MAX_INT32 ) && ( nGlobalBottom != SAL_MIN_INT32 ) )
-- {
-- sal_Int32 nGlobalWidth = nGlobalRight - nGlobalLeft;
-- sal_Int32 nGlobalHeight = nGlobalBottom - nGlobalTop;
-- if ( nGlobalWidth && nGlobalHeight )
-- {
-- double fWidth = (*aIter)->maSize.Width;
-- double fHeight= (*aIter)->maSize.Height;
-- double fXScale = (double)rClientRect.Width / (double)nGlobalWidth;
-- double fYScale = (double)rClientRect.Height / (double)nGlobalHeight;
-- aShapeRect.X = static_cast< sal_Int32 >( ( ( (*aIter)->maPosition.X - nGlobalLeft ) * fXScale ) + rClientRect.X );
-- aShapeRect.Y = static_cast< sal_Int32 >( ( ( (*aIter)->maPosition.Y - nGlobalTop ) * fYScale ) + rClientRect.Y );
-- fWidth *= fXScale;
-- fHeight *= fYScale;
-- aShapeRect.Width = static_cast< sal_Int32 >( fWidth );
-- aShapeRect.Height = static_cast< sal_Int32 >( fHeight );
-- pShapeRect = &aShapeRect;
-- }
-+ Shape& rChild = *(*aIter);
-+
-+ if ( rChild.maSize.Width != maSize.Width || rChild.maSize.Height != maSize.Height || rChild.maPosition.X != maPosition.X || rChild.maPosition.Y != maPosition.Y ) {
-+ aShapeRect.X = maPosition.X + rChild.maPosition.X - maChPosition.X;
-+ aShapeRect.Y = maPosition.Y + rChild.maPosition.Y - maChPosition.Y;
-+ aShapeRect.Width = maSize.Width + rChild.maSize.Width - maChSize.Width;
-+ aShapeRect.Height = maSize.Height + rChild.maSize.Height - maChSize.Height;
-+ pShapeRect = &aShapeRect;
- }
- (*aIter++)->addShape( rFilterBase, pTheme, rxShapes, pShapeRect, pShapeMap );
- }
-diff -rup oox/source/drawingml/transform2dcontext.cxx oox-broken-with-changes/source/drawingml/transform2dcontext.cxx
---- oox/source/drawingml/transform2dcontext.cxx 2010-08-13 18:05:47.000000000 +0200
-+++ oox-broken-with-changes/source/drawingml/transform2dcontext.cxx 2010-08-13 13:42:16.000000000 +0200
-@@ -64,11 +64,12 @@ Reference< XFastContextHandler > Transfo
- case NMSP_DRAWINGML|XML_ext: // horz/vert size
- mrShape.setSize( Size( xAttribs->getOptionalValue( XML_cx ).toInt32(), xAttribs->getOptionalValue( XML_cy ).toInt32() ) );
- break;
--/* todo: what to do?
- case NMSP_DRAWINGML|XML_chOff: // horz/vert translation of children
-+ mrShape.setChildPosition( Point( xAttribs->getOptionalValue( XML_x ).toInt32(), xAttribs->getOptionalValue( XML_y ).toInt32() ) );
-+ break;
- case NMSP_DRAWINGML|XML_chExt: // horz/vert size of children
-+ mrShape.setChildSize( Size( xAttribs->getOptionalValue( XML_cx ).toInt32(), xAttribs->getOptionalValue( XML_cy ).toInt32() ) );
- break;
--*/
- }
-
- return 0;
diff --git a/patches/dev300/oox-pptx-import-fix-groups-2.diff b/patches/dev300/oox-pptx-import-fix-groups-2.diff
deleted file mode 100644
index 010ec6d..0000000
--- a/patches/dev300/oox-pptx-import-fix-groups-2.diff
+++ /dev/null
@@ -1,99 +0,0 @@
-diff -rup ../ooo330-m2-orig/oox/inc/oox/drawingml/shape.hxx oox/inc/oox/drawingml/shape.hxx
---- ../ooo330-m2-orig/oox/inc/oox/drawingml/shape.hxx 2010-08-24 20:25:50.000000000 +0200
-+++ oox/inc/oox/drawingml/shape.hxx 2010-08-24 12:41:18.000000000 +0200
-@@ -203,6 +203,9 @@ protected:
- std::vector< ShapePtr > maChildren; // only used for group shapes
- com::sun::star::awt::Size maChSize; // only used for group shapes
- com::sun::star::awt::Point maChPosition; // only used for group shapes
-+ com::sun::star::awt::Size maAbsoluteSize; // only used for group shapes
-+ com::sun::star::awt::Point maAbsolutePosition; // only used for group shapes
-+ sal_Bool mbIsChild;
-
- TextBodyPtr mpTextBody;
- LinePropertiesPtr mpLinePropertiesPtr;
-diff -rup ../ooo330-m2-orig/oox/source/drawingml/shape.cxx oox/source/drawingml/shape.cxx
---- ../ooo330-m2-orig/oox/source/drawingml/shape.cxx 2010-08-24 20:25:50.000000000 +0200
-+++ oox/source/drawingml/shape.cxx 2010-08-25 10:52:08.000000000 +0200
-@@ -88,7 +88,8 @@ void CreateShapeCallback::onXShapeCreate
- // ============================================================================
-
- Shape::Shape( const sal_Char* pServiceName )
--: mpLinePropertiesPtr( new LineProperties )
-+: mbIsChild( false )
-+, mpLinePropertiesPtr( new LineProperties )
- , mpFillPropertiesPtr( new FillProperties )
- , mpGraphicPropertiesPtr( new GraphicProperties )
- , mpCustomShapePropertiesPtr( new CustomShapeProperties )
-@@ -107,6 +108,7 @@ Shape::Shape( const sal_Char* pServiceNa
-
- Shape::Shape( const ShapePtr& pSourceShape )
- : maChildren()
-+, mbIsChild( pSourceShape->mbIsChild )
- , mpTextBody(pSourceShape->mpTextBody)
- , mpLinePropertiesPtr( pSourceShape->mpLinePropertiesPtr )
- , mpFillPropertiesPtr( pSourceShape->mpFillPropertiesPtr )
-@@ -237,45 +239,34 @@ void Shape::addChildren(
- Shape& rMaster,
- const Theme* pTheme,
- const Reference< XShapes >& rxShapes,
-- const awt::Rectangle& rClientRect,
-+ const awt::Rectangle&,
- ShapeIdMap* pShapeMap )
- {
-- // first the global child union needs to be calculated
-- sal_Int32 nGlobalLeft = SAL_MAX_INT32;
-- sal_Int32 nGlobalRight = SAL_MIN_INT32;
-- sal_Int32 nGlobalTop = SAL_MAX_INT32;
-- sal_Int32 nGlobalBottom= SAL_MIN_INT32;
-+ awt::Point& aPosition( mbIsChild ? maAbsolutePosition : maPosition );
-+ awt::Size& aSize( mbIsChild ? maAbsoluteSize : maSize );
-+
- std::vector< ShapePtr >::iterator aIter( rMaster.maChildren.begin() );
- while( aIter != rMaster.maChildren.end() )
- {
-- sal_Int32 l = (*aIter)->maPosition.X;
-- sal_Int32 t = (*aIter)->maPosition.Y;
-- sal_Int32 r = l + (*aIter)->maSize.Width;
-- sal_Int32 b = t + (*aIter)->maSize.Height;
-- if ( nGlobalLeft > l )
-- nGlobalLeft = l;
-- if ( nGlobalRight < r )
-- nGlobalRight = r;
-- if ( nGlobalTop > t )
-- nGlobalTop = t;
-- if ( nGlobalBottom < b )
-- nGlobalBottom = b;
-- aIter++;
-- }
-- aIter = rMaster.maChildren.begin();
-- while( aIter != rMaster.maChildren.end() )
-- {
- awt::Rectangle aShapeRect;
- awt::Rectangle* pShapeRect = 0;
- Shape& rChild = *(*aIter);
-
-- if ( rChild.maSize.Width != maSize.Width || rChild.maSize.Height != maSize.Height || rChild.maPosition.X != maPosition.X || rChild.maPosition.Y != maPosition.Y ) {
-- aShapeRect.X = maPosition.X + rChild.maPosition.X - maChPosition.X;
-- aShapeRect.Y = maPosition.Y + rChild.maPosition.Y - maChPosition.Y;
-- aShapeRect.Width = maSize.Width + rChild.maSize.Width - maChSize.Width;
-- aShapeRect.Height = maSize.Height + rChild.maSize.Height - maChSize.Height;
-- pShapeRect = &aShapeRect;
-- }
-+ double sx = ((double)aSize.Width)/maChSize.Width;
-+ double sy = ((double)aSize.Height)/maChSize.Height;
-+ rChild.maAbsolutePosition.X = aPosition.X + sx*(rChild.maPosition.X - maChPosition.X);
-+ rChild.maAbsolutePosition.Y = aPosition.Y + sy*(rChild.maPosition.Y - maChPosition.Y);
-+ rChild.maAbsoluteSize.Width = rChild.maSize.Width*sx;
-+ rChild.maAbsoluteSize.Height = rChild.maSize.Height*sy;
-+ rChild.mbIsChild = true;
-+
-+ aShapeRect.X = rChild.maAbsolutePosition.X;
-+ aShapeRect.Y = rChild.maAbsolutePosition.Y;
-+ aShapeRect.Width = rChild.maAbsoluteSize.Width;
-+ aShapeRect.Height = rChild.maAbsoluteSize.Height;
-+
-+ pShapeRect = &aShapeRect;
-+
- (*aIter++)->addShape( rFilterBase, pTheme, rxShapes, pShapeRect, pShapeMap );
- }
- }
diff --git a/patches/dev300/oox-pptx-import-fix-layout.diff b/patches/dev300/oox-pptx-import-fix-layout.diff
deleted file mode 100644
index 9388e47..0000000
--- a/patches/dev300/oox-pptx-import-fix-layout.diff
+++ /dev/null
@@ -1,69 +0,0 @@
-From 27993a4a0b42f275413f47c8e6c34b3d266d18fb Mon Sep 17 00:00:00 2001
-From: Jan Holesovsky <kendy at suse.cz>
-Date: Fri, 14 May 2010 17:00:47 +0200
-Subject: [PATCH 366/768] oox-pptx-import-fix-layout.diff
-
----
- oox/inc/oox/ppt/pptshape.hxx | 2 ++
- oox/source/ppt/pptshape.cxx | 14 ++++++++++++++
- oox/source/ppt/pptshapecontext.cxx | 1 +
- 3 files changed, 17 insertions(+), 0 deletions(-)
-
-diff --git oox/inc/oox/ppt/pptshape.hxx oox/inc/oox/ppt/pptshape.hxx
-index a3c1384..f001e03 100644
---- oox/inc/oox/ppt/pptshape.hxx
-+++ oox/inc/oox/ppt/pptshape.hxx
-@@ -61,10 +61,15 @@ public:
- ShapeLocation getShapeLocation() const { return meShapeLocation; };
- sal_Bool isReferenced() const { return mbReferenced; };
- void setReferenced( sal_Bool bReferenced ){ mbReferenced = bReferenced; };
-+ void setPlaceholder( oox::drawingml::ShapePtr pPlaceholder ) { mpPlaceholder = pPlaceholder; }
-
- static oox::drawingml::ShapePtr findPlaceholder( const sal_Int32 nMasterPlaceholder, std::vector< oox::drawingml::ShapePtr >& rShapes );
- static oox::drawingml::ShapePtr findPlaceholderByIndex( const sal_Int32 nIdx, std::vector< oox::drawingml::ShapePtr >& rShapes );
- static oox::drawingml::ShapePtr findPlaceholder( sal_Int32 nFirstPlaceholder, sal_Int32 nSecondPlaceholder, std::vector< oox::drawingml::ShapePtr >& rShapes );
-+
-+protected:
-+
-+ oox::drawingml::ShapePtr mpPlaceholder;
- };
-
- } }
-diff --git oox/source/ppt/pptshape.cxx oox/source/ppt/pptshape.cxx
-index 61678d1..548562d 100644
---- oox/source/ppt/pptshape.cxx
-+++ oox/source/ppt/pptshape.cxx
-@@ -167,6 +169,18 @@ void PPTShape::addShape(
- // use style from master slide for placeholders only, otherwise use slide's style, which might be the default style from presentation
- if ( !aMasterTextListStyle.get() )
- aMasterTextListStyle = ( mnSubType && rSlidePersist.getMasterPersist().get() ) ? rSlidePersist.getMasterPersist()->getOtherTextStyle() : rSlidePersist.getOtherTextStyle();
-+
-+ if( aMasterTextListStyle.get() && getTextBody().get() ) {
-+ TextListStylePtr aCombinedTextListStyle (new TextListStyle());
-+
-+ aCombinedTextListStyle->apply( *aMasterTextListStyle.get() );
-+
-+ if( mpPlaceholder.get() && mpPlaceholder->getTextBody().get() )
-+ aCombinedTextListStyle->apply( mpPlaceholder->getTextBody()->getTextListStyle() );
-+ aCombinedTextListStyle->apply( getTextBody()->getTextListStyle() );
-+
-+ setMasterTextListStyle( aCombinedTextListStyle );
-+ } else
- setMasterTextListStyle( aMasterTextListStyle );
-
- Reference< XShape > xShape( createAndInsert( rFilterBase, sServiceName, pTheme, rxShapes, pShapeRect, bClearText ) );
-diff --git oox/source/ppt/pptshapecontext.cxx oox/source/ppt/pptshapecontext.cxx
-index f198fbd..5f7586b 100644
---- oox/source/ppt/pptshapecontext.cxx
-+++ oox/source/ppt/pptshapecontext.cxx
-@@ -207,6 +207,7 @@ Reference< XFastContextHandler > PPTShapeContext::createFastChildContext( sal_In
- PPTShape* pPPTShape = dynamic_cast< PPTShape* >( pPlaceholder.get() );
- if ( pPPTShape )
- pPPTShape->setReferenced( sal_True );
-+ pPPTShapePtr->setPlaceholder( pPlaceholder );
- }
- }
- }
---
-1.7.0.1
-
diff --git a/patches/dev300/oox-pptx-import-fix-placeholder-text-style.diff b/patches/dev300/oox-pptx-import-fix-placeholder-text-style.diff
deleted file mode 100644
index eefcb86..0000000
--- a/patches/dev300/oox-pptx-import-fix-placeholder-text-style.diff
+++ /dev/null
@@ -1,169 +0,0 @@
-diff -rup ../ooo330-m2-orig/oox/source/drawingml/shapecontext.cxx oox/source/drawingml/shapecontext.cxx
---- ../ooo330-m2-orig/oox/source/drawingml/shapecontext.cxx 2010-07-22 13:12:44.000000000 +0200
-+++ oox/source/drawingml/shapecontext.cxx 2010-09-02 17:18:22.000000000 +0200
-@@ -95,7 +95,8 @@ Reference< XFastContextHandler > ShapeCo
- }
- case XML_ph:
- mpShapePtr->setSubType( xAttribs->getOptionalValueToken( XML_type, XML_obj ) );
-- mpShapePtr->setSubTypeIndex( xAttribs->getOptionalValue( XML_idx ).toInt32() );
-+ if( xAttribs->hasAttribute( XML_idx ) )
-+ mpShapePtr->setSubTypeIndex( xAttribs->getOptionalValue( XML_idx ).toInt32() );
- break;
- // nvSpPr CT_ShapeNonVisual end
-
-diff -rup ../ooo330-m2-orig/oox/source/drawingml/shapegroupcontext.cxx oox/source/drawingml/shapegroupcontext.cxx
---- ../ooo330-m2-orig/oox/source/drawingml/shapegroupcontext.cxx 2010-07-22 13:12:44.000000000 +0200
-+++ oox/source/drawingml/shapegroupcontext.cxx 2010-09-02 17:18:28.000000000 +0200
-@@ -80,7 +80,8 @@ Reference< XFastContextHandler > ShapeGr
- }
- case XML_ph:
- mpGroupShapePtr->setSubType( xAttribs->getOptionalValueToken( XML_type, FastToken::DONTKNOW ) );
-- mpGroupShapePtr->setSubTypeIndex( xAttribs->getOptionalValue( XML_idx ).toInt32() );
-+ if( xAttribs->hasAttribute( XML_idx ) )
-+ mpGroupShapePtr->setSubTypeIndex( xAttribs->getOptionalValue( XML_idx ).toInt32() );
- break;
- // nvSpPr CT_ShapeNonVisual end
-
-diff -rup ../ooo330-m2-orig/oox/source/drawingml/textbodypropertiescontext.cxx oox/source/drawingml/textbodypropertiescontext.cxx
---- ../ooo330-m2-orig/oox/source/drawingml/textbodypropertiescontext.cxx 2010-07-22 13:12:44.000000000 +0200
-+++ oox/source/drawingml/textbodypropertiescontext.cxx 2010-09-02 12:16:09.000000000 +0200
-@@ -88,23 +88,26 @@ TextBodyPropertiesContext::TextBodyPrope
- }
-
- // ST_TextAnchoringType
-- drawing::TextVerticalAdjust eVA( drawing::TextVerticalAdjust_TOP );
-- switch( xAttributes->getOptionalValueToken( XML_anchor, XML_t ) )
-- {
-- case XML_b : eVA = drawing::TextVerticalAdjust_BOTTOM; break;
-- case XML_dist :
-- case XML_just :
-- case XML_ctr : eVA = drawing::TextVerticalAdjust_CENTER; break;
-- default:
-- case XML_t : eVA = drawing::TextVerticalAdjust_TOP; break;
-+ if( xAttributes->hasAttribute( XML_anchor ) ) {
-+ drawing::TextVerticalAdjust eVA( drawing::TextVerticalAdjust_TOP );
-+ switch( xAttributes->getOptionalValueToken( XML_anchor, XML_t ) )
-+ {
-+ case XML_b : eVA = drawing::TextVerticalAdjust_BOTTOM; break;
-+ case XML_dist :
-+ case XML_just :
-+ case XML_ctr : eVA = drawing::TextVerticalAdjust_CENTER; break;
-+ default:
-+ case XML_t : eVA = drawing::TextVerticalAdjust_TOP; break;
-+ }
-+ mrTextBodyProp.maPropertyMap[ PROP_TextVerticalAdjust ] <<= eVA;
- }
-- mrTextBodyProp.maPropertyMap[ PROP_TextVerticalAdjust ] <<= eVA;
-
- bool bAnchorCenter = aAttribs.getBool( XML_anchorCtr, false );
-- if( bAnchorCenter )
-- mrTextBodyProp.maPropertyMap[ PROP_TextHorizontalAdjust ] <<=
-- TextHorizontalAdjust_CENTER;
--
-+ if( xAttributes->hasAttribute( XML_anchorCtr ) ) {
-+ if( bAnchorCenter )
-+ mrTextBodyProp.maPropertyMap[ PROP_TextHorizontalAdjust ] <<=
-+ TextHorizontalAdjust_CENTER;
-+ }
- // bool bCompatLineSpacing = aAttribs.getBool( XML_compatLnSpc, false );
- // bool bForceAA = aAttribs.getBool( XML_forceAA, false );
- // bool bFromWordArt = aAttribs.getBool( XML_fromWordArt, false );
-@@ -127,19 +130,21 @@ TextBodyPropertiesContext::TextBodyPrope
- // bool bUpRight = aAttribs.getBool( XML_upright, 0 );
-
- // ST_TextVerticalType
-- mrTextBodyProp.moVert = aAttribs.getToken( XML_vert );
-- bool bRtl = aAttribs.getBool( XML_rtl, false );
-- sal_Int32 tVert = mrTextBodyProp.moVert.get( XML_horz );
-- if( tVert == XML_vert || tVert == XML_eaVert || tVert == XML_vert270 || tVert == XML_mongolianVert ) {
-- mrTextBodyProp.maPropertyMap[ PROP_TextWritingMode ]
-- <<= WritingMode_TB_RL;
-- // workaround for TB_LR as using WritingMode2 doesn't work
-- if( !bAnchorCenter )
-- mrTextBodyProp.maPropertyMap[ PROP_TextHorizontalAdjust ] <<=
-- TextHorizontalAdjust_LEFT;
-- } else
-- mrTextBodyProp.maPropertyMap[ PROP_TextWritingMode ]
-- <<= ( bRtl ? WritingMode_RL_TB : WritingMode_LR_TB );
-+ if( xAttributes->hasAttribute( XML_vert ) ) {
-+ mrTextBodyProp.moVert = aAttribs.getToken( XML_vert );
-+ bool bRtl = aAttribs.getBool( XML_rtl, false );
-+ sal_Int32 tVert = mrTextBodyProp.moVert.get( XML_horz );
-+ if( tVert == XML_vert || tVert == XML_eaVert || tVert == XML_vert270 || tVert == XML_mongolianVert ) {
-+ mrTextBodyProp.maPropertyMap[ PROP_TextWritingMode ]
-+ <<= WritingMode_TB_RL;
-+ // workaround for TB_LR as using WritingMode2 doesn't work
-+ if( !bAnchorCenter )
-+ mrTextBodyProp.maPropertyMap[ PROP_TextHorizontalAdjust ] <<=
-+ TextHorizontalAdjust_LEFT;
-+ } else
-+ mrTextBodyProp.maPropertyMap[ PROP_TextWritingMode ]
-+ <<= ( bRtl ? WritingMode_RL_TB : WritingMode_LR_TB );
-+ }
- }
-
- // --------------------------------------------------------------------
-diff -rup ../ooo330-m2-orig/oox/source/ppt/pptgraphicshapecontext.cxx oox/source/ppt/pptgraphicshapecontext.cxx
---- ../ooo330-m2-orig/oox/source/ppt/pptgraphicshapecontext.cxx 2010-08-24 20:25:45.000000000 +0200
-+++ oox/source/ppt/pptgraphicshapecontext.cxx 2010-09-02 17:18:54.000000000 +0200
-@@ -132,7 +132,8 @@ Reference< XFastContextHandler > PPTGrap
- OUString sIdx( xAttribs->getOptionalValue( XML_idx ) );
- sal_Bool bHasIdx = sIdx.getLength() > 0;
- sal_Int32 nIdx = sIdx.toInt32();
-- mpShapePtr->setSubTypeIndex( nIdx );
-+ if( xAttribs->hasAttribute( XML_idx ) )
-+ mpShapePtr->setSubTypeIndex( nIdx );
-
- if ( nSubType || bHasIdx )
- {
-diff -rup ../ooo330-m2-orig/oox/source/ppt/pptshapecontext.cxx oox/source/ppt/pptshapecontext.cxx
---- ../ooo330-m2-orig/oox/source/ppt/pptshapecontext.cxx 2010-08-24 20:25:41.000000000 +0200
-+++ oox/source/ppt/pptshapecontext.cxx 2010-09-02 17:18:37.000000000 +0200
-@@ -116,7 +116,8 @@ Reference< XFastContextHandler > PPTShap
- {
- sal_Int32 nSubType( xAttribs->getOptionalValueToken( XML_type, XML_obj ) );
- mpShapePtr->setSubType( nSubType );
-- mpShapePtr->setSubTypeIndex( xAttribs->getOptionalValue( XML_idx ).toInt32() );
-+ if( xAttribs->hasAttribute( XML_idx ) )
-+ mpShapePtr->setSubTypeIndex( xAttribs->getOptionalValue( XML_idx ).toInt32() );
- if ( nSubType )
- {
- PPTShape* pPPTShapePtr = dynamic_cast< PPTShape* >( mpShapePtr.get() );
-diff -rup ../ooo330-m2-orig/oox/source/ppt/pptshape.cxx oox/source/ppt/pptshape.cxx
---- ../ooo330-m2-orig/oox/source/ppt/pptshape.cxx 2010-08-24 20:25:50.000000000 +0200
-+++ oox/source/ppt/pptshape.cxx 2010-09-03 16:41:34.000000000 +0200
-@@ -170,7 +170,11 @@ void PPTShape::addShape(
- }
- }
-
--/*
-+ OSL_TRACE("shape service: %s", rtl::OUStringToOString(sServiceName, RTL_TEXTENCODING_UTF8 ).getStr());
-+
-+ if( mnSubType && aMasterTextListStyle && getSubTypeIndex() != -1 )
-+ aMasterTextListStyle.reset();
-+
- // use placeholder index if possible
- if( mnSubType && getSubTypeIndex() && rSlidePersist.getMasterPersist().get() ) {
- oox::drawingml::ShapePtr pPlaceholder = PPTShape::findPlaceholderByIndex( getSubTypeIndex(), rSlidePersist.getMasterPersist()->getShapes()->getChildren() );
-@@ -184,7 +188,7 @@ void PPTShape::addShape(
- aMasterTextListStyle = pNewTextListStyle;
- }
- }
--*/
-+
- if ( sServiceName.getLength() )
- {
- // use style from master slide for placeholders only, otherwise use slide's style, which might be the default style from presentation
-diff -rup ../ooo330-m2-orig/oox/source/ppt/pptshapegroupcontext.cxx oox/source/ppt/pptshapegroupcontext.cxx
---- ../ooo330-m2-orig/oox/source/ppt/pptshapegroupcontext.cxx 2010-08-24 20:25:45.000000000 +0200
-+++ oox/source/ppt/pptshapegroupcontext.cxx 2010-09-02 17:18:15.000000000 +0200
-@@ -82,7 +82,8 @@ Reference< XFastContextHandler > PPTShap
- }
- case NMSP_PPT|XML_ph:
- mpGroupShapePtr->setSubType( xAttribs->getOptionalValueToken( XML_type, FastToken::DONTKNOW ) );
-- mpGroupShapePtr->setSubTypeIndex( xAttribs->getOptionalValue( XML_idx ).toInt32() );
-+ if( xAttribs->hasAttribute( XML_idx ) )
-+ mpGroupShapePtr->setSubTypeIndex( xAttribs->getOptionalValue( XML_idx ).toInt32() );
- break;
- // nvSpPr CT_ShapeNonVisual end
-
diff --git a/patches/dev300/oox-pptx-import-fix-text-body-properties.diff b/patches/dev300/oox-pptx-import-fix-text-body-properties.diff
deleted file mode 100644
index 4b69367..0000000
--- a/patches/dev300/oox-pptx-import-fix-text-body-properties.diff
+++ /dev/null
@@ -1,49 +0,0 @@
-diff -rup ../../build-orig/ooo-build-3.2.98.0/oox/inc/oox/drawingml/textbody.hxx oox/inc/oox/drawingml/textbody.hxx
---- ../../build-orig/ooo-build-3.2.98.0/oox/inc/oox/drawingml/textbody.hxx 2010-08-24 17:01:37.000000000 +0200
-+++ oox/inc/oox/drawingml/textbody.hxx 2010-09-10 18:01:39.000000000 +0200
-@@ -29,6 +29,7 @@
- #define OOX_DRAWINGML_TEXTBODY_HXX
-
- #include "oox/helper/containerhelper.hxx"
-+#include "oox/drawingml/drawingmltypes.hxx"
- #include "oox/drawingml/textbodyproperties.hxx"
- #include "oox/drawingml/textliststyle.hxx"
-
-@@ -48,6 +49,7 @@ class TextBody
- {
- public:
- TextBody();
-+ TextBody( TextBodyPtr pBody );
- ~TextBody();
-
- inline const TextParagraphVector& getParagraphs() const { return maParagraphs; }
-diff -rup ../../build-orig/ooo-build-3.2.98.0/oox/source/drawingml/textbody.cxx oox/source/drawingml/textbody.cxx
---- ../../build-orig/ooo-build-3.2.98.0/oox/source/drawingml/textbody.cxx 2010-08-24 17:01:37.000000000 +0200
-+++ oox/source/drawingml/textbody.cxx 2010-09-10 18:02:46.000000000 +0200
-@@ -42,6 +42,14 @@ TextBody::TextBody()
- {
- }
-
-+TextBody::TextBody( TextBodyPtr pBody )
-+{
-+ if( pBody.get() ) {
-+ maTextProperties = pBody->maTextProperties;
-+ maTextListStyle = pBody->maTextListStyle;
-+ }
-+}
-+
- TextBody::~TextBody()
- {
- }
-diff -rup ../../build-orig/ooo-build-3.2.98.0/oox/source/ppt/pptshapecontext.cxx oox/source/ppt/pptshapecontext.cxx
---- ../../build-orig/ooo-build-3.2.98.0/oox/source/ppt/pptshapecontext.cxx 2010-09-10 18:24:39.000000000 +0200
-+++ oox/source/ppt/pptshapecontext.cxx 2010-09-10 18:03:15.000000000 +0200
-@@ -203,7 +203,7 @@ Reference< XFastContextHandler > PPTShap
-
- case NMSP_PPT|XML_txBody:
- {
-- oox::drawingml::TextBodyPtr xTextBody( new oox::drawingml::TextBody );
-+ oox::drawingml::TextBodyPtr xTextBody( new oox::drawingml::TextBody( mpShapePtr->getTextBody() ) );
- xTextBody->getTextProperties().maPropertyMap[ PROP_FontIndependentLineSpacing ] <<= static_cast< sal_Bool >( sal_True );
- mpShapePtr->setTextBody( xTextBody );
- xRet = new oox::drawingml::TextBodyContext( *this, *xTextBody );
diff --git a/patches/dev300/oox-pptx-import-fix-transition-auto-advance.diff b/patches/dev300/oox-pptx-import-fix-transition-auto-advance.diff
deleted file mode 100644
index 7219714..0000000
--- a/patches/dev300/oox-pptx-import-fix-transition-auto-advance.diff
+++ /dev/null
@@ -1,110 +0,0 @@
----
- oox/inc/oox/ppt/slidetransition.hxx | 3 +++
- oox/source/ppt/slidetransition.cxx | 8 ++++++--
- oox/source/ppt/slidetransitioncontext.cxx | 7 ++-----
- oox/source/token/properties.txt | 2 ++
- 4 files changed, 13 insertions(+), 7 deletions(-)
-
-diff --git oox/inc/oox/ppt/slidetransition.hxx oox/inc/oox/ppt/slidetransition.hxx
-index 2de0464..9dd941c 100644
---- oox/inc/oox/ppt/slidetransition.hxx
-+++ oox/inc/oox/ppt/slidetransition.hxx
-@@ -51,6 +51,8 @@ namespace oox { namespace ppt {
- { mnFadeColor = nColor; }
- void setMode( sal_Bool bMode )
- { mbMode = bMode; }
-+ void setOoxAdvanceTime( sal_Int32 nAdvanceTime )
-+ { mnAdvanceTime = nAdvanceTime; }
-
- static sal_Int16 ooxToOdpDirection( ::sal_Int32 nOoxType );
- static sal_Int16 ooxToOdpEightDirections( ::sal_Int32 nOoxType );
-@@ -68,6 +70,7 @@ namespace oox { namespace ppt {
- ::sal_Int16 mnAnimationSpeed;
- ::sal_Int32 mnFadeColor;
- ::sal_Bool mbMode; /**< http://api.openoffice.org/docs/common/ref/com/sun/star/animations/XTransitionFilter.html Mode property */
-+ ::sal_Int32 mnAdvanceTime;
- };
-
- } }
-diff --git oox/source/ppt/slidetransition.cxx oox/source/ppt/slidetransition.cxx
-index 6c032e8..70cfbde 100644
---- oox/source/ppt/slidetransition.cxx
-+++ oox/source/ppt/slidetransition.cxx
-@@ -56,6 +56,7 @@ namespace oox { namespace ppt {
- , mnAnimationSpeed( AnimationSpeed_FAST )
- , mnFadeColor( 0 )
- , mbMode( true )
-+ , mnAdvanceTime( -1 )
- {
-
- }
-@@ -68,6 +69,7 @@ namespace oox { namespace ppt {
- , mnAnimationSpeed( AnimationSpeed_FAST )
- , mnFadeColor( 0 )
- , mbMode( true )
-+ , mnAdvanceTime( -1 )
- {
- const transition *p = transition::find( sFilterName );
- if( p )
-@@ -88,6 +90,10 @@ namespace oox { namespace ppt {
- aProps[ PROP_TransitionDirection ] <<= mbTransitionDirectionNormal;
- aProps[ PROP_Speed ] <<= mnAnimationSpeed;
- aProps[ PROP_TransitionFadeColor ] <<= mnFadeColor;
-+ if( mnAdvanceTime != -1 ) {
-+ aProps[ PROP_Duration ] <<= mnAdvanceTime/1000;
-+ aProps[ PROP_Change ] <<= static_cast<sal_Int32>(1);
-+ }
- }
- catch( Exception& )
- {
-@@ -138,8 +144,6 @@ namespace oox { namespace ppt {
- }
- }
-
--
--
- sal_Int16 SlideTransition::ooxToOdpEightDirections( ::sal_Int32 nOoxType )
- {
- sal_Int16 nOdpDirection;
-diff --git oox/source/ppt/slidetransitioncontext.cxx oox/source/ppt/slidetransitioncontext.cxx
-index 8a408a2..e414ed7 100644
---- oox/source/ppt/slidetransitioncontext.cxx
-+++ oox/source/ppt/slidetransitioncontext.cxx
-@@ -67,12 +67,9 @@ SlideTransitionContext::SlideTransitionContext( ContextHandler& rParent, const R
- attribs.getBool( XML_advClick, true );
-
- // careful. if missing, no auto advance... 0 looks like a valid value
-- // for auto advance
-+ // for auto advance
- if(attribs.hasAttribute( XML_advTm ))
-- {
-- // TODO
-- xAttribs->getOptionalValue( XML_advTm );
-- }
-+ maTransition.setOoxAdvanceTime( attribs.getInteger( XML_advTm, -1 ) );
- }
-
- SlideTransitionContext::~SlideTransitionContext() throw()
-diff --git oox/source/token/properties.txt oox/source/token/properties.txt
-index 2ebd712..5a8cf5b 100644
---- oox/source/token/properties.txt
-+++ oox/source/token/properties.txt
-@@ -40,6 +40,7 @@ CellProtection
- CellStyle
- CenterHorizontally
- CenterVertically
-+Change
- CharCaseMap
- CharColor
- CharContoured
-@@ -114,6 +115,7 @@ DialogLibraries
- DisplayLabels
- DrillDownOnDoubleClick
- Dropdown
-+Duration
- EchoChar
- EdgeKind
- EnableVisible
---
-1.7.0.1
-
diff --git a/patches/dev300/oox-smartart-import.diff b/patches/dev300/oox-smartart-import.diff
index bcee60d..86d61bc 100644
--- a/patches/dev300/oox-smartart-import.diff
+++ b/patches/dev300/oox-smartart-import.diff
@@ -968,7 +968,7 @@ index 2780fcd..65380c2 100644
virtual ~Shape();
rtl::OUString& getServiceName(){ return msServiceName; }
-@@ -114,10 +116,17 @@ public:
+@@ -114,13 +116,20 @@ public:
CustomShapePropertiesPtr getCustomShapeProperties(){ return mpCustomShapePropertiesPtr; }
@@ -977,6 +977,9 @@ index 2780fcd..65380c2 100644
+
table::TablePropertiesPtr getTableProperties();
+ void setChildPosition( com::sun::star::awt::Point nPosition ){ maChPosition = nPosition; }
+ void setChildSize( com::sun::star::awt::Size aSize ){ maChSize = aSize; }
+
- void setPosition( com::sun::star::awt::Point nPosition ){ maPosition = nPosition; }
- void setSize( com::sun::star::awt::Size aSize ){ maSize = aSize; }
+ void setPosition( com::sun::star::awt::Point nPosition ){ maPosition = nPosition; }
@@ -5551,13 +5554,14 @@ index 60aae15..72d5406 100644
#include <com/sun/star/drawing/HomogenMatrix3.hpp>
#include <com/sun/star/drawing/ConnectorType.hpp>
#include <com/sun/star/text/XText.hpp>
-@@ -102,6 +104,33 @@ Shape::Shape( const sal_Char* pServiceName )
+@@ -102,6 +104,34 @@ Shape::Shape( const sal_Char* pServiceName )
msServiceName = OUString::createFromAscii( pServiceName );
setDefaults();
}
+
+Shape::Shape( const ShapePtr& pSourceShape )
+: maChildren()
++, mbIsChild( pSourceShape->mbIsChild )
+, mpTextBody(pSourceShape->mpTextBody)
+, mpLinePropertiesPtr( pSourceShape->mpLinePropertiesPtr )
+, mpFillPropertiesPtr( pSourceShape->mpFillPropertiesPtr )
diff --git a/patches/dev300/oox-xlsx-import-fix-connector-shape.diff b/patches/dev300/oox-xlsx-import-fix-connector-shape.diff
index b220962..d7c5e42 100644
--- a/patches/dev300/oox-xlsx-import-fix-connector-shape.diff
+++ b/patches/dev300/oox-xlsx-import-fix-connector-shape.diff
@@ -39,8 +39,8 @@ index f702ff6..2ebd712 100644
--- oox/source/token/properties.txt
+++ oox/source/token/properties.txt
@@ -115,6 +115,7 @@ DisplayLabels
- DrillDownOnDoubleClick
Dropdown
+ Duration
EchoChar
+EdgeKind
EnableVisible
diff --git a/patches/dev300/pptx-gfx-layout-fix.diff b/patches/dev300/pptx-gfx-layout-fix.diff
deleted file mode 100644
index 20f0570..0000000
--- a/patches/dev300/pptx-gfx-layout-fix.diff
+++ /dev/null
@@ -1,322 +0,0 @@
---- oox/inc/oox/ppt/pptgraphicshapecontext.hxx.old 1970-01-01 01:00:00.000000000 +0100
-+++ oox/inc/oox/ppt/pptgraphicshapecontext.hxx 2010-07-29 21:33:33.000000000 +0200
-@@ -0,0 +1,49 @@
-+/*************************************************************************
-+ *
-+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-+ *
-+ * Copyright 2008 by Sun Microsystems, Inc.
-+ *
-+ * OpenOffice.org - a multi-platform office productivity suite
-+ *
-+ * $RCSfile: pptshapecontext.hxx,v $
-+ * $Revision: 1.4 $
-+ *
-+ * This file is part of OpenOffice.org.
-+ *
-+ * OpenOffice.org is free software: you can redistribute it and/or modify
-+ * it under the terms of the GNU Lesser General Public License version 3
-+ * only, as published by the Free Software Foundation.
-+ *
-+ * OpenOffice.org is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+ * GNU Lesser General Public License version 3 for more details
-+ * (a copy is included in the LICENSE file that accompanied this code).
-+ *
-+ * You should have received a copy of the GNU Lesser General Public License
-+ * version 3 along with OpenOffice.org. If not, see
-+ * <http://www.openoffice.org/license.html>
-+ * for a copy of the LGPLv3 License.
-+ *
-+ ************************************************************************/
-+
-+#ifndef OOX_PPT_PPTGRAPHICSHAPECONTEXT_HXX
-+#define OOX_PPT_PPTGRAPHICSHAPECONTEXT_HXX
-+
-+#include "oox/drawingml/graphicshapecontext.hxx"
-+
-+namespace oox { namespace ppt {
-+
-+class PPTGraphicShapeContext : public ::oox::drawingml::GraphicShapeContext
-+{
-+ SlidePersistPtr mpSlidePersistPtr;
-+
-+public:
-+ PPTGraphicShapeContext( ::oox::core::ContextHandler& rParent, const SlidePersistPtr pSlidePersistPtr, oox::drawingml::ShapePtr pMasterShapePtr, oox::drawingml::ShapePtr pShapePtr );
-+ virtual ::com::sun::star::uno::Reference< ::com::sun::star::xml::sax::XFastContextHandler > SAL_CALL createFastChildContext( ::sal_Int32 Element, const ::com::sun::star::uno::Reference< ::com::sun::star::xml::sax::XFastAttributeList >& Attribs ) throw (::com::sun::star::xml::sax::SAXException, ::com::sun::star::uno::RuntimeException);
-+};
-+
-+} }
-+
-+#endif // OOX_PPT_PPTGRAPHICSHAPEGROUPCONTEXT_HXX
---- oox/source/ppt/makefile.mk.old 2010-07-22 13:12:44.000000000 +0200
-+++ oox/source/ppt/makefile.mk 2010-07-29 21:33:33.000000000 +0200
-@@ -53,6 +53,7 @@ SLOFILES = \
- $(SLO)$/headerfootercontext.obj \
- $(SLO)$/layoutfragmenthandler.obj\
- $(SLO)$/pptfilterhelpers.obj\
-+ $(SLO)$/pptgraphicshapecontext.obj \
- $(SLO)$/pptimport.obj\
- $(SLO)$/pptshape.obj \
- $(SLO)$/pptshapecontext.obj \
---- oox/source/ppt/pptgraphicshapecontext.cxx.old 1970-01-01 01:00:00.000000000 +0100
-+++ oox/source/ppt/pptgraphicshapecontext.cxx 2010-07-29 21:33:33.000000000 +0200
-@@ -0,0 +1,238 @@
-+/*************************************************************************
-+ *
-+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-+ *
-+ * Copyright 2008 by Sun Microsystems, Inc.
-+ *
-+ * OpenOffice.org - a multi-platform office productivity suite
-+ *
-+ * $RCSfile: pptshapecontext.cxx,v $
-+ * $Revision: 1.6 $
-+ *
-+ * This file is part of OpenOffice.org.
-+ *
-+ * OpenOffice.org is free software: you can redistribute it and/or modify
-+ * it under the terms of the GNU Lesser General Public License version 3
-+ * only, as published by the Free Software Foundation.
-+ *
-+ * OpenOffice.org is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+ * GNU Lesser General Public License version 3 for more details
-+ * (a copy is included in the LICENSE file that accompanied this code).
-+ *
-+ * You should have received a copy of the GNU Lesser General Public License
-+ * version 3 along with OpenOffice.org. If not, see
-+ * <http://www.openoffice.org/license.html>
-+ * for a copy of the LGPLv3 License.
-+ *
-+ ************************************************************************/
-+
-+#include <com/sun/star/xml/sax/FastToken.hpp>
-+#include <com/sun/star/drawing/LineStyle.hpp>
-+#include <com/sun/star/beans/XMultiPropertySet.hpp>
-+#include <com/sun/star/lang/XMultiServiceFactory.hpp>
-+#include <com/sun/star/container/XNamed.hpp>
-+
-+#include "oox/ppt/pptshape.hxx"
-+#include "oox/ppt/pptgraphicshapecontext.hxx"
-+#include "oox/ppt/pptshapepropertiescontext.hxx"
-+#include "oox/ppt/slidepersist.hxx"
-+#include "oox/drawingml/shapestylecontext.hxx"
-+#include "oox/core/namespaces.hxx"
-+#include "oox/drawingml/fillpropertiesgroupcontext.hxx"
-+#include "oox/drawingml/lineproperties.hxx"
-+#include "oox/drawingml/drawingmltypes.hxx"
-+#include "oox/drawingml/customshapegeometry.hxx"
-+#include "oox/drawingml/textbodycontext.hxx"
-+#include "tokens.hxx"
-+
-+using rtl::OUString;
-+using namespace oox::core;
-+using namespace ::com::sun::star;
-+using namespace ::com::sun::star::uno;
-+using namespace ::com::sun::star::drawing;
-+using namespace ::com::sun::star::beans;
-+using namespace ::com::sun::star::text;
-+using namespace ::com::sun::star::xml::sax;
-+
-+namespace oox { namespace ppt {
-+
-+// CT_Shape
-+PPTGraphicShapeContext::PPTGraphicShapeContext( ContextHandler& rParent, const SlidePersistPtr pSlidePersistPtr, oox::drawingml::ShapePtr pMasterShapePtr, oox::drawingml::ShapePtr pShapePtr )
-+: oox::drawingml::GraphicShapeContext( rParent, pMasterShapePtr, pShapePtr )
-+, mpSlidePersistPtr( pSlidePersistPtr )
-+{
-+}
-+
-+static oox::drawingml::ShapePtr findPlaceholder( const sal_Int32 nMasterPlaceholder, std::vector< oox::drawingml::ShapePtr >& rShapes )
-+{
-+ oox::drawingml::ShapePtr aShapePtr;
-+ std::vector< oox::drawingml::ShapePtr >::reverse_iterator aRevIter( rShapes.rbegin() );
-+ while( aRevIter != rShapes.rend() )
-+ {
-+ if ( (*aRevIter)->getSubType() == nMasterPlaceholder )
-+ {
-+ aShapePtr = *aRevIter;
-+ break;
-+ }
-+ std::vector< oox::drawingml::ShapePtr >& rChildren = (*aRevIter)->getChildren();
-+ aShapePtr = findPlaceholder( nMasterPlaceholder, rChildren );
-+ if ( aShapePtr.get() )
-+ break;
-+ aRevIter++;
-+ }
-+ return aShapePtr;
-+}
-+
-+static oox::drawingml::ShapePtr findPlaceholderByIndex( const sal_Int32 nIdx, std::vector< oox::drawingml::ShapePtr >& rShapes )
-+{
-+ oox::drawingml::ShapePtr aShapePtr;
-+ std::vector< oox::drawingml::ShapePtr >::reverse_iterator aRevIter( rShapes.rbegin() );
-+ while( aRevIter != rShapes.rend() )
-+ {
-+ if ( (*aRevIter)->getSubTypeIndex() == nIdx )
-+ {
-+ aShapePtr = *aRevIter;
-+ break;
-+ }
-+ std::vector< oox::drawingml::ShapePtr >& rChildren = (*aRevIter)->getChildren();
-+ aShapePtr = findPlaceholderByIndex( nIdx, rChildren );
-+ if ( aShapePtr.get() )
-+ break;
-+ aRevIter++;
-+ }
-+ return aShapePtr;
-+}
-+
-+// if nFirstPlaceholder can't be found, it will be searched for nSecondPlaceholder
-+static oox::drawingml::ShapePtr findPlaceholder( sal_Int32 nFirstPlaceholder, sal_Int32 nSecondPlaceholder, std::vector< oox::drawingml::ShapePtr >& rShapes )
-+{
-+ oox::drawingml::ShapePtr pPlaceholder = findPlaceholder( nFirstPlaceholder, rShapes );
-+ return !nSecondPlaceholder || pPlaceholder.get() ? pPlaceholder : findPlaceholder( nSecondPlaceholder, rShapes );
-+}
-+
-+Reference< XFastContextHandler > PPTGraphicShapeContext::createFastChildContext( sal_Int32 aElementToken, const Reference< XFastAttributeList >& xAttribs ) throw (SAXException, RuntimeException)
-+{
-+ Reference< XFastContextHandler > xRet;
-+
-+ switch( aElementToken )
-+ {
-+ // nvSpPr CT_ShapeNonVisual begin
-+// case NMSP_PPT|XML_drElemPr:
-+// break;
-+ case NMSP_PPT|XML_cNvPr:
-+ mpShapePtr->setId( xAttribs->getOptionalValue( XML_id ) );
-+ mpShapePtr->setName( xAttribs->getOptionalValue( XML_name ) );
-+ break;
-+ case NMSP_PPT|XML_ph:
-+ {
-+ sal_Int32 nSubType( xAttribs->getOptionalValueToken( XML_type, XML_obj ) );
-+ mpShapePtr->setSubType( nSubType );
-+ OUString sIdx( xAttribs->getOptionalValue( XML_idx ) );
-+ sal_Bool bHasIdx = sIdx.getLength() > 0;
-+ sal_Int32 nIdx = sIdx.toInt32();
-+ mpShapePtr->setSubTypeIndex( nIdx );
-+
-+ if ( nSubType || bHasIdx )
-+ {
-+ PPTShape* pPPTShapePtr = dynamic_cast< PPTShape* >( mpShapePtr.get() );
-+ if ( pPPTShapePtr )
-+ {
-+ oox::ppt::ShapeLocation eShapeLocation = pPPTShapePtr->getShapeLocation();
-+ oox::drawingml::ShapePtr pPlaceholder;
-+
-+ if ( bHasIdx && eShapeLocation == Slide )
-+ {
-+ // TODO: use id to shape map
-+ SlidePersistPtr pMasterPersist( mpSlidePersistPtr->getMasterPersist() );
-+ if ( pMasterPersist.get() )
-+ pPlaceholder = findPlaceholderByIndex( nIdx, pMasterPersist->getShapes()->getChildren() );
-+ }
-+ if ( !pPlaceholder.get() && ( ( eShapeLocation == Slide ) || ( eShapeLocation == Layout ) ) )
-+ {
-+ // inheriting properties from placeholder objects by cloning shape
-+
-+ sal_Int32 nFirstPlaceholder = 0;
-+ sal_Int32 nSecondPlaceholder = 0;
-+ switch( nSubType )
-+ {
-+ case XML_ctrTitle : // slide/layout
-+ nFirstPlaceholder = XML_ctrTitle;
-+ nSecondPlaceholder = XML_title;
-+ break;
-+ case XML_subTitle : // slide/layout
-+ nFirstPlaceholder = XML_subTitle;
-+ nSecondPlaceholder = XML_title;
-+ break;
-+ case XML_obj : // slide/layout
-+ nFirstPlaceholder = XML_body;
-+ break;
-+ case XML_dt : // slide/layout/master/notes/notesmaster/handoutmaster
-+ case XML_sldNum : // slide/layout/master/notes/notesmaster/handoutmaster
-+ case XML_ftr : // slide/layout/master/notes/notesmaster/handoutmaster
-+ case XML_hdr : // notes/notesmaster/handoutmaster
-+ case XML_body : // slide/layout/master/notes/notesmaster
-+ case XML_title : // slide/layout/master/
-+ case XML_chart : // slide/layout
-+ case XML_tbl : // slide/layout
-+ case XML_clipArt : // slide/layout
-+ case XML_dgm : // slide/layout
-+ case XML_media : // slide/layout
-+ case XML_sldImg : // notes/notesmaster
-+ case XML_pic : // slide/layout
-+ nFirstPlaceholder = nSubType;
-+ default:
-+ break;
-+ }
-+ if ( nFirstPlaceholder )
-+ {
-+ if ( eShapeLocation == Layout ) // for layout objects the referenced object can be found within the same shape tree
-+ pPlaceholder = findPlaceholder( nFirstPlaceholder, nSecondPlaceholder, mpSlidePersistPtr->getShapes()->getChildren() );
-+ else if ( eShapeLocation == Slide ) // normal slide shapes have to search within the corresponding master tree for referenced objects
-+ {
-+ SlidePersistPtr pMasterPersist( mpSlidePersistPtr->getMasterPersist() );
-+ if ( pMasterPersist.get() )
-+ pPlaceholder = findPlaceholder( nFirstPlaceholder, nSecondPlaceholder, pMasterPersist->getShapes()->getChildren() );
-+ }
-+ }
-+ }
-+ if ( pPlaceholder.get() )
-+ {
-+ mpShapePtr->applyShapeReference( *pPlaceholder.get() );
-+ PPTShape* pPPTShape = dynamic_cast< PPTShape* >( pPlaceholder.get() );
-+ if ( pPPTShape )
-+ pPPTShape->setReferenced( sal_True );
-+ pPPTShapePtr->setPlaceholder( pPlaceholder );
-+ }
-+ }
-+ }
-+ break;
-+ }
-+ // nvSpPr CT_ShapeNonVisual end
-+
-+ case NMSP_PPT|XML_spPr:
-+ xRet = new PPTShapePropertiesContext( *this, *mpShapePtr );
-+ break;
-+
-+ case NMSP_PPT|XML_style:
-+ xRet = new oox::drawingml::ShapeStyleContext( *this, *mpShapePtr );
-+ break;
-+
-+ case NMSP_PPT|XML_txBody:
-+ {
-+ oox::drawingml::TextBodyPtr xTextBody( new oox::drawingml::TextBody );
-+ mpShapePtr->setTextBody( xTextBody );
-+ xRet = new oox::drawingml::TextBodyContext( *this, *xTextBody );
-+ break;
-+ }
-+ }
-+
-+ if( !xRet.is() )
-+ xRet.set( GraphicShapeContext::createFastChildContext( aElementToken, xAttribs ) );
-+
-+ return xRet;
-+}
-+
-+
-+} }
---- oox/source/ppt/pptshapegroupcontext.cxx.old 2010-07-22 13:12:44.000000000 +0200
-+++ oox/source/ppt/pptshapegroupcontext.cxx 2010-07-29 21:33:33.000000000 +0200
-@@ -31,6 +31,7 @@
-
- #include "oox/helper/attributelist.hxx"
- #include "oox/ppt/pptshape.hxx"
-+#include "oox/ppt/pptgraphicshapecontext.hxx"
- #include "oox/ppt/pptshapecontext.hxx"
- #include "oox/ppt/pptshapegroupcontext.hxx"
- #include "oox/drawingml/graphicshapecontext.hxx"
-@@ -106,7 +107,7 @@ Reference< XFastContextHandler > PPTShap
- xRet.set( new PPTShapeContext( *this, mpSlidePersistPtr, mpGroupShapePtr, oox::drawingml::ShapePtr( new PPTShape( meShapeLocation, "com.sun.star.drawing.CustomShape" ) ) ) );
- break;
- case NMSP_PPT|XML_pic: // CT_Picture
-- xRet.set( new oox::drawingml::GraphicShapeContext( *this, mpGroupShapePtr, oox::drawingml::ShapePtr( new PPTShape( meShapeLocation, "com.sun.star.drawing.GraphicObjectShape" ) ) ) );
-+ xRet.set( new PPTGraphicShapeContext( *this, mpSlidePersistPtr, mpGroupShapePtr, oox::drawingml::ShapePtr( new PPTShape( meShapeLocation, "com.sun.star.drawing.GraphicObjectShape" ) ) ) );
- break;
- case NMSP_PPT|XML_graphicFrame: // CT_GraphicalObjectFrame
- xRet.set( new oox::drawingml::GraphicalObjectFrameContext( *this, mpGroupShapePtr, oox::drawingml::ShapePtr( new PPTShape( meShapeLocation, "com.sun.star.drawing.OLE2Shape" ) ), true ) );
More information about the Libreoffice-commits
mailing list