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

Katarina Machalkova bubli at kemper.freedesktop.org
Mon Apr 19 10:29:14 PDT 2010


 patches/dev300/apply                                               |   21 
 patches/dev300/calc-distributed-cell-text-sc-xlsx-part.diff        |   59 
 patches/dev300/calc-distributed-cell-text-sc.diff                  |   58 
 patches/dev300/oox-drawingml-fix-shapes-map-crash-xlsx-part.diff   |   12 
 patches/dev300/oox-drawingml-fix-shapes-map-crash.diff             |   12 
 patches/dev300/oox-smartart-import-m13.diff                        |   15 
 patches/dev300/oox-smartart-import-xlsx-part.diff                  |   15 
 patches/dev300/oox-smartart-import.diff                            |   15 
 patches/dev300/xlsx-shared-oox-drawingml-fix-shapes-map-crash.diff |  204 
 patches/dev300/xlsx-shared-oox-smartart-import-m13.diff            | 6081 ----------
 10 files changed, 98 insertions(+), 6394 deletions(-)

New commits:
commit 29de907d48259ae723b1454aa83aed292bde6802
Author: Katarina Machalkova <kmachalkova at suse.cz>
Date:   Mon Apr 19 19:28:43 2010 +0200

    adjusting to oox-smartart-import changes
    
    * patches/dev300/apply:

diff --git a/patches/dev300/apply b/patches/dev300/apply
index e163add..7cb058e 100644
--- a/patches/dev300/apply
+++ b/patches/dev300/apply
@@ -3367,6 +3367,8 @@ calc-distributed-cell-text-sc-xlsx-part.diff
 
 # xlsx-specific part of oox-drawingml-fix-shapes-map-crash
 oox-drawingml-fix-shapes-map-crash-xlsx-part.diff
+# xlsx-specifig part of oox-smartart-import.diff
+oox-smartart-import-xlsx-part.diff
 
 [ OOXMLExportDevel ]
 # this is shared binary/ooxml filter, WIP
@@ -3394,9 +3396,9 @@ xlsx-shared-xlsx-export-no-more-svstream-sotstorage.diff
 # hack to ignore writerfilter when odf-converter is present
 odf-converter-ignore-writerfilter.diff, n#348471, n#502173, jholesov
 
-[ OOXMLExport321 < ooo320-m14 ]
+[ OOXMLExport < ooo320-m14 ]
 oox-smartart-import-m13.diff, thorsten
-[ OOXMLExport321 >= ooo320-m14 ]
+[ OOXMLExport >= ooo320-m14 ]
 oox-smartart-import.diff, thorsten
 [ OOXMLExportDevel ]
 xlsx-shared-oox-smartart-import-m13.diff
commit 7bdb9fa821aaf9feb99be6f6d63e2a8ba5f95a65
Author: Katarina Machalkova <kmachalkova at suse.cz>
Date:   Mon Apr 19 19:28:00 2010 +0200

    Leaving only xlsx-specific part
    
    oox-smartart-import[-m13] will do the rest
    
    * patches/dev300/xlsx-shared-oox-smartart-import-m13.diff:

