lotuswordpro/source/filter/lwpfribframe.cxx               |    4 
 lotuswordpro/source/filter/lwpfribtable.cxx               |    4 
 lotuswordpro/source/filter/lwpgrfobj.cxx                  |   10 -
 lotuswordpro/source/filter/lwpgrfobj.hxx                  |    2 
 lotuswordpro/source/filter/lwpsdwfileloader.cxx           |    2 
 lotuswordpro/source/filter/lwpsdwfileloader.hxx           |   10 +
 lotuswordpro/source/filter/lwpsdwgrouploaderv0102.cxx     |    2 
 lotuswordpro/source/filter/lwpsdwgrouploaderv0102.hxx     |    9 -
 lotuswordpro/source/filter/lwpstory.cxx                   |    8 -
 lotuswordpro/source/filter/lwptablelayout.cxx             |    5 
 lotuswordpro/source/filter/xfilter/ixfobject.hxx          |   90 --------------
 lotuswordpro/source/filter/xfilter/ixfproperty.hxx        |   72 -----------
 lotuswordpro/source/filter/xfilter/ixfstyle.hxx           |    3 
 lotuswordpro/source/filter/xfilter/xfbreaks.hxx           |    5 
 lotuswordpro/source/filter/xfilter/xfcolumns.hxx          |    8 -
 lotuswordpro/source/filter/xfilter/xfcontent.hxx          |   12 +
 lotuswordpro/source/filter/xfilter/xfcontentcontainer.cxx |   33 +----
 lotuswordpro/source/filter/xfilter/xfcontentcontainer.hxx |   14 +-
 lotuswordpro/source/filter/xfilter/xfdatestyle.hxx        |    1 
 lotuswordpro/source/filter/xfilter/xfdropcap.hxx          |    5 
 lotuswordpro/source/filter/xfilter/xfframe.cxx            |    6 
 lotuswordpro/source/filter/xfilter/xfglobal.hxx           |    1 
 lotuswordpro/source/filter/xfilter/xfindex.hxx            |    1 
 lotuswordpro/source/filter/xfilter/xfmargins.hxx          |    5 
 lotuswordpro/source/filter/xfilter/xfnumfmt.hxx           |    5 
 lotuswordpro/source/filter/xfilter/xfofficemeta.hxx       |    4 
 lotuswordpro/source/filter/xfilter/xfpadding.hxx          |    5 
 lotuswordpro/source/filter/xfilter/xfshadow.cxx           |    4 
 lotuswordpro/source/filter/xfilter/xfshadow.hxx           |    7 -
 lotuswordpro/source/filter/xfilter/xfstylecont.cxx        |    2 
 lotuswordpro/source/filter/xfilter/xfstylecont.hxx        |    4 
 lotuswordpro/source/filter/xfilter/xfstylemanager.hxx     |    2 
 lotuswordpro/source/filter/xfilter/xftable.cxx            |   41 ------
 lotuswordpro/source/filter/xfilter/xftable.hxx            |    4 
 lotuswordpro/source/filter/xfilter/xftextcontent.cxx      |    5 
 lotuswordpro/source/filter/xfilter/xftextcontent.hxx      |    5 
 lotuswordpro/source/filter/xfilter/xftextspan.cxx         |   22 ---
 lotuswordpro/source/filter/xfilter/xftextspan.hxx         |    9 +
 lotuswordpro/source/filter/xfilter/xftimestyle.hxx        |    1 
 39 files changed, 102 insertions(+), 330 deletions(-)

New commits:
commit 608a67ac73a14a563c5f7692d4ca5de28777f290
Author: Stephan Bergmann <sberg...@redhat.com>
Date:   Wed Jun 11 17:46:53 2014 +0200

    Fix memory leaks, by refcounting XFContent
    
    Change-Id: I8c94c63230eec13bf22043ff07f9f480a0463111

diff --git a/lotuswordpro/source/filter/lwpfribframe.cxx 
b/lotuswordpro/source/filter/lwpfribframe.cxx
index 5d5c20c..fbf4cf2 100644
--- a/lotuswordpro/source/filter/lwpfribframe.cxx
+++ b/lotuswordpro/source/filter/lwpfribframe.cxx
@@ -165,7 +165,9 @@ void LwpFribFrame::XFConvert(XFContentContainer* pCont)
         else if(pContainerLayout && pContainerLayout->IsCell())
         {
             //same page as text and in cell, get the first xfpara
-            XFContentContainer* pXFFirtPara = 
static_cast<XFContentContainer*>(pCont->FindFirstContent(enumXFContentPara));
+            rtl::Reference<XFContent> first(
+                pCont->FindFirstContent(enumXFContentPara));
+            XFContentContainer* pXFFirtPara = 
static_cast<XFContentContainer*>(first.get());
             if(pXFFirtPara)
                 pXFContentContainer = pXFFirtPara;
         }
diff --git a/lotuswordpro/source/filter/lwpfribtable.cxx 
b/lotuswordpro/source/filter/lwpfribtable.cxx
index 21f7b81..8c722fc 100644
--- a/lotuswordpro/source/filter/lwpfribtable.cxx
+++ b/lotuswordpro/source/filter/lwpfribtable.cxx
@@ -127,7 +127,9 @@ void LwpFribTable::XFConvert(XFContentContainer* pCont)
         else if(pContainer->IsCell())
         {
             //same page as text and in cell, get the first xfpara
-            XFContentContainer* pXFFirtPara = 
static_cast<XFContentContainer*>(pCont->FindFirstContent(enumXFContentPara));
+            rtl::Reference<XFContent> first(
+                pCont->FindFirstContent(enumXFContentPara));
+            XFContentContainer* pXFFirtPara = 
static_cast<XFContentContainer*>(first.get());
             if(pXFFirtPara)
                 pXFContentContainer = pXFFirtPara;
         }
