[ooo-build-commit] .: 2 commits - patches/dev300

Thorsten Behrens thorsten at kemper.freedesktop.org
Wed Aug 4 16:09:05 PDT 2010


 patches/dev300/apply                              |    3 
 patches/dev300/oox-build-fix-dev300-m77.diff      |   30 
 patches/dev300/oox-smartart-import-xlsx-part.diff |   29 
 patches/dev300/oox-smartart-import.diff           | 1117 +++++++++++++---------
 4 files changed, 669 insertions(+), 510 deletions(-)

New commits:
commit 6e5cdcf742760e866fc29ff873bba62226eda4ed
Author: Thorsten Behrens <tbehrens at novell.com>
Date:   Thu Aug 5 01:08:25 2010 +0200

    Removed extraneous backup files
    
    * patches/dev300/oox-smartart-import.diff:

diff --git a/patches/dev300/oox-smartart-import.diff b/patches/dev300/oox-smartart-import.diff
index 4f238d7..7ebf549 100644
--- a/patches/dev300/oox-smartart-import.diff
+++ b/patches/dev300/oox-smartart-import.diff
@@ -36,27 +36,18 @@ From: Thorsten Behrens <thb at openoffice.org>
  .../drawingml/diagram/constraintlistcontext.cxx    |  102 +++
  .../drawingml/diagram/constraintlistcontext.hxx    |   54 ++
  oox/source/drawingml/diagram/datamodelcontext.cxx  |  232 +++++--
- .../drawingml/diagram/datamodelcontext.cxx.orig    |  337 ++++++++++
  oox/source/drawingml/diagram/datamodelcontext.hxx  |   57 ++
  oox/source/drawingml/diagram/diagram.cxx           |  498 ++++++++++++--
- oox/source/drawingml/diagram/diagram.cxx.orig      |  299 +++++++++
  oox/source/drawingml/diagram/diagram.hxx           |  320 +++++++++
  .../drawingml/diagram/diagramdefinitioncontext.cxx |   13 
- .../diagram/diagramdefinitioncontext.cxx.orig      |  117 +++
  .../drawingml/diagram/diagramdefinitioncontext.hxx |    2 
- .../diagram/diagramdefinitioncontext.hxx.orig      |   51 +
  .../drawingml/diagram/diagramfragmenthandler.cxx   |  183 +++--
- .../diagram/diagramfragmenthandler.cxx.orig        |  224 +++++++
  .../drawingml/diagram/diagramfragmenthandler.hxx   |  117 +++
  .../drawingml/diagram/diagramlayoutatoms.cxx       |  689 +++++++++++++++++++-
- .../drawingml/diagram/diagramlayoutatoms.cxx.orig  |  141 ++++
  .../drawingml/diagram/diagramlayoutatoms.hxx       |  318 +++++++++
  oox/source/drawingml/diagram/layoutnodecontext.cxx |  146 +++-
- .../drawingml/diagram/layoutnodecontext.cxx.orig   |  357 ++++++++++
  oox/source/drawingml/diagram/layoutnodecontext.hxx |    3 
- .../drawingml/diagram/layoutnodecontext.hxx.orig   |   52 ++
  oox/source/drawingml/diagram/makefile.mk           |    1 
- oox/source/drawingml/diagram/makefile.mk.orig      |   53 ++
  oox/source/drawingml/drawingmltypes.cxx            |    4 
  oox/source/drawingml/fillproperties.cxx            |    3 
  oox/source/drawingml/graphicshapecontext.cxx       |   58 --
@@ -92,19 +83,10 @@ From: Thorsten Behrens <thb at openoffice.org>
  create mode 100644 oox/inc/oox/ppt/dgmlayout.hxx
  create mode 100644 oox/source/drawingml/diagram/constraintlistcontext.cxx
  create mode 100644 oox/source/drawingml/diagram/constraintlistcontext.hxx
- create mode 100644 oox/source/drawingml/diagram/datamodelcontext.cxx.orig
  create mode 100644 oox/source/drawingml/diagram/datamodelcontext.hxx
- create mode 100644 oox/source/drawingml/diagram/diagram.cxx.orig
  create mode 100644 oox/source/drawingml/diagram/diagram.hxx
- create mode 100644 oox/source/drawingml/diagram/diagramdefinitioncontext.cxx.orig
- create mode 100644 oox/source/drawingml/diagram/diagramdefinitioncontext.hxx.orig
- create mode 100644 oox/source/drawingml/diagram/diagramfragmenthandler.cxx.orig
  create mode 100644 oox/source/drawingml/diagram/diagramfragmenthandler.hxx
- create mode 100644 oox/source/drawingml/diagram/diagramlayoutatoms.cxx.orig
  create mode 100644 oox/source/drawingml/diagram/diagramlayoutatoms.hxx
- create mode 100644 oox/source/drawingml/diagram/layoutnodecontext.cxx.orig
- create mode 100644 oox/source/drawingml/diagram/layoutnodecontext.hxx.orig
- create mode 100644 oox/source/drawingml/diagram/makefile.mk.orig
  create mode 100644 oox/source/drawingml/scene3dcontext.cxx
  create mode 100644 oox/source/drawingml/shape3dproperties.cxx
  create mode 100644 oox/source/ppt/dgmimport.cxx
@@ -2372,349 +2354,6 @@ index 23e5e54..839b021 100644
  };
  
  // CT_BackgroundFormatting
-diff --git oox/source/drawingml/diagram/datamodelcontext.cxx.orig oox/source/drawingml/diagram/datamodelcontext.cxx.orig
-new file mode 100644
-index 0000000..23e5e54
---- /dev/null
-+++ oox/source/drawingml/diagram/datamodelcontext.cxx.orig
-@@ -0,0 +1,337 @@
-+/*************************************************************************
-+ *
-+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-+ * 
-+ * Copyright 2000, 2010 Oracle and/or its affiliates.
-+ *
-+ * OpenOffice.org - a multi-platform office productivity suite
-+ *
-+ * 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 "oox/drawingml/diagram/datamodelcontext.hxx"
-+#include "oox/helper/attributelist.hxx"
-+#include "oox/core/namespaces.hxx"
-+#include "oox/drawingml/fillpropertiesgroupcontext.hxx"
-+#include "oox/drawingml/shapepropertiescontext.hxx"
-+#include "oox/drawingml/textbodycontext.hxx"
-+
-+using namespace ::oox::core;
-+using namespace ::com::sun::star::xml::sax;
-+using namespace ::com::sun::star::uno;
-+using ::rtl::OUString;
-+
-+namespace oox { namespace drawingml {
-+
-+
-+
-+// CL_Cxn
-+class CxnContext
-+    : public ContextHandler
-+{
-+public:
-+    CxnContext( ContextHandler& rParent,
-+                const Reference< XFastAttributeList >& xAttribs,
-+                const dgm::ConnectionPtr & pConnection )
-+        : ContextHandler( rParent )
-+        , mpConnection( pConnection )
-+        {
-+            sal_Int32 nType = xAttribs->getOptionalValueToken( XML_type, XML_parOf );
-+            pConnection->mnType = nType;
-+            pConnection->msModelId = xAttribs->getOptionalValue( XML_modelId );
-+            pConnection->msSourceId = xAttribs->getOptionalValue( XML_srcId );
-+            pConnection->msDestId  = xAttribs->getOptionalValue( XML_destId );
-+            pConnection->msPresId  = xAttribs->getOptionalValue( XML_presId );
-+            pConnection->msSibTransId  = xAttribs->getOptionalValue( XML_sibTransId );
-+            AttributeList attribs( xAttribs );
-+            pConnection->mnSourceOrder = attribs.getInteger( XML_srcOrd, 0 );
-+            pConnection->mnDestOrder = attribs.getInteger( XML_destOrd, 0 );
-+        }
-+
-+    virtual Reference< XFastContextHandler > SAL_CALL
-+    createFastChildContext( sal_Int32 aElementToken,
-+                            const Reference< XFastAttributeList >& /*xAttribs*/ )
-+        throw (SAXException, RuntimeException)
-+        {
-+            Reference< XFastContextHandler > xRet;
-+
-+            switch( aElementToken )
-+            {
-+            case NMSP_DIAGRAM|XML_extLst:
-+                return xRet;
-+            default:
-+                break;
-+            }
-+            if( !xRet.is() )
-+                xRet.set( this );
-+            return xRet;
-+        }
-+private:
-+    dgm::ConnectionPtr mpConnection;
-+};
-+
-+
-+// CT_CxnList
-+class CxnListContext
-+    : public ContextHandler
-+{
-+public:
-+    CxnListContext( ContextHandler& rParent,  dgm::Connections & aConnections )
-+        : ContextHandler( rParent )
-+        , maConnections( aConnections )
-+        {
-+        }
-+    virtual Reference< XFastContextHandler > SAL_CALL
-+    createFastChildContext( sal_Int32 aElementToken,
-+                            const Reference< XFastAttributeList >& xAttribs )
-+        throw (SAXException, RuntimeException)
-+        {
-+            Reference< XFastContextHandler > xRet;
-+
-+            switch( aElementToken )
-+            {
-+            case NMSP_DIAGRAM|XML_cxn:
-+            {
-+                dgm::ConnectionPtr pConnection( new dgm::Connection() );
-+                maConnections.push_back( pConnection );
-+                xRet.set( new CxnContext( *this, xAttribs, pConnection ) );
-+                break;
-+            }
-+            default:
-+                break;
-+            }
-+            if( !xRet.is() )
-+                xRet.set( this );
-+            return xRet;
-+        }
-+
-+private:
-+    dgm::Connections  & maConnections;
-+};
-+
-+
-+
-+// CL_Pt
-+class PtContext
-+    : public ContextHandler
-+{
-+public:
-+    PtContext( ContextHandler& rParent,
-+               const Reference< XFastAttributeList >& xAttribs,
-+               const dgm::PointPtr & pPoint)
-+        : ContextHandler( rParent )
-+        , mpPoint( pPoint )
-+        {
-+            mpPoint->setModelId( xAttribs->getOptionalValue( XML_modelId ) );
-+            //
-+            // the default type is XML_node
-+            sal_Int32 nType  = xAttribs->getOptionalValueToken( XML_type, XML_node );
-+            mpPoint->setType( nType );
-+
-+            // ignore the cxnId unless it is this type. See 5.15.3.1.3 in Primer
-+            if( ( nType == XML_parTrans ) || ( nType == XML_sibTrans ) )
-+            {
-+                mpPoint->setCnxId( xAttribs->getOptionalValue( XML_cxnId ) );
-+            }
-+        }
-+
-+
-+    virtual Reference< XFastContextHandler > SAL_CALL
-+    createFastChildContext( sal_Int32 aElementToken,
-+                            const Reference< XFastAttributeList >& /*xAttribs*/ )
-+        throw (SAXException, RuntimeException)
-+        {
-+            Reference< XFastContextHandler > xRet;
-+
-+            switch( aElementToken )
-+            {
-+            case NMSP_DIAGRAM|XML_extLst:
-+                return xRet;
-+            case NMSP_DIAGRAM|XML_prSet:
-+                // TODO
-+                // CT_ElemPropSet
-+                break;
-+            case NMSP_DIAGRAM|XML_spPr:
-+                OSL_TRACE( "shape props for point");
-+                xRet = new ShapePropertiesContext( *this, *mpPoint->getShape() );
-+                break;
-+            case NMSP_DIAGRAM|XML_t:
-+            {
-+                OSL_TRACE( "shape text body for point");
-+                TextBodyPtr xTextBody( new TextBody );
-+                mpPoint->getShape()->setTextBody( xTextBody );
-+                xRet = new TextBodyContext( *this, *xTextBody );
-+                break;
-+            }
-+            default:
-+                break;
-+            }
-+            if( !xRet.is() )
-+                xRet.set( this );
-+            return xRet;
-+        }
-+
-+private:
-+    dgm::PointPtr mpPoint;
-+};
-+
-+
-+
-+// CT_PtList
-+class PtListContext
-+    : public ContextHandler
-+{
-+public:
-+    PtListContext( ContextHandler& rParent,  dgm::Points & aPoints)
-+        : ContextHandler( rParent )
-+        , maPoints( aPoints )
-+        {
-+        }
-+    virtual Reference< XFastContextHandler > SAL_CALL
-+    createFastChildContext( sal_Int32 aElementToken,
-+                            const Reference< XFastAttributeList >& xAttribs )
-+        throw (SAXException, RuntimeException)
-+        {
-+            Reference< XFastContextHandler > xRet;
-+
-+            switch( aElementToken )
-+            {
-+            case NMSP_DIAGRAM|XML_pt:
-+            {
-+                // CT_Pt
-+                dgm::PointPtr pPoint( new dgm::Point() );
-+                maPoints.push_back( pPoint );
-+                xRet.set( new PtContext( *this, xAttribs, pPoint ) );
-+                break;
-+            }
-+            default:
-+                break;
-+            }
-+            if( !xRet.is() )
-+                xRet.set( this );
-+            return xRet;
-+        }
-+
-+private:
-+    dgm::Points  & maPoints;
-+};
-+
-+// CT_BackgroundFormatting
-+class BackgroundFormattingContext
-+    : public ContextHandler
-+{
-+public:
-+    BackgroundFormattingContext( ContextHandler& rParent, DiagramDataPtr & pModel )
-+        : ContextHandler( rParent )
-+        , mpDataModel( pModel )
-+        {
-+            OSL_ENSURE( pModel, "the data model MUST NOT be NULL" );
-+        }
-+
-+    virtual Reference< XFastContextHandler > SAL_CALL
-+    createFastChildContext( sal_Int32 aElementToken,
-+                            const Reference< XFastAttributeList >& xAttribs )
-+        throw (SAXException, RuntimeException)
-+        {
-+            Reference< XFastContextHandler > xRet;
-+
-+            switch( aElementToken )
-+            {
-+            case NMSP_DRAWINGML|XML_blipFill:
-+            case NMSP_DRAWINGML|XML_gradFill:
-+            case NMSP_DRAWINGML|XML_grpFill:
-+            case NMSP_DRAWINGML|XML_noFill:
-+            case NMSP_DRAWINGML|XML_pattFill:
-+            case NMSP_DRAWINGML|XML_solidFill:
-+                // EG_FillProperties
-+                xRet.set( FillPropertiesContext::createFillContext(
-+                    *this, aElementToken, xAttribs, *mpDataModel->getFillProperties() ) );
-+                break;
-+            case NMSP_DRAWINGML|XML_effectDag:
-+            case NMSP_DRAWINGML|XML_effectLst:
-+                // TODO
-+                // EG_EffectProperties
-+                break;
-+            default:
-+                break;
-+            }
-+            if( !xRet.is() )
-+                xRet.set( this );
-+            return xRet;
-+        }
-+private:
-+    DiagramDataPtr mpDataModel;
-+};
-+
-+
-+
-+DataModelContext::DataModelContext( ContextHandler& rParent,
-+                                    const DiagramDataPtr & pDataModel )
-+    : ContextHandler( rParent )
-+    , mpDataModel( pDataModel )
-+{
-+    OSL_ENSURE( pDataModel, "Data Model must not be NULL" );
-+}
-+
-+
-+DataModelContext::~DataModelContext()
-+{
-+    // some debug
-+    mpDataModel->dump();
-+}
-+
-+
-+Reference< XFastContextHandler > SAL_CALL
-+DataModelContext::createFastChildContext( ::sal_Int32 aElement,
-+                                          const Reference< XFastAttributeList >& /*xAttribs*/ )
-+    throw ( SAXException, RuntimeException)
-+{
-+    Reference< XFastContextHandler > xRet;
-+
-+    switch( aElement )
-+    {
-+    case NMSP_DIAGRAM|XML_cxnLst:
-+        // CT_CxnList
-+        xRet.set( new CxnListContext( *this, mpDataModel->getConnections() ) );
-+        break;
-+    case NMSP_DIAGRAM|XML_ptLst:
-+        // CT_PtList
-+        xRet.set( new PtListContext( *this, mpDataModel->getPoints() ) );
-+        break;
-+    case NMSP_DIAGRAM|XML_bg:
-+        // CT_BackgroundFormatting
-+        xRet.set( new BackgroundFormattingContext( *this, mpDataModel ) );
-+        break;
-+    case NMSP_DIAGRAM|XML_whole:
-+        // CT_WholeE2oFormatting
-+        // TODO
-+        return xRet;
-+    case NMSP_DIAGRAM|XML_extLst:
-+        return xRet;
-+    default:
-+        break;
-+    }
-+
-+    if( !xRet.is() )
-+        xRet.set( this );
-+
-+    return xRet;
-+}
-+
-+} }
 diff --git oox/source/drawingml/diagram/datamodelcontext.hxx oox/source/drawingml/diagram/datamodelcontext.hxx
 new file mode 100644
 index 0000000..7ca50dd