diff --git a/patches/dev300/xlsx-shared-oox-smartart-import-m13.diff b/patches/dev300/xlsx-shared-oox-smartart-import-m13.diff
index d353139..83185fc 100644
--- a/patches/dev300/xlsx-shared-oox-smartart-import-m13.diff
+++ b/patches/dev300/xlsx-shared-oox-smartart-import-m13.diff
@@ -1,6062 +1,3 @@
---- 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; }
-     namespace task { class XStatusIndicator; }
-     namespace task { class XInteractionHandler; }
-+    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;
- 
-+    /// Returns the parent shape to load into (if any)
-+    const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShape >&
-+                        getParentShape() const;
-+
-     /** 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 @@
- namespace com { namespace sun { namespace star {
-     namespace container { class XNameContainer; }
-     namespace document { class XDocumentProperties; }
-+    namespace xml { namespace dom { class XDocument; } }
-     namespace xml { namespace sax { class XLocator; } }
-     namespace xml { namespace sax { class XFastDocumentHandler; } }
-+    namespace xml { namespace sax { class XFastSAXSerializable; } }
- } } }
- 
- namespace oox { namespace drawingml { class Theme; } }
-@@ -92,7 +94,7 @@ public:
- 
-     /** Has to be implemented by each filter, returns a filter-specific chart
-         converter object, that should be global per imported document. */
--    virtual ::oox::drawingml::chart::ChartConverter& getChartConverter() = 0;
-+    virtual ::oox::drawingml::chart::ChartConverter* getChartConverter() = 0;
- 
-     /** 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:
-      */
-     bool                importFragment( const ::rtl::Reference< FragmentHandler >& rxHandler );
- 
-+    /** Imports a fragment into an xml::dom::XDocument.
-+
-+        @param rFragmentPath path to fragment
-+
-+        @return a non-empty reference to the XDocument, if the
-+        fragment could be imported.
-+     */
-+    ::com::sun::star::uno::Reference<
-+       ::com::sun::star::xml::dom::XDocument> importFragment( const ::rtl::OUString& rFragmentPath );
-+
-+    /** Imports a fragment from an xml::dom::XDocument using the
-+        passed fragment handler
-+
-+        @param rxHandler fragment handler; path to fragment is
-+        ignored, input source is the rxSerializer
-+
-+        @param rxSerializer usually retrieved from a
-+        xml::dom::XDocument, will get serialized into rxHandler
-+
-+        @return true, if the fragment could be imported.
-+     */
-+    bool importFragment( const ::rtl::Reference< FragmentHandler >& rxHandler,
-+                         const ::com::sun::star::uno::Reference< 
-+                               ::com::sun::star::xml::sax::XFastSAXSerializable >& rxSerializer );
-+
-     /** 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:
-     /** Returns the filter object of the imported/exported document. */
-     ::oox::core::XmlFilterBase& getFilter() const;
-     /** Returns the chart converter. */
--    ChartConverter&     getChartConverter() const;
-+    ChartConverter*     getChartConverter() const;
-     /** 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:
-             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
-@@ -1,57 +0,0 @@
--/*************************************************************************
-- *
-- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-- * 
-- * Copyright 2008 by Sun Microsystems, Inc.
-- *
-- * OpenOffice.org - a multi-platform office productivity suite
-- *
-- * $RCSfile: datamodelcontext.hxx,v $
-- * $Revision: 1.4 $
-- *
-- * This file is part of OpenOffice.org.
-- *
-- * OpenOffice.org is free software: you can redistribute it and/or modify
-- * it under the terms of the GNU Lesser General Public License version 3
-- * only, as published by the Free Software Foundation.
-- *
-- * OpenOffice.org is distributed in the hope that it will be useful,
-- * but WITHOUT ANY WARRANTY; without even the implied warranty of
-- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-- * GNU Lesser General Public License version 3 for more details
-- * (a copy is included in the LICENSE file that accompanied this code).
-- *
-- * You should have received a copy of the GNU Lesser General Public License
-- * version 3 along with OpenOffice.org.  If not, see
-- * <http://www.openoffice.org/license.html>
-- * for a copy of the LGPLv3 License.
-- *
-- ************************************************************************/
--
--
--#ifndef OOX_DRAWINGML_SHAPECONTEXT_HXX
--#define OOX_DRAWINGML_SHAPECONTEXT_HXX
--
--#include <com/sun/star/drawing/XShapes.hpp>
--
--#include "oox/core/contexthandler.hxx"
--#include "oox/drawingml/diagram/diagram.hxx"
--
--namespace oox { namespace drawingml {
--
--// CT_DataModel
--class DataModelContext : public ::oox::core::ContextHandler
--{
--public:
--    DataModelContext( ::oox::core::ContextHandler& rParent, const DiagramDataPtr & pDataModelPtr );
--    virtual ~DataModelContext();
--
--    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);
--
--protected:
--    DiagramDataPtr mpDataModel;
--};
--
--} }
--
--#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 @@
-  *
-  ************************************************************************/
- 
--
--
- #ifndef OOX_DRAWINGML_DIAGRAM_HXX
- #define OOX_DRAWINGML_DIAGRAM_HXX
- 
--#include <vector>
--#include <boost/shared_ptr.hpp>
--#include <boost/enable_shared_from_this.hpp>
-+#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 dgm {
-+/** load diagram data, and put resulting graphic into shape
- 
--/** A Connection
-- */
--class Connection
--{
--public:
--    Connection()
--        : mnType( 0 )
--        , mnSourceOrder( 0 )
--        , mnDestOrder( 0 )
--        {
--        }
--
--    void dump();
--
--    sal_Int32 mnType;
--    ::rtl::OUString msModelId;
--    ::rtl::OUString msSourceId;
--    ::rtl::OUString msDestId;
--    ::rtl::OUString msParTransId;
--    ::rtl::OUString msPresId;
--    ::rtl::OUString msSibTransId;
--    sal_Int32 mnSourceOrder;
--    sal_Int32 mnDestOrder;
--
--};
--
--typedef boost::shared_ptr< Connection > ConnectionPtr;
--typedef std::vector< ConnectionPtr > Connections;
--
--class Point;
--
--typedef boost::shared_ptr< Point > PointPtr;
--typedef std::vector< PointPtr >      Points;
--/** A point
-+    This method loads the diagram data fragments from the given paths,
-+    generate and layout the shapes, and push it as children into the
-+    referenced shape.
-  */
--class Point
--{
--public:
--    Point();
--    ShapePtr & getShape( )
--        { return mpShape; }
--
--    void setCnxId( const ::rtl::OUString & sCnxId )
--        { msCnxId = sCnxId; }
--    void setModelId( const ::rtl::OUString & sModelId );
--    const ::rtl::OUString & getModelId() const
--        { return msModelId; }
--    void setType( const sal_Int32 nType )
--        { mnType = nType; }
--    sal_Int32 getType() const
--        { return mnType; }
--
--    void dump();
--private:
--    ShapePtr        mpShape;
--    ::rtl::OUString msCnxId;
--    ::rtl::OUString msModelId;
--    sal_Int32       mnType;
--};
--
--
--class PointsTree;
--typedef boost::shared_ptr< PointsTree > PointsTreePtr;
--
--/** a points tree node */
--class PointsTree
--    : public boost::enable_shared_from_this< PointsTree >
--{
--public:
--    typedef std::vector< PointsTreePtr > Childrens;
--    PointsTree()
--        {};
--    PointsTree( const PointPtr & pPoint )
--        : mpNode( pPoint )
--        { }
--    bool addChild( const PointsTreePtr & pChild );
--    const PointPtr & getPoint() const
--        { return mpNode; }
--    PointsTreePtr getParent() const;
--    Childrens::const_iterator beginChild() const
--        { return maChildrens.begin(); }
--    Childrens::const_iterator endChild() const
--        { return maChildrens.end(); }
--private:
--    PointPtr                           mpNode;
--    boost::weak_ptr< PointsTree >      mpParent;
--    Childrens       maChildrens;
--};
--
--}
--
--////////////////////
--
--class DiagramData
--{
--public:
--
--    DiagramData();
--    FillPropertiesPtr & getFillProperties()
--        { return mpFillProperties; }
--    dgm::Connections & getConnections()
--        { return maConnections; }
--    dgm::Points & getPoints()
--        { return maPoints; }
--    void dump();
--private:
--    FillPropertiesPtr   mpFillProperties;
--    dgm::Connections    maConnections;
--    dgm::Points         maPoints;
--};
--
--typedef boost::shared_ptr< DiagramData > DiagramDataPtr;
--
--
--
--////////////////////
--
--class DiagramLayout
--{
--public:
--    void setDefStyle( const ::rtl::OUString & sDefStyle )
--        { msDefStyle = sDefStyle; }
--    void setMinVer( const ::rtl::OUString & sMinVer )
--        { msMinVer = sMinVer; }
--    void setUniqueId( const ::rtl::OUString & sUniqueId )
--        { msUniqueId = sUniqueId; }
--    const ::rtl::OUString & getUniqueId()
--        { return msUniqueId; }
--    void setTitle( const ::rtl::OUString & sTitle )
--        { msTitle = sTitle; }
--    void setDesc( const ::rtl::OUString & sDesc )
--        { msDesc = sDesc; }
--
--    LayoutNodePtr & getNode()
--        { return mpNode; }
--    const LayoutNodePtr & getNode() const
--        { return mpNode; }
--    DiagramDataPtr & getSampData()
--        { return mpSampData; }
--    const DiagramDataPtr & getSampData() const
--        { return mpSampData; }
--    DiagramDataPtr & getStyleData()
--        { return mpStyleData; }
--    const DiagramDataPtr & getStyleData() const
--        { return mpStyleData; }
--
--    void layout( const dgm::PointsTreePtr & pTree, const com::sun::star::awt::Point & pt );
--private:
--    ::rtl::OUString msDefStyle;
--    ::rtl::OUString msMinVer;
--    ::rtl::OUString msUniqueId;
--
--    ::rtl::OUString msTitle;
--    ::rtl::OUString msDesc;
--    LayoutNodePtr  mpNode;
--    DiagramDataPtr mpSampData;
--    DiagramDataPtr mpStyleData;
--    // TODO
--    // catLst
--    // clrData
--};
--
--typedef boost::shared_ptr< DiagramLayout > DiagramLayoutPtr;
--
--///////////////////////
--
--class DiagramQStyles
--{
--
--};
--
--typedef boost::shared_ptr< DiagramQStyles > DiagramQStylesPtr;
--
--///////////////////////
--
--class DiagramColors
--{
--
--};
--
--typedef boost::shared_ptr< DiagramColors > DiagramColorsPtr;
--
--///////////////////////
--
--class Diagram
--{
--public:
--    void setData( const DiagramDataPtr & );
--    void setLayout( const DiagramLayoutPtr & );
--    DiagramLayoutPtr getLayout() const
--        {
--            return mpLayout;
--        }
--    void setQStyles( const DiagramQStylesPtr & );
--    void setColors( const DiagramColorsPtr & );
--
--    void addTo( const ShapePtr & pShape );
--    ::rtl::OUString getLayoutId() const;
--private:
--    void build( );
--    DiagramDataPtr    mpData;
--    DiagramLayoutPtr  mpLayout;
--    DiagramQStylesPtr mpQStyles;
--    DiagramColorsPtr  mpColors;
--    std::map< ::rtl::OUString, ShapePtr > maShapeMap;
--    dgm::PointsTreePtr  mpRoot;
--};
--
--
--typedef boost::shared_ptr< Diagram > DiagramPtr;
--
-+void loadDiagram( const ShapePtr& pShape,
-+                  core::XmlFilterBase& rFilter,
-+                  const ::rtl::OUString& rDataModelPath,
-+                  const ::rtl::OUString& rLayoutPath,
-+                  const ::rtl::OUString& rQStylePath,
-+                  const ::rtl::OUString& rColorStylePath );
-+
-+void loadDiagram( const ShapePtr& pShape,
-+                  core::XmlFilterBase& rFilter,
-+                  const ::com::sun::star::uno::Reference<
-+                     ::com::sun::star::xml::dom::XDocument>& rXDataModelDom,
-+                  const ::com::sun::star::uno::Reference<
-+                     ::com::sun::star::xml::dom::XDocument>& rXLayoutDom,
-+                  const ::com::sun::star::uno::Reference<
-+                     ::com::sun::star::xml::dom::XDocument>& rXQStyleDom,
-+                  const ::com::sun::star::uno::Reference<
-+                     ::com::sun::star::xml::dom::XDocument>& rXColorStyleDom );
- } }
- 
- #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
-@@ -1,103 +0,0 @@
--/*************************************************************************
-- *
-- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-- * 
-- * Copyright 2008 by Sun Microsystems, Inc.
-- *
-- * OpenOffice.org - a multi-platform office productivity suite
-- *
-- * $RCSfile: diagramfragmenthandler.hxx,v $
-- * $Revision: 1.4 $
-- *
-- * This file is part of OpenOffice.org.
-- *
-- * OpenOffice.org is free software: you can redistribute it and/or modify
-- * it under the terms of the GNU Lesser General Public License version 3
-- * only, as published by the Free Software Foundation.
-- *
-- * OpenOffice.org is distributed in the hope that it will be useful,
-- * but WITHOUT ANY WARRANTY; without even the implied warranty of
-- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-- * GNU Lesser General Public License version 3 for more details
-- * (a copy is included in the LICENSE file that accompanied this code).
-- *
-- * You should have received a copy of the GNU Lesser General Public License
-- * version 3 along with OpenOffice.org.  If not, see
-- * <http://www.openoffice.org/license.html>
-- * for a copy of the LGPLv3 License.
-- *
-- ************************************************************************/
--
--
--#ifndef OOX_DRAWINGML_DIAGRAMFRAGMENTHANDLER
--#define OOX_DRAWINGML_DIAGRAMFRAGMENTHANDLER
--
--#include "oox/core/fragmenthandler.hxx"
--#include "oox/drawingml/diagram/diagram.hxx"
--
--namespace oox { namespace drawingml {
--
--
--class DiagramDataFragmentHandler : public ::oox::core::FragmentHandler
--{
--public:
--    DiagramDataFragmentHandler( oox::core::XmlFilterBase& rFilter, const ::rtl::OUString& rFragmentPath, const DiagramDataPtr pDataPtr ) throw();
--    virtual ~DiagramDataFragmentHandler() throw();
--
--    virtual void SAL_CALL endDocument() 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:
--
--    DiagramDataPtr	mpDataPtr;
--};
--
--
--
--class DiagramLayoutFragmentHandler : public ::oox::core::FragmentHandler
--{
--public:
--    DiagramLayoutFragmentHandler( oox::core::XmlFilterBase& rFilter, const ::rtl::OUString& rFragmentPath, const DiagramLayoutPtr pDataPtr ) throw();
--    virtual ~DiagramLayoutFragmentHandler() throw();
--
--    virtual void SAL_CALL endDocument() 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	mpDataPtr;
--};
--
--class DiagramQStylesFragmentHandler : public ::oox::core::FragmentHandler
--{
--public:
--    DiagramQStylesFragmentHandler( oox::core::XmlFilterBase& rFilter, const ::rtl::OUString& rFragmentPath, const DiagramQStylesPtr pDataPtr ) throw();
--    virtual ~DiagramQStylesFragmentHandler() throw();
--
--    virtual void SAL_CALL endDocument() 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:
--
--    DiagramQStylesPtr	mpDataPtr;
--};
--
--
--class DiagramColorsFragmentHandler : public ::oox::core::FragmentHandler
--{
--public:
--    DiagramColorsFragmentHandler( ::oox::core::XmlFilterBase& rFilter, const ::rtl::OUString& rFragmentPath, const DiagramColorsPtr pDataPtr ) throw();
--    virtual ~DiagramColorsFragmentHandler() throw();
--
--    virtual void SAL_CALL endDocument() 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:
--
--    DiagramColorsPtr	mpDataPtr;
--};
--
--} }
--
--
--#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
-@@ -1,212 +0,0 @@
--/*************************************************************************
-- *
-- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-- * 
-- * Copyright 2008 by Sun Microsystems, Inc.
-- *
-- * OpenOffice.org - a multi-platform office productivity suite
-- *
-- * $RCSfile: diagramlayoutatoms.hxx,v $
-- * $Revision: 1.3 $
-- *
-- * 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_DIAGRAMLAYOUTATOMS_HXX
--#define OOX_DRAWINGML_DIAGRAMLAYOUTATOMS_HXX
--
--#include <map>
--#include <string>
--
--#include <boost/shared_ptr.hpp>
--#include <boost/array.hpp>
--
--#include <com/sun/star/uno/Any.hxx>
--#include <com/sun/star/xml/sax/XFastAttributeList.hpp>
--
--#include "oox/drawingml/shape.hxx"
--
--
--namespace oox { namespace drawingml {
--
--
--// AG_IteratorAttributes
--class IteratorAttr
--{
--public:
--    IteratorAttr();
--
--    // not sure this belong here, but wth
--    void loadFromXAttr( const ::com::sun::star::uno::Reference< ::com::sun::star::xml::sax::XFastAttributeList >& xAttributes );
--
--private:
--    sal_Int32 mnAxis;
--    sal_Int32 mnCnt;
--    sal_Bool  mbHideLastTrans;
--    sal_Int32 mnPtType;
--    sal_Int32 mnSt;
--    sal_Int32 mnStep;
--};
--
--class ConditionAttr
--{
--public:
--    ConditionAttr();
--
--    // not sure this belong here, but wth
--    void loadFromXAttr( const ::com::sun::star::uno::Reference< ::com::sun::star::xml::sax::XFastAttributeList >& xAttributes );
--
--private:
--    sal_Int32 mnFunc;
--    sal_Int32 mnArg;
--    sal_Int32 mnOp;
--    ::rtl::OUString msVal;
--};
--
--class LayoutAtom;
--
--typedef boost::shared_ptr< LayoutAtom > LayoutAtomPtr;
--
--/** abstract Atom for the layout */
--class LayoutAtom
--{
--public:
--    virtual ~LayoutAtom()
--        {}
--    // TODO change signature to the proper one
--    virtual void processAtom() = 0;
--    void setName( const ::rtl::OUString & sName )
--        { msName = sName; }
--    void addChild( const LayoutAtomPtr & pNode )
--        { mpChildNodes.push_back( pNode ); }
--
--    // dump for debug
--    virtual void dump(int level = 0);
--protected:
--    std::vector< LayoutAtomPtr > mpChildNodes;
--    ::rtl::OUString msName;
--};
--
--class AlgAtom
--    : public LayoutAtom
--{
--public:
--    virtual ~AlgAtom()
--        {}
--    typedef std::map< std::string, ::com::sun::star::uno::Any > ParamMap;
--
--    virtual void processAtom()
--        {}
--private:
--    ParamMap mParams;
--};
--
--
--class ForEachAtom
--    : public LayoutAtom
--{
--public:
--    virtual ~ForEachAtom()
--        {}
--    
--    IteratorAttr & iterator()
--        { return maIter; }
--    virtual void processAtom();
--private:
--    IteratorAttr maIter;
--};
--
--typedef boost::shared_ptr< ForEachAtom > ForEachAtomPtr;
--
--
--class ConditionAtom
--    : public LayoutAtom
--{
--public:
--    ConditionAtom( bool bElse = false )
--        : LayoutAtom( )
--        , mbElse( bElse )
--        {}
--    virtual ~ConditionAtom()
--        {}
--    bool test();
--    virtual void processAtom()
--        {}
--    IteratorAttr & iterator()
--        { return maIter; }
--    ConditionAttr & cond()
--        { return maCond; }
--private:
--    bool          mbElse;
--    IteratorAttr  maIter;
--    ConditionAttr maCond;
--};
--
--typedef boost::shared_ptr< ConditionAtom > ConditionAtomPtr;
--
--
--/** "choose" statements. Atoms will be tested in order. */
--class ChooseAtom
--    : public LayoutAtom
--{
--public:
--    virtual ~ChooseAtom()
--        {}
--    virtual void processAtom();
--};
--
--class LayoutNode
--    : public LayoutAtom
--{
--public:
--    enum {
--        VAR_animLvl = 0,
--        VAR_animOne,
--        VAR_bulletEnabled,
--        VAR_chMax,
--        VAR_chPref,
--        VAR_dir,
--        VAR_hierBranch,
--        VAR_orgChart,
--        VAR_resizeHandles
--    };
--    // we know that the array is of fixed size
--    // the use of Any allow having empty values
--    typedef boost::array< ::com::sun::star::uno::Any, 9 > VarMap;
--
--    virtual ~LayoutNode()
--        {}
--    virtual void processAtom()
--        {}
--    VarMap & variables()
--        { return mVariables; }
--private:
--    VarMap                       mVariables;
--    std::vector< ShapePtr >      mpShapes;
--};
--
--typedef boost::shared_ptr< LayoutNode > LayoutNodePtr;
--
--} }
--
--#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
- struct GraphicProperties;
- typedef ::boost::shared_ptr< GraphicProperties > GraphicPropertiesPtr;
- 
-+struct Shape3DProperties;
-+typedef ::boost::shared_ptr< Shape3DProperties > Shape3DPropertiesPtr;
-+
- 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 @@
- 
- #include "oox/drawingml/shape.hxx"
- #include "oox/drawingml/shapecontext.hxx"
--#include "oox/drawingml/diagram/diagram.hxx"
- 
- namespace oox { namespace vml { struct OleObjectInfo; } }
- 
-@@ -74,6 +73,8 @@ private:
- 
- // ====================================================================
- 
-+class Diagram;
-+
- class DiagramGraphicDataContext
-     : public ShapeContext
- {
-@@ -83,8 +84,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:
--    DiagramPtr loadDiagram();
--
-     ::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
-@@ -0,0 +1,56 @@
-+/*************************************************************************
-+ *
-+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-+ *
-+ * Copyright 2008 by Sun Microsystems, Inc.
-+ *
-+ * OpenOffice.org - a multi-platform office productivity suite
-+ *
-+ * $RCSfile: fillpropertiesgroupcontext.hxx,v $
-+ * $Revision: 1.6 $
-+ *
-+ * This file is part of OpenOffice.org.
-+ *
-+ * OpenOffice.org is free software: you can redistribute it and/or modify
-+ * it under the terms of the GNU Lesser General Public License version 3
-+ * only, as published by the Free Software Foundation.
-+ *
-+ * OpenOffice.org is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-+ * GNU Lesser General Public License version 3 for more details
-+ * (a copy is included in the LICENSE file that accompanied this code).
-+ *
-+ * You should have received a copy of the GNU Lesser General Public License
-+ * version 3 along with OpenOffice.org.  If not, see
-+ * <http://www.openoffice.org/license.html>
-+ * for a copy of the LGPLv3 License.
-+ *
-+ ************************************************************************/
-+
-+#ifndef OOX_DRAWINGML_SCENE3DPROPERTIESCONTEXT_HPP
-+#define OOX_DRAWINGML_SCENE3DPROPERTIESCONTEXT_HPP
-+
-+#include "oox/core/contexthandler.hxx"
-+
-+namespace oox { namespace drawingml {
-+
-+struct Shape3DProperties;
-+
-+// ---------------------------------------------------------------------
-+
-+class Scene3DPropertiesContext : public ::oox::core::ContextHandler
-+{
-+public:
-+    Scene3DPropertiesContext( ::oox::core::ContextHandler& rParent, Shape3DProperties& r3DProperties ) throw();
-+
-+    ::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:
-+	Shape3DProperties& mr3DProperties;
-+};
-+
-+} }
-+
-+#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 @@
- #include "oox/drawingml/drawingmltypes.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
- {
- public:
- 
--    Shape( const sal_Char* pServiceType = NULL );
-+    explicit Shape( const sal_Char* pServiceType = NULL );
-+    explicit Shape( const ShapePtr& pSourceShape );
-     virtual ~Shape();
- 
-     rtl::OUString&                  getServiceName(){ return msServiceName; }
-@@ -116,10 +118,17 @@ public:
- 
-     CustomShapePropertiesPtr        getCustomShapeProperties(){ return mpCustomShapePropertiesPtr; }
- 
-+    Shape3DProperties&              get3DProperties() { return *mp3DPropertiesPtr; }
-+    const Shape3DProperties&        get3DProperties() const { return *mp3DPropertiesPtr; }
-+
-     table::TablePropertiesPtr		getTableProperties();
- 
--    void                            setPosition( com::sun::star::awt::Point nPosition ){ maPosition = nPosition; }
--    void                            setSize( com::sun::star::awt::Size aSize ){ maSize = aSize; }
-+    void                              setPosition( com::sun::star::awt::Point nPosition ){ maPosition = nPosition; }
-+    const com::sun::star::awt::Point& getPosition() const { return maPosition; }
-+
-+    void                              setSize( com::sun::star::awt::Size aSize ){ maSize = aSize; }
-+    const com::sun::star::awt::Size&  getSize() const { return maSize; }
-+
-     void                            setRotation( sal_Int32 nRotation ) { mnRotation = nRotation; }
-     void                            setFlip( sal_Bool bFlipH, sal_Bool bFlipV ) { mbFlipH = bFlipH; mbFlipV = bFlipV; }
-     void                            addChild( const ShapePtr pChildPtr ) { maChildren.push_back( pChildPtr ); }
-@@ -155,6 +164,13 @@ public:
-                             const ::com::sun::star::awt::Rectangle* pShapeRect = 0,
-                             ShapeIdMap* pShapeMap = 0 );
- 
-+    void                addChildren(
-+                            const ::oox::core::XmlFilterBase& rFilterBase,
-+                            const ThemePtr& rxTheme,
-+                            const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShapes >& rxShapes,
-+                            const ::com::sun::star::awt::Rectangle* pShapeRect = 0,
-+                            ShapeIdMap* pShapeMap = 0 );
-+
-     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:
-     GraphicPropertiesPtr        mpGraphicPropertiesPtr;
-     CustomShapePropertiesPtr    mpCustomShapePropertiesPtr;
-     table::TablePropertiesPtr	mpTablePropertiesPtr;
-+    Shape3DPropertiesPtr        mp3DPropertiesPtr;
-     PropertyMap                 maShapeProperties;
-     TextListStylePtr            mpMasterTextListStyle;
-     ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShape > mxShape;
-@@ -210,7 +227,11 @@ private:
-     sal_Bool                        mbFlipV;
- };
- 
--::rtl::OUString GetShapeType( sal_Int32 nType );
-+// ---------------------------------------------------------------------
-+
-+/** Get custom shape preset string from xml token id
-+ */
-+::rtl::OUString GetShapePresetType( sal_Int32 nType );
- 
- } }
- 
---- 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
-@@ -0,0 +1,135 @@
-+/*************************************************************************
-+ *
-+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-+ *
-+ * Copyright 2008 by Sun Microsystems, Inc.
-+ *
-+ * OpenOffice.org - a multi-platform office productivity suite
-+ *
-+ * $RCSfile: fillproperties.hxx,v $
-+ * $Revision: 1.7 $
-+ *
-+ * 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_SHAPE3DPROPERTIES_HXX
-+#define OOX_DRAWINGML_SHAPE3DPROPERTIES_HXX
-+
-+#include <map>
-+#include <com/sun/star/graphic/XGraphic.hpp>
-+#include <com/sun/star/geometry/IntegerRectangle2D.hpp>
-+#include "oox/core/xmlfilterbase.hxx"
-+#include "oox/drawingml/color.hxx"
-+#include "oox/helper/helper.hxx"
-+
-+namespace oox { class PropertyMap; }
-+namespace oox { class PropertySet; }
-+namespace oox { namespace core { class ModelObjectContainer; } }
-+
-+namespace oox {
-+namespace drawingml {
-+
-+// ============================================================================
-+
-+struct Shape3DPropertyNames
-+{
-+    ::rtl::OUString     maFillStyle;
-+    ::rtl::OUString     maFillColor;
-+    ::rtl::OUString     maFillTransparence;
-+    ::rtl::OUString     maFillGradient;
-+    ::rtl::OUString     maFillBitmap;
-+    ::rtl::OUString     maFillBitmapMode;
-+    ::rtl::OUString     maFillBitmapTile;
-+    ::rtl::OUString     maFillBitmapStretch;
-+    ::rtl::OUString     maFillBitmapLogicalSize;
-+    ::rtl::OUString     maFillBitmapSizeX;
-+    ::rtl::OUString     maFillBitmapSizeY;
-+    ::rtl::OUString     maFillBitmapOffsetX;
-+    ::rtl::OUString     maFillBitmapOffsetY;
-+    ::rtl::OUString     maFillBitmapRectanglePoint;
-+    bool                mbNamedFillGradient;
-+    bool                mbNamedFillBitmap;
-+    bool                mbTransformGraphic;
-+
-+    Shape3DPropertyNames();
-+};
-+
-+// ============================================================================
-+
-+struct Shape3DProperties
-+{
-+    typedef ::std::map< double, Color > GradientStopMap;
-+
-+    OptValue< sal_Int32 > moFillType;           /// Fill type (OOXML token).
-+    OptValue< bool >    moRotateWithShape;      /// True = rotate gradient/bitmap with shape.
-+    Color               maFillColor;            /// Solid fill color and transparence.
-+    GradientStopMap     maGradientStops;        /// Gradient stops (colors/transparence).
-+    OptValue< sal_Int32 > moGradientPath;       /// If set, gradient follows rectangle, circle, or shape.
-+    OptValue< sal_Int32 > moShadeAngle;         /// Rotation angle of linear gradients.
-+    OptValue< bool >    moShadeScaled;
-+    OptValue< sal_Int32 > moFlipModeToken;
-+    OptValue< com::sun::star::geometry::IntegerRectangle2D > moFillToRect;
-+    OptValue< com::sun::star::geometry::IntegerRectangle2D > moTileRect;
-+    OptValue< sal_Int32 > moPattPreset;         /// Preset pattern type.
-+    Color               maPattFgColor;          /// Pattern foreground color.
-+    Color               maPattBgColor;          /// Pattern background color.
-+    ::com::sun::star::uno::Reference< ::com::sun::star::graphic::XGraphic > mxGraphic;
-+    Color               maColorChangeFrom;      /// Start color of color transformation.
-+    Color               maColorChangeTo;        /// Destination color of color transformation.
-+    OptValue< sal_Int32 > moBitmapMode;         /// Bitmap tile or stretch.
-+    OptValue< sal_Int32 > moTileX;              /// Width of bitmap tiles.
-+    OptValue< sal_Int32 > moTileY;              /// Height of bitmap tiles.
-+    OptValue< sal_Int32 > moTileSX;
-+    OptValue< sal_Int32 > moTileSY;
-+    OptValue< sal_Int32 > moTileAlign;          /// Anchor point inside bitmap.
-+
-+    static Shape3DPropertyNames DEFAULTNAMES;      /// Default fill property names for shape fill.
-+    static Shape3DPropertyNames DEFAULTPICNAMES;   /// Default fill property names for pictures.
-+
-+    /** Overwrites all members that are explicitly set in rSourceProps. */
-+    void                assignUsed( const Shape3DProperties& rSourceProps );
-+
-+    /** Tries to resolve current settings to a solid color, e.g. returns the
-+        start color of a gradient. */
-+    Color               getBestSolidColor() const;
-+
-+    /** Writes the properties to the passed property map. */
-+    void                pushToPropMap(
-+                            PropertyMap& rPropMap,
-+                            const Shape3DPropertyNames& rPropNames,
-+                            const ::oox::core::XmlFilterBase& rFilter,
-+                            ::oox::core::ModelObjectContainer& rObjContainer,
-+                            sal_Int32 nShapeRotation, sal_Int32 nPhClr ) const;
-+
-+    /** Writes the properties to the passed property set. */
-+    void                pushToPropSet(
-+                            PropertySet& rPropSet,
-+                            const Shape3DPropertyNames& rPropNames,
-+                            const ::oox::core::XmlFilterBase& rFilter,
-+                            ::oox::core::ModelObjectContainer& rObjContainer,
-+                            sal_Int32 nShapeRotation, sal_Int32 nPhClr ) const;
-+};
-+
-+// ============================================================================
-+
-+} // namespace drawingml
-+} // namespace oox
-+
-+#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 @@
- #include "oox/drawingml/clrscheme.hxx"
- #include "oox/drawingml/shape.hxx"
- #include "oox/drawingml/textfont.hxx"
-+#include <com/sun/star/xml/dom/XDocument.hpp>
- 
- namespace oox {
- namespace drawingml {
-@@ -97,6 +98,11 @@ public:
-     inline Shape&                   getTxDef() { return maTxDef; }
-     inline const Shape&             getTxDef() const { return maTxDef; }
- 
-+    void                            setFragment( const ::com::sun::star::uno::Reference<
-+                                                    ::com::sun::star::xml::dom::XDocument>& xRef ) { mxFragment=xRef; }
-+    const ::com::sun::star::uno::Reference<
-+        ::com::sun::star::xml::dom::XDocument>& getFragment() const { return mxFragment; }
-+
- private:
-     ::rtl::OUString     maStyleName;
-     ClrScheme           maClrScheme;
-@@ -108,6 +114,8 @@ private:
-     Shape               maSpDef;
-     Shape               maLnDef;
-     Shape               maTxDef;
-+    ::com::sun::star::uno::Reference<
-+        ::com::sun::star::xml::dom::XDocument> mxFragment;
- };
- 
- // ============================================================================
---- 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
-@@ -0,0 +1,71 @@
-+/*************************************************************************
-+ *
-+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-+ *
-+ * Copyright 2008 by Sun Microsystems, Inc.
-+ *
-+ * OpenOffice.org - a multi-platform office productivity suite
-+ *
-+ * $RCSfile: pptimport.hxx,v $
-+ * $Revision: 1.6 $
-+ *
-+ * This file is part of OpenOffice.org.
-+ *
-+ * OpenOffice.org is free software: you can redistribute it and/or modify
-+ * it under the terms of the GNU Lesser General Public License version 3
-+ * only, as published by the Free Software Foundation.
-+ *
-+ * OpenOffice.org is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-+ * GNU Lesser General Public License version 3 for more details
-+ * (a copy is included in the LICENSE file that accompanied this code).
-+ *
-+ * You should have received a copy of the GNU Lesser General Public License
-+ * version 3 along with OpenOffice.org.  If not, see
-+ * <http://www.openoffice.org/license.html>
-+ * for a copy of the LGPLv3 License.
-+ *
-+ ************************************************************************/
-+
-+#ifndef OOX_POWERPOINT_QUICKDIAGRAMMINGIMPORT_HXX
-+#define OOX_POWERPOINT_QUICKDIAGRAMMINGIMPORT_HXX
-+
-+#include "oox/core/xmlfilterbase.hxx"
-+
-+#include <com/sun/star/animations/XAnimationNode.hpp>
-+#include <oox/drawingml/theme.hxx>
-+#include "oox/ppt/presentationfragmenthandler.hxx"
-+#include "oox/ppt/slidepersist.hxx"
-+#include "tokens.hxx"
-+#include <vector>
-+#include <map>
-+
-+namespace oox { namespace ppt {
-+
-+// ---------------------------------------------------------------------
-+
-+class QuickDiagrammingImport : public oox::core::XmlFilterBase
-+{
-+public:
-+
-+	QuickDiagrammingImport( const com::sun::star::uno::Reference< com::sun::star::lang::XMultiServiceFactory > & rSMgr  );
-+
-+    // from FilterBase
-+    virtual bool importDocument() throw();
-+    virtual bool exportDocument() throw();
-+
-+    virtual const ::oox::drawingml::Theme* getCurrentTheme() const;
-+    virtual sal_Int32 getSchemeClr( sal_Int32 nColorSchemeToken ) const;
-+	virtual const oox::drawingml::table::TableStyleListPtr getTableStyles();
-+
-+    virtual oox::vml::Drawing* getVmlDrawing();
-+    virtual oox::drawingml::chart::ChartConverter* getChartConverter();
-+
-+private:
-+    virtual ::rtl::OUString implGetImplementationName() const;
-+};
-+
-+} }
-+
-+#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
-@@ -0,0 +1,72 @@
-+/*************************************************************************
-+ *
-+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-+ *
-+ * Copyright 2008 by Sun Microsystems, Inc.
-+ *
-+ * OpenOffice.org - a multi-platform office productivity suite
-+ *
-+ * $RCSfile: pptimport.hxx,v $
-+ * $Revision: 1.6 $
-+ *
-+ * This file is part of OpenOffice.org.
-+ *
-+ * OpenOffice.org is free software: you can redistribute it and/or modify
-+ * it under the terms of the GNU Lesser General Public License version 3
-+ * only, as published by the Free Software Foundation.
-+ *
-+ * OpenOffice.org is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-+ * GNU Lesser General Public License version 3 for more details
-+ * (a copy is included in the LICENSE file that accompanied this code).
-+ *
-+ * You should have received a copy of the GNU Lesser General Public License
-+ * version 3 along with OpenOffice.org.  If not, see
-+ * <http://www.openoffice.org/license.html>
-+ * for a copy of the LGPLv3 License.
-+ *
-+ ************************************************************************/
-+
-+#ifndef OOX_POWERPOINT_QUICKDIAGRAMMINGLAYOUT_HXX
-+#define OOX_POWERPOINT_QUICKDIAGRAMMINGLAYOUT_HXX
-+
-+#include "oox/core/xmlfilterbase.hxx"
-+
-+#include <com/sun/star/animations/XAnimationNode.hpp>
-+#include <oox/drawingml/theme.hxx>
-+#include "oox/ppt/presentationfragmenthandler.hxx"
-+#include "oox/ppt/slidepersist.hxx"
-+#include "tokens.hxx"
-+#include <vector>
-+#include <map>
-+
-+namespace oox { namespace ppt {
-+
-+// ---------------------------------------------------------------------
-+
-+class QuickDiagrammingLayout : public oox::core::XmlFilterBase
-+{
-+public:
-+
-+	QuickDiagrammingLayout( const com::sun::star::uno::Reference< com::sun::star::lang::XMultiServiceFactory > & rSMgr  );
-+
-+    // from FilterBase
-+    virtual bool importDocument() throw();
-+    virtual bool exportDocument() throw();
-+
-+    virtual const ::oox::drawingml::Theme* getCurrentTheme() const;
-+    virtual sal_Int32 getSchemeClr( sal_Int32 nColorSchemeToken ) const;
-+	virtual const oox::drawingml::table::TableStyleListPtr getTableStyles();
-+
-+    virtual ::oox::vml::Drawing* getVmlDrawing();
-+    virtual ::oox::drawingml::chart::ChartConverter* getChartConverter();
-+
-+private:
-+    virtual ::rtl::OUString implGetImplementationName() const;
-+    drawingml::ThemePtr mpThemePtr;
-+};
-+
-+} }
-+
-+#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:
-     virtual const ::oox::drawingml::Theme* getCurrentTheme() const;
-     virtual ::oox::vml::Drawing* getVmlDrawing();
-     virtual const oox::drawingml::table::TableStyleListPtr getTableStyles();
--    virtual ::oox::drawingml::chart::ChartConverter& getChartConverter();
-+    virtual ::oox::drawingml::chart::ChartConverter* getChartConverter();
- 
-     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:
-     virtual const ::oox::drawingml::Theme* getCurrentTheme() const;
-     virtual ::oox::vml::Drawing* getVmlDrawing();
-     virtual const ::oox::drawingml::table::TableStyleListPtr getTableStyles();
--    virtual ::oox::drawingml::chart::ChartConverter& getChartConverter();
-+    virtual ::oox::drawingml::chart::ChartConverter* getChartConverter();
- 
-     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:
-     /** Returns the converter for string to cell address/range conversion. */
-     AddressConverter&   getAddressConverter() const;
-     /** Returns the chart object converter. */
--    ExcelChartConverter& getChartConverter() const;
-+    ExcelChartConverter* getChartConverter() const;
-     /** 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 >
- namespace oox {
-     namespace core { SERVICE( FilterDetect ); }
-     namespace ppt { SERVICE( PowerPointImport ); }
-+    namespace ppt { SERVICE( QuickDiagrammingImport ); }
-+    namespace ppt { SERVICE( QuickDiagrammingLayout ); }
-     namespace xls { SERVICE( BiffDetector ); }
-     namespace xls { SERVICE( ExcelFilter ); }
-     namespace xls { SERVICE( ExcelBiffFilter ); }
-@@ -103,6 +105,8 @@ OOX_DLLPUBLIC sal_Bool SAL_CALL componen
- 
-             WRITEINFO( ::oox::core::FilterDetect );
-             WRITEINFO( ::oox::ppt::PowerPointImport );
-+			WRITEINFO( ::oox::ppt::QuickDiagrammingImport );
-+			WRITEINFO( ::oox::ppt::QuickDiagrammingLayout );
-             WRITEINFO( ::oox::xls::BiffDetector );
-             WRITEINFO( ::oox::xls::ExcelFilter );
-             WRITEINFO( ::oox::xls::ExcelBiffFilter );
-@@ -151,6 +155,8 @@ OOX_DLLPUBLIC void * SAL_CALL component_
- 
-         SINGLEFACTORY( ::oox::core::FilterDetect )
-         else SINGLEFACTORY( oox::ppt::PowerPointImport )
-+        else SINGLEFACTORY( oox::ppt::QuickDiagrammingImport )
-+        else SINGLEFACTORY( oox::ppt::QuickDiagrammingLayout )
-         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 @@
- #include <com/sun/star/frame/XModel.hpp>
- #include <com/sun/star/task/XStatusIndicator.hpp>
- #include <com/sun/star/task/XInteractionHandler.hpp>
-+#include <com/sun/star/drawing/XShape.hpp>
- #include <osl/mutex.hxx>
- #include <rtl/instance.hxx>
- #include <rtl/uri.hxx>
-@@ -69,6 +70,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
-     Reference< XStream >                mxOutStream;
-     Reference< XStatusIndicator >       mxStatusIndicator;
-     Reference< XInteractionHandler >    mxInteractionHandler;
-+    Reference< XShape >                 mxParentShape;
- 
-     explicit            FilterBaseImpl( const Reference< XMultiServiceFactory >& rxGlobalFactory );
- 
-@@ -320,6 +323,11 @@ const Reference< XMultiServiceFactory >&
-     return mxImpl->mxModelFactory;
- }
- 
-+const Reference< XShape >& FilterBase::getParentShape() const
-+{
-+    return mxImpl->mxParentShape;
-+}
-+
- 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() );
-     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 @@
- 
- #include <rtl/strbuf.hxx>
- #include <rtl/ustrbuf.hxx>
-+#include <rtl/instance.hxx>
- #include <com/sun/star/container/XNameContainer.hpp>
- #include <com/sun/star/embed/XRelationshipAccess.hpp>
-+#include <com/sun/star/xml/dom/XDocument.hpp>
-+#include <com/sun/star/xml/dom/XDocumentBuilder.hpp>
- #include <com/sun/star/xml/sax/InputSource.hpp>
- #include <com/sun/star/xml/sax/XFastParser.hpp>
-+#include <com/sun/star/xml/sax/XFastSAXSerializable.hpp>
- #include <com/sun/star/document/XDocumentProperties.hpp>
- #include <comphelper/mediadescriptor.hxx>
- #include <sax/fshelper.hxx>
-@@ -57,6 +61,7 @@ using ::rtl::OStringBuffer;
- using ::rtl::OUString;
- using ::rtl::OUStringBuffer;
- using ::com::sun::star::beans::StringPair;
-+using ::com::sun::star::beans::Pair;
- 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
- using ::com::sun::star::xml::sax::XFastDocumentHandler;
- using ::com::sun::star::xml::sax::InputSource;
- using ::com::sun::star::xml::sax::SAXException;
-+using ::com::sun::star::xml::dom::XDocument;
-+using ::com::sun::star::xml::dom::XDocumentBuilder;
- using ::com::sun::star::document::XDocumentProperties;
- using ::com::sun::star::util::DateTime;
- using ::comphelper::MediaDescriptor;
- using ::sax_fastparser::FastSerializerHelper;
- using ::sax_fastparser::FSHelperPtr;
-+using namespace ::com::sun::star;
- 
- namespace oox {
- namespace core {
-@@ -110,6 +118,64 @@ XmlFilterBaseImpl::XmlFilterBaseImpl() :
- 
- // ============================================================================
- 
-+namespace 
-+{ 
-+    struct NamespaceIds: public rtl::StaticWithInit<
-+        Sequence< Pair< OUString, sal_Int32 > >,
-+        NamespaceIds> 
-+    {
-+        Sequence< Pair< OUString, sal_Int32 > > operator()()
-+        {
-+            static const char* const namespaceURIs[] = {
-+                "http://www.w3.org/XML/1998/namespace",
-+                "http://schemas.openxmlformats.org/package/2006/relationships",
-+                "http://schemas.openxmlformats.org/officeDocument/2006/relationships",
-+                "http://schemas.openxmlformats.org/drawingml/2006/main",
-+                "http://schemas.openxmlformats.org/drawingml/2006/diagram",
-+                "http://schemas.openxmlformats.org/drawingml/2006/chart",
-+                "urn:schemas-microsoft-com:vml",
-+                "urn:schemas-microsoft-com:office:office",
-+                "urn:schemas-microsoft-com:office:word",
-+                "urn:schemas-microsoft-com:office:excel",
-+                "urn:schemas-microsoft-com:office:powerpoint",
-+                "http://schemas.microsoft.com/office/2006/activeX",
-+                "http://schemas.openxmlformats.org/spreadsheetml/2006/main",
-+                "http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing",
-+                "http://schemas.microsoft.com/office/excel/2006/main",
-+                "http://schemas.openxmlformats.org/presentationml/2006/main"
-+            };
-+
-+            static const sal_Int32 namespaceIds[] = {
-+                NMSP_XML,
-+                NMSP_PACKAGE_RELATIONSHIPS,
-+                NMSP_RELATIONSHIPS,
-+                NMSP_DRAWINGML,
-+                NMSP_DIAGRAM,
-+                NMSP_CHART,
-+                NMSP_VML,
-+                NMSP_OFFICE,
-+                NMSP_VML_DOC,
-+                NMSP_VML_XLS,
-+                NMSP_VML_PPT,
-+                NMSP_AX,
-+                NMSP_XLS,
-+                NMSP_XDR,
-+                NMSP_XM,
-+                NMSP_PPT
-+            };
-+
-+            Sequence< Pair< OUString, sal_Int32 > > aRet(STATIC_ARRAY_SIZE(namespaceIds));
-+            for( sal_Int32 i=0; i<aRet.getLength(); ++i )
-+                aRet[i] = beans::make_Pair(
-+                    ::rtl::OUString::createFromAscii(namespaceURIs[i]),
-+                    namespaceIds[i]);
-+            return aRet;
-+        }
-+    }; 
-+}
-+ 
-+// ============================================================================
-+ 
- XmlFilterBase::XmlFilterBase( const Reference< XMultiServiceFactory >& rxGlobalFactory ) :
-     FilterBase( rxGlobalFactory ),
-     mxImpl( new XmlFilterBaseImpl ),
-@@ -186,26 +252,10 @@ bool XmlFilterBase::importFragment( cons
-         xParser->setTokenHandler( mxImpl->mxTokenHandler );
- 
-         // register XML namespaces
--        xParser->registerNamespace( CREATE_OUSTRING( "http://www.w3.org/XML/1998/namespace" ), NMSP_XML );
--        xParser->registerNamespace( CREATE_OUSTRING( "http://schemas.openxmlformats.org/package/2006/relationships" ), NMSP_PACKAGE_RELATIONSHIPS );
--        xParser->registerNamespace( CREATE_OUSTRING( "http://schemas.openxmlformats.org/officeDocument/2006/relationships" ), NMSP_RELATIONSHIPS );
--
--        xParser->registerNamespace( CREATE_OUSTRING( "http://schemas.openxmlformats.org/drawingml/2006/main" ), NMSP_DRAWINGML );
--        xParser->registerNamespace( CREATE_OUSTRING( "http://schemas.openxmlformats.org/drawingml/2006/diagram" ), NMSP_DIAGRAM );
--        xParser->registerNamespace( CREATE_OUSTRING( "http://schemas.openxmlformats.org/drawingml/2006/chart" ), NMSP_CHART );
--
--        xParser->registerNamespace( CREATE_OUSTRING( "urn:schemas-microsoft-com:vml" ), NMSP_VML );
--        xParser->registerNamespace( CREATE_OUSTRING( "urn:schemas-microsoft-com:office:office" ), NMSP_OFFICE );
--        xParser->registerNamespace( CREATE_OUSTRING( "urn:schemas-microsoft-com:office:word" ), NMSP_VML_DOC );
--        xParser->registerNamespace( CREATE_OUSTRING( "urn:schemas-microsoft-com:office:excel" ), NMSP_VML_XLS );
--        xParser->registerNamespace( CREATE_OUSTRING( "urn:schemas-microsoft-com:office:powerpoint" ), NMSP_VML_PPT );
--        xParser->registerNamespace( CREATE_OUSTRING( "http://schemas.microsoft.com/office/2006/activeX" ), NMSP_AX );
--
--        xParser->registerNamespace( CREATE_OUSTRING( "http://schemas.openxmlformats.org/spreadsheetml/2006/main"), NMSP_XLS );
--        xParser->registerNamespace( CREATE_OUSTRING( "http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing" ), NMSP_XDR );
--        xParser->registerNamespace( CREATE_OUSTRING( "http://schemas.microsoft.com/office/excel/2006/main" ), NMSP_XM );
--
--        xParser->registerNamespace( CREATE_OUSTRING( "http://schemas.openxmlformats.org/presentationml/2006/main"), NMSP_PPT );
-+        const Sequence< Pair< OUString, sal_Int32 > > ids=
-+            NamespaceIds::get();
-+        for( sal_Int32 i=0; i<ids.getLength(); ++i )
-+            xParser->registerNamespace( ids[i].First, ids[i].Second );
- 
-         // create the input source and parse the stream
-         InputSource aSource;
-@@ -229,6 +279,66 @@ bool XmlFilterBase::importFragment( cons
-     return false;
- }
- 
-+Reference<XDocument> XmlFilterBase::importFragment( const ::rtl::OUString& aFragmentPath )
-+{
-+    Reference<XDocument> xRet;
-+
-+    // path to fragment stream valid?
-+    OSL_ENSURE( aFragmentPath.getLength() > 0, "XmlFilterBase::importFragment - empty fragment path" );
-+    if( aFragmentPath.getLength() == 0 )
-+        return xRet;
-+
-+    // try to open the fragment stream (this may fail - do not assert)
-+    Reference< XInputStream > xInStrm = openInputStream( aFragmentPath );
-+    if( !xInStrm.is() )
-+        return xRet;
-+
-+    // binary streams (fragment extension is '.bin') currently not supported
-+    sal_Int32 nBinSuffixPos = aFragmentPath.getLength() - mxImpl->maBinSuffix.getLength();
-+    if( (nBinSuffixPos >= 0) && aFragmentPath.match( mxImpl->maBinSuffix, nBinSuffixPos ) )
-+        return xRet;
-+
-+    // try to import XML stream
-+    try
-+    {
-+        // create the dom parser
-+        Reference<XDocumentBuilder> xDomBuilder( 
-+            getGlobalFactory()->createInstance(
-+                CREATE_OUSTRING( "com.sun.star.xml.dom.DocumentBuilder" ) ), 
-+            UNO_QUERY_THROW );
-+
-+        // create DOM from fragment
-+        xRet = xDomBuilder->parse(xInStrm);
-+    }
-+    catch( Exception& )
-+    {
-+    }
-+
-+    return xRet;
-+}
-+
-+bool XmlFilterBase::importFragment( const ::rtl::Reference< FragmentHandler >& rxHandler,
-+                                    const Reference< xml::sax::XFastSAXSerializable >& rxSerializer )
-+{
-+    Reference< XFastDocumentHandler > xDocHandler( rxHandler.get() );
-+    if( !xDocHandler.is() )
-+        return false;
-+
-+    // try to import XML stream
-+    try
-+    {
-+        rxSerializer->fastSerialize( xDocHandler,
-+                                     mxImpl->mxTokenHandler,
-+                                     uno::Sequence< beans::StringPair >(),
-+                                     NamespaceIds::get() );
-+        return true;
-+    }
-+    catch( Exception& )
-+    {}
-+
-+    return false;
-+}
-+
- RelationsRef XmlFilterBase::importRelations( const OUString& rFragmentPath )
- {
-     // try to find cached relations
-@@ -492,6 +602,11 @@ XmlFilterBase& XmlFilterBase::exportDocu
-     return *this;
- }
- 
-+::oox::drawingml::chart::ChartConverter* XmlFilterBase::getChartConverter()
-+{
-+    return 0;
-+}
-+
- // protected ------------------------------------------------------------------
- 
- Reference< XInputStream > XmlFilterBase::implGetInputStream( MediaDescriptor& rMediaDesc ) const
---- oox/source/drawingml/chart/chartspaceconverter.cxx.old	2009-10-08 16:17:32.000000000 +0200
-+++ oox/source/drawingml/chart/chartspaceconverter.cxx	2010-03-03 17:00:08.000000000 +0100
-@@ -69,9 +69,12 @@ ChartSpaceConverter::~ChartSpaceConverte
- 
- void ChartSpaceConverter::convertFromModel()
- {
-+    if( !getChartConverter() )
-+        return;
-+
-     /*  create data provider (virtual function in the ChartConverter class,
-         derived converters may create an external data provider) */
--    getChartConverter().createDataProvider( getChartDocument() );
-+    getChartConverter()->createDataProvider( getChartDocument() );
- 
-     // attach number formatter of container document to data receiver
-     try
---- oox/source/drawingml/chart/converterbase.cxx.old	2009-10-07 15:06:37.000000000 +0200
-+++ oox/source/drawingml/chart/converterbase.cxx	2010-03-03 17:00:08.000000000 +0100
-@@ -145,9 +145,9 @@ XmlFilterBase& ConverterRoot::getFilter(
-     return mxData->mrFilter;
- }
- 
--ChartConverter& ConverterRoot::getChartConverter() const
-+ChartConverter* ConverterRoot::getChartConverter() const
- {
--    return mxData->mrConverter;
-+    return &mxData->mrConverter;
- }
- 
- Reference< XChartDocument > ConverterRoot::getChartDocument() const
---- oox/source/drawingml/chart/datasourceconverter.cxx.old	2009-10-08 16:17:32.000000000 +0200
-+++ oox/source/drawingml/chart/datasourceconverter.cxx	2010-03-03 17:00:08.000000000 +0100
-@@ -57,12 +57,15 @@ DataSequenceConverter::~DataSequenceConv
- Reference< XDataSequence > DataSequenceConverter::createDataSequence( const OUString& rRole )
- {
-     // create data sequence from data source model (virtual call at chart converter)
--    Reference< XDataSequence > xDataSeq = getChartConverter().createDataSequence( getChartDocument()->getDataProvider(), mrModel );
--
--    // set sequence role
--    PropertySet aSeqProp( xDataSeq );
--    aSeqProp.setProperty( PROP_Role, rRole );
-+    Reference< XDataSequence > xDataSeq;
-+    if( getChartConverter() )
-+    {
-+        xDataSeq = getChartConverter()->createDataSequence( getChartDocument()->getDataProvider(), mrModel );
- 
-+        // set sequen   ce role
-+        PropertySet aSeqProp( xDataSeq );
-+        aSeqProp.setProperty( PROP_Role, rRole );
-+    }
-     return xDataSeq;
- }
- 
---- oox/source/drawingml/clrscheme.cxx.old	2009-10-07 15:06:37.000000000 +0200
-+++ oox/source/drawingml/clrscheme.cxx	2010-03-03 17:00:08.000000000 +0100
-@@ -28,6 +28,7 @@
-  *
-  ************************************************************************/
- 
-+#include <osl/diagnose.h>
- #include "oox/drawingml/clrscheme.hxx"
- #include "tokens.hxx"
- 
-@@ -64,6 +65,7 @@ ClrScheme::~ClrScheme()
- 
- sal_Bool ClrScheme::getColor( sal_Int32 nSchemeClrToken, sal_Int32& rColor ) const
- {
-+    OSL_ASSERT((nSchemeClrToken & sal_Int32(0xFFFF0000))==0);
-     switch( nSchemeClrToken )
-     {
-         case XML_bg1 : nSchemeClrToken = XML_lt1; break;
---- oox/source/drawingml/color.cxx.old	2009-10-08 16:17:32.000000000 +0200
-+++ oox/source/drawingml/color.cxx	2010-03-03 17:00:08.000000000 +0100
-@@ -384,6 +384,7 @@ sal_Int32 Color::getColor( const ::oox::
-     {
-         for( TransformVec::const_iterator aIt = maTransforms.begin(), aEnd = maTransforms.end(); aIt != aEnd; ++aIt )
-         {
-+        OSL_ASSERT((aIt->mnToken & sal_Int32(0xFFFF0000))==0);
-             switch( aIt->mnToken )
-             {
-                 case XML_red:       toCrgb(); lclSetValue( mnC1, aIt->mnValue );    break;
---- oox/source/drawingml/customshapegeometry.cxx.old	2010-03-03 16:59:43.000000000 +0100
-+++ oox/source/drawingml/customshapegeometry.cxx	2010-03-03 17:00:08.000000000 +0100
-@@ -268,8 +268,9 @@ void PathListContext::endFastElement( sa
- 
- // ---------------------------------------------------------------------
- 
--OUString GetShapeType( sal_Int32 nType )
-+OUString GetShapePresetType( sal_Int32 nType )
- {
-+    OSL_ASSERT((nType & sal_Int32(0xFFFF0000))==0);
-     OUString sType;
-      switch( nType )
-     {
-@@ -897,6 +898,7 @@ OUString GetShapeType( sal_Int32 nType )
- 
- static OUString GetTextShapeType( sal_Int32 nType )
- {
-+    OSL_ASSERT((nType & sal_Int32(0xFFFF0000))==0);
-     OUString sType;
-     switch( nType )
-     {
-@@ -1103,7 +1105,7 @@ PresetShapeGeometryContext::PresetShapeG
-     OUString sShapeType;
-     sal_Int32 nShapeType = xAttribs->getOptionalValueToken( XML_prst, FastToken::DONTKNOW );
-     if ( nShapeType != FastToken::DONTKNOW )
--        sShapeType = GetShapeType( nShapeType );
-+		sShapeType = GetShapePresetType( nShapeType );
-     OSL_ENSURE( sShapeType.getLength(), "oox::drawingml::CustomShapeCustomGeometryContext::CustomShapeCustomGeometryContext(), unknown shape type" );
-     mrCustomShapeProperties.setShapePresetType( sShapeType );
- }
---- oox/source/drawingml/diagram/constraintlistcontext.cxx.old	2010-03-03 17:00:08.000000000 +0100
-+++ oox/source/drawingml/diagram/constraintlistcontext.cxx	2010-03-03 17:00:08.000000000 +0100
-@@ -0,0 +1,102 @@
-+/*************************************************************************
-+ *
-+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-+ * 
-+ * Copyright 2008 by Sun Microsystems, Inc.
-+ *
-+ * OpenOffice.org - a multi-platform office productivity suite
-+ *
-+ * $RCSfile$
-+ * $Revision$
-+ *
-+ * 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 "constraintlistcontext.hxx"
-+#include "oox/helper/attributelist.hxx"
-+#include "oox/core/namespaces.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_ConstraintLists
-+ConstraintListContext::ConstraintListContext( ContextHandler& rParent,
-+                                              const Reference< XFastAttributeList >&,
-+                                              const LayoutAtomPtr &pNode )
-+    : ContextHandler( rParent )
-+	, mpNode( pNode )
-+{
-+	OSL_ENSURE( pNode, "Node must NOT be NULL" );
-+}
-+
-+
-+ConstraintListContext::~ConstraintListContext()
-+{
-+}
-+
-+void SAL_CALL ConstraintListContext::endFastElement( ::sal_Int32 )
-+	throw (SAXException, RuntimeException)
-+{
-+}
-+
-+Reference< XFastContextHandler > SAL_CALL
-+ConstraintListContext::createFastChildContext( ::sal_Int32 aElement,
-+                                               const Reference< XFastAttributeList >& xAttribs )
-+	throw (SAXException, RuntimeException)
-+{
-+	Reference< XFastContextHandler > xRet;
-+
-+    OUString aEmptyStr;
-+
-+	switch( aElement )
-+	{
-+	case NMSP_DIAGRAM|XML_constr:
-+	{
-+		ConstraintAtomPtr pNode( new ConstraintAtom() );
-+		mpNode->addChild( pNode );
-+
-+        AttributeList aAttribs( xAttribs );
-+        pNode->setFor( aAttribs.getToken( XML_for, XML_none ) );
-+        pNode->setForName( aAttribs.getString( XML_forName, aEmptyStr ) );
-+        pNode->setPointType( aAttribs.getToken( XML_ptType, XML_none ) );
-+        pNode->setType( aAttribs.getToken( XML_type, XML_none ) );
-+        pNode->setRefFor( aAttribs.getToken( XML_refFor, XML_none ) );
-+        pNode->setRefForName( aAttribs.getString( XML_refForName, aEmptyStr ) );
-+        pNode->setRefType( aAttribs.getToken( XML_refType, XML_none ) );
-+        pNode->setRefPointType( aAttribs.getToken( XML_refPtType, XML_none ) );
-+        pNode->setFactor( aAttribs.getDouble( XML_fact, 1.0 ) );
-+        pNode->setValue( aAttribs.getDouble( XML_val, 0.0 ) );
-+        pNode->setOperator( aAttribs.getToken( XML_op, XML_none ) );
-+		break;
-+	}
-+	default:
-+		break;
-+	}
-+	if( !xRet.is() )
-+		xRet.set(this);
-+
-+	return xRet;
-+}
-+
-+
-+} }
---- oox/source/drawingml/diagram/constraintlistcontext.hxx.old	2010-03-03 17:00:08.000000000 +0100
-+++ oox/source/drawingml/diagram/constraintlistcontext.hxx	2010-03-03 17:00:08.000000000 +0100
-@@ -0,0 +1,54 @@
-+/*************************************************************************
-+ *
-+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-+ * 
-+ * Copyright 2008 by Sun Microsystems, Inc.
-+ *
-+ * OpenOffice.org - a multi-platform office productivity suite
-+ *
-+ * $RCSfile$
-+ * $Revision$
-+ *
-+ * 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_CONSTRAINTLISTCONTEXT_HXX
-+#define OOX_DRAWINGML_CONSTRAINTLISTCONTEXT_HXX
-+
-+#include "oox/core/contexthandler.hxx"
-+#include "diagramlayoutatoms.hxx"
-+#include "diagram.hxx"
-+
-+namespace oox { namespace drawingml {
-+
-+class ConstraintListContext : public ::oox::core::ContextHandler
-+{
-+public:
-+    ConstraintListContext( ContextHandler& rParent, const ::com::sun::star::uno::Reference< ::com::sun::star::xml::sax::XFastAttributeList >& xAttributes, const LayoutAtomPtr &pNode );
-+	virtual ~ConstraintListContext();
-+
-+	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:
-+	LayoutAtomPtr mpNode;
-+};
-+
-+} }
-+
-+#endif
---- oox/source/drawingml/diagram/datamodelcontext.cxx.old	2009-10-08 16:17:32.000000000 +0200
-+++ oox/source/drawingml/diagram/datamodelcontext.cxx	2010-03-03 17:00:08.000000000 +0100
-@@ -28,7 +28,7 @@
-  *
-  ************************************************************************/
- 
--#include "oox/drawingml/diagram/datamodelcontext.hxx"
-+#include "datamodelcontext.hxx"
- #include "oox/helper/attributelist.hxx"
- #include "oox/core/namespaces.hxx"
- #include "oox/drawingml/fillpropertiesgroupcontext.hxx"
-@@ -44,40 +44,46 @@ namespace oox { namespace drawingml {
- 
- 
- 
--// CL_Cxn
--class CxnContext
-+// CT_CxnList
-+class CxnListContext
-     : public ContextHandler
- {
- public:
--    CxnContext( ContextHandler& rParent,
--                const Reference< XFastAttributeList >& xAttribs,
--                const dgm::ConnectionPtr & pConnection )
-+    CxnListContext( ContextHandler& rParent,
-+                    dgm::Connections & aConnections )
-         : ContextHandler( rParent )
--        , mpConnection( pConnection )
-+        , mrConnections( aConnections )
-         {
--            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*/ )
-+                            const Reference< XFastAttributeList >& xAttribs )
-         throw (SAXException, RuntimeException)
-         {
-             Reference< XFastContextHandler > xRet;
- 
-             switch( aElementToken )
-             {
--            case NMSP_DIAGRAM|XML_extLst:
-+			case NMSP_DIAGRAM|XML_cxn:
-+			{
-+				mrConnections.push_back( dgm::Connection() );
-+                dgm::Connection& rConnection=mrConnections.back();
-+
-+                const sal_Int32 nType = xAttribs->getOptionalValueToken( XML_type, XML_parOf );
-+                rConnection.mnType = nType;
-+                rConnection.msModelId = xAttribs->getOptionalValue( XML_modelId );
-+                rConnection.msSourceId = xAttribs->getOptionalValue( XML_srcId );
-+                rConnection.msDestId  = xAttribs->getOptionalValue( XML_destId );
-+                rConnection.msPresId  = xAttribs->getOptionalValue( XML_presId );
-+                rConnection.msSibTransId  = xAttribs->getOptionalValue( XML_sibTransId );
-+                rConnection.msParTransId  = xAttribs->getOptionalValue( XML_parTransId );
-+                const AttributeList attribs( xAttribs );
-+                rConnection.mnSourceOrder = attribs.getInteger( XML_srcOrd, 0 );
-+                rConnection.mnDestOrder = attribs.getInteger( XML_destOrd, 0 );
-+
-+                // skip CT_extLst
-                 return xRet;
-+			}
-             default:
-                 break;
-             }
-@@ -85,36 +91,135 @@ public:
-                 xRet.set( this );
-             return xRet;
-         }
-+
- private:
--    dgm::ConnectionPtr mpConnection;
-+	dgm::Connections& mrConnections;
- };
- 
- 
--// CT_CxnList
--class CxnListContext
-+// CT_presLayoutVars
-+class PresLayoutVarsContext
-     : public ContextHandler
- {
- public:
--    CxnListContext( ContextHandler& rParent,  dgm::Connections & aConnections )
--        : ContextHandler( rParent )
--        , maConnections( aConnections )
-+    PresLayoutVarsContext( ContextHandler& rParent,
-+                           dgm::Point & rPoint ) :
-+        ContextHandler( rParent ),
-+		mrPoint( rPoint )
-+    {
-+    }
-+    virtual Reference< XFastContextHandler > SAL_CALL
-+	createFastChildContext( sal_Int32 aElementToken,
-+							const Reference< XFastAttributeList >& xAttribs )
-+		throw (SAXException, RuntimeException)
-         {
-+			Reference< XFastContextHandler > xRet;
-+            AttributeList aAttribs( xAttribs );
-+
-+			switch( aElementToken )
-+			{
-+                // TODO
-+			case NMSP_DIAGRAM|XML_animLvl:
-+			case NMSP_DIAGRAM|XML_animOne:
-+				break;
-+			case NMSP_DIAGRAM|XML_bulletEnabled:
-+                mrPoint.mbBulletEnabled = aAttribs.getBool( XML_val, false );
-+                break;
-+			case NMSP_DIAGRAM|XML_chMax:
-+                mrPoint.mnMaxChildren = aAttribs.getInteger( XML_val, -1 );
-+                break;
-+			case NMSP_DIAGRAM|XML_chPref:
-+                mrPoint.mnPreferredChildren = aAttribs.getInteger( XML_val, -1 );
-+                break;
-+			case NMSP_DIAGRAM|XML_dir:
-+                mrPoint.mnDirection = aAttribs.getToken( XML_val, XML_norm );
-+                break;
-+			case NMSP_DIAGRAM|XML_hierBranch:
-+                mrPoint.mnHierarchyBranch = aAttribs.getToken( XML_val, XML_std );
-+                break;
-+			case NMSP_DIAGRAM|XML_orgChart:
-+                mrPoint.mbOrgChartEnabled = aAttribs.getBool( XML_val, false );
-+                break;
-+			case NMSP_DIAGRAM|XML_resizeHandles:
-+                mrPoint.mnResizeHandles = aAttribs.getToken( XML_val, XML_rel );
-+                break;
-+			default:
-+				break;
-+			}
-+			if( !xRet.is() )
-+				xRet.set( this );
-+			return xRet;
-         }
-+
-+private:
-+    dgm::Point& mrPoint;
-+};
-+
-+
-+// CT_prSet
-+class PropertiesContext
-+    : public ContextHandler
-+{
-+public:
-+    PropertiesContext( ContextHandler& rParent,
-+                       dgm::Point & rPoint,
-+                       const Reference< XFastAttributeList >& xAttribs ) :
-+        ContextHandler( rParent ),
-+		mrPoint( rPoint )
-+    {
-+        OUString aEmptyStr;
-+        AttributeList aAttribs( xAttribs );
-+
-+        mrPoint.msColorTransformCategoryId = aAttribs.getString( XML_csCatId, aEmptyStr );
-+        mrPoint.msColorTransformTypeId = aAttribs.getString( XML_csTypeId, aEmptyStr );
-+        mrPoint.msLayoutCategoryId = aAttribs.getString( XML_loCatId, aEmptyStr );
-+        mrPoint.msLayoutTypeId = aAttribs.getString( XML_loTypeId, aEmptyStr );
-+        mrPoint.msPlaceholderText = aAttribs.getString( XML_phldrT, aEmptyStr );
-+        mrPoint.msPresentationAssociationId = aAttribs.getString( XML_presAssocID, aEmptyStr );
-+        mrPoint.msPresentationLayoutName = aAttribs.getString( XML_presName, aEmptyStr );
-+        mrPoint.msPresentationLayoutStyleLabel = aAttribs.getString( XML_presStyleLbl, aEmptyStr );
-+        mrPoint.msQuickStyleCategoryId = aAttribs.getString( XML_qsCatId, aEmptyStr );
-+        mrPoint.msQuickStyleTypeId = aAttribs.getString( XML_qsTypeId, aEmptyStr );
-+
-+        mrPoint.mnCustomAngle = aAttribs.getInteger( XML_custAng, -1 );
-+        mrPoint.mnPercentageNeighbourWidth = aAttribs.getInteger( XML_custLinFactNeighborX, -1 );
-+        mrPoint.mnPercentageNeighbourHeight = aAttribs.getInteger( XML_custLinFactNeighborY, -1 );
-+        mrPoint.mnPercentageOwnWidth = aAttribs.getInteger( XML_custLinFactX, -1 );
-+        mrPoint.mnPercentageOwnHeight = aAttribs.getInteger( XML_custLinFactY, -1 );
-+        mrPoint.mnIncludeAngleScale = aAttribs.getInteger( XML_custRadScaleInc, -1 );
-+        mrPoint.mnRadiusScale = aAttribs.getInteger( XML_custRadScaleRad, -1 );
-+        mrPoint.mnWidthScale = aAttribs.getInteger( XML_custScaleX, -1 );
-+        mrPoint.mnHeightScale = aAttribs.getInteger( XML_custScaleY, -1 );
-+        mrPoint.mnWidthOverride = aAttribs.getInteger( XML_custSzX, -1 );
-+        mrPoint.mnHeightOverride = aAttribs.getInteger( XML_custSzY, -1 );
-+        mrPoint.mnLayoutStyleCount = aAttribs.getInteger( XML_presStyleCnt, -1 );
-+        mrPoint.mnLayoutStyleIndex = aAttribs.getInteger( XML_presStyleIdx, -1 );
-+
-+        mrPoint.mbCoherent3DOffset = aAttribs.getBool( XML_coherent3DOff, false );
-+        mrPoint.mbCustomHorizontalFlip = aAttribs.getBool( XML_custFlipHor, false );
-+        mrPoint.mbCustomVerticalFlip = aAttribs.getBool( XML_custFlipVert, false );
-+        mrPoint.mbCustomText = aAttribs.getBool( XML_custT, false );
-+        mrPoint.mbIsPlaceholder = aAttribs.getBool( XML_phldr, false );
-+    }
-     virtual Reference< XFastContextHandler > SAL_CALL
-     createFastChildContext( sal_Int32 aElementToken,
--                            const Reference< XFastAttributeList >& xAttribs )
-+							const Reference< XFastAttributeList >& )
-         throw (SAXException, RuntimeException)
-         {
-             Reference< XFastContextHandler > xRet;
- 
-             switch( aElementToken )
-             {
--            case NMSP_DIAGRAM|XML_cxn:
-+			case NMSP_DIAGRAM|XML_presLayoutVars:
-+			{
-+                xRet.set( new PresLayoutVarsContext( *this, mrPoint ) );
-+				break;
-+			}
-+			case NMSP_DIAGRAM|XML_style:
-             {
--                dgm::ConnectionPtr pConnection( new dgm::Connection() );
--                maConnections.push_back( pConnection );
--                xRet.set( new CxnContext( *this, xAttribs, pConnection ) );
--                break;
-+                // TODO
-+                // skip CT_shapeStyle
-+                return xRet;
-             }
-             default:
-                 break;
-@@ -125,11 +230,10 @@ public:
-         }
- 
- private:
--    dgm::Connections  & maConnections;
-+    dgm::Point& mrPoint;
- };
- 
- 
--
- // CL_Pt
- class PtContext
-     : public ContextHandler
-@@ -137,27 +241,25 @@ class PtContext
- 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 ) );
--            }
--        }
-+			   dgm::Point & rPoint):
-+        ContextHandler( rParent ),
-+		mrPoint( rPoint )
-+    {
-+        mrPoint.msModelId = xAttribs->getOptionalValue( XML_modelId );
-+
-+        // the default type is XML_node
-+        const sal_Int32 nType  = xAttribs->getOptionalValueToken( XML_type, XML_node );
-+        mrPoint.mnType = nType;
-+        
-+        // ignore the cxnId unless it is this type. See 5.15.3.1.3 in Primer    
-+        if( ( nType == XML_parTrans ) || ( nType == XML_sibTrans ) )
-+            mrPoint.msCnxId = xAttribs->getOptionalValue( XML_cxnId );
-+    }
- 
- 
-     virtual Reference< XFastContextHandler > SAL_CALL
-     createFastChildContext( sal_Int32 aElementToken,
--                            const Reference< XFastAttributeList >& /*xAttribs*/ )
-+							const Reference< XFastAttributeList >& xAttribs )
-         throw (SAXException, RuntimeException)
-         {
-             Reference< XFastContextHandler > xRet;
-@@ -167,18 +269,22 @@ public:
-             case NMSP_DIAGRAM|XML_extLst:
-                 return xRet;
-             case NMSP_DIAGRAM|XML_prSet:
--                // TODO
--                // CT_ElemPropSet
-+				OSL_TRACE( "diagram property set for point");
-+                xRet = new PropertiesContext( *this, mrPoint, xAttribs );
-                 break;
-             case NMSP_DIAGRAM|XML_spPr:
-                 OSL_TRACE( "shape props for point");
--                xRet = new ShapePropertiesContext( *this, *mpPoint->getShape() );
-+                if( !mrPoint.mpShape )
-+                    mrPoint.mpShape.reset( new Shape() );
-+                xRet = new ShapePropertiesContext( *this, *(mrPoint.mpShape) );
-                 break;
-             case NMSP_DIAGRAM|XML_t:
-             {
-                 OSL_TRACE( "shape text body for point");
-                 TextBodyPtr xTextBody( new TextBody );
--                mpPoint->getShape()->setTextBody( xTextBody );
-+                if( !mrPoint.mpShape )
-+                    mrPoint.mpShape.reset( new Shape() );
-+                mrPoint.mpShape->setTextBody( xTextBody );
-                 xRet = new TextBodyContext( *this, *xTextBody );
-                 break;
-             }
-@@ -191,7 +297,7 @@ public:
-         }
- 
- private:
--    dgm::PointPtr mpPoint;
-+	dgm::Point& mrPoint;
- };
- 
- 
-@@ -201,11 +307,10 @@ class PtListContext
-     : public ContextHandler
- {
- public:
--    PtListContext( ContextHandler& rParent,  dgm::Points & aPoints)
--        : ContextHandler( rParent )
--        , maPoints( aPoints )
--        {
--        }
-+    PtListContext( ContextHandler& rParent,  dgm::Points& rPoints) :
-+        ContextHandler( rParent ),
-+		mrPoints( rPoints )
-+    {}
-     virtual Reference< XFastContextHandler > SAL_CALL
-     createFastChildContext( sal_Int32 aElementToken,
-                             const Reference< XFastAttributeList >& xAttribs )
-@@ -218,9 +323,8 @@ public:
-             case NMSP_DIAGRAM|XML_pt:
-             {
-                 // CT_Pt
--                dgm::PointPtr pPoint( new dgm::Point() );
--                maPoints.push_back( pPoint );
--                xRet.set( new PtContext( *this, xAttribs, pPoint ) );
-+				mrPoints.push_back( dgm::Point() );
-+                xRet.set( new PtContext( *this, xAttribs, mrPoints.back() ) );
-                 break;
-             }
-             default:
-@@ -232,7 +336,7 @@ public:
-         }
- 
- private:
--    dgm::Points  & maPoints;
-+	dgm::Points& mrPoints;
- };
- 
- // CT_BackgroundFormatting
---- oox/source/drawingml/diagram/datamodelcontext.hxx.old	2010-03-03 17:00:08.000000000 +0100
-+++ oox/source/drawingml/diagram/datamodelcontext.hxx	2010-03-03 17:00:08.000000000 +0100
-@@ -0,0 +1,57 @@
-+/*************************************************************************
-+ *
-+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-+ * 
-+ * Copyright 2008 by Sun Microsystems, Inc.
-+ *
-+ * OpenOffice.org - a multi-platform office productivity suite
-+ *
-+ * $RCSfile: datamodelcontext.hxx,v $
-+ * $Revision: 1.4 $
-+ *
-+ * This file is part of OpenOffice.org.
-+ *
-+ * OpenOffice.org is free software: you can redistribute it and/or modify
-+ * it under the terms of the GNU Lesser General Public License version 3
-+ * only, as published by the Free Software Foundation.
-+ *
-+ * OpenOffice.org is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-+ * GNU Lesser General Public License version 3 for more details
-+ * (a copy is included in the LICENSE file that accompanied this code).
-+ *
-+ * You should have received a copy of the GNU Lesser General Public License
-+ * version 3 along with OpenOffice.org.  If not, see
-+ * <http://www.openoffice.org/license.html>
-+ * for a copy of the LGPLv3 License.
-+ *
-+ ************************************************************************/
-+
-+
-+#ifndef OOX_DRAWINGML_SHAPECONTEXT_HXX
-+#define OOX_DRAWINGML_SHAPECONTEXT_HXX
-+
-+#include <com/sun/star/drawing/XShapes.hpp>
-+
-+#include "oox/core/contexthandler.hxx"
-+#include "diagram.hxx"
-+
-+namespace oox { namespace drawingml {
-+
-+// CT_DataModel
-+class DataModelContext : public ::oox::core::ContextHandler
-+{
-+public:
-+    DataModelContext( ::oox::core::ContextHandler& rParent, const DiagramDataPtr & pDataModelPtr );
-+	virtual ~DataModelContext();
-+
-+    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);
-+
-+protected:
-+    DiagramDataPtr mpDataModel;
-+};
-+
-+} }
-+
-+#endif  //  OOX_DRAWINGML_SHAPEGROUPCONTEXT_HXX
---- oox/source/drawingml/diagram/diagram.cxx.old	2009-10-07 15:06:37.000000000 +0200
-+++ oox/source/drawingml/diagram/diagram.cxx	2010-03-03 17:00:08.000000000 +0100
-@@ -34,10 +34,22 @@
- 
- #include <com/sun/star/awt/Point.hpp>
- #include <com/sun/star/awt/Size.hpp>
-+#include <com/sun/star/xml/dom/XDocument.hpp>
-+#include <com/sun/star/xml/sax/XFastSAXSerializable.hpp>
-+#include <rtl/ustrbuf.hxx>
-+#include "oox/drawingml/textbody.hxx"
-+#include "oox/drawingml/textparagraph.hxx"
-+#include "oox/drawingml/textrun.hxx"
- #include "oox/drawingml/diagram/diagram.hxx"
- #include "oox/drawingml/fillproperties.hxx"
- #include "oox/core/namespaces.hxx"
- #include "tokens.hxx"
-+#include "diagram.hxx"
-+#include "diagramlayoutatoms.hxx"
-+#include "diagramfragmenthandler.hxx"
-+
-+#include <iostream>
-+#include <fstream>
- 
- using rtl::OUString;
- using namespace ::com::sun::star;
-@@ -49,58 +61,26 @@ namespace dgm {
- 
- void Connection::dump()
- {
--    OSL_TRACE("dgm: cnx modelId %s, srcId %s, dstId %s",
--              OUSTRING_TO_CSTR( msModelId ),
-+	OSL_TRACE("dgm: cnx modelId %s, srcId %s, dstId %s, parTransId %s, presId %s, sibTransId %s, srcOrd %d, dstOrd %d",
-+			  OUSTRING_TO_CSTR( msModelId ), 
-               OUSTRING_TO_CSTR( msSourceId ),
--              OUSTRING_TO_CSTR( msDestId ) );
--}
--
--Point::Point()
--    : mpShape( new Shape( "com.sun.star.drawing.GraphicObjectShape" ) )
--    , mnType( 0 )
--{
-+			  OUSTRING_TO_CSTR( msDestId ),
-+			  OUSTRING_TO_CSTR( msParTransId ),
-+			  OUSTRING_TO_CSTR( msPresId ),
-+			  OUSTRING_TO_CSTR( msSibTransId ),
-+			  mnSourceOrder,
-+			  mnDestOrder );
- }
- 
- void Point::dump()
- {
--    OSL_TRACE( "dgm: pt cnxId %s, modelId %s",
-+	OSL_TRACE( "dgm: pt text %x, cnxId %s, modelId %s, type %d",
-+			   mpShape.get(),
-                OUSTRING_TO_CSTR( msCnxId ),
--               OUSTRING_TO_CSTR( msModelId ) );
--}
--
--void Point::setModelId( const ::rtl::OUString & sModelId )
--{
--    msModelId = sModelId;
--    mpShape->setName( msModelId );
-+			   OUSTRING_TO_CSTR( msModelId ),
-+               mnType );
- }
- 
--
--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()
-@@ -118,18 +98,10 @@ void DiagramData::dump()
-                   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 )
-+void DiagramLayout::layout( const dgm::Points & /*pTree*/, const awt::Point & /*pt*/ )
- {
-+    // TODO
-+#if 0
-     setPosition( pTree->getPoint(), pt );
-     awt::Point nextPt = pt;
-     nextPt.Y += 50;
-@@ -139,6 +111,7 @@ void DiagramLayout::layout( const dgm::P
-         layout( *iter, nextPt );
-         nextPt.X += 50;
-     }
-+#endif
- }
- 
- void Diagram::setData( const DiagramDataPtr & pData)
-@@ -152,19 +125,244 @@ void Diagram::setLayout( const DiagramLa
-     mpLayout = pLayout;
- }
- 
--void Diagram::setQStyles( const DiagramQStylesPtr & pStyles)
-+#if OSL_DEBUG_LEVEL > 1
-+rtl::OString normalizeDotName( const rtl::OUString& rStr )
- {
--    mpQStyles = pStyles;
--}
-+    rtl::OUStringBuffer aBuf;
-+    aBuf.append((sal_Unicode)'N');
- 
-+    const sal_Int32 nLen(rStr.getLength());
-+    sal_Int32 nCurrIndex(0);
-+    while( nCurrIndex < nLen )
-+    {
-+        const sal_Int32 aChar=rStr.iterateCodePoints(&nCurrIndex);
-+        if( aChar != '-' && aChar != '{' && aChar != '}' )
-+            aBuf.append((sal_Unicode)aChar);
-+    }
-+
-+    return rtl::OUStringToOString(aBuf.makeStringAndClear(),
-+                                  RTL_TEXTENCODING_UTF8);
-+}
-+#endif
- 
--void Diagram::setColors( const DiagramColorsPtr & pColors)
-+static sal_Int32 calcDepth( const rtl::OUString& rNodeName, 
-+                            const dgm::Connections& rCnx )
- {
--    mpColors = pColors;
-+    // find length of longest path in 'isChild' graph, ending with rNodeName
-+	dgm::Connections::const_iterator aCurrCxn( rCnx.begin() );
-+	const dgm::Connections::const_iterator aEndCxn( rCnx.end() );
-+    while( aCurrCxn != aEndCxn )
-+    {
-+        if( aCurrCxn->msParTransId.getLength() &&
-+            aCurrCxn->msSibTransId.getLength() &&
-+            aCurrCxn->msSourceId.getLength() &&
-+            aCurrCxn->msDestId.getLength() &&
-+            aCurrCxn->mnType != XML_presOf && 
-+            aCurrCxn->mnType != XML_presParOf &&
-+            rNodeName == aCurrCxn->msDestId )
-+        {
-+            return calcDepth(aCurrCxn->msSourceId,
-+                             rCnx) + 1;
-+        }
-+        ++aCurrCxn;
-+    }
-+
-+    return 0;
- }
- 
-+
- void Diagram::build(  )
- {
-+    // build name-object maps
-+    // ======================
-+
-+#if OSL_DEBUG_LEVEL > 1
-+    std::ofstream output("/tmp/tree.dot");
-+
-+    output << "digraph datatree {" << std::endl;
-+#endif
-+
-+	dgm::Points::iterator aCurrPoint( getData()->getPoints( ).begin() );
-+	const dgm::Points::iterator aEndPoint( getData()->getPoints( ).end() );
-+    while( aCurrPoint != aEndPoint )
-+    {
-+#if OSL_DEBUG_LEVEL > 1
-+        output << "\t" 
-+               << normalizeDotName(aCurrPoint->msModelId).getStr()
-+               << "[";
-+
-+        if( aCurrPoint->msPresentationLayoutName.getLength() )
-+            output << "label=\"" 
-+                   << rtl::OUStringToOString(
-+                       aCurrPoint->msPresentationLayoutName,
-+                       RTL_TEXTENCODING_UTF8).getStr() << "\", ";
-+        else
-+            output << "label=\"" 
-+                   << rtl::OUStringToOString(
-+                       aCurrPoint->msModelId,
-+                       RTL_TEXTENCODING_UTF8).getStr() << "\", ";
-+
-+        switch( aCurrPoint->mnType )
-+        {
-+            case XML_doc: output << "style=filled, color=red"; break;
-+            case XML_asst: output << "style=filled, color=green"; break;
-+            default:
-+            case XML_node: output << "style=filled, color=blue"; break;
-+            case XML_pres: output << "style=filled, color=yellow"; break;
-+            case XML_parTrans: output << "color=grey"; break;
-+            case XML_sibTrans: output << " "; break;
-+        }
-+
-+        output << "];" << std::endl;
-+
-+        // does currpoint have any text set?
-+        if( aCurrPoint->mpShape && 
-+            aCurrPoint->mpShape->getTextBody() &&
-+            !aCurrPoint->mpShape->getTextBody()->getParagraphs().empty() &&
-+            !aCurrPoint->mpShape->getTextBody()->getParagraphs().front()->getRuns().empty() )
-+        {
-+            static sal_Int32 nCount=0;
-+
-+            output << "\t" 
-+                   << "textNode" << nCount
-+                   << " ["
-+                   << "label=\""
-+                   << rtl::OUStringToOString(
-+                       aCurrPoint->mpShape->getTextBody()->getParagraphs().front()->getRuns().front()->getText(),
-+                       RTL_TEXTENCODING_UTF8).getStr()
-+                   << "\"" << "];" << std::endl;
-+            output << "\t" 
-+                   << normalizeDotName(aCurrPoint->msModelId).getStr()
-+                   << " -> "
-+                   << "textNode" << nCount++
-+                   << ";" << std::endl;
-+        }
-+            
-+
-+#if 0

... etc. - the rest is truncated


More information about the ooo-build-commit mailing list