diff --git a/lotuswordpro/source/filter/lwpgrfobj.cxx 
b/lotuswordpro/source/filter/lwpgrfobj.cxx
index 6e88462..7ec84d6 100644
--- a/lotuswordpro/source/filter/lwpgrfobj.cxx
+++ b/lotuswordpro/source/filter/lwpgrfobj.cxx
@@ -197,15 +197,15 @@ void LwpGraphicObject::XFConvert (XFContentContainer* 
pCont)
 {
     if 
((m_sServerContextFormat[1]=='s'&&m_sServerContextFormat[2]=='d'&&m_sServerContextFormat[3]=='w'))
     {
-        std::vector <XFFrame*>::iterator iter;
+        std::vector< rtl::Reference<XFFrame> >::iterator iter;
         for (iter = m_vXFDrawObjects.begin(); iter != m_vXFDrawObjects.end(); 
++iter)
         {
-            pCont->Add(*iter);
+            pCont->Add(iter->get());
         }
     }
     else if (this->IsGrafFormatValid())
     {
-        XFImage* pImage = static_cast<XFImage*>(m_vXFDrawObjects.front());
+        XFImage* pImage = 
static_cast<XFImage*>(m_vXFDrawObjects.front().get());
 
         if (m_bIsLinked)
         {
@@ -438,7 +438,7 @@ sal_uInt32 LwpGraphicObject::GetGrafData(sal_uInt8*& 
pGrafData)
  */
 void LwpGraphicObject::CreateGrafObject()
 {
-    XFImage* pImage = new XFImage();
+    rtl::Reference<XFImage> pImage = new XFImage();
 
     // set image processing styles
     XFImageStyle* pImageStyle = new XFImageStyle();
@@ -660,7 +660,7 @@ void LwpGraphicObject::CreateGrafObject()
     }
 
     // insert image object into array
-    m_vXFDrawObjects.push_back(pImage);
+    m_vXFDrawObjects.push_back(pImage.get());
 
 }
 
diff --git a/lotuswordpro/source/filter/lwpgrfobj.hxx 
b/lotuswordpro/source/filter/lwpgrfobj.hxx
index a2043c1..18a2e23 100644
--- a/lotuswordpro/source/filter/lwpgrfobj.hxx
+++ b/lotuswordpro/source/filter/lwpgrfobj.hxx
@@ -110,7 +110,7 @@ private:
     void ParseChart(IXFStream* pOutputStream);
     bool IsGrafFormatValid();
     // add by , 03/25/2005
-    std::vector <XFFrame*> m_vXFDrawObjects;
+    std::vector< rtl::Reference<XFFrame> > m_vXFDrawObjects;
     // end add
 
 public:
diff --git a/lotuswordpro/source/filter/lwpsdwfileloader.cxx 
b/lotuswordpro/source/filter/lwpsdwfileloader.cxx
index e34ec79..3c3ed76 100644
--- a/lotuswordpro/source/filter/lwpsdwfileloader.cxx
+++ b/lotuswordpro/source/filter/lwpsdwfileloader.cxx
@@ -78,7 +78,7 @@ LwpSdwFileLoader::~LwpSdwFileLoader(void)
  * @descr   entry of lwp-drawing objects.
  * @param   pDrawObjVector   a container which will contains the created 
drawing object of XF-Model.
  */
-void LwpSdwFileLoader::CreateDrawObjects(std::vector <XFFrame*>* 
pDrawObjVector)
+void LwpSdwFileLoader::CreateDrawObjects(std::vector< rtl::Reference<XFFrame> 
>* pDrawObjVector)
 {
     unsigned char BinSignature[2];
     m_pStream->Read(BinSignature,2);
diff --git a/lotuswordpro/source/filter/lwpsdwfileloader.hxx 
b/lotuswordpro/source/filter/lwpsdwfileloader.hxx
index 3d6e52c..a634eda 100644
--- a/lotuswordpro/source/filter/lwpsdwfileloader.hxx
+++ b/lotuswordpro/source/filter/lwpsdwfileloader.hxx
@@ -62,11 +62,15 @@
 #ifndef INCLUDED_LOTUSWORDPRO_SOURCE_FILTER_LWPSDWFILELOADER_HXX
 #define INCLUDED_LOTUSWORDPRO_SOURCE_FILTER_LWPSDWFILELOADER_HXX
 
-#include <assert.h>
+#include <sal/config.h>
+
+#include <vector>
+
+#include <rtl/ref.hxx>
 #include <tools/stream.hxx>
+
 #include "lwpheader.hxx"
 #include "xfilter/ixfstream.hxx"
-#include <vector>
 
 class XFFrame;
 class LwpGraphicObject;
@@ -83,7 +87,7 @@ public:
 //  void RegisterStyle(void);
 
     // add by  ,03/25/2005
-    void CreateDrawObjects(std::vector <XFFrame*>* pDrawObjVector);
+    void CreateDrawObjects(std::vector< rtl::Reference<XFFrame> >* 
pDrawObjVector);
     // end add
 };
 
diff --git a/lotuswordpro/source/filter/lwpsdwgrouploaderv0102.cxx 
b/lotuswordpro/source/filter/lwpsdwgrouploaderv0102.cxx
index 8345902..430de02 100644
--- a/lotuswordpro/source/filter/lwpsdwgrouploaderv0102.cxx
+++ b/lotuswordpro/source/filter/lwpsdwgrouploaderv0102.cxx
@@ -93,7 +93,7 @@ LwpSdwGroupLoaderV0102::~LwpSdwGroupLoaderV0102()
  *      the corresponding drawing objects.
  * @param   pDrawObjVector   a container which will contains the created 
drawing object of XF-Model.
  */
-void LwpSdwGroupLoaderV0102::BeginDrawObjects(std::vector <XFFrame*>* 
pDrawObjVector)
+void LwpSdwGroupLoaderV0102::BeginDrawObjects(std::vector< 
rtl::Reference<XFFrame> >* pDrawObjVector)
 {
     // save the container
     m_pDrawObjVector = pDrawObjVector;
diff --git a/lotuswordpro/source/filter/lwpsdwgrouploaderv0102.hxx 
b/lotuswordpro/source/filter/lwpsdwgrouploaderv0102.hxx
index 5611ae8..f8d8d7b 100644
--- a/lotuswordpro/source/filter/lwpsdwgrouploaderv0102.hxx
+++ b/lotuswordpro/source/filter/lwpsdwgrouploaderv0102.hxx
@@ -62,9 +62,12 @@
 #ifndef INCLUDED_LOTUSWORDPRO_SOURCE_FILTER_LWPSDWGROUPLOADERV0102_HXX
 #define INCLUDED_LOTUSWORDPRO_SOURCE_FILTER_LWPSDWGROUPLOADERV0102_HXX
 
+#include <sal/config.h>
+
+#include <rtl/ref.hxx>
 #include <tools/stream.hxx>
+
 #include "lwpheader.hxx"
-#include "assert.h"
 #include "lwpsdwdrawheader.hxx"
 
 class XFFrame;
@@ -75,7 +78,7 @@ class LwpSdwGroupLoaderV0102
 private:
     SvStream* m_pStream;
     LwpGraphicObject* m_pGraphicObj;
-    std::vector <XFFrame*>* m_pDrawObjVector;
+    std::vector< rtl::Reference<XFFrame> >* m_pDrawObjVector;
 
     DrawingOffsetAndScale m_aTransformData;
 
@@ -84,7 +87,7 @@ public:
     ~LwpSdwGroupLoaderV0102();
 public:
 
-    void BeginDrawObjects(std::vector <XFFrame*>* pDrawObjVector);
+    void BeginDrawObjects(std::vector< rtl::Reference<XFFrame> >* 
pDrawObjVector);
     XFDrawGroup* CreateDrawGroupObject(void);
     XFFrame* CreateDrawObject(void);
     // end add
diff --git a/lotuswordpro/source/filter/lwpstory.cxx 
b/lotuswordpro/source/filter/lwpstory.cxx
index c7875b5..e38197a 100644
--- a/lotuswordpro/source/filter/lwpstory.cxx
+++ b/lotuswordpro/source/filter/lwpstory.cxx
@@ -348,7 +348,9 @@ void LwpStory::XFConvertFrameInCell(XFContentContainer* 
pCont)
             if(pFrameLayout->IsAnchorCell() && pFrameLayout->HasContent())
             {
                 //get the first xfpara
-                XFContentContainer* pXFFirtPara = 
static_cast<XFContentContainer*>(pCont->FindFirstContent(enumXFContentPara));
+                rtl::Reference<XFContent> first(
+                    pCont->FindFirstContent(enumXFContentPara));
+                XFContentContainer* pXFFirtPara = 
static_cast<XFContentContainer*>(first.get());
                 if(pXFFirtPara)
                     pFrameLayout->XFConvert(pXFFirtPara);
             }
@@ -424,7 +426,9 @@ void 
LwpStory::XFConvertFrameInHeaderFooter(XFContentContainer* pCont)
             if(pFrameLayout->IsAnchorPage() && (pLayout->IsHeader() || 
pLayout->IsFooter()))
             {
                 //The frame must be included by <text:p>
-                XFContentContainer* pXFFirtPara = 
static_cast<XFContentContainer*>(pCont->FindFirstContent(enumXFContentPara));
+                rtl::Reference<XFContent> first(
+                    pCont->FindFirstContent(enumXFContentPara));
+                XFContentContainer* pXFFirtPara = 
static_cast<XFContentContainer*>(first.get());
                 if(pXFFirtPara)
                     pFrameLayout->XFConvert(pXFFirtPara);
             }
diff --git a/lotuswordpro/source/filter/lwptablelayout.cxx 
b/lotuswordpro/source/filter/lwptablelayout.cxx
index dd47ba0..1a018a4 100644
--- a/lotuswordpro/source/filter/lwptablelayout.cxx
+++ b/lotuswordpro/source/filter/lwptablelayout.cxx
@@ -1183,8 +1183,9 @@ void LwpTableLayout::PostProcessParagraph(XFCell *pCell, 
sal_uInt16 nRowID, sal_
     LwpCellLayout * pCellLayout = GetCellByRowCol(nRowID, nColID);
     if(pCellLayout)
     {
-        XFParagraph * pXFPara = NULL;
-        pXFPara = 
static_cast<XFParagraph*>(pCell->FindFirstContent(enumXFContentPara));
+        rtl::Reference<XFContent> first(
+            pCell->FindFirstContent(enumXFContentPara));
+        XFParagraph * pXFPara = static_cast<XFParagraph*>(first.get());
         if (!pXFPara)
             return;
         XFColor aNullColor = XFColor();
diff --git a/lotuswordpro/source/filter/xfilter/xfcontent.hxx 
b/lotuswordpro/source/filter/xfilter/xfcontent.hxx
index 0462272..2d1dfa7 100644
--- a/lotuswordpro/source/filter/xfilter/xfcontent.hxx
+++ b/lotuswordpro/source/filter/xfilter/xfcontent.hxx
@@ -63,6 +63,7 @@
 #include <sal/config.h>
 
 #include <rtl/ustring.hxx>
+#include <salhelper/simplereferenceobject.hxx>
 
 #include "xfdefs.hxx"
 
@@ -73,11 +74,9 @@ class IXFStream;
  * Base class for all content object.
  * There is only two properties:style name and content type in this class.
  */
-class XFContent
+class XFContent: public salhelper::SimpleReferenceObject
 {
 public:
-    virtual ~XFContent() {}
-
     /**
      * @short:  return the content type.
      */
@@ -98,6 +97,8 @@ public:
 protected:
     XFContent() {}
 
+    virtual ~XFContent() {}
+
     OUString   m_strStyleName;
 };
 
diff --git a/lotuswordpro/source/filter/xfilter/xfcontentcontainer.cxx 
b/lotuswordpro/source/filter/xfilter/xfcontentcontainer.cxx
index d3774c5..a4a0c89 100644
--- a/lotuswordpro/source/filter/xfilter/xfcontentcontainer.cxx
+++ b/lotuswordpro/source/filter/xfilter/xfcontentcontainer.cxx
@@ -66,13 +66,6 @@ XFContentContainer::XFContentContainer()
 
 XFContentContainer::~XFContentContainer()
 {
-    std::vector<XFContent*>::iterator it;
-
-    for( it = m_aContents.begin(); it != m_aContents.end(); ++it )
-    {
-        XFContent *pContent = *it;
-        delete pContent;
-    }
 }
 
 void    XFContentContainer::Add(XFContent *pContent)
@@ -102,26 +95,18 @@ int     XFContentContainer::GetCount() const
 
 void    XFContentContainer::Reset()
 {
-    std::vector<XFContent*>::iterator it;
-
-    for( it = m_aContents.begin(); it != m_aContents.end(); ++it )
-    {
-        XFContent *pContent = *it;
-        if( pContent )
-            delete pContent;
-    }
     m_aContents.clear();
 }
 
-XFContent* XFContentContainer::FindFirstContent(enumXFContent type)
+rtl::Reference<XFContent> XFContentContainer::FindFirstContent(enumXFContent 
type)
 {
-    XFContent *pRet = NULL;
-    XFContent  *pContent = NULL;
+    rtl::Reference<XFContent> pRet;
+    rtl::Reference<XFContent> pContent;
 
     for( int i=0; i<GetCount(); i++ )
     {
         pContent = GetContent(i);
-        if( !pContent )
+        if( !pContent.is() )
             continue;
 
         enumXFContent eType = pContent->GetContentType();
@@ -129,11 +114,11 @@ XFContent* 
XFContentContainer::FindFirstContent(enumXFContent type)
             return pContent;
         else
         {
-            XFContentContainer *pChildCont = 
static_cast<XFContentContainer*>(pContent);
+            XFContentContainer *pChildCont = 
static_cast<XFContentContainer*>(pContent.get());
             if( pChildCont )
             {
                 pRet = pChildCont->FindFirstContent(type);
-                if( pRet )
+                if( pRet.is() )
                     return pRet;
             }
         }
@@ -148,17 +133,17 @@ enumXFContent   XFContentContainer::GetContentType()
 
 void    XFContentContainer::ToXml(IXFStream *pStrm)
 {
-    std::vector<XFContent*>::iterator it;
+    std::vector< rtl::Reference<XFContent> >::iterator it;
 
     for( it = m_aContents.begin(); it != m_aContents.end(); ++it )
     {
-        XFContent *pContent = *it;
+        XFContent *pContent = it->get();
         if( pContent )
             pContent->ToXml(pStrm);
     }
 }
 
-XFContent* XFContentContainer::GetLastContent()
+rtl::Reference<XFContent> XFContentContainer::GetLastContent()
 {
     sal_uInt32 index = m_aContents.size()-1;
     if(index >0)
diff --git a/lotuswordpro/source/filter/xfilter/xfcontentcontainer.hxx 
b/lotuswordpro/source/filter/xfilter/xfcontentcontainer.hxx
index 7b0648d..c05c9d7 100644
--- a/lotuswordpro/source/filter/xfilter/xfcontentcontainer.hxx
+++ b/lotuswordpro/source/filter/xfilter/xfcontentcontainer.hxx
@@ -64,7 +64,7 @@
 
 #include <vector>
 
-#include <boost/noncopyable.hpp>
+#include <rtl/ref.hxx>
 
 #include "xfcontent.hxx"
 
@@ -73,7 +73,7 @@
  * A container for content.
  * The contents will be deleted when delete container.
  */
-class XFContentContainer : public XFContent, private boost::noncopyable
+class XFContentContainer : public XFContent
 {
 public:
     XFContentContainer();
@@ -91,7 +91,7 @@ public:
 
     virtual void    InsertAtBegin(XFContent *pContent);
     virtual void    RemoveAt(sal_uInt32 nPos);
-    virtual XFContent* GetLastContent();
+    virtual rtl::Reference<XFContent> GetLastContent();
     virtual void    RemoveLastContent();
     /**
      * @descr   convience function for add text content.
@@ -106,7 +106,7 @@ public:
     /**
      * @descr   get content by index.
      */
-    XFContent* GetContent(sal_uInt32 index) const;
+    rtl::Reference<XFContent> GetContent(sal_uInt32 index) const;
 
     /**
      * @descr   clear all contents in the container.
@@ -116,7 +116,7 @@ public:
     /**
      * @descr   helper function, find first content by type.
      */
-    XFContent* FindFirstContent(enumXFContent type);
+    rtl::Reference<XFContent> FindFirstContent(enumXFContent type);
 
     /**
      * @descr   return the content type.
@@ -128,10 +128,10 @@ public:
     virtual void ToXml(IXFStream *pStrm) SAL_OVERRIDE;
 
 private:
-    std::vector<XFContent*>    m_aContents;
+    std::vector< rtl::Reference<XFContent> >    m_aContents;
 };
 
-inline XFContent* XFContentContainer::GetContent(sal_uInt32 index) const
+inline rtl::Reference<XFContent> XFContentContainer::GetContent(sal_uInt32 
index) const
 {
     if (index > m_aContents.size()-1)
         return NULL;
diff --git a/lotuswordpro/source/filter/xfilter/xfframe.cxx 
b/lotuswordpro/source/filter/xfilter/xfframe.cxx
index 5c8d02b..2af0994 100644
--- a/lotuswordpro/source/filter/xfilter/xfframe.cxx
+++ b/lotuswordpro/source/filter/xfilter/xfframe.cxx
@@ -194,12 +194,12 @@ void    XFFrame::AdjustZIndex()
 {
     for( int i=0; i<GetCount(); i++ )
     {
-        XFContent *pContent = GetContent(i);
-        if( pContent )
+        rtl::Reference<XFContent> pContent = GetContent(i);
+        if( pContent.is() )
         {
             if( pContent->GetContentType() == enumXFContentFrame )
             {
-                XFFrame *pFrame = (XFFrame*)pContent;
+                XFFrame *pFrame = (XFFrame*)pContent.get();
                 pFrame->m_nZIndex = m_nZIndex + 1;
                 pFrame->AdjustZIndex();
             }
diff --git a/lotuswordpro/source/filter/xfilter/xftextspan.cxx 
b/lotuswordpro/source/filter/xfilter/xftextspan.cxx
index ce5663d..4de6bad 100644
--- a/lotuswordpro/source/filter/xfilter/xftextspan.cxx
+++ b/lotuswordpro/source/filter/xfilter/xftextspan.cxx
@@ -77,16 +77,6 @@ XFTextSpan::XFTextSpan(const OUString& text,
 
 XFTextSpan::~XFTextSpan()
 {
-    std::vector<XFContent*>::iterator it;
-    for( it = m_aContents.begin(); it != m_aContents.end(); ++it )
-    {
-        XFContent  *pContent = *it;
-        if( pContent )
-        {
-            delete pContent;
-        }
-    }
-    m_aContents.clear();
 }
 
 enumXFContent XFTextSpan::GetContentType()
@@ -117,10 +107,10 @@ void    XFTextSpan::ToXml(IXFStream *pStrm)
         pAttrList->AddAttribute( "text:style-name", GetStyleName() );
     pStrm->StartElement( "text:span" );
 
-    std::vector<XFContent*>::iterator it;
+    std::vector< rtl::Reference<XFContent> >::iterator it;
     for( it= m_aContents.begin(); it!= m_aContents.end(); ++it )
     {
-        XFContent *pContent = *it;
+        XFContent *pContent = it->get();
         if( pContent )
             pContent->ToXml(pStrm);
     }
@@ -140,20 +130,20 @@ void    XFTextSpanStart::ToXml(IXFStream *pStrm)
         pAttrList->AddAttribute( "text:style-name", GetStyleName() );
     pStrm->StartElement( "text:span" );
 
-    std::vector<XFContent*>::iterator it;
+    std::vector< rtl::Reference<XFContent> >::iterator it;
     for( it= m_aContents.begin(); it!= m_aContents.end(); ++it )
     {
-        XFContent *pContent = *it;
+        XFContent *pContent = it->get();
         if( pContent )
             pContent->ToXml(pStrm);
     }
 }
 void    XFTextSpanEnd::ToXml(IXFStream *pStrm)
 {
-    std::vector<XFContent*>::iterator it;
+    std::vector< rtl::Reference<XFContent> >::iterator it;
     for( it= m_aContents.begin(); it!= m_aContents.end(); ++it )
     {
-        XFContent *pContent = *it;
+        XFContent *pContent = it->get();
         if( pContent )
             pContent->ToXml(pStrm);
     }
diff --git a/lotuswordpro/source/filter/xfilter/xftextspan.hxx 
b/lotuswordpro/source/filter/xfilter/xftextspan.hxx
index 0ad0fb4..535cd3d 100644
--- a/lotuswordpro/source/filter/xfilter/xftextspan.hxx
+++ b/lotuswordpro/source/filter/xfilter/xftextspan.hxx
@@ -60,9 +60,14 @@
 #ifndef INCLUDED_LOTUSWORDPRO_SOURCE_FILTER_XFILTER_XFTEXTSPAN_HXX
 #define INCLUDED_LOTUSWORDPRO_SOURCE_FILTER_XFILTER_XFTEXTSPAN_HXX
 
+#include <sal/config.h>
+
+#include <vector>
+
+#include <rtl/ref.hxx>
+
 #include "xfglobal.hxx"
 #include "xfcontent.hxx"
-#include <vector>
 
 class IXFStream;
 
@@ -80,7 +85,7 @@ public:
     virtual enumXFContent GetContentType() SAL_OVERRIDE;
     virtual void    ToXml(IXFStream *pStrm) SAL_OVERRIDE;
 protected:
-    std::vector<XFContent*>    m_aContents;
+    std::vector< rtl::Reference<XFContent> > m_aContents;
 };
 
 class XFTextSpanStart : public XFTextSpan //for adding style of power field
commit a83e40e2feaaa496e6051fb323df2eef63d85a04
Author: Stephan Bergmann <sberg...@redhat.com>
Date:   Wed Jun 11 17:18:49 2014 +0200

    Dead code
    
    Change-Id: Ifdb7c139fa6db7fef2896098f758769cb5284b28

diff --git a/lotuswordpro/source/filter/xfilter/xftable.cxx 
b/lotuswordpro/source/filter/xfilter/xftable.cxx
index 9c93b05..bc8c294 100644
--- a/lotuswordpro/source/filter/xfilter/xftable.cxx
+++ b/lotuswordpro/source/filter/xfilter/xftable.cxx
@@ -70,47 +70,6 @@ XFTable::XFTable()
     m_pOwnerCell = NULL;
 }
 
-XFTable::XFTable(const XFTable& other):XFContent(other)
-{
-    m_strName = other.m_strName;
-    m_bSubTable = other.m_bSubTable;
-    m_pOwnerCell = NULL;
-    for( int i=1; i<=other.m_aHeaderRows.GetCount(); i++ )
-    {
-        XFRow *pRow = (XFRow*)other.m_aHeaderRows.GetContent(i+1);
-        if( pRow )
-        {
-            m_aHeaderRows.Add( new XFRow(*pRow) );
-        }
-    }
-
-    m_aColumns = other.m_aColumns;
-    m_strDefCellStyle = other.m_strDefCellStyle;
-    m_strDefRowStyle = other.m_strDefRowStyle;
-    m_strDefColStyle = other.m_strDefColStyle;
-}
-
-XFTable& XFTable::operator =(const XFTable& other)
-{
-    m_strName = other.m_strName;
-    m_bSubTable = other.m_bSubTable;
-    m_pOwnerCell = NULL;
-    for( int i=1; i<=other.m_aHeaderRows.GetCount(); i++ )
-    {
-        XFRow *pRow = (XFRow*)other.m_aHeaderRows.GetContent(i);
-        if( pRow )
-        {
-            m_aHeaderRows.Add( new XFRow(*pRow) );
-        }
-    }
-
-    m_aColumns = other.m_aColumns;
-    m_strDefCellStyle = other.m_strDefCellStyle;
-    m_strDefRowStyle = other.m_strDefRowStyle;
-    m_strDefColStyle = other.m_strDefColStyle;
-    return *this;
-}
-
 XFTable::~XFTable()
 {
     std::map<sal_uInt16, XFRow*>::iterator it;
diff --git a/lotuswordpro/source/filter/xfilter/xftable.hxx 
b/lotuswordpro/source/filter/xfilter/xftable.hxx
index f44c55e..9dffb6f 100644
--- a/lotuswordpro/source/filter/xfilter/xftable.hxx
+++ b/lotuswordpro/source/filter/xfilter/xftable.hxx
@@ -72,10 +72,6 @@ class XFTable : public XFContent
 public:
     XFTable();
 
-    XFTable(const XFTable& other);
-
-    XFTable& operator=(const XFTable& other);
-
     virtual ~XFTable();
 
 public:
commit f839d6ae2e40a46464e5f720f86ac221e4e3bdab
Author: Stephan Bergmann <sberg...@redhat.com>
Date:   Wed Jun 11 17:00:05 2014 +0200

    Remove useless IXFProperty
    
    Change-Id: Id4d5d6aaf537172ad8e1f6c422465c6f84d99dbf

diff --git a/lotuswordpro/source/filter/xfilter/ixfproperty.hxx 
b/lotuswordpro/source/filter/xfilter/ixfproperty.hxx
deleted file mode 100644
index fd98b77..0000000
--- a/lotuswordpro/source/filter/xfilter/ixfproperty.hxx
+++ /dev/null
@@ -1,70 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- *  The Contents of this file are made available subject to the terms of
- *  either of the following licenses
- *
- *         - GNU Lesser General Public License Version 2.1
- *         - Sun Industry Standards Source License Version 1.1
- *
- *  Sun Microsystems Inc., October, 2000
- *
- *  GNU Lesser General Public License Version 2.1
- *  =============================================
- *  Copyright 2000 by Sun Microsystems, Inc.
- *  901 San Antonio Road, Palo Alto, CA 94303, USA
- *
- *  This library is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU Lesser General Public
- *  License version 2.1, as published by the Free Software Foundation.
- *
- *  This library 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 for more details.
- *
- *  You should have received a copy of the GNU Lesser General Public
- *  License along with this library; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- *  MA  02111-1307  USA
- *
- *
- *  Sun Industry Standards Source License Version 1.1
- *  =================================================
- *  The contents of this file are subject to the Sun Industry Standards
- *  Source License Version 1.1 (the "License"); You may not use this file
- *  except in compliance with the License. You may obtain a copy of the
- *  License at http://www.openoffice.org/license.html.
- *
- *  Software provided under this License is provided on an "AS IS" basis,
- *  WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
- *  WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
- *  MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
- *  See the License for the specific provisions governing your rights and
- *  obligations concerning the Software.
- *
- *  The Initial Developer of the Original Code is: IBM Corporation
- *
- *  Copyright: 2008 by IBM Corporation
- *
- *  All Rights Reserved.
- *
- *  Contributor(s): _______________________________________
- *
- *
- ************************************************************************/
-/*************************************************************************
- * @file
- * Property for styles. ie. Margins,shadow,columns and so on.
- ************************************************************************/
-#ifndef INCLUDED_LOTUSWORDPRO_SOURCE_FILTER_XFILTER_IXFPROPERTY_HXX
-#define INCLUDED_LOTUSWORDPRO_SOURCE_FILTER_XFILTER_IXFPROPERTY_HXX
-
-class IXFProperty
-{
-public:
-
-};
-
-#endif
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/lotuswordpro/source/filter/xfilter/xfbreaks.hxx 
b/lotuswordpro/source/filter/xfilter/xfbreaks.hxx
index 4681bf0..661bf00 100644
--- a/lotuswordpro/source/filter/xfilter/xfbreaks.hxx
+++ b/lotuswordpro/source/filter/xfilter/xfbreaks.hxx
@@ -61,12 +61,11 @@
 #define INCLUDED_LOTUSWORDPRO_SOURCE_FILTER_XFILTER_XFBREAKS_HXX
 
 #include "xfglobal.hxx"
-#include "ixfproperty.hxx"
 
 /**
  * @descr   Page|Column break object.
  */
-class XFBreaks : public IXFProperty
+class XFBreaks
 {
 public:
     XFBreaks();
diff --git a/lotuswordpro/source/filter/xfilter/xfdatestyle.hxx 
b/lotuswordpro/source/filter/xfilter/xfdatestyle.hxx
index c6c01b4..141a992 100644
--- a/lotuswordpro/source/filter/xfilter/xfdatestyle.hxx
+++ b/lotuswordpro/source/filter/xfilter/xfdatestyle.hxx
@@ -62,7 +62,6 @@
 
 #include "xfglobal.hxx"
 #include "xfstyle.hxx"
-#include "ixfproperty.hxx"
 #include "xftimestyle.hxx"
 #include "xfstylecont.hxx"
 #include <vector>
diff --git a/lotuswordpro/source/filter/xfilter/xfdropcap.hxx 
b/lotuswordpro/source/filter/xfilter/xfdropcap.hxx
index be3c405..a96042b 100644
--- a/lotuswordpro/source/filter/xfilter/xfdropcap.hxx
+++ b/lotuswordpro/source/filter/xfilter/xfdropcap.hxx
@@ -61,9 +61,8 @@
 #define INCLUDED_LOTUSWORDPRO_SOURCE_FILTER_XFILTER_XFDROPCAP_HXX
 
 #include "xfglobal.hxx"
-#include "ixfproperty.hxx"
 
-class XFDropcap : public IXFProperty
+class XFDropcap
 {
 public:
     XFDropcap()
diff --git a/lotuswordpro/source/filter/xfilter/xfindex.hxx 
b/lotuswordpro/source/filter/xfilter/xfindex.hxx
index 07de00f..add2470 100644
--- a/lotuswordpro/source/filter/xfilter/xfindex.hxx
+++ b/lotuswordpro/source/filter/xfilter/xfindex.hxx
@@ -63,7 +63,6 @@
 #include <vector>
 
 #include "xfcontent.hxx"
-#include "ixfproperty.hxx"
 #include "xfcontentcontainer.hxx"
 #include "xftabstop.hxx"
 
diff --git a/lotuswordpro/source/filter/xfilter/xfmargins.hxx 
b/lotuswordpro/source/filter/xfilter/xfmargins.hxx
index 2e3811b..56e6077 100644
--- a/lotuswordpro/source/filter/xfilter/xfmargins.hxx
+++ b/lotuswordpro/source/filter/xfilter/xfmargins.hxx
@@ -61,14 +61,13 @@
 #define INCLUDED_LOTUSWORDPRO_SOURCE_FILTER_XFILTER_XFMARGINS_HXX
 
 #include "xfglobal.hxx"
-#include "ixfproperty.hxx"
 
 #define     XFMARGINS_FLAG_LEFT     0x00000001
 #define     XFMARGINS_FLAG_RIGHT    0x00000002
 #define     XFMARGINS_FLAG_TOP      0x00000004
 #define     XFMARGINS_FLAG_BOTTOM   0x00000008
 
-class XFMargins : public IXFProperty
+class XFMargins
 {
 public:
     XFMargins();
diff --git a/lotuswordpro/source/filter/xfilter/xfnumfmt.hxx 
b/lotuswordpro/source/filter/xfilter/xfnumfmt.hxx
index f31519c..9409d3d 100644
--- a/lotuswordpro/source/filter/xfilter/xfnumfmt.hxx
+++ b/lotuswordpro/source/filter/xfilter/xfnumfmt.hxx
@@ -61,13 +61,12 @@
 #define INCLUDED_LOTUSWORDPRO_SOURCE_FILTER_XFILTER_XFNUMFMT_HXX
 
 #include "xfglobal.hxx"
-#include "ixfproperty.hxx"
 
 /**
  * @brief
  * Bullet number format.
  */
-class XFNumFmt : public IXFProperty
+class XFNumFmt
 {
 public:
     XFNumFmt()
diff --git a/lotuswordpro/source/filter/xfilter/xfpadding.hxx 
b/lotuswordpro/source/filter/xfilter/xfpadding.hxx
index 094f917..dae6c0a 100644
--- a/lotuswordpro/source/filter/xfilter/xfpadding.hxx
+++ b/lotuswordpro/source/filter/xfilter/xfpadding.hxx
@@ -61,7 +61,6 @@
 #define INCLUDED_LOTUSWORDPRO_SOURCE_FILTER_XFILTER_XFPADDING_HXX
 
 #include "xfglobal.hxx"
-#include "ixfproperty.hxx"
 
 #define XFPADDING_FLAG_LEFT     0X00000001
 #define XFPADDING_FLAG_RIGHT    0X00000002
@@ -72,7 +71,7 @@
  * @brief
  * Padings for paragraph,frame,...
  */
-class XFPadding : public IXFProperty
+class XFPadding
 {
 public:
     XFPadding();
diff --git a/lotuswordpro/source/filter/xfilter/xfshadow.cxx 
b/lotuswordpro/source/filter/xfilter/xfshadow.cxx
index 866a433..73b5374 100644
--- a/lotuswordpro/source/filter/xfilter/xfshadow.cxx
+++ b/lotuswordpro/source/filter/xfilter/xfshadow.cxx
@@ -65,10 +65,6 @@ XFShadow::XFShadow():m_aColor(128,128,0)
     m_fOffset = 0.18;
 }
 
-XFShadow::~XFShadow()
-{
-}
-
 OUString XFShadow::ToString()
 {
     OUString   buf;
diff --git a/lotuswordpro/source/filter/xfilter/xfshadow.hxx 
b/lotuswordpro/source/filter/xfilter/xfshadow.hxx
index 74464e9..e9ed904 100644
--- a/lotuswordpro/source/filter/xfilter/xfshadow.hxx
+++ b/lotuswordpro/source/filter/xfilter/xfshadow.hxx
@@ -61,20 +61,17 @@
 #define INCLUDED_LOTUSWORDPRO_SOURCE_FILTER_XFILTER_XFSHADOW_HXX
 
 #include "xfglobal.hxx"
-#include "ixfproperty.hxx"
 #include "xfcolor.hxx"
 
 /**
  * @brief
  * Shadow object.
  */
-class XFShadow : public IXFProperty
+class XFShadow
 {
 public:
     XFShadow();
 
-    virtual ~XFShadow();
-
 public:
     /**
      * @descr   set shadow position. You can refer to enumXFShadowPos to get 
all posible positions.
diff --git a/lotuswordpro/source/filter/xfilter/xftimestyle.hxx 
b/lotuswordpro/source/filter/xfilter/xftimestyle.hxx
index 09705e0..9d7baa0 100644
--- a/lotuswordpro/source/filter/xfilter/xftimestyle.hxx
+++ b/lotuswordpro/source/filter/xfilter/xftimestyle.hxx
@@ -62,7 +62,6 @@
 
 #include "xfglobal.hxx"
 #include "xfstyle.hxx"
-#include "ixfproperty.hxx"
 #include <vector>
 
 class XFDateTimePart : public XFStyle
commit 747519fd051f1224ee6b707b6bf51853dd705156
Author: Stephan Bergmann <sberg...@redhat.com>
Date:   Wed Jun 11 16:52:40 2014 +0200

    Remove useless IXFObject
    
    Change-Id: I11bdee00bd42ef302dbbfe9f52de5824aec985ee

diff --git a/lotuswordpro/source/filter/xfilter/ixfobject.hxx 
b/lotuswordpro/source/filter/xfilter/ixfobject.hxx
deleted file mode 100644
index f839653..0000000
--- a/lotuswordpro/source/filter/xfilter/ixfobject.hxx
+++ /dev/null
@@ -1,90 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- *  The Contents of this file are made available subject to the terms of
- *  either of the following licenses
- *
- *         - GNU Lesser General Public License Version 2.1
- *         - Sun Industry Standards Source License Version 1.1
- *
- *  Sun Microsystems Inc., October, 2000
- *
- *  GNU Lesser General Public License Version 2.1
- *  =============================================
- *  Copyright 2000 by Sun Microsystems, Inc.
- *  901 San Antonio Road, Palo Alto, CA 94303, USA
- *
- *  This library is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU Lesser General Public
- *  License version 2.1, as published by the Free Software Foundation.
- *
- *  This library 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 for more details.
- *
- *  You should have received a copy of the GNU Lesser General Public
- *  License along with this library; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- *  MA  02111-1307  USA
- *
- *
- *  Sun Industry Standards Source License Version 1.1
- *  =================================================
- *  The contents of this file are subject to the Sun Industry Standards
- *  Source License Version 1.1 (the "License"); You may not use this file
- *  except in compliance with the License. You may obtain a copy of the
- *  License at http://www.openoffice.org/license.html.
- *
- *  Software provided under this License is provided on an "AS IS" basis,
- *  WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
- *  WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
- *  MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
- *  See the License for the specific provisions governing your rights and
- *  obligations concerning the Software.
- *
- *  The Initial Developer of the Original Code is: IBM Corporation
- *
- *  Copyright: 2008 by IBM Corporation
- *
- *  All Rights Reserved.
- *
- *  Contributor(s): _______________________________________
- *
- *
- ************************************************************************/
-/*************************************************************************
- * @file
- * Interfer face for all object that will responsible for xml element output
- ************************************************************************/
-#ifndef INCLUDED_LOTUSWORDPRO_SOURCE_FILTER_XFILTER_IXFOBJECT_HXX
-#define INCLUDED_LOTUSWORDPRO_SOURCE_FILTER_XFILTER_IXFOBJECT_HXX
-
-class IXFStream;
-/*************************************************************************
- * @descr
- * This is the root interface for all object which will output something to
- * the Sax Stream.
- * I'll add reference management code later.
- ************************************************************************/
-class IXFObject
-{
-public:
-    /**
-     * Virtual destructure function for all class,This makes the XFilter module
-     * a single-root framework.
-     */
-    virtual ~IXFObject(){}
-
-    /**
-     * The funciton to serial the object to the sax stream.
-     * The objects that must implements ToXml is divided into two types:
-     *          1.  IXFStyle objects that has something to do with styles.
-     *          2.  XFContent objects that contents text or picture.
-     */
-    virtual void    ToXml(IXFStream     *pSaxStream) = 0;
-};
-
-#endif // INCLUDED_LOTUSWORDPRO_SOURCE_FILTER_XFILTER_IXFOBJECT_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/lotuswordpro/source/filter/xfilter/ixfproperty.hxx 
b/lotuswordpro/source/filter/xfilter/ixfproperty.hxx
index 86c35d9..fd98b77 100644
--- a/lotuswordpro/source/filter/xfilter/ixfproperty.hxx
+++ b/lotuswordpro/source/filter/xfilter/ixfproperty.hxx
@@ -60,9 +60,7 @@
 #ifndef INCLUDED_LOTUSWORDPRO_SOURCE_FILTER_XFILTER_IXFPROPERTY_HXX
 #define INCLUDED_LOTUSWORDPRO_SOURCE_FILTER_XFILTER_IXFPROPERTY_HXX
 
-#include "ixfobject.hxx"
-
-class IXFProperty : public IXFObject
+class IXFProperty
 {
 public:
 
diff --git a/lotuswordpro/source/filter/xfilter/ixfstyle.hxx 
b/lotuswordpro/source/filter/xfilter/ixfstyle.hxx
index eb2dcf1..39a4d9c 100644
--- a/lotuswordpro/source/filter/xfilter/ixfstyle.hxx
+++ b/lotuswordpro/source/filter/xfilter/ixfstyle.hxx
@@ -65,7 +65,7 @@
  * @descr
  * Interface for all style object.
  */
-class IXFStyle : public IXFObject
+class IXFStyle
 {
 public:
     virtual ~IXFStyle(){}
@@ -104,6 +104,7 @@ public:
      */
     virtual bool    Equal(IXFStyle *pStyle) = 0;
 
+    virtual void ToXml(IXFStream * stream) = 0;
 };
 
 #endif
diff --git a/lotuswordpro/source/filter/xfilter/xfbreaks.hxx 
b/lotuswordpro/source/filter/xfilter/xfbreaks.hxx
index 5d0a84d..4681bf0 100644
--- a/lotuswordpro/source/filter/xfilter/xfbreaks.hxx
+++ b/lotuswordpro/source/filter/xfilter/xfbreaks.hxx
@@ -82,7 +82,7 @@ public:
     /**
      * @descr   Output breaks object.
      */
-    virtual void    ToXml(IXFStream *pStrm) SAL_OVERRIDE;
+    void    ToXml(IXFStream *pStrm);
 
     friend bool operator==(XFBreaks& b1, XFBreaks& b2);
     friend bool operator!=(XFBreaks& b1, XFBreaks& b2);
diff --git a/lotuswordpro/source/filter/xfilter/xfcolumns.hxx 
b/lotuswordpro/source/filter/xfilter/xfcolumns.hxx
index 5cda682..0f0de07 100644
--- a/lotuswordpro/source/filter/xfilter/xfcolumns.hxx
+++ b/lotuswordpro/source/filter/xfilter/xfcolumns.hxx
@@ -70,7 +70,7 @@
 /**
  * @descr   Columns object for page or section.
  */
-class XFColumn : public IXFObject
+class XFColumn
 {
 public:
     XFColumn()
@@ -94,7 +94,7 @@ public:
     /**
      * @descr   output column style as an xml node.
      */
-    virtual void ToXml(IXFStream *pStrm) SAL_OVERRIDE;
+    void ToXml(IXFStream *pStrm);
 
     friend bool operator==(XFColumn& c1, XFColumn& c2);
     friend bool operator!=(XFColumn& c1, XFColumn& c2);
@@ -106,7 +106,7 @@ private:
     double      m_fMarginRight;
 };
 
-class XFColumnSep : public IXFObject
+class XFColumnSep
 {
 public:
     XFColumnSep()
@@ -121,7 +121,7 @@ public:
     void    SetColor(XFColor& color);
     void    SetVerticalAlign(enumXFAlignType align);
 
-    virtual void    ToXml(IXFStream *pStrm) SAL_OVERRIDE;
+    void    ToXml(IXFStream *pStrm);
 
     friend bool operator==(XFColumnSep& sep1, XFColumnSep& sep2);
     friend bool operator!=(XFColumnSep& sep1, XFColumnSep& sep2);
diff --git a/lotuswordpro/source/filter/xfilter/xfcontent.hxx 
b/lotuswordpro/source/filter/xfilter/xfcontent.hxx
index 8988a28..0462272 100644
--- a/lotuswordpro/source/filter/xfilter/xfcontent.hxx
+++ b/lotuswordpro/source/filter/xfilter/xfcontent.hxx
@@ -64,15 +64,16 @@
 
 #include <rtl/ustring.hxx>
 
-#include "ixfobject.hxx"
 #include "xfdefs.hxx"
 
+class IXFStream;
+
 /**
  * @descr
  * Base class for all content object.
  * There is only two properties:style name and content type in this class.
  */
-class XFContent : public IXFObject
+class XFContent
 {
 public:
     virtual ~XFContent() {}
@@ -92,6 +93,8 @@ public:
      */
     OUString   GetStyleName() {return m_strStyleName;}
 
+    virtual void ToXml(IXFStream * stream) = 0;
+
 protected:
     XFContent() {}
 
diff --git a/lotuswordpro/source/filter/xfilter/xfdropcap.hxx 
b/lotuswordpro/source/filter/xfilter/xfdropcap.hxx
index 916356c..be3c405 100644
--- a/lotuswordpro/source/filter/xfilter/xfdropcap.hxx
+++ b/lotuswordpro/source/filter/xfilter/xfdropcap.hxx
@@ -80,7 +80,7 @@ public:
 
     void    Reset();
 
-    virtual void    ToXml(IXFStream *pStrm) SAL_OVERRIDE;
+    void    ToXml(IXFStream *pStrm);
 
     friend bool operator==(XFDropcap& dc1, XFDropcap& dc2);
     friend bool operator!=(XFDropcap& dc1, XFDropcap& dc2);
diff --git a/lotuswordpro/source/filter/xfilter/xfglobal.hxx 
b/lotuswordpro/source/filter/xfilter/xfglobal.hxx
index a7c4321..c5b6939 100644
--- a/lotuswordpro/source/filter/xfilter/xfglobal.hxx
+++ b/lotuswordpro/source/filter/xfilter/xfglobal.hxx
@@ -67,7 +67,6 @@
 
 #include <rtl/ustring.hxx>
 
-#include "ixfobject.hxx"
 #include "ixfstream.hxx"
 #include "ixfattrlist.hxx"
 
diff --git a/lotuswordpro/source/filter/xfilter/xfmargins.hxx 
b/lotuswordpro/source/filter/xfilter/xfmargins.hxx
index aed52b2..2e3811b 100644
--- a/lotuswordpro/source/filter/xfilter/xfmargins.hxx
+++ b/lotuswordpro/source/filter/xfilter/xfmargins.hxx
@@ -84,7 +84,7 @@ public:
     double  GetTop();
     double  GetBottom();
 
-    virtual void    ToXml(IXFStream *pStrm) SAL_OVERRIDE;
+    void    ToXml(IXFStream *pStrm);
 
     friend bool operator==(XFMargins& indent1, XFMargins& indent2);
     friend bool operator!=(XFMargins& indent1, XFMargins& indent2);
diff --git a/lotuswordpro/source/filter/xfilter/xfnumfmt.hxx 
b/lotuswordpro/source/filter/xfilter/xfnumfmt.hxx
index 8a1bb65..f31519c 100644
--- a/lotuswordpro/source/filter/xfilter/xfnumfmt.hxx
+++ b/lotuswordpro/source/filter/xfilter/xfnumfmt.hxx
@@ -127,7 +127,7 @@ public:
         m_nStartValue = start;
     }
 
-    virtual void ToXml(IXFStream *pStrm) SAL_OVERRIDE
+    void ToXml(IXFStream *pStrm)
     {
         IXFAttrList *pAttrList = pStrm->GetAttrList();
 
diff --git a/lotuswordpro/source/filter/xfilter/xfofficemeta.hxx 
b/lotuswordpro/source/filter/xfilter/xfofficemeta.hxx
index f8e2f4c..19d9be4 100644
--- a/lotuswordpro/source/filter/xfilter/xfofficemeta.hxx
+++ b/lotuswordpro/source/filter/xfilter/xfofficemeta.hxx
@@ -63,7 +63,7 @@
 
 #include "xfglobal.hxx"
 
-class XFOfficeMeta : public IXFObject
+class XFOfficeMeta
 {
 public:
     XFOfficeMeta(){}
@@ -76,7 +76,7 @@ public:
     void SetLastTime(const OUString& lstime);
     void SetEditTime(const OUString& edtime);
 
-    virtual void ToXml(IXFStream *pStream) SAL_OVERRIDE;
+    void ToXml(IXFStream *pStream);
 private:
     OUString   m_strGenerator;
     OUString   m_strTitle;
diff --git a/lotuswordpro/source/filter/xfilter/xfpadding.hxx 
b/lotuswordpro/source/filter/xfilter/xfpadding.hxx
index a39c125..094f917 100644
--- a/lotuswordpro/source/filter/xfilter/xfpadding.hxx
+++ b/lotuswordpro/source/filter/xfilter/xfpadding.hxx
@@ -106,7 +106,7 @@ public:
     /**
      * @descr   Output padding properties.
      */
-    virtual void    ToXml(IXFStream *pStrm) SAL_OVERRIDE;
+    void    ToXml(IXFStream *pStrm);
 
     friend bool operator==(XFPadding& p1, XFPadding& p2);
     friend bool operator!=(XFPadding& p1, XFPadding& p2);
diff --git a/lotuswordpro/source/filter/xfilter/xfshadow.hxx 
b/lotuswordpro/source/filter/xfilter/xfshadow.hxx
index ac2aa18..74464e9 100644
--- a/lotuswordpro/source/filter/xfilter/xfshadow.hxx
+++ b/lotuswordpro/source/filter/xfilter/xfshadow.hxx
@@ -108,7 +108,7 @@ public:
 
     OUString   ToString();
 
-    virtual void    ToXml(IXFStream *pStrm) SAL_OVERRIDE;
+    void    ToXml(IXFStream *pStrm);
 
     friend bool operator==(XFShadow& s1, XFShadow& s2);
     friend bool operator!=(XFShadow& s1, XFShadow& s2);
diff --git a/lotuswordpro/source/filter/xfilter/xfstylecont.cxx 
b/lotuswordpro/source/filter/xfilter/xfstylecont.cxx
index d4f3ecb..d390ed6 100644
--- a/lotuswordpro/source/filter/xfilter/xfstylecont.cxx
+++ b/lotuswordpro/source/filter/xfilter/xfstylecont.cxx
@@ -70,7 +70,7 @@ XFStyleContainer::XFStyleContainer(const OUString& 
strStyleNamePrefix)
 {
 }
 
-XFStyleContainer::XFStyleContainer(const XFStyleContainer& 
other):IXFObject(other),
+XFStyleContainer::XFStyleContainer(const XFStyleContainer& other):
     m_aStyles(other.m_aStyles), 
m_strStyleNamePrefix(other.m_strStyleNamePrefix)
 {
 }
diff --git a/lotuswordpro/source/filter/xfilter/xfstylecont.hxx 
b/lotuswordpro/source/filter/xfilter/xfstylecont.hxx
index 8c47772..50dae18 100644
--- a/lotuswordpro/source/filter/xfilter/xfstylecont.hxx
+++ b/lotuswordpro/source/filter/xfilter/xfstylecont.hxx
@@ -69,7 +69,7 @@ class IXFStyle;
  * @descr   container object for styles.
  *          All styles can be placed into an style container.
  */
-class XFStyleContainer : public IXFObject
+class XFStyleContainer
 {
 public:
     XFStyleContainer(){}
@@ -117,7 +117,7 @@ public:
     /**
      * @descr   Output all style.
      */
-    virtual void    ToXml(IXFStream *pStrm) SAL_OVERRIDE;
+    virtual void    ToXml(IXFStream *pStrm);
 
     friend bool operator==(XFStyleContainer& b1, XFStyleContainer& b2);
     friend bool operator!=(XFStyleContainer& b1, XFStyleContainer& b2);
diff --git a/lotuswordpro/source/filter/xfilter/xfstylemanager.hxx 
b/lotuswordpro/source/filter/xfilter/xfstylemanager.hxx
index 5f03f55..a96ad5c 100644
--- a/lotuswordpro/source/filter/xfilter/xfstylemanager.hxx
+++ b/lotuswordpro/source/filter/xfilter/xfstylemanager.hxx
@@ -80,7 +80,7 @@ class XFEndnoteConfig;
  * Style manager for the filter.
  * This is a global object, all styles will be placed here before output.
  */
-class XFStyleManager// : public IXFObject
+class XFStyleManager
 {
 public:
     XFStyleManager();
diff --git a/lotuswordpro/source/filter/xfilter/xftextcontent.cxx 
b/lotuswordpro/source/filter/xfilter/xftextcontent.cxx
index 391b65a..1492b09 100644
--- a/lotuswordpro/source/filter/xfilter/xftextcontent.cxx
+++ b/lotuswordpro/source/filter/xfilter/xftextcontent.cxx
@@ -53,10 +53,7 @@
  *
  *
  ************************************************************************/
-/*************************************************************************
- * @file
- * Text content, it's an adapter for string to IXFObject.
- ************************************************************************/
+
 #include "xftextcontent.hxx"
 #include "ixfstream.hxx"
 
diff --git a/lotuswordpro/source/filter/xfilter/xftextcontent.hxx 
b/lotuswordpro/source/filter/xfilter/xftextcontent.hxx
index c7894fb..eef5c18 100644
--- a/lotuswordpro/source/filter/xfilter/xftextcontent.hxx
+++ b/lotuswordpro/source/filter/xfilter/xftextcontent.hxx
@@ -53,10 +53,7 @@
  *
  *
  ************************************************************************/
-/*************************************************************************
- * @file
- * Text content, it's an adapter for string to IXFObject.
- ************************************************************************/
+
 #ifndef INCLUDED_LOTUSWORDPRO_SOURCE_FILTER_XFILTER_XFTEXTCONTENT_HXX
 #define INCLUDED_LOTUSWORDPRO_SOURCE_FILTER_XFILTER_XFTEXTCONTENT_HXX
 
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to