@@ -3367,311 +3006,6 @@ index 8aa0fc0..113de80 100644
 +}
  
  } }
-diff --git oox/source/drawingml/diagram/diagram.cxx.orig oox/source/drawingml/diagram/diagram.cxx.orig
-new file mode 100644
-index 0000000..8aa0fc0
---- /dev/null
-+++ oox/source/drawingml/diagram/diagram.cxx.orig
-@@ -0,0 +1,299 @@
-+/*************************************************************************
-+ *
-+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-+ * 
-+ * Copyright 2000, 2010 Oracle and/or its affiliates.
-+ *
-+ * OpenOffice.org - a multi-platform office productivity suite
-+ *
-+ * 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 <functional>
-+#include <boost/bind.hpp>
-+
-+#include <com/sun/star/awt/Point.hpp>
-+#include <com/sun/star/awt/Size.hpp>
-+#include "oox/drawingml/diagram/diagram.hxx"
-+#include "oox/drawingml/fillproperties.hxx"
-+#include "oox/core/namespaces.hxx"
-+#include "tokens.hxx"
-+
-+using rtl::OUString;
-+using namespace ::com::sun::star;
-+
-+namespace oox { namespace drawingml {
-+
-+namespace dgm {
-+
-+
-+void Connection::dump()
-+{
-+    OSL_TRACE("dgm: cnx modelId %s, srcId %s, dstId %s",
-+              OUSTRING_TO_CSTR( msModelId ),
-+              OUSTRING_TO_CSTR( msSourceId ),
-+              OUSTRING_TO_CSTR( msDestId ) );
-+}
-+
-+Point::Point()
-+    : mpShape( new Shape( "com.sun.star.drawing.GraphicObjectShape" ) )
-+    , mnType( 0 )
-+{
-+}
-+
-+void Point::dump()
-+{
-+    OSL_TRACE( "dgm: pt cnxId %s, modelId %s",
-+               OUSTRING_TO_CSTR( msCnxId ),
-+               OUSTRING_TO_CSTR( msModelId ) );
-+}
-+
-+void Point::setModelId( const ::rtl::OUString & sModelId )
-+{
-+    msModelId = sModelId;
-+    mpShape->setName( msModelId );
-+}
-+
-+
-+bool PointsTree::addChild( const PointsTreePtr & pChild )
-+{
-+    bool added = false;
-+
-+    OSL_ENSURE( pChild->mpParent.expired(), "can't add, has already a parent" );
-+    OSL_ENSURE( mpNode, "has no node" );
-+    if( mpNode && pChild->mpParent.expired() )
-+    {
-+        pChild->mpParent = shared_from_this();
-+        maChildrens.push_back( pChild );
-+        added = true;
-+    }
-+
-+    return added;
-+}
-+
-+PointsTreePtr PointsTree::getParent() const
-+{
-+    if( !mpParent.expired() )
-+    {
-+        return mpParent.lock() ;
-+    }
-+    return PointsTreePtr();
-+}
-+
-+
-+} // dgm namespace
-+
-+DiagramData::DiagramData()
-+    : mpFillProperties( new FillProperties )
-+{
-+}
-+
-+void DiagramData::dump()
-+{
-+    OSL_TRACE("Dgm: DiagramData # of cnx: %d", maConnections.size() );
-+    std::for_each( maConnections.begin(), maConnections.end(),
-+                  boost::bind( &dgm::Connection::dump, _1 ) );
-+    OSL_TRACE("Dgm: DiagramData # of pt: %d", maPoints.size() );
-+    std::for_each( maPoints.begin(), maPoints.end(),
-+                  boost::bind( &dgm::Point::dump, _1 ) );
-+}
-+
-+static void setPosition( const dgm::PointPtr & pPoint, const awt::Point & pt )
-+{
-+    ShapePtr pShape = pPoint->getShape();
-+    awt::Size sz;
-+    sz.Width = 50;
-+    sz.Height = 50;
-+    pShape->setPosition( pt );
-+    pShape->setSize( sz );
-+}
-+
-+void DiagramLayout::layout( const dgm::PointsTreePtr & pTree, const awt::Point & pt )
-+{
-+    setPosition( pTree->getPoint(), pt );
-+    awt::Point nextPt = pt;
-+    nextPt.Y += 50;
-+    dgm::PointsTree::Childrens::const_iterator iter;
-+    for( iter = pTree->beginChild(); iter != pTree->endChild(); iter++ )
-+    {
-+        layout( *iter, nextPt );
-+        nextPt.X += 50;
-+    }
-+}
-+
-+void Diagram::setData( const DiagramDataPtr & pData)
-+{
-+    mpData = pData;
-+}
-+
-+
-+void Diagram::setLayout( const DiagramLayoutPtr & pLayout)
-+{
-+    mpLayout = pLayout;
-+}
-+
-+void Diagram::setQStyles( const DiagramQStylesPtr & pStyles)
-+{
-+    mpQStyles = pStyles;
-+}
-+
-+
-+void Diagram::setColors( const DiagramColorsPtr & pColors)
-+{
-+    mpColors = pColors;
-+}
-+
-+void Diagram::build(  )
-+{
-+    OSL_TRACE( "building diagram" );
-+    typedef std::map< OUString, dgm::PointPtr > PointsMap;
-+    PointsMap aPointsMap;
-+    dgm::Points::iterator aPointsIter( mpData->getPoints( ).begin() );
-+    for( ; aPointsIter != mpData->getPoints( ).end() ; aPointsIter++ )
-+    {
-+        const OUString & sName((*aPointsIter)->getModelId());
-+        if( sName.getLength() > 0 )
-+        {
-+            aPointsMap[ sName ] = *aPointsIter;
-+        }
-+    }
-+
-+    typedef std::map< OUString, dgm::PointsTreePtr > PointsTreeMap;
-+    PointsTreeMap aTreeMap;
-+    PointsTreeMap aRoots;
-+
-+    dgm::Connections & aConnections(mpData->getConnections( ) );
-+    dgm::Connections::iterator aCnxIter;
-+    for( aCnxIter = aConnections.begin(); aCnxIter != aConnections.end(); ++aCnxIter )
-+    {
-+        OSL_ENSURE( *aCnxIter, "NULL connection found" );
-+        if( (*aCnxIter)->mnType != XML_parOf )
-+        {
-+//			OSL_TRACE( "ignoring relation %s", OUSTRING_TO_CSTR( (*aCnxIter)->msModelId ) );
-+            continue;
-+        }
-+        dgm::PointPtr pDest;
-+        dgm::PointsTreePtr pSource;
-+        PointsMap::iterator iterP;
-+        OUString & srcId( (*aCnxIter)->msSourceId );
-+        OUString & dstId( (*aCnxIter)->msDestId );
-+        OSL_TRACE( "connexion %s -> %s", OUSTRING_TO_CSTR( srcId ),
-+                   OUSTRING_TO_CSTR( dstId ) );
-+
-+        PointsTreeMap::iterator iterT = aTreeMap.find( srcId );
-+        if( iterT != aTreeMap.end() )
-+        {
-+            pSource = iterT->second;
-+        }
-+        else
-+        {
-+            // this tree node is not found. create it with the source
-+            // and make it the root node.
-+            iterP = aPointsMap.find( srcId );
-+            if( iterP != aPointsMap.end() )
-+            {
-+                pSource.reset( new dgm::PointsTree( iterP->second ) );
-+                aRoots[ srcId ] = pSource;
-+                aTreeMap[ srcId ] = pSource;
-+            }
-+            else
-+            {
-+                OSL_TRACE("parent node not found !");
-+            }
-+        }
-+        iterP = aPointsMap.find( dstId );
-+        if( iterP != aPointsMap.end() )
-+        {
-+            pDest = iterP->second;
-+        }
-+        OSL_ENSURE( pDest, "destination not found" );
-+        OSL_ENSURE( pSource, "source not found" );
-+        if(pDest && pSource)
-+        {
-+            dgm::PointsTreePtr pNode( new dgm::PointsTree( pDest ) );
-+            bool added = pSource->addChild( pNode );
-+            (void)added;
-+            aRoots.erase( dstId );
-+            OSL_ENSURE( added, "add child failed" );
-+            aTreeMap[ dstId ] = pNode;
-+        }
-+    }
-+    // check bounds
-+    OSL_ENSURE( aRoots.size() == 1, "more than one root" );
-+    // #i92239# roots may be empty
-+    if( !aRoots.empty() )
-+    {
-+        mpRoot = aRoots.begin()->second;
-+        OSL_TRACE( "root is %s", OUSTRING_TO_CSTR( mpRoot->getPoint()->getModelId() ) );
-+        for( PointsTreeMap::iterator iter = aTreeMap.begin();
-+             iter != aTreeMap.end(); iter++ )
-+        {
-+            if(! iter->second->getParent() )
-+            {
-+                OSL_TRACE("node without parent %s", OUSTRING_TO_CSTR( iter->first ) );
-+            }
-+        }
-+    }
-+}
-+
-+
-+void Diagram::addTo( const ShapePtr & pParentShape )
-+{
-+    dgm::Points & aPoints( mpData->getPoints( ) );
-+    dgm::Points::iterator aPointsIter;
-+    build( );
-+    if( mpRoot.get() )
-+        mpLayout->layout( mpRoot, awt::Point( 0, 0 ) );
-+
-+    for( aPointsIter = aPoints.begin(); aPointsIter != aPoints.end(); ++aPointsIter )
-+    {
-+        if( ( *aPointsIter )->getType() != XML_node )
-+        {
-+            continue;
-+        }
-+        ShapePtr pShape = ( *aPointsIter )->getShape( );
-+        if( pShape->getName( ).getLength() > 0 )
-+        {
-+            maShapeMap[ pShape->getName( ) ] = pShape;
-+            OSL_TRACE( "Dgm: added shape %s to map", OUSTRING_TO_CSTR( pShape->getName() ) );
-+        }
-+        pParentShape->addChild( pShape );
-+    }
-+
-+    OSL_TRACE( "Dgm: addTo() # of childs %d", pParentShape->getChildren().size() );
-+    for( std::vector< ShapePtr >::iterator iter = pParentShape->getChildren().begin();
-+         iter != pParentShape->getChildren().end(); ++iter)
-+    {
-+        OSL_TRACE( "Dgm: shape name %s", OUSTRING_TO_CSTR( (*iter)->getName() ) );
-+    }
-+}
-+
-+OUString Diagram::getLayoutId() const
-+{
-+    OUString sLayoutId;
-+    if( mpLayout )
-+    {
-+        sLayoutId = mpLayout->getUniqueId();
-+    }
-+    return sLayoutId;
-+}
-+
-+
-+} }
 diff --git oox/source/drawingml/diagram/diagram.hxx oox/source/drawingml/diagram/diagram.hxx
 new file mode 100644
 index 0000000..7e5276c
@@ -4031,129 +3365,6 @@ index b7f8889..447416e 100644
       case NMSP_DIAGRAM|XML_clrData:
          // TODO, does not matter for the UI. skip.
          return xRet;
-diff --git oox/source/drawingml/diagram/diagramdefinitioncontext.cxx.orig oox/source/drawingml/diagram/diagramdefinitioncontext.cxx.orig
-new file mode 100644
-index 0000000..b7f8889
---- /dev/null
-+++ oox/source/drawingml/diagram/diagramdefinitioncontext.cxx.orig
-@@ -0,0 +1,117 @@
-+/*************************************************************************
-+ *
-+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-+ * 
-+ * Copyright 2000, 2010 Oracle and/or its affiliates.
-+ *
-+ * OpenOffice.org - a multi-platform office productivity suite
-+ *
-+ * 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 "diagramdefinitioncontext.hxx"
-+#include "oox/core/namespaces.hxx"
-+#include "oox/helper/helper.hxx"
-+#include "layoutnodecontext.hxx"
-+#include "oox/drawingml/diagram/datamodelcontext.hxx"
-+#include "tokens.hxx"
-+
-+using namespace ::oox::core;
-+using namespace ::com::sun::star::uno;
-+using namespace ::com::sun::star::xml::sax;
-+using ::rtl::OUString;
-+
-+namespace oox { namespace drawingml {
-+
-+
-+// CT_DiagramDefinition
-+DiagramDefinitionContext::DiagramDefinitionContext( ContextHandler& rParent,
-+                                                    const Reference< XFastAttributeList >& xAttributes,
-+                                                    const DiagramLayoutPtr &pLayout )
-+    : ContextHandler( rParent )
-+    , mpLayout( pLayout )
-+{
-+    OSL_TRACE( "OOX: DiagramDefinitionContext::DiagramDefinitionContext()" );
-+    mpLayout->setDefStyle( xAttributes->getOptionalValue( XML_defStyle ) );
-+    OUString sValue = xAttributes->getOptionalValue( XML_minVer );
-+    if( sValue.getLength() == 0 )
-+    {
-+        sValue = CREATE_OUSTRING( "http://schemas.openxmlformats.org/drawingml/2006/diagram" );
-+    }
-+    mpLayout->setMinVer( sValue );
-+    mpLayout->setUniqueId( xAttributes->getOptionalValue( XML_uniqueId ) );
-+}
-+
-+
-+DiagramDefinitionContext::~DiagramDefinitionContext()
-+{
-+    mpLayout->getNode()->dump(0);
-+}
-+
-+void SAL_CALL DiagramDefinitionContext::endFastElement( ::sal_Int32 )
-+    throw (SAXException, RuntimeException)
-+{
-+
-+}
-+
-+
-+Reference< XFastContextHandler > SAL_CALL
-+DiagramDefinitionContext::createFastChildContext( ::sal_Int32 aElement,
-+                                                  const Reference< XFastAttributeList >& xAttribs )
-+    throw (SAXException, RuntimeException)
-+{
-+    Reference< XFastContextHandler > xRet;
-+
-+    switch( aElement )
-+    {
-+    case NMSP_DIAGRAM|XML_title:
-+        mpLayout->setTitle( xAttribs->getOptionalValue( XML_val ) );
-+        break;
-+    case NMSP_DIAGRAM|XML_desc:
-+        mpLayout->setDesc( xAttribs->getOptionalValue( XML_val ) );
-+        break;
-+    case NMSP_DIAGRAM|XML_layoutNode:
-+        mpLayout->getNode().reset( new LayoutNode() );
-+        xRet.set( new LayoutNodeContext( *this, xAttribs, mpLayout->getNode() ) );
-+        break;
-+     case NMSP_DIAGRAM|XML_clrData:
-+        // TODO, does not matter for the UI. skip.
-+        return xRet;
-+    case NMSP_DIAGRAM|XML_sampData:
-+        mpLayout->getSampData().reset( new DiagramData );
-+        xRet.set( new DataModelContext( *this, mpLayout->getSampData() ) );
-+        break;
-+    case NMSP_DIAGRAM|XML_styleData:
-+        mpLayout->getStyleData().reset( new DiagramData );
-+        xRet.set( new DataModelContext( *this, mpLayout->getStyleData() ) );
-+        break;
-+    case NMSP_DIAGRAM|XML_cat:
-+    case NMSP_DIAGRAM|XML_catLst:
-+        // TODO, does not matter for the UI
-+    default:
-+        break;
-+    }
-+    if( !xRet.is() )
-+        xRet.set(this);
-+
-+    return xRet;
-+}
-+
-+
-+} }
 diff --git oox/source/drawingml/diagram/diagramdefinitioncontext.hxx oox/source/drawingml/diagram/diagramdefinitioncontext.hxx
 index 147c2d8..8f32f64 100644
 --- oox/source/drawingml/diagram/diagramdefinitioncontext.hxx
@@ -4167,63 +3378,6 @@ index 147c2d8..8f32f64 100644
  
  namespace oox { namespace drawingml {
  
-diff --git oox/source/drawingml/diagram/diagramdefinitioncontext.hxx.orig oox/source/drawingml/diagram/diagramdefinitioncontext.hxx.orig
-new file mode 100644
-index 0000000..147c2d8
---- /dev/null
-+++ oox/source/drawingml/diagram/diagramdefinitioncontext.hxx.orig
-@@ -0,0 +1,51 @@
-+/*************************************************************************
-+ *
-+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-+ * 
-+ * Copyright 2000, 2010 Oracle and/or its affiliates.
-+ *
-+ * OpenOffice.org - a multi-platform office productivity suite
-+ *
-+ * 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_DRAWINGML_DIAGRAMDEFINITIONCONTEXT_HXX
-+#define OOX_DRAWINGML_DIAGRAMDEFINITIONCONTEXT_HXX
-+
-+#include "oox/core/contexthandler.hxx"
-+#include "oox/drawingml/diagram/diagram.hxx"
-+
-+namespace oox { namespace drawingml {
-+
-+class DiagramDefinitionContext : public ::oox::core::ContextHandler
-+{
-+public:
-+    DiagramDefinitionContext( ::oox::core::ContextHandler& rParent, const ::com::sun::star::uno::Reference< ::com::sun::star::xml::sax::XFastAttributeList >& xAttributes, const DiagramLayoutPtr &pLayout );
-+    virtual ~DiagramDefinitionContext();
-+
-+    virtual void SAL_CALL endFastElement( ::sal_Int32 Element ) throw (::com::sun::star::xml::sax::SAXException, ::com::sun::star::uno::RuntimeException);
-+    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);
-+
-+private:
-+    DiagramLayoutPtr mpLayout;
-+};
-+
-+} }
-+
-+#endif
 diff --git oox/source/drawingml/diagram/diagramfragmenthandler.cxx oox/source/drawingml/diagram/diagramfragmenthandler.cxx
 index 17f7b0b..aab46ca 100644
 --- oox/source/drawingml/diagram/diagramfragmenthandler.cxx
@@ -4451,236 +3605,6 @@ index 17f7b0b..aab46ca 100644
 +}
  
  } }
-diff --git oox/source/drawingml/diagram/diagramfragmenthandler.cxx.orig oox/source/drawingml/diagram/diagramfragmenthandler.cxx.orig
-new file mode 100644
-index 0000000..17f7b0b
---- /dev/null
-+++ oox/source/drawingml/diagram/diagramfragmenthandler.cxx.orig
-@@ -0,0 +1,224 @@
-+/*************************************************************************
-+ *
-+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-+ * 
-+ * Copyright 2000, 2010 Oracle and/or its affiliates.
-+ *
-+ * OpenOffice.org - a multi-platform office productivity suite
-+ *
-+ * 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 <osl/diagnose.h>
-+
-+#include "oox/drawingml/diagram/diagramfragmenthandler.hxx"
-+#include "oox/drawingml/diagram/datamodelcontext.hxx"
-+#include "oox/core/namespaces.hxx"
-+#include "diagramdefinitioncontext.hxx"
-+#include "tokens.hxx"
-+
-+using namespace ::oox::core;
-+using namespace ::com::sun::star::xml::sax;
-+using namespace ::com::sun::star::uno;
-+using ::rtl::OUString;
-+
-+namespace oox { namespace drawingml {
-+
-+DiagramDataFragmentHandler::DiagramDataFragmentHandler( XmlFilterBase& rFilter,
-+                                                        const OUString& rFragmentPath,
-+                                                        const DiagramDataPtr pDataPtr )
-+    throw( )
-+    : FragmentHandler( rFilter, rFragmentPath )
-+    , mpDataPtr( pDataPtr )
-+{
-+}
-+
-+DiagramDataFragmentHandler::~DiagramDataFragmentHandler( ) throw ()
-+{
-+
-+}
-+
-+void SAL_CALL DiagramDataFragmentHandler::endDocument()
-+    throw (SAXException, RuntimeException)
-+{
-+
-+}
-+
-+
-+Reference< XFastContextHandler > SAL_CALL
-+DiagramDataFragmentHandler::createFastChildContext( ::sal_Int32 aElement,
-+                                                    const Reference< XFastAttributeList >& )
-+    throw ( SAXException, RuntimeException)
-+{
-+    Reference< XFastContextHandler > xRet;
-+
-+    switch( aElement )
-+    {
-+    case NMSP_DIAGRAM|XML_dataModel:
-+        xRet.set( new DataModelContext( *this, mpDataPtr ) );
-+        break;
-+    default:
-+        break;
-+    }
-+
-+    if( !xRet.is() )
-+        xRet = getFastContextHandler();
-+
-+    return xRet;
-+}
-+
-+///////////////////
-+
-+DiagramLayoutFragmentHandler::DiagramLayoutFragmentHandler( XmlFilterBase& rFilter,
-+                                                        const OUString& rFragmentPath,
-+                                                        const DiagramLayoutPtr pDataPtr )
-+    throw( )
-+    : FragmentHandler( rFilter, rFragmentPath )
-+    , mpDataPtr( pDataPtr )
-+{
-+}
-+
-+DiagramLayoutFragmentHandler::~DiagramLayoutFragmentHandler( ) throw ()
-+{
-+
-+}
-+
-+void SAL_CALL DiagramLayoutFragmentHandler::endDocument()
-+    throw (SAXException, RuntimeException)
-+{
-+
-+}
-+
-+
-+Reference< XFastContextHandler > SAL_CALL
-+DiagramLayoutFragmentHandler::createFastChildContext( ::sal_Int32 aElement,
-+                                                      const Reference< XFastAttributeList >& xAttribs )
-+    throw ( SAXException, RuntimeException)
-+{
-+    Reference< XFastContextHandler > xRet;
-+
-+    switch( aElement )
-+    {
-+    case NMSP_DIAGRAM|XML_layoutDef:
-+        xRet.set( new DiagramDefinitionContext( *this, xAttribs, mpDataPtr ) );
-+        break;
-+    default:
-+        break;
-+    }
-+
-+    if( !xRet.is() )
-+        xRet = getFastContextHandler();
-+
-+    return xRet;
-+}
-+
-+///////////////////////
-+
-+DiagramQStylesFragmentHandler::DiagramQStylesFragmentHandler( XmlFilterBase& rFilter,
-+                                                        const OUString& rFragmentPath,
-+                                                        const DiagramQStylesPtr pDataPtr )
-+    throw( )
-+    : FragmentHandler( rFilter, rFragmentPath )
-+    , mpDataPtr( pDataPtr )
-+{
-+}
-+
-+DiagramQStylesFragmentHandler::~DiagramQStylesFragmentHandler( ) throw ()
-+{
-+
-+}
-+
-+void SAL_CALL DiagramQStylesFragmentHandler::endDocument()
-+    throw (SAXException, RuntimeException)
-+{
-+
-+}
-+
-+
-+Reference< XFastContextHandler > SAL_CALL
-+DiagramQStylesFragmentHandler::createFastChildContext( ::sal_Int32 aElement,
-+                                                    const Reference< XFastAttributeList >& )
-+    throw ( SAXException, RuntimeException)
-+{
-+    Reference< XFastContextHandler > xRet;
-+
-+    switch( aElement )
-+    {
-+    case NMSP_DIAGRAM|XML_styleDef:
-+        // TODO
-+        break;
-+    default:
-+        break;
-+    }
-+
-+    if( !xRet.is() )
-+        xRet = getFastContextHandler();
-+
-+    return xRet;
-+}
-+
-+/////////////////////
-+
-+DiagramColorsFragmentHandler::DiagramColorsFragmentHandler( XmlFilterBase& rFilter,
-+                                                        const OUString& rFragmentPath,
-+                                                        const DiagramColorsPtr pDataPtr )
-+    throw( )
-+    : FragmentHandler( rFilter, rFragmentPath )
-+    , mpDataPtr( pDataPtr )
-+{
-+}
-+
-+DiagramColorsFragmentHandler::~DiagramColorsFragmentHandler( ) throw ()
-+{
-+
-+}
-+
-+void SAL_CALL DiagramColorsFragmentHandler::endDocument()
-+    throw (SAXException, RuntimeException)
-+{
-+
-+}
-+
-+
-+Reference< XFastContextHandler > SAL_CALL
-+DiagramColorsFragmentHandler::createFastChildContext( ::sal_Int32 aElement,
-+                                                    const Reference< XFastAttributeList >& )
-+    throw ( SAXException, RuntimeException)
-+{
-+    Reference< XFastContextHandler > xRet;
-+
-+    switch( aElement )
-+    {
-+    case NMSP_DIAGRAM|XML_colorsDef:
-+        // TODO
-+        break;
-+    default:
-+        break;
-+    }
-+
-+    if( !xRet.is() )
-+        xRet = getFastContextHandler();
-+
-+    return xRet;
-+}
-+
-+
-+
-+
-+} }
 diff --git oox/source/drawingml/diagram/diagramfragmenthandler.hxx oox/source/drawingml/diagram/diagramfragmenthandler.hxx
 new file mode 100644
 index 0000000..86e9bd2
@@ -5554,153 +4478,6 @@ index 9ac3289..43a6281 100644
 +}
  
  } }
-diff --git oox/source/drawingml/diagram/diagramlayoutatoms.cxx.orig oox/source/drawingml/diagram/diagramlayoutatoms.cxx.orig
-new file mode 100644
-index 0000000..9ac3289
---- /dev/null
-+++ oox/source/drawingml/diagram/diagramlayoutatoms.cxx.orig
-@@ -0,0 +1,141 @@
-+/*************************************************************************
-+ *
-+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-+ * 
-+ * Copyright 2000, 2010 Oracle and/or its affiliates.
-+ *
-+ * OpenOffice.org - a multi-platform office productivity suite
-+ *
-+ * 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 "oox/drawingml/diagram/diagramlayoutatoms.hxx"
-+
-+#include <functional>
-+#include <boost/bind.hpp>
-+
-+#include "oox/helper/attributelist.hxx"
-+#include "layoutnodecontext.hxx"
-+
-+using namespace ::com::sun::star::uno;
-+using namespace ::com::sun::star::xml::sax;
-+using namespace ::oox::core;
-+
-+namespace oox { namespace drawingml {
-+
-+
-+IteratorAttr::IteratorAttr( )
-+    : mnAxis( 0 )
-+    , mnCnt( 0 )
-+    , mbHideLastTrans( false )
-+    , mnPtType( 0 )
-+    , mnSt( 0 )
-+    , mnStep( 1 )
-+{
-+}
-+
-+void IteratorAttr::loadFromXAttr( const Reference< XFastAttributeList >& xAttr )
-+{
-+    AttributeList attr( xAttr );
-+    mnAxis = xAttr->getOptionalValueToken( XML_axis, 0 );
-+    mnCnt = attr.getInteger( XML_cnt, 0 );
-+    mbHideLastTrans = attr.getBool( XML_hideLastTrans, false );
-+    mnPtType = xAttr->getOptionalValueToken( XML_ptType, 0 );
-+    mnSt = attr.getInteger( XML_st, 0 );
-+    mnStep = attr.getInteger( XML_step, 1 );
-+}
-+
-+
-+
-+ConditionAttr::ConditionAttr()
-+    : mnFunc( 0 )
-+    , mnArg( 0 )
-+    , mnOp( 0 )
-+{
-+
-+}
-+
-+
-+void ConditionAttr::loadFromXAttr( const Reference< XFastAttributeList >& xAttr )
-+{
-+    mnFunc = xAttr->getOptionalValueToken( XML_func, 0 );
-+    // mnArg will be -1 for "none" or any other unknown value
-+    mnArg = LayoutNodeContext::tagToVarIdx( xAttr->getOptionalValueToken( XML_arg, XML_none ) );
-+    mnOp = xAttr->getOptionalValueToken( XML_op, 0 );
-+    msVal = xAttr->getOptionalValue( XML_val );
-+}
-+
-+
-+void LayoutAtom::dump(int level)
-+{
-+    OSL_TRACE( "level = %d - %s of type %s", level,
-+               OUSTRING_TO_CSTR( msName ),
-+               typeid(*this).name() );
-+    std::for_each( mpChildNodes.begin(), mpChildNodes.end(),
-+                  boost::bind( &LayoutAtom::dump, _1, level + 1 ) );
-+}
-+
-+
-+void ForEachAtom::processAtom()
-+{
-+    // TODO there is likely some conditions
-+    std::for_each( mpChildNodes.begin(), mpChildNodes.end(),
-+                   boost::bind( &LayoutAtom::processAtom, _1 ) );
-+}
-+
-+/** call ConditionAtom::test() if pAtom is one
-+ * if it is not a ConditionAtom, then return false.
-+ */
-+static bool _test_atom( const LayoutAtomPtr & pAtom)
-+{
-+    try {
-+        bool bResult = false;
-+        const ConditionAtomPtr pCond = boost::dynamic_pointer_cast< ConditionAtom >(pAtom);
-+        if( pCond )
-+        {
-+            bResult = pCond->test();
-+        }
-+        return bResult;
-+    }
-+    catch(...)
-+    {
-+    }
-+    return false;
-+}
-+
-+void ChooseAtom::processAtom()
-+{
-+    std::vector< LayoutAtomPtr >::iterator
-+        iter = std::find_if( mpChildNodes.begin(), mpChildNodes.end(),
-+                             boost::bind( &_test_atom, _1 ) );
-+    if( iter != mpChildNodes.end() )
-+    {
-+        // TODO do something
-+        (*iter)->processAtom();
-+    }
-+}
-+
-+bool ConditionAtom::test()
-+{
-+    // TODO
-+    return false;
-+}
-+
-+
-+} }
 diff --git oox/source/drawingml/diagram/diagramlayoutatoms.hxx oox/source/drawingml/diagram/diagramlayoutatoms.hxx
 new file mode 100644
 index 0000000..907f527
@@ -6313,369 +5090,6 @@ index 897afeb..8a8785d 100644
          break;
      case NMSP_DIAGRAM|XML_presOf:
      {
-diff --git oox/source/drawingml/diagram/layoutnodecontext.cxx.orig oox/source/drawingml/diagram/layoutnodecontext.cxx.orig
-new file mode 100644
-index 0000000..897afeb
---- /dev/null
-+++ oox/source/drawingml/diagram/layoutnodecontext.cxx.orig
-@@ -0,0 +1,357 @@
-+/*************************************************************************
-+ *
-+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-+ * 
-+ * Copyright 2000, 2010 Oracle and/or its affiliates.
-+ *
-+ * OpenOffice.org - a multi-platform office productivity suite
-+ *
-+ * 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 "layoutnodecontext.hxx"
-+
-+#include "oox/helper/attributelist.hxx"
-+#include "oox/core/namespaces.hxx"
-+#include "oox/drawingml/diagram/diagram.hxx"
-+#include "oox/drawingml/shapecontext.hxx"
-+#include "diagramdefinitioncontext.hxx"
-+
-+using namespace ::oox::core;
-+using namespace ::com::sun::star::uno;
-+using namespace ::com::sun::star::xml::sax;
-+using ::rtl::OUString;
-+
-+namespace oox { namespace drawingml {
-+
-+class IfContext
-+    : public LayoutNodeContext
-+{
-+public:
-+    IfContext( ContextHandler& rParent,
-+               const Reference< XFastAttributeList >& xAttribs,
-+               const LayoutAtomPtr & pNode )
-+        : LayoutNodeContext( rParent, xAttribs, pNode )
-+        {
-+            ConditionAtomPtr pAtom( boost::dynamic_pointer_cast< ConditionAtom >(pNode) );
-+            OSL_ENSURE( pAtom, "Must pass a ConditionAtom" );
-+
-+            pAtom->iterator().loadFromXAttr( xAttribs );
-+            pAtom->cond().loadFromXAttr( xAttribs );
-+        }
-+};
-+
-+
-+
-+class AlgorithmContext
-+    : public ContextHandler
-+{
-+public:
-+    AlgorithmContext( ContextHandler& rParent, const Reference< XFastAttributeList >& xAttribs, const LayoutAtomPtr & pNode )
-+        : ContextHandler( rParent )
-+        , mnRevision( 0 )
-+        , mnType( 0 )
-+        , mpNode( pNode )
-+        {
-+            AttributeList aAttribs( xAttribs );
-+            mnRevision = aAttribs.getInteger( XML_rev, 0 );
-+            mnType = xAttribs->getOptionalValueToken( XML_type, 0 );
-+        }
-+
-+private:
-+    sal_Int32     mnRevision;
-+    sal_Int32     mnType;
-+    LayoutAtomPtr mpNode;
-+};
-+
-+
-+class ChooseContext
-+    : public ContextHandler
-+{
-+public:
-+    ChooseContext( ContextHandler& rParent, const Reference< XFastAttributeList >& xAttribs, const LayoutAtomPtr & pNode )
-+        : ContextHandler( rParent )
-+        , mbHasElse( false )
-+        , mpNode( pNode )
-+        {
-+            msName = xAttribs->getOptionalValue( XML_name );
-+        }
-+
-+    virtual Reference< XFastContextHandler > SAL_CALL
-+    createFastChildContext( ::sal_Int32 aElement,
-+                            const Reference< XFastAttributeList >& xAttribs )
-+        throw (SAXException, RuntimeException)
-+        {
-+            Reference< XFastContextHandler > xRet;
-+
-+            switch( aElement )
-+            {
-+            case XML_if:
-+            {
-+                // CT_When
-+                LayoutAtomPtr pAtom( new ConditionAtom( false ) );
-+                mpNode->addChild( pAtom );
-+                xRet.set( new IfContext( *this, xAttribs, pAtom ) );
-+                break;
-+            }
-+            case XML_else:
-+                // CT_Otherwise
-+                if( !mbHasElse )
-+                {
-+                    LayoutAtomPtr pAtom( new ConditionAtom( true ) );
-+                    mpNode->addChild( pAtom );
-+                    xRet.set( new IfContext( *this, xAttribs, pAtom ) );
-+                    mbHasElse = true;
-+                }
-+                else
-+                {
-+                    OSL_TRACE( "ignoring second else clause" );
-+                }
-+                break;
-+            default:
-+                break;
-+            }
-+
-+            if( !xRet.is() )
-+                xRet.set(this);
-+
-+            return xRet;
-+        }
-+private:
-+    bool     mbHasElse;
-+    OUString msName;
-+    LayoutAtomPtr mpNode;
-+};
-+
-+
-+
-+
-+class ForEachContext
-+    : public LayoutNodeContext
-+{
-+public:
-+    ForEachContext( ContextHandler& rParent, const Reference< XFastAttributeList >& xAttribs, const LayoutAtomPtr & pNode )
-+        : LayoutNodeContext( rParent, xAttribs, pNode )
-+        {
-+            ForEachAtomPtr pAtom( boost::dynamic_pointer_cast< ForEachAtom >(pNode) );
-+            OSL_ENSURE( pAtom, "Must pass a ForEachAtom" );
-+            xAttribs->getOptionalValue( XML_ref );
-+
-+            pAtom->iterator().loadFromXAttr( xAttribs );
-+        }
-+};
-+
-+
-+// CT_LayoutVariablePropertySet
-+class LayoutVariablePropertySetContext
-+    : public ContextHandler
-+{
-+public:
-+    LayoutVariablePropertySetContext( ContextHandler& rParent, LayoutNode::VarMap & aVar )
-+        : ContextHandler( rParent )
-+        , mVariables( aVar )
-+        {
-+        }
-+
-+    virtual ~LayoutVariablePropertySetContext()
-+        {
-+        }
-+
-+    virtual Reference< XFastContextHandler > SAL_CALL createFastChildContext( ::sal_Int32 aElement, const Reference< XFastAttributeList >& xAttribs )
-+        throw (SAXException, RuntimeException)
-+        {
-+            Reference< XFastContextHandler > xRet;
-+
-+            sal_Int32 nIdx =  LayoutNodeContext::tagToVarIdx( getToken( aElement ) );
-+            if( nIdx != -1 )
-+            {
-+                mVariables[ nIdx ] = makeAny( xAttribs->getOptionalValue( XML_val ) );
-+            }
-+            if( !xRet.is() )
-+                xRet.set(this);
-+
-+            return xRet;
-+        }
-+private:
-+    LayoutNode::VarMap & mVariables;
-+};
-+
-+
-+// CT_LayoutNode
-+LayoutNodeContext::LayoutNodeContext( ContextHandler& rParent,
-+                                      const Reference< XFastAttributeList >& xAttribs,
-+                                      const LayoutAtomPtr &pNode )
-+    : ContextHandler( rParent )
-+    , mpNode( pNode )
-+{
-+    OSL_ENSURE( pNode, "Node must NOT be NULL" );
-+    mpNode->setName( xAttribs->getOptionalValue( XML_name ) );
-+    // TODO shall we even bother?
-+    // b or t
-+//	sal_Int32 nChOrder = xAttributes->getOptionalValueToken( XML_chOrder, XML_b );
-+//	OUString sMoveWith = xAttributes->getOptionalValue( XML_moveWith );
-+//	OUString sStyleLbl = xAttributes->getOptionalValue( XML_styleLbl );
-+}
-+
-+
-+LayoutNodeContext::~LayoutNodeContext()
-+{
-+}
-+
-+void SAL_CALL LayoutNodeContext::endFastElement( ::sal_Int32 )
-+    throw (SAXException, RuntimeException)
-+{
-+
-+}
-+
-+/** convert the XML tag to a variable index in the array
-+ * @param aTag the tag, wihout namespace
-+ * @return the variable index. -1 is an error
-+ */
-+sal_Int32 LayoutNodeContext::tagToVarIdx( sal_Int32 aTag )
-+{
-+    sal_Int32 nIdx = -1;
-+    switch( aTag )
-+    {
-+    case NMSP_DIAGRAM|XML_animLvl:
-+        nIdx = LayoutNode::VAR_animLvl;
-+        break;
-+    case NMSP_DIAGRAM|XML_animOne:
-+        nIdx = LayoutNode::VAR_animOne;
-+        break;
-+    case NMSP_DIAGRAM|XML_bulletEnabled:
-+        nIdx = LayoutNode::VAR_bulletEnabled;
-+        break;
-+    case NMSP_DIAGRAM|XML_chMax:
-+        nIdx = LayoutNode::VAR_chMax;
-+        break;
-+    case NMSP_DIAGRAM|XML_chPref:
-+        nIdx = LayoutNode::VAR_chPref;
-+        break;
-+    case NMSP_DIAGRAM|XML_dir:
-+        nIdx = LayoutNode::VAR_dir;
-+        break;
-+    case NMSP_DIAGRAM|XML_hierBranch:
-+        nIdx = LayoutNode::VAR_hierBranch;
-+        break;
-+    case NMSP_DIAGRAM|XML_orgChart:
-+        nIdx = LayoutNode::VAR_orgChart;
-+        break;
-+    case NMSP_DIAGRAM|XML_resizeHandles:
-+        nIdx = LayoutNode::VAR_resizeHandles;
-+        break;
-+    default:
-+        break;
-+    }
-+    return nIdx;
-+}
-+
-+
-+Reference< XFastContextHandler > SAL_CALL
-+LayoutNodeContext::createFastChildContext( ::sal_Int32 aElement,
-+                                                  const Reference< XFastAttributeList >& xAttribs )
-+    throw (SAXException, RuntimeException)
-+{
-+    Reference< XFastContextHandler > xRet;
-+
-+    switch( aElement )
-+    {
-+    case NMSP_DIAGRAM|XML_layoutNode:
-+    {
-+        LayoutNodePtr pNode( new LayoutNode() );
-+        mpNode->addChild( pNode );
-+        xRet.set( new LayoutNodeContext( *this, xAttribs, pNode ) );
-+        break;
-+    }
-+    case NMSP_DIAGRAM|XML_shape:
-+    {
-+        ShapePtr pShape( new Shape() );
-+        xRet.set( new ShapeContext( *this, ShapePtr(), pShape ) );
-+        break;
-+    }
-+    case NMSP_DIAGRAM|XML_extLst:
-+        return xRet;
-+    case NMSP_DIAGRAM|XML_alg:
-+    {
-+        // CT_Algorithm
-+        LayoutAtomPtr pAtom( new AlgAtom );
-+        mpNode->addChild( pAtom );
-+        xRet.set( new AlgorithmContext( *this, xAttribs, pAtom ) );
-+        break;
-+    }
-+    case NMSP_DIAGRAM|XML_choose:
-+    {
-+        // CT_Choose
-+        LayoutAtomPtr pAtom( new ChooseAtom );
-+        mpNode->addChild( pAtom );
-+        xRet.set( new ChooseContext( *this, xAttribs, pAtom ) );
-+         break;
-+    }
-+    case NMSP_DIAGRAM|XML_forEach:
-+    {
-+        // CT_ForEach
-+        LayoutAtomPtr pAtom( new ForEachAtom );
-+        mpNode->addChild( pAtom );
-+        xRet.set( new ForEachContext( *this, xAttribs, pAtom ) );
-+        break;
-+    }
-+    case NMSP_DIAGRAM|XML_constrLst:
-+        // CT_Constraints
-+        // TODO
-+        break;
-+    case NMSP_DIAGRAM|XML_presOf:
-+    {
-+        // CT_PresentationOf
-+        // TODO
-+        xAttribs->getOptionalValue( XML_axis );
-+        xAttribs->getOptionalValue( XML_cnt );
-+        xAttribs->getOptionalValue( XML_hideLastTrans );
-+        xAttribs->getOptionalValue( XML_ptType );
-+        xAttribs->getOptionalValue( XML_st );
-+        xAttribs->getOptionalValue( XML_step );
-+        break;
-+    }
-+    case NMSP_DIAGRAM|XML_ruleLst:
-+        // CT_Rules
-+        // TODO
-+        break;
-+    case NMSP_DIAGRAM|XML_varLst:
-+    {
-+        LayoutNodePtr pNode( boost::dynamic_pointer_cast< LayoutNode >( mpNode ) );
-+        if( pNode )
-+        {
-+            xRet.set( new LayoutVariablePropertySetContext( *this, pNode->variables() ) );
-+        }
-+        else
-+        {
-+            OSL_TRACE( "OOX: encountered a varLst in a non layoutNode context" );
-+        }
-+        break;
-+    }
-+    default:
-+        break;
-+    }
-+    if( !xRet.is() )
-+        xRet.set(this);
-+
-+    return xRet;
-+}
-+
-+
-+} }
 diff --git oox/source/drawingml/diagram/layoutnodecontext.hxx oox/source/drawingml/diagram/layoutnodecontext.hxx
 index 6ded8e9..697f0f5 100644
 --- oox/source/drawingml/diagram/layoutnodecontext.hxx
@@ -6690,64 +5104,6 @@ index 6ded8e9..697f0f5 100644
  
  namespace oox { namespace drawingml {
  
-diff --git oox/source/drawingml/diagram/layoutnodecontext.hxx.orig oox/source/drawingml/diagram/layoutnodecontext.hxx.orig
-new file mode 100644
-index 0000000..6ded8e9
---- /dev/null
-+++ oox/source/drawingml/diagram/layoutnodecontext.hxx.orig
-@@ -0,0 +1,52 @@
-+/*************************************************************************
-+ *
-+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-+ * 
-+ * Copyright 2000, 2010 Oracle and/or its affiliates.
-+ *
-+ * OpenOffice.org - a multi-platform office productivity suite
-+ *
-+ * 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_DRAWINGML_LAYOUTNODECONTEXT_HXX
-+#define OOX_DRAWINGML_LAYOUTNODECONTEXT_HXX
-+
-+#include "oox/core/contexthandler.hxx"
-+#include "oox/drawingml/diagram/diagram.hxx"
-+
-+namespace oox { namespace drawingml {
-+
-+class LayoutNodeContext : public ::oox::core::ContextHandler
-+{
-+public:
-+    LayoutNodeContext( ContextHandler& rParent, const ::com::sun::star::uno::Reference< ::com::sun::star::xml::sax::XFastAttributeList >& xAttributes, const LayoutAtomPtr &pNode );
-+    virtual ~LayoutNodeContext();
-+
-+    virtual void SAL_CALL endFastElement( ::sal_Int32 Element ) throw (::com::sun::star::xml::sax::SAXException, ::com::sun::star::uno::RuntimeException);
-+    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);
-+
-+    static ::sal_Int32 tagToVarIdx( ::sal_Int32 aTag );
-+private:
-+    LayoutAtomPtr mpNode;
-+};
-+
-+} }
-+
-+#endif
 diff --git oox/source/drawingml/diagram/makefile.mk oox/source/drawingml/diagram/makefile.mk
 index 9d526ed..1d438c2 100644
 --- oox/source/drawingml/diagram/makefile.mk
@@ -6760,65 +5116,6 @@ index 9d526ed..1d438c2 100644
      $(SLO)$/diagram.obj \
      $(SLO)$/diagramfragmenthandler.obj \
      $(SLO)$/diagramdefinitioncontext.obj \
-diff --git oox/source/drawingml/diagram/makefile.mk.orig oox/source/drawingml/diagram/makefile.mk.orig
-new file mode 100644
-index 0000000..9d526ed
---- /dev/null
-+++ oox/source/drawingml/diagram/makefile.mk.orig
-@@ -0,0 +1,53 @@
-+#*************************************************************************
-+#
-+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-+# 
-+# Copyright 2000, 2010 Oracle and/or its affiliates.
-+#
-+# OpenOffice.org - a multi-platform office productivity suite
-+#
-+# 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.
-+#
-+#*************************************************************************
-+
-+PRJ=..$/..$/..
-+
-+PRJNAME=oox
-+TARGET=diagram
-+AUTOSEG=true
-+
-+ENABLE_EXCEPTIONS=TRUE
-+
-+# --- Settings -----------------------------------------------------
-+
-+.INCLUDE :  settings.mk
-+.INCLUDE: $(PRJ)$/util$/makefile.pmk
-+
-+# --- Files --------------------------------------------------------
-+
-+SLOFILES = \
-+    $(SLO)$/diagram.obj \
-+    $(SLO)$/diagramfragmenthandler.obj \
-+    $(SLO)$/diagramdefinitioncontext.obj \
-+    $(SLO)$/diagramlayoutatoms.obj \
-+    $(SLO)$/datamodelcontext.obj \
-+    $(SLO)$/layoutnodecontext.obj
-+
-+# --- Targets -------------------------------------------------------
-+
-+.INCLUDE :  target.mk
 diff --git oox/source/drawingml/drawingmltypes.cxx oox/source/drawingml/drawingmltypes.cxx
 index dc76800..4882ebb 100644
 --- oox/source/drawingml/drawingmltypes.cxx
commit 51b8c3d31fe868303cbd1d8c49477a68501c66d4
Author: Thorsten Behrens <tbehrens at novell.com>
Date:   Thu Aug 5 01:01:44 2010 +0200

    Enabled oox smartart import again
    
    * patches/dev300/apply: moved to ooxml section
    * patches/dev300/oox-build-fix-dev300-m77.diff: removed superfluous
      hunks
    * patches/dev300/oox-smartart-import-xlsx-part.diff: removed
    * patches/dev300/oox-smartart-import.diff: adapted to ooo330-m2

diff --git a/patches/dev300/apply b/patches/dev300/apply
index d98b894..85280f6 100644
--- a/patches/dev300/apply
+++ b/patches/dev300/apply
@@ -2981,8 +2981,6 @@ xlsx-shared-xlsx-export-perf-rowbuffer.diff, n#558577, kohei
 # hack to ignore writerfilter when odf-converter is present
 odf-converter-ignore-writerfilter.diff, n#348471, n#502173, jholesov
 
-#FIXME OOXMLExportDevel oox-smartart-import.diff, thorsten
-
 [ OOXML ]
 oox-pptx-export-fix-hidden-slides.diff, n#499131, rodo
 
@@ -3608,6 +3606,7 @@ magyarlinuxlibertine-fonts.diff
 [ OOXML ]
 # FIXME dev300-m83 oox-pptx-import-fix-placeholder-text-style-1.diff, n#592906, rodo
 oox-drawingml-fix-apply-shape-reference-crash.diff, n#593611, rodo
+oox-smartart-import.diff, thorsten
 
 [ NovellOnlyWin32 ]
 sled10-splash.diff, i#123456, pmladek
diff --git a/patches/dev300/oox-build-fix-dev300-m77.diff b/patches/dev300/oox-build-fix-dev300-m77.diff
index f0f5791..ef0d3ba 100644
--- a/patches/dev300/oox-build-fix-dev300-m77.diff
+++ b/patches/dev300/oox-build-fix-dev300-m77.diff
@@ -1,6 +1,4 @@
 ---
- oox/inc/oox/drawingml/customshapeproperties.hxx    |    1 +
- oox/inc/oox/drawingml/shape.hxx                    |    5 +++++
  oox/inc/oox/export/drawingml.hxx                   |    2 +-
  oox/inc/oox/export/vmlexport.hxx                   |    2 +-
  oox/prj/build.lst                                  |    2 +-
@@ -11,34 +9,6 @@
  oox/util/makefile.mk                               |    4 +++-
  10 files changed, 23 insertions(+), 11 deletions(-)
 
-diff --git oox/inc/oox/drawingml/customshapeproperties.hxx oox/inc/oox/drawingml/customshapeproperties.hxx
-index 4e8d763..94c5049 100644
---- oox/inc/oox/drawingml/customshapeproperties.hxx
-+++ oox/inc/oox/drawingml/customshapeproperties.hxx
-@@ -124,6 +124,7 @@ public:
-             const ::com::sun::star::uno::Reference < ::com::sun::star::beans::XPropertySet > & xPropSet,
-                         const ::com::sun::star::uno::Reference < ::com::sun::star::drawing::XShape > & xShape) const;
- 
-+    const rtl::OUString getShapePresetType() const { return maShapePresetType; }
-     void setShapePresetType( const rtl::OUString& rShapePresetType ){ maShapePresetType = rShapePresetType; };
- 
-     std::vector< CustomShapeGuide >&	getAdjustmentGuideList(){ return maAdjustmentGuideList; };
-diff --git oox/inc/oox/drawingml/shape.hxx oox/inc/oox/drawingml/shape.hxx
-index b784c07..deaf882 100644
---- oox/inc/oox/drawingml/shape.hxx
-+++ oox/inc/oox/drawingml/shape.hxx
-@@ -161,6 +161,11 @@ public:
- 
-     virtual void        applyShapeReference( const Shape& rReferencedShape );
- 
-+    const ::com::sun::star::awt::Size&
-+                        getSize() const { return maSize; }
-+    const ::com::sun::star::awt::Point&
-+                        getPosition() const { return maPosition; }
-+
- protected:
- 
-     ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShape >
 diff --git oox/inc/oox/export/drawingml.hxx oox/inc/oox/export/drawingml.hxx
 index 211c90e..10397a5 100644
 --- oox/inc/oox/export/drawingml.hxx
diff --git a/patches/dev300/oox-smartart-import-xlsx-part.diff b/patches/dev300/oox-smartart-import-xlsx-part.diff
deleted file mode 100644
index 708aa42..0000000
--- a/patches/dev300/oox-smartart-import-xlsx-part.diff
+++ /dev/null
@@ -1,29 +0,0 @@
-From de5fb0e6ea665fb5cb195781d33cfbe317ffe6c5 Mon Sep 17 00:00:00 2001
-From: Jan Holesovsky <kendy at suse.cz>
-Date: Fri, 14 May 2010 17:06:12 +0200
-Subject: [PATCH 616/768] oox-smartart-import-xlsx-part.diff
-
----
- sc/source/filter/excel/xestream.cxx |    5 ++---
- 1 files changed, 2 insertions(+), 3 deletions(-)
-
-diff --git sc/source/filter/excel/xestream.cxx sc/source/filter/excel/xestream.cxx
-index 51d6d3a..ac9dfef 100644
---- sc/source/filter/excel/xestream.cxx
-+++ sc/source/filter/excel/xestream.cxx
-@@ -1008,10 +1008,9 @@ const oox::drawingml::table::TableStyleListPtr XclExpXmlStream::getTableStyles()
-     return oox::drawingml::table::TableStyleListPtr();
- }
- 
--oox::drawingml::chart::ChartConverter& XclExpXmlStream::getChartConverter()
-+oox::drawingml::chart::ChartConverter* XclExpXmlStream::getChartConverter()
- {
--    // DO NOT CALL
--    return * (oox::drawingml::chart::ChartConverter*) NULL;
-+    return NULL;
- }
- 
- bool XclExpXmlStream::exportDocument() throw()
--- 
-1.7.0.1
-
diff --git a/patches/dev300/oox-smartart-import.diff b/patches/dev300/oox-smartart-import.diff
index 60e5a83..4f238d7 100644
--- a/patches/dev300/oox-smartart-import.diff
+++ b/patches/dev300/oox-smartart-import.diff
@@ -1,16 +1,131 @@
---- oox/inc/oox/core/filterbase.hxx.old	2009-10-08 16:17:32.000000000 +0200
-+++ oox/inc/oox/core/filterbase.hxx	2010-03-03 17:00:08.000000000 +0100
-@@ -52,6 +52,7 @@ namespace com { namespace sun { namespac
-     namespace frame { class XModel; }
+OOXML smartart import (somewhat)
+
+From: Thorsten Behrens <thb at openoffice.org>
+
+
+---
+
+ oox/inc/oox/core/filterbase.hxx                    |    5 
+ oox/inc/oox/core/xmlfilterbase.hxx                 |   29 +
+ oox/inc/oox/drawingml/chart/converterbase.hxx      |    2 
+ oox/inc/oox/drawingml/customshapeproperties.hxx    |    2 
+ oox/inc/oox/drawingml/diagram/datamodelcontext.hxx |   54 --
+ oox/inc/oox/drawingml/diagram/diagram.hxx          |  242 +------
+ .../drawingml/diagram/diagramfragmenthandler.hxx   |  100 ---
+ .../oox/drawingml/diagram/diagramlayoutatoms.hxx   |  209 ------
+ oox/inc/oox/drawingml/drawingmltypes.hxx           |    3 
+ oox/inc/oox/drawingml/graphicshapecontext.hxx      |    5 
+ oox/inc/oox/drawingml/scene3dcontext.hxx           |   56 ++
+ oox/inc/oox/drawingml/shape.hxx                    |   34 +
+ oox/inc/oox/drawingml/shape3dproperties.hxx        |  135 ++++
+ oox/inc/oox/drawingml/theme.hxx                    |    8 
+ oox/inc/oox/ppt/dgmimport.hxx                      |   71 ++
+ oox/inc/oox/ppt/dgmlayout.hxx                      |   72 ++
+ oox/inc/oox/ppt/pptimport.hxx                      |    2 
+ oox/inc/oox/xls/excelfilter.hxx                    |    2 
+ oox/inc/oox/xls/workbookhelper.hxx                 |    2 
+ oox/source/core/facreg.cxx                         |    6 
+ oox/source/core/filterbase.cxx                     |    9 
+ oox/source/core/xmlfilterbase.cxx                  |  164 ++++-
+ oox/source/drawingml/chart/chartspaceconverter.cxx |    5 
+ oox/source/drawingml/chart/converterbase.cxx       |    4 
+ oox/source/drawingml/chart/datasourceconverter.cxx |   13 
+ oox/source/drawingml/clrscheme.cxx                 |    2 
+ oox/source/drawingml/color.cxx                     |    1 
+ oox/source/drawingml/customshapegeometry.cxx       |    6 
+ .../drawingml/diagram/constraintlistcontext.cxx    |  102 +++
+ .../drawingml/diagram/constraintlistcontext.hxx    |   54 ++
+ oox/source/drawingml/diagram/datamodelcontext.cxx  |  232 +++++--
+ .../drawingml/diagram/datamodelcontext.cxx.orig    |  337 ++++++++++
+ oox/source/drawingml/diagram/datamodelcontext.hxx  |   57 ++
+ oox/source/drawingml/diagram/diagram.cxx           |  498 ++++++++++++--
+ oox/source/drawingml/diagram/diagram.cxx.orig      |  299 +++++++++
+ oox/source/drawingml/diagram/diagram.hxx           |  320 +++++++++
+ .../drawingml/diagram/diagramdefinitioncontext.cxx |   13 
+ .../diagram/diagramdefinitioncontext.cxx.orig      |  117 +++
+ .../drawingml/diagram/diagramdefinitioncontext.hxx |    2 
+ .../diagram/diagramdefinitioncontext.hxx.orig      |   51 +
+ .../drawingml/diagram/diagramfragmenthandler.cxx   |  183 +++--
+ .../diagram/diagramfragmenthandler.cxx.orig        |  224 +++++++
+ .../drawingml/diagram/diagramfragmenthandler.hxx   |  117 +++
+ .../drawingml/diagram/diagramlayoutatoms.cxx       |  689 +++++++++++++++++++-
+ .../drawingml/diagram/diagramlayoutatoms.cxx.orig  |  141 ++++
+ .../drawingml/diagram/diagramlayoutatoms.hxx       |  318 +++++++++
+ oox/source/drawingml/diagram/layoutnodecontext.cxx |  146 +++-
+ .../drawingml/diagram/layoutnodecontext.cxx.orig   |  357 ++++++++++
+ oox/source/drawingml/diagram/layoutnodecontext.hxx |    3 
+ .../drawingml/diagram/layoutnodecontext.hxx.orig   |   52 ++
+ oox/source/drawingml/diagram/makefile.mk           |    1 
+ oox/source/drawingml/diagram/makefile.mk.orig      |   53 ++
+ oox/source/drawingml/drawingmltypes.cxx            |    4 
+ oox/source/drawingml/fillproperties.cxx            |    3 
+ oox/source/drawingml/graphicshapecontext.cxx       |   58 --
+ oox/source/drawingml/lineproperties.cxx            |    5 
+ oox/source/drawingml/makefile.mk                   |    1 
+ oox/source/drawingml/scene3dcontext.cxx            |  189 +++++
+ oox/source/drawingml/shape.cxx                     |   42 +
+ oox/source/drawingml/shape3dproperties.cxx         |   67 ++
+ oox/source/drawingml/shapepropertiescontext.cxx    |    6 
+ oox/source/drawingml/textparagraph.cxx             |    9 
+ oox/source/drawingml/textparagraphproperties.cxx   |    1 
+ oox/source/helper/storagebase.cxx                  |   20 -
+ oox/source/ppt/dgmimport.cxx                       |  135 ++++
+ oox/source/ppt/dgmlayout.cxx                       |  193 ++++++
+ oox/source/ppt/makefile.mk                         |    2 
+ oox/source/ppt/pptimport.cxx                       |    4 
+ oox/source/ppt/presentationfragmenthandler.cxx     |   13 
+ oox/source/ppt/slidepersist.cxx                    |   11 
+ oox/source/shape/ShapeFilterBase.cxx               |    4 
+ oox/source/shape/ShapeFilterBase.hxx               |    2 
+ oox/source/xls/excelfilter.cxx                     |    2 
+ oox/source/xls/workbookhelper.cxx                  |    4 
+ sc/source/filter/excel/xestream.cxx                |    5 
+ sc/source/filter/inc/xestream.hxx                  |    2 
+ sw/source/filter/ww8/docxexportfilter.hxx          |    2 
+ 77 files changed, 5401 insertions(+), 992 deletions(-)
+ delete mode 100644 oox/inc/oox/drawingml/diagram/datamodelcontext.hxx
+ delete mode 100644 oox/inc/oox/drawingml/diagram/diagramfragmenthandler.hxx
+ delete mode 100644 oox/inc/oox/drawingml/diagram/diagramlayoutatoms.hxx
+ create mode 100644 oox/inc/oox/drawingml/scene3dcontext.hxx
+ create mode 100644 oox/inc/oox/drawingml/shape3dproperties.hxx
+ create mode 100644 oox/inc/oox/ppt/dgmimport.hxx
+ create mode 100644 oox/inc/oox/ppt/dgmlayout.hxx
+ create mode 100644 oox/source/drawingml/diagram/constraintlistcontext.cxx
+ create mode 100644 oox/source/drawingml/diagram/constraintlistcontext.hxx
+ create mode 100644 oox/source/drawingml/diagram/datamodelcontext.cxx.orig
+ create mode 100644 oox/source/drawingml/diagram/datamodelcontext.hxx
+ create mode 100644 oox/source/drawingml/diagram/diagram.cxx.orig
+ create mode 100644 oox/source/drawingml/diagram/diagram.hxx
+ create mode 100644 oox/source/drawingml/diagram/diagramdefinitioncontext.cxx.orig
+ create mode 100644 oox/source/drawingml/diagram/diagramdefinitioncontext.hxx.orig
+ create mode 100644 oox/source/drawingml/diagram/diagramfragmenthandler.cxx.orig
+ create mode 100644 oox/source/drawingml/diagram/diagramfragmenthandler.hxx
+ create mode 100644 oox/source/drawingml/diagram/diagramlayoutatoms.cxx.orig
+ create mode 100644 oox/source/drawingml/diagram/diagramlayoutatoms.hxx
+ create mode 100644 oox/source/drawingml/diagram/layoutnodecontext.cxx.orig
+ create mode 100644 oox/source/drawingml/diagram/layoutnodecontext.hxx.orig
+ create mode 100644 oox/source/drawingml/diagram/makefile.mk.orig
+ create mode 100644 oox/source/drawingml/scene3dcontext.cxx
+ create mode 100644 oox/source/drawingml/shape3dproperties.cxx
+ create mode 100644 oox/source/ppt/dgmimport.cxx
+ create mode 100644 oox/source/ppt/dgmlayout.cxx
+
+
+diff --git oox/inc/oox/core/filterbase.hxx oox/inc/oox/core/filterbase.hxx
+index d54c534..3dc372a 100644
+--- oox/inc/oox/core/filterbase.hxx
++++ oox/inc/oox/core/filterbase.hxx
+@@ -50,6 +50,7 @@ namespace com { namespace sun { namespace star {
      namespace task { class XStatusIndicator; }
      namespace task { class XInteractionHandler; }
+     namespace frame { class XFrame; }
 +    namespace drawing { class XShape; }
      namespace io { class XInputStream; }
      namespace io { class XOutputStream; }
      namespace io { class XStream; }
-@@ -126,6 +127,10 @@ public:
-     const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >&
-                         getModelFactory() const;
+@@ -133,6 +134,10 @@ public:
+     const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XFrame >&
+                         getTargetFrame() const;
  
 +    /// Returns the parent shape to load into (if any)
 +    const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShape >&
@@ -19,9 +134,11 @@
      /** Returns the status indicator (may be null). */
      const ::com::sun::star::uno::Reference< ::com::sun::star::task::XStatusIndicator >&
                          getStatusIndicator() const;
---- oox/inc/oox/core/xmlfilterbase.hxx.old	2009-10-08 16:17:32.000000000 +0200
-+++ oox/inc/oox/core/xmlfilterbase.hxx	2010-03-03 17:00:08.000000000 +0100
-@@ -45,8 +45,10 @@
+diff --git oox/inc/oox/core/xmlfilterbase.hxx oox/inc/oox/core/xmlfilterbase.hxx
+index 0d747ef..8659ec1 100644
+--- oox/inc/oox/core/xmlfilterbase.hxx
++++ oox/inc/oox/core/xmlfilterbase.hxx
+@@ -42,8 +42,10 @@
  namespace com { namespace sun { namespace star {
      namespace container { class XNameContainer; }
      namespace document { class XDocumentProperties; }
@@ -32,7 +149,7 @@
  } } }
  
  namespace oox { namespace drawingml { class Theme; } }
-@@ -92,7 +94,7 @@ public:
+@@ -89,7 +91,7 @@ public:
  
      /** Has to be implemented by each filter, returns a filter-specific chart
          converter object, that should be global per imported document. */
@@ -41,7 +158,7 @@
  
      /** Has to be implemented by each filter to return the table style list. */
      virtual const ::oox::drawingml::table::TableStyleListPtr getTableStyles() = 0;
-@@ -110,6 +112,31 @@ public:
+@@ -107,6 +109,31 @@ public:
       */
      bool                importFragment( const ::rtl::Reference< FragmentHandler >& rxHandler );
  
@@ -73,9 +190,11 @@
      /** Imports the relations fragment associated with the specified fragment.
  
          @return  The relations collection of the specified fragment.
---- oox/inc/oox/drawingml/chart/converterbase.hxx.old	2009-10-07 15:06:37.000000000 +0200
-+++ oox/inc/oox/drawingml/chart/converterbase.hxx	2010-03-03 17:00:08.000000000 +0100
-@@ -79,7 +79,7 @@ protected:
+diff --git oox/inc/oox/drawingml/chart/converterbase.hxx oox/inc/oox/drawingml/chart/converterbase.hxx
+index 5c26d73..c1c8986 100644
+--- oox/inc/oox/drawingml/chart/converterbase.hxx
++++ oox/inc/oox/drawingml/chart/converterbase.hxx
+@@ -82,7 +82,7 @@ protected:
      /** Returns the filter object of the imported/exported document. */
      ::oox::core::XmlFilterBase& getFilter() const;
      /** Returns the chart converter. */
@@ -84,22 +203,23 @@
      /** Returns the API chart document model. */
      ::com::sun::star::uno::Reference< ::com::sun::star::chart2::XChartDocument >
                          getChartDocument() const;
---- oox/inc/oox/drawingml/customshapeproperties.hxx.old	2010-03-03 16:59:43.000000000 +0100
-+++ oox/inc/oox/drawingml/customshapeproperties.hxx	2010-03-03 17:00:08.000000000 +0100
-@@ -77,8 +77,9 @@ public:
+diff --git oox/inc/oox/drawingml/customshapeproperties.hxx oox/inc/oox/drawingml/customshapeproperties.hxx
+index 66c4c38..6b63352 100644
+--- oox/inc/oox/drawingml/customshapeproperties.hxx
++++ oox/inc/oox/drawingml/customshapeproperties.hxx
+@@ -124,6 +124,7 @@ public:
              const ::com::sun::star::uno::Reference < ::com::sun::star::beans::XPropertySet > & xPropSet,
                          const ::com::sun::star::uno::Reference < ::com::sun::star::drawing::XShape > & xShape) const;
  
--    void setShapePresetType( const rtl::OUString& rShapePresetType ){ maShapePresetType = rShapePresetType; };
--    std::vector< CustomShapeGuide >& getAdjustmentValues(){ return maAdjustmentValues; };
-+    void setShapePresetType( const rtl::OUString& rShapePresetType ){ maShapePresetType = rShapePresetType; }
 +    const rtl::OUString& getShapePresetType() const { return maShapePresetType; }
-+    std::vector< CustomShapeGuide >& getAdjustmentValues(){ return maAdjustmentValues; }
- 
-     double getValue( const std::vector< CustomShapeGuide >&, sal_uInt32 nIndex ) const;
-     ::basegfx::B2DPolyPolygon& getPolygon() { return maPolygon; }
---- oox/inc/oox/drawingml/diagram/datamodelcontext.hxx.old	2009-10-07 15:06:37.000000000 +0200
-+++ oox/inc/oox/drawingml/diagram/datamodelcontext.hxx	1970-01-01 01:00:00.000000000 +0100
+     void setShapePresetType( const rtl::OUString& rShapePresetType ){ maShapePresetType = rShapePresetType; };
+ 
+     std::vector< CustomShapeGuide >&	getAdjustmentGuideList(){ return maAdjustmentGuideList; };
+diff --git oox/inc/oox/drawingml/diagram/datamodelcontext.hxx oox/inc/oox/drawingml/diagram/datamodelcontext.hxx
+deleted file mode 100644
+index 6437482..0000000
+--- oox/inc/oox/drawingml/diagram/datamodelcontext.hxx
++++ /dev/null
 @@ -1,54 +0,0 @@
 -/*************************************************************************
 - *
@@ -155,9 +275,11 @@
 -} }
 -
 -#endif  //  OOX_DRAWINGML_SHAPEGROUPCONTEXT_HXX
---- oox/inc/oox/drawingml/diagram/diagram.hxx.old	2009-10-07 15:06:37.000000000 +0200
-+++ oox/inc/oox/drawingml/diagram/diagram.hxx	2010-03-03 17:00:08.000000000 +0100
-@@ -28,232 +28,40 @@
+diff --git oox/inc/oox/drawingml/diagram/diagram.hxx oox/inc/oox/drawingml/diagram/diagram.hxx
+index ef60545..e81a216 100644
+--- oox/inc/oox/drawingml/diagram/diagram.hxx
++++ oox/inc/oox/drawingml/diagram/diagram.hxx
+@@ -25,232 +25,40 @@
   *
   ************************************************************************/
  
@@ -172,14 +294,11 @@
 +#include <rtl/ustring.hxx>
  #include "oox/drawingml/shape.hxx"
 -#include "oox/drawingml/diagram/diagramlayoutatoms.hxx"
-+#include "oox/core/xmlfilterbase.hxx"
-+
-+#include <com/sun/star/xml/dom/XDocument.hpp>
- 
- namespace oox { namespace drawingml {
- 
+-
+-namespace oox { namespace drawingml {
+-
 -namespace dgm {
-+/** load diagram data, and put resulting graphic into shape
++#include "oox/core/xmlfilterbase.hxx"
  
 -/** A Connection
 - */
@@ -192,7 +311,8 @@
 -        , mnDestOrder( 0 )
 -        {
 -        }
--
++#include <com/sun/star/xml/dom/XDocument.hpp>
+ 
 -    void dump();
 -
 -    sal_Int32 mnType;
@@ -209,9 +329,11 @@
 -
 -typedef boost::shared_ptr< Connection > ConnectionPtr;
 -typedef std::vector< ConnectionPtr > Connections;
--
++namespace oox { namespace drawingml {
+ 
 -class Point;
--
++/** load diagram data, and put resulting graphic into shape
+ 
 -typedef boost::shared_ptr< Point > PointPtr;
 -typedef std::vector< PointPtr >      Points;
 -/** A point
@@ -415,8 +537,11 @@
  } }
  
  #endif
---- oox/inc/oox/drawingml/diagram/diagramfragmenthandler.hxx.old	2009-10-07 15:06:37.000000000 +0200
-+++ oox/inc/oox/drawingml/diagram/diagramfragmenthandler.hxx	1970-01-01 01:00:00.000000000 +0100
+diff --git oox/inc/oox/drawingml/diagram/diagramfragmenthandler.hxx oox/inc/oox/drawingml/diagram/diagramfragmenthandler.hxx
+deleted file mode 100644
+index 5a42a46..0000000
+--- oox/inc/oox/drawingml/diagram/diagramfragmenthandler.hxx
++++ /dev/null
 @@ -1,100 +0,0 @@
 -/*************************************************************************
 - *
@@ -518,8 +643,11 @@
 -
 -
 -#endif
---- oox/inc/oox/drawingml/diagram/diagramlayoutatoms.hxx.old	2009-10-07 15:06:37.000000000 +0200
-+++ oox/inc/oox/drawingml/diagram/diagramlayoutatoms.hxx	1970-01-01 01:00:00.000000000 +0100
+diff --git oox/inc/oox/drawingml/diagram/diagramlayoutatoms.hxx oox/inc/oox/drawingml/diagram/diagramlayoutatoms.hxx
+deleted file mode 100644
+index ae25085..0000000
+--- oox/inc/oox/drawingml/diagram/diagramlayoutatoms.hxx
++++ /dev/null
 @@ -1,209 +0,0 @@
 -/*************************************************************************
 - *
@@ -730,9 +858,11 @@
 -} }
 -
 -#endif
---- oox/inc/oox/drawingml/drawingmltypes.hxx.old	2010-03-03 16:59:43.000000000 +0100
-+++ oox/inc/oox/drawingml/drawingmltypes.hxx	2010-03-03 17:00:08.000000000 +0100
-@@ -61,6 +61,9 @@ typedef ::boost::shared_ptr< FillPropert
+diff --git oox/inc/oox/drawingml/drawingmltypes.hxx oox/inc/oox/drawingml/drawingmltypes.hxx
+index c513446..b18414f 100644
+--- oox/inc/oox/drawingml/drawingmltypes.hxx
++++ oox/inc/oox/drawingml/drawingmltypes.hxx
+@@ -58,6 +58,9 @@ typedef ::boost::shared_ptr< FillProperties > FillPropertiesPtr;
  struct GraphicProperties;
  typedef ::boost::shared_ptr< GraphicProperties > GraphicPropertiesPtr;
  
@@ -742,9 +872,11 @@
  struct TextCharacterProperties;
  typedef ::boost::shared_ptr< TextCharacterProperties > TextCharacterPropertiesPtr;
  
---- oox/inc/oox/drawingml/graphicshapecontext.hxx.old	2009-10-08 16:17:32.000000000 +0200
-+++ oox/inc/oox/drawingml/graphicshapecontext.hxx	2010-03-03 17:00:08.000000000 +0100
-@@ -33,7 +33,6 @@
+diff --git oox/inc/oox/drawingml/graphicshapecontext.hxx oox/inc/oox/drawingml/graphicshapecontext.hxx
+index c7239fc..ea49d47 100644
+--- oox/inc/oox/drawingml/graphicshapecontext.hxx
++++ oox/inc/oox/drawingml/graphicshapecontext.hxx
+@@ -30,7 +30,6 @@
  
  #include "oox/drawingml/shape.hxx"
  #include "oox/drawingml/shapecontext.hxx"
@@ -752,7 +884,7 @@
  
  namespace oox { namespace vml { struct OleObjectInfo; } }
  
-@@ -74,6 +73,8 @@ private:
+@@ -73,6 +72,8 @@ private:
  
  // ====================================================================
  
@@ -761,7 +893,7 @@
  class DiagramGraphicDataContext
      : public ShapeContext
  {
-@@ -83,8 +84,6 @@ public:
+@@ -82,8 +83,6 @@ public:
      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);
  
  private:
@@ -770,8 +902,11 @@
      ::rtl::OUString msDm;
      ::rtl::OUString msLo;
      ::rtl::OUString msQs;
---- oox/inc/oox/drawingml/scene3dcontext.hxx.old	2010-03-03 17:00:08.000000000 +0100
-+++ oox/inc/oox/drawingml/scene3dcontext.hxx	2010-03-03 17:00:08.000000000 +0100
+diff --git oox/inc/oox/drawingml/scene3dcontext.hxx oox/inc/oox/drawingml/scene3dcontext.hxx
+new file mode 100644
+index 0000000..c64bbf3
+--- /dev/null
++++ oox/inc/oox/drawingml/scene3dcontext.hxx
 @@ -0,0 +1,56 @@
 +/*************************************************************************
 + *
@@ -829,17 +964,19 @@
 +} }
 +
 +#endif // OOX_DRAWINGML_SCENE3DPROPERTIESCONTEXT_HPP
---- oox/inc/oox/drawingml/shape.hxx.old	2010-03-03 16:59:43.000000000 +0100
-+++ oox/inc/oox/drawingml/shape.hxx	2010-03-03 17:00:08.000000000 +0100
-@@ -35,6 +35,7 @@
+diff --git oox/inc/oox/drawingml/shape.hxx oox/inc/oox/drawingml/shape.hxx
+index 2780fcd..65380c2 100644
+--- oox/inc/oox/drawingml/shape.hxx
++++ oox/inc/oox/drawingml/shape.hxx
+@@ -32,6 +32,7 @@
  #include "oox/drawingml/drawingmltypes.hxx"
- //#include "oox/drawingml/customshapeproperties.hxx"
+ #include "oox/drawingml/customshapeproperties.hxx"
  #include "oox/drawingml/textliststyle.hxx"
 +#include "oox/drawingml/shape3dproperties.hxx"
  
  #include <com/sun/star/frame/XModel.hpp>
  #include <com/sun/star/drawing/XDrawPage.hpp>
-@@ -97,7 +98,8 @@ class Shape
+@@ -95,7 +96,8 @@ class Shape
  {
  public:
  
@@ -849,7 +986,7 @@
      virtual ~Shape();
  
      rtl::OUString&                  getServiceName(){ return msServiceName; }
-@@ -116,10 +118,17 @@ public:
+@@ -114,10 +116,17 @@ public:
  
      CustomShapePropertiesPtr        getCustomShapeProperties(){ return mpCustomShapePropertiesPtr; }
  
@@ -875,7 +1012,7 @@
  
 +    void                addChildren(
 +                            const ::oox::core::XmlFilterBase& rFilterBase,
-+                            const ThemePtr& rxTheme,
++                            const Theme* pTheme,
 +                            const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShapes >& rxShapes,
 +                            const ::com::sun::star::awt::Rectangle* pShapeRect = 0,
 +                            ShapeIdMap* pShapeMap = 0 );
@@ -883,7 +1020,7 @@
      void				setXShape( const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShape >& rXShape )
                              { mxShape = rXShape; };
      const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShape > &
-@@ -188,6 +204,7 @@ protected:
+@@ -193,6 +204,7 @@ protected:
      GraphicPropertiesPtr        mpGraphicPropertiesPtr;
      CustomShapePropertiesPtr    mpCustomShapePropertiesPtr;
      table::TablePropertiesPtr	mpTablePropertiesPtr;
@@ -891,8 +1028,8 @@
      PropertyMap                 maShapeProperties;
      TextListStylePtr            mpMasterTextListStyle;
      ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShape > mxShape;
-@@ -210,7 +227,11 @@ private:
-     sal_Bool                        mbFlipV;
+@@ -216,7 +228,11 @@ private:
+     sal_Bool						mbHidden;
  };
  
 -::rtl::OUString GetShapeType( sal_Int32 nType );
@@ -904,8 +1041,11 @@
  
  } }
  
---- oox/inc/oox/drawingml/shape3dproperties.hxx.old	2010-03-03 17:00:08.000000000 +0100
-+++ oox/inc/oox/drawingml/shape3dproperties.hxx	2010-03-03 17:00:08.000000000 +0100
+diff --git oox/inc/oox/drawingml/shape3dproperties.hxx oox/inc/oox/drawingml/shape3dproperties.hxx
+new file mode 100644
+index 0000000..2fe82aa
+--- /dev/null
++++ oox/inc/oox/drawingml/shape3dproperties.hxx
 @@ -0,0 +1,135 @@
 +/*************************************************************************
 + *
@@ -1042,9 +1182,11 @@
 +
 +#endif
 +
---- oox/inc/oox/drawingml/theme.hxx.old	2009-10-07 15:06:37.000000000 +0200
-+++ oox/inc/oox/drawingml/theme.hxx	2010-03-03 17:00:08.000000000 +0100
-@@ -35,6 +35,7 @@
+diff --git oox/inc/oox/drawingml/theme.hxx oox/inc/oox/drawingml/theme.hxx
+index 30a6aa1..903ff1d 100644
+--- oox/inc/oox/drawingml/theme.hxx
++++ oox/inc/oox/drawingml/theme.hxx
+@@ -32,6 +32,7 @@
  #include "oox/drawingml/clrscheme.hxx"
  #include "oox/drawingml/shape.hxx"
  #include "oox/drawingml/textfont.hxx"
@@ -1052,7 +1194,7 @@
  
  namespace oox {
  namespace drawingml {
-@@ -97,6 +98,11 @@ public:
+@@ -94,6 +95,11 @@ public:
      inline Shape&                   getTxDef() { return maTxDef; }
      inline const Shape&             getTxDef() const { return maTxDef; }
  
@@ -1064,7 +1206,7 @@
  private:
      ::rtl::OUString     maStyleName;
      ClrScheme           maClrScheme;
-@@ -108,6 +114,8 @@ private:
+@@ -105,6 +111,8 @@ private:
      Shape               maSpDef;
      Shape               maLnDef;
      Shape               maTxDef;
@@ -1073,8 +1215,11 @@
  };
  
  // ============================================================================
---- oox/inc/oox/ppt/dgmimport.hxx.old	2010-03-03 17:00:08.000000000 +0100
-+++ oox/inc/oox/ppt/dgmimport.hxx	2010-03-03 17:00:08.000000000 +0100
+diff --git oox/inc/oox/ppt/dgmimport.hxx oox/inc/oox/ppt/dgmimport.hxx
+new file mode 100644
+index 0000000..955b1fa
+--- /dev/null
++++ oox/inc/oox/ppt/dgmimport.hxx
 @@ -0,0 +1,71 @@
 +/*************************************************************************
 + *
@@ -1147,8 +1292,11 @@
 +} }
 +
 +#endif // OOX_POWERPOINT_QUICKDIAGRAMMINGIMPORT_HXX
---- oox/inc/oox/ppt/dgmlayout.hxx.old	2010-03-03 17:00:08.000000000 +0100
-+++ oox/inc/oox/ppt/dgmlayout.hxx	2010-03-03 17:00:08.000000000 +0100
+diff --git oox/inc/oox/ppt/dgmlayout.hxx oox/inc/oox/ppt/dgmlayout.hxx
+new file mode 100644
+index 0000000..8e3847b
+--- /dev/null
++++ oox/inc/oox/ppt/dgmlayout.hxx
 @@ -0,0 +1,72 @@
 +/*************************************************************************
 + *
@@ -1222,9 +1370,11 @@
 +} }
 +
 +#endif // OOX_POWERPOINT_QUICKDIAGRAMMINGLAYOUT_HXX
---- oox/inc/oox/ppt/pptimport.hxx.old	2010-03-03 17:00:05.000000000 +0100
-+++ oox/inc/oox/ppt/pptimport.hxx	2010-03-03 17:00:08.000000000 +0100
-@@ -61,7 +61,7 @@ public:
+diff --git oox/inc/oox/ppt/pptimport.hxx oox/inc/oox/ppt/pptimport.hxx
+index 0ac93dd..dadfa1e 100644
+--- oox/inc/oox/ppt/pptimport.hxx
++++ oox/inc/oox/ppt/pptimport.hxx
+@@ -56,7 +56,7 @@ public:
      virtual const ::oox::drawingml::Theme* getCurrentTheme() const;
      virtual ::oox::vml::Drawing* getVmlDrawing();
      virtual const oox::drawingml::table::TableStyleListPtr getTableStyles();
@@ -1233,9 +1383,11 @@
  
      void													setActualSlidePersist( SlidePersistPtr pActualSlidePersist ){ mpActualSlidePersist = pActualSlidePersist; };
      std::map< rtl::OUString, oox::drawingml::ThemePtr >&	getThemes(){ return maThemes; };
---- oox/inc/oox/xls/excelfilter.hxx.old	2010-03-03 17:00:06.000000000 +0100
-+++ oox/inc/oox/xls/excelfilter.hxx	2010-03-03 17:00:08.000000000 +0100
-@@ -73,7 +73,7 @@ public:
+diff --git oox/inc/oox/xls/excelfilter.hxx oox/inc/oox/xls/excelfilter.hxx
+index 49a0c85..3f72d7a 100644
+--- oox/inc/oox/xls/excelfilter.hxx
++++ oox/inc/oox/xls/excelfilter.hxx
+@@ -68,7 +68,7 @@ public:
      virtual const ::oox::drawingml::Theme* getCurrentTheme() const;
      virtual ::oox::vml::Drawing* getVmlDrawing();
      virtual const ::oox::drawingml::table::TableStyleListPtr getTableStyles();
@@ -1244,9 +1396,11 @@
  
      virtual sal_Bool SAL_CALL filter( const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& rDescriptor ) throw( ::com::sun::star::uno::RuntimeException );
  
---- oox/inc/oox/xls/workbookhelper.hxx.old	2009-10-19 13:27:41.000000000 +0200
-+++ oox/inc/oox/xls/workbookhelper.hxx	2010-03-03 17:00:08.000000000 +0100
-@@ -335,7 +335,7 @@ public:
+diff --git oox/inc/oox/xls/workbookhelper.hxx oox/inc/oox/xls/workbookhelper.hxx
+index 99857ea..65d89a2 100644
+--- oox/inc/oox/xls/workbookhelper.hxx
++++ oox/inc/oox/xls/workbookhelper.hxx
+@@ -253,7 +253,7 @@ public:
      /** Returns the converter for string to cell address/range conversion. */
      AddressConverter&   getAddressConverter() const;
      /** Returns the chart object converter. */
@@ -1255,9 +1409,11 @@
      /** Returns the page and print settings converter. */
      PageSettingsConverter& getPageSettingsConverter() const;
  
---- oox/source/core/facreg.cxx.old	2009-10-08 16:17:32.000000000 +0200
-+++ oox/source/core/facreg.cxx	2010-03-03 17:00:08.000000000 +0100
-@@ -60,6 +60,8 @@ extern uno::Reference< uno::XInterface >
+diff --git oox/source/core/facreg.cxx oox/source/core/facreg.cxx
+index 50a2a54..f6c0427 100644
+--- oox/source/core/facreg.cxx
++++ oox/source/core/facreg.cxx
+@@ -57,6 +57,8 @@ extern uno::Reference< uno::XInterface > SAL_CALL className##_createInstance(
  namespace oox {
      namespace core { SERVICE( FilterDetect ); }
      namespace ppt { SERVICE( PowerPointImport ); }
@@ -1266,7 +1422,7 @@
      namespace xls { SERVICE( BiffDetector ); }
      namespace xls { SERVICE( ExcelFilter ); }
      namespace xls { SERVICE( ExcelBiffFilter ); }
-@@ -103,6 +105,8 @@ OOX_DLLPUBLIC sal_Bool SAL_CALL componen
+@@ -100,6 +102,8 @@ OOX_DLLPUBLIC sal_Bool SAL_CALL component_writeInfo( void * , void * pRegistryKe
  
              WRITEINFO( ::oox::core::FilterDetect );
              WRITEINFO( ::oox::ppt::PowerPointImport );
@@ -1275,7 +1431,7 @@
              WRITEINFO( ::oox::xls::BiffDetector );
              WRITEINFO( ::oox::xls::ExcelFilter );
              WRITEINFO( ::oox::xls::ExcelBiffFilter );
-@@ -151,6 +155,8 @@ OOX_DLLPUBLIC void * SAL_CALL component_
+@@ -148,6 +152,8 @@ OOX_DLLPUBLIC void * SAL_CALL component_getFactory( const sal_Char * pImplName,
  
          SINGLEFACTORY( ::oox::core::FilterDetect )
          else SINGLEFACTORY( oox::ppt::PowerPointImport )
@@ -1284,9 +1440,11 @@
          else SINGLEFACTORY( ::oox::xls::BiffDetector )
          else SINGLEFACTORY( ::oox::xls::ExcelFilter )
          else SINGLEFACTORY( ::oox::xls::ExcelBiffFilter )
---- oox/source/core/filterbase.cxx.old	2009-11-20 11:38:33.000000000 +0100
-+++ oox/source/core/filterbase.cxx	2010-03-03 17:00:08.000000000 +0100
-@@ -35,6 +35,7 @@
+diff --git oox/source/core/filterbase.cxx oox/source/core/filterbase.cxx
+index 46075bc..09d4764 100644
+--- oox/source/core/filterbase.cxx
++++ oox/source/core/filterbase.cxx
+@@ -31,6 +31,7 @@
  #include <com/sun/star/frame/XModel.hpp>
  #include <com/sun/star/task/XStatusIndicator.hpp>
  #include <com/sun/star/task/XInteractionHandler.hpp>
@@ -1294,15 +1452,15 @@
  #include <osl/mutex.hxx>
  #include <rtl/instance.hxx>
  #include <rtl/uri.hxx>
-@@ -69,6 +70,7 @@ using ::com::sun::star::io::XInputStream
+@@ -62,6 +63,7 @@ using ::com::sun::star::io::XInputStream;
  using ::com::sun::star::io::XOutputStream;
  using ::com::sun::star::io::XStream;
  using ::com::sun::star::task::XStatusIndicator;
 +using ::com::sun::star::drawing::XShape;
  using ::com::sun::star::task::XInteractionHandler;
  using ::com::sun::star::graphic::XGraphic;
- using ::comphelper::MediaDescriptor;
-@@ -164,6 +166,7 @@ struct FilterBaseImpl
+ using ::com::sun::star::container::XNameAccess;
+@@ -155,6 +157,7 @@ struct FilterBaseImpl
      Reference< XStream >                mxOutStream;
      Reference< XStatusIndicator >       mxStatusIndicator;
      Reference< XInteractionHandler >    mxInteractionHandler;
@@ -1310,8 +1468,8 @@
  
      explicit            FilterBaseImpl( const Reference< XMultiServiceFactory >& rxGlobalFactory );
  
-@@ -320,6 +323,11 @@ const Reference< XMultiServiceFactory >&
-     return mxImpl->mxModelFactory;
+@@ -266,6 +269,11 @@ const Reference< XFrame >& FilterBase::getTargetFrame() const
+     return mxImpl->mxTargetFrame;
  }
  
 +const Reference< XShape >& FilterBase::getParentShape() const
@@ -1322,17 +1480,19 @@
  const Reference< XStatusIndicator >& FilterBase::getStatusIndicator() const
  {
      return mxImpl->mxStatusIndicator;
-@@ -669,6 +677,7 @@ void FilterBase::setMediaDescriptor( con
-     mxImpl->maFileUrl = mxImpl->maMediaDesc.getUnpackedValueOrDefault( MediaDescriptor::PROP_URL(), OUString() );
+@@ -560,6 +568,7 @@ void FilterBase::setMediaDescriptor( const Sequence< PropertyValue >& rMediaDesc
+     mxImpl->mxTargetFrame = mxImpl->maMediaDesc.getUnpackedValueOrDefault( MediaDescriptor::PROP_FRAME(), Reference< XFrame >() );
      mxImpl->mxStatusIndicator = mxImpl->maMediaDesc.getUnpackedValueOrDefault( MediaDescriptor::PROP_STATUSINDICATOR(), Reference< XStatusIndicator >() );
      mxImpl->mxInteractionHandler = mxImpl->maMediaDesc.getUnpackedValueOrDefault( MediaDescriptor::PROP_INTERACTIONHANDLER(), Reference< XInteractionHandler >() );
 +    mxImpl->mxParentShape = mxImpl->maMediaDesc.getUnpackedValueOrDefault( CREATE_OUSTRING( "ParentShape" ), mxImpl->mxParentShape );
- }
  
- 
---- oox/source/core/xmlfilterbase.cxx.old	2009-10-08 16:17:32.000000000 +0200
-+++ oox/source/core/xmlfilterbase.cxx	2010-03-03 17:00:08.000000000 +0100
-@@ -34,10 +34,14 @@
+     // Check for ISO OOXML
+     OUString sFilterName = mxImpl->maMediaDesc.getUnpackedValueOrDefault( CREATE_OUSTRING( "FilterName" ), OUString() );
+diff --git oox/source/core/xmlfilterbase.cxx oox/source/core/xmlfilterbase.cxx
+index 5ee4052..615cc8f 100644
+--- oox/source/core/xmlfilterbase.cxx
++++ oox/source/core/xmlfilterbase.cxx
+@@ -31,10 +31,14 @@
  
  #include <rtl/strbuf.hxx>
  #include <rtl/ustrbuf.hxx>
@@ -1347,7 +1507,7 @@
  #include <com/sun/star/document/XDocumentProperties.hpp>
  #include <comphelper/mediadescriptor.hxx>
  #include <sax/fshelper.hxx>
-@@ -57,6 +61,7 @@ using ::rtl::OStringBuffer;
+@@ -54,6 +58,7 @@ using ::rtl::OStringBuffer;
  using ::rtl::OUString;
  using ::rtl::OUStringBuffer;
  using ::com::sun::star::beans::StringPair;
@@ -1355,7 +1515,7 @@
  using ::com::sun::star::uno::Reference;
  using ::com::sun::star::uno::Sequence;
  using ::com::sun::star::uno::Exception;
-@@ -77,11 +82,14 @@ using ::com::sun::star::xml::sax::XFastT
+@@ -74,11 +79,14 @@ using ::com::sun::star::xml::sax::XFastTokenHandler;
  using ::com::sun::star::xml::sax::XFastDocumentHandler;
  using ::com::sun::star::xml::sax::InputSource;
  using ::com::sun::star::xml::sax::SAXException;
@@ -1368,9 +1528,18 @@
  using ::sax_fastparser::FSHelperPtr;
 +using namespace ::com::sun::star;
  
- namespace oox {
- namespace core {
-@@ -110,6 +118,64 @@ XmlFilterBaseImpl::XmlFilterBaseImpl() :
+ 
+ #include <com/sun/star/document/XDocumentPropertiesSupplier.hpp>
+@@ -118,6 +126,8 @@ struct XmlFilterBaseImpl
+     typedef RefMap< OUString, Relations > RelationsMap;
+ 
+     Reference< XFastParser > mxFastParser;
++    Reference< XFastTokenHandler >
++                        mxTokenHandler;
+     OUString            maBinSuffix;
+     OUString            maVmlSuffix;
+     RelationsMap        maRelationsMap;
+@@ -151,6 +161,65 @@ static Reference< XComponentContext > lcl_getComponentContext(Reference< XMultiS
  
  // ============================================================================
  
@@ -1389,6 +1558,7 @@
 +                "http://schemas.openxmlformats.org/drawingml/2006/main",
 +                "http://schemas.openxmlformats.org/drawingml/2006/diagram",
 +                "http://schemas.openxmlformats.org/drawingml/2006/chart",
++                "http://schemas.openxmlformats.org/drawingml/2006/chartDrawing",
 +                "urn:schemas-microsoft-com:vml",
 +                "urn:schemas-microsoft-com:office:office",
 +                "urn:schemas-microsoft-com:office:word",
@@ -1435,38 +1605,48 @@
  XmlFilterBase::XmlFilterBase( const Reference< XMultiServiceFactory >& rxGlobalFactory ) :
      FilterBase( rxGlobalFactory ),
      mxImpl( new XmlFilterBaseImpl ),
-@@ -186,26 +252,10 @@ bool XmlFilterBase::importFragment( cons
-         xParser->setTokenHandler( mxImpl->mxTokenHandler );
+@@ -159,32 +228,18 @@ XmlFilterBase::XmlFilterBase( const Reference< XMultiServiceFactory >& rxGlobalF
+ {
+     try

... etc. - the rest is truncated


More information about the ooo-build-commit mailing list