[Libreoffice-commits] .: 6 commits - lotuswordpro/prj lotuswordpro/source

David Tardon dtardon at kemper.freedesktop.org
Fri Dec 24 05:18:50 PST 2010


 lotuswordpro/prj/build.lst                             |    2 
 lotuswordpro/source/filter/clone.hxx                   |   82 ++++++++
 lotuswordpro/source/filter/lwp9reader.hxx              |    2 
 lotuswordpro/source/filter/lwpbackgroundoverride.cxx   |   39 +++
 lotuswordpro/source/filter/lwpbackgroundoverride.hxx   |    9 
 lotuswordpro/source/filter/lwpbasetype.hxx             |    4 
 lotuswordpro/source/filter/lwpbreaksoverride.cxx       |   24 +-
 lotuswordpro/source/filter/lwpbreaksoverride.hxx       |   10 -
 lotuswordpro/source/filter/lwpbulletstylemgr.cxx       |   31 ---
 lotuswordpro/source/filter/lwpbulletstylemgr.hxx       |   11 -
 lotuswordpro/source/filter/lwpcelllayout.hxx           |    8 
 lotuswordpro/source/filter/lwpcharborderoverride.cxx   |   21 ++
 lotuswordpro/source/filter/lwpcharborderoverride.hxx   |    8 
 lotuswordpro/source/filter/lwpcharsetmgr.hxx           |    4 
 lotuswordpro/source/filter/lwpcolor.hxx                |    4 
 lotuswordpro/source/filter/lwpcontent.hxx              |    4 
 lotuswordpro/source/filter/lwpdivinfo.hxx              |    2 
 lotuswordpro/source/filter/lwpdivopts.cxx              |    2 
 lotuswordpro/source/filter/lwpdlvlist.hxx              |   10 -
 lotuswordpro/source/filter/lwpdoc.hxx                  |    2 
 lotuswordpro/source/filter/lwpdrawobj.hxx              |    8 
 lotuswordpro/source/filter/lwpfilehdr.hxx              |    2 
 lotuswordpro/source/filter/lwpfont.hxx                 |   22 +-
 lotuswordpro/source/filter/lwpfootnote.hxx             |   12 -
 lotuswordpro/source/filter/lwpfoundry.hxx              |   30 +--
 lotuswordpro/source/filter/lwpframelayout.hxx          |    4 
 lotuswordpro/source/filter/lwpfrib.hxx                 |    4 
 lotuswordpro/source/filter/lwpfribbreaks.hxx           |    8 
 lotuswordpro/source/filter/lwpfribframe.hxx            |    8 
 lotuswordpro/source/filter/lwpfribmark.hxx             |   10 -
 lotuswordpro/source/filter/lwpfribptr.hxx              |    8 
 lotuswordpro/source/filter/lwpfribsection.hxx          |    2 
 lotuswordpro/source/filter/lwpfribtable.hxx            |    4 
 lotuswordpro/source/filter/lwpfribtext.cxx             |    2 
 lotuswordpro/source/filter/lwpfribtext.hxx             |   24 +-
 lotuswordpro/source/filter/lwpholder.hxx               |    8 
 lotuswordpro/source/filter/lwplayout.hxx               |   16 -
 lotuswordpro/source/filter/lwplaypiece.hxx             |    4 
 lotuswordpro/source/filter/lwplnopts.hxx               |    2 
 lotuswordpro/source/filter/lwpmarker.hxx               |   16 -
 lotuswordpro/source/filter/lwpnotes.hxx                |    4 
 lotuswordpro/source/filter/lwpnumberingoverride.cxx    |   23 +-
 lotuswordpro/source/filter/lwpnumberingoverride.hxx    |   10 -
 lotuswordpro/source/filter/lwpnumericfmt.hxx           |    6 
 lotuswordpro/source/filter/lwpobjhdr.cxx               |    2 
 lotuswordpro/source/filter/lwpoleobject.hxx            |    2 
 lotuswordpro/source/filter/lwpoverride.cxx             |  168 +++++++++++++----
 lotuswordpro/source/filter/lwpoverride.hxx             |  122 ++++++++++--
 lotuswordpro/source/filter/lwppagehint.hxx             |    8 
 lotuswordpro/source/filter/lwppara.cxx                 |   32 +--
 lotuswordpro/source/filter/lwppara.hxx                 |   12 -
 lotuswordpro/source/filter/lwppara1.cxx                |   89 +++++----
 lotuswordpro/source/filter/lwpparaborderoverride.cxx   |   71 +++----
 lotuswordpro/source/filter/lwpparaborderoverride.hxx   |   12 -
 lotuswordpro/source/filter/lwpparaproperty.hxx         |    4 
 lotuswordpro/source/filter/lwpparastyle.cxx            |   21 +-
 lotuswordpro/source/filter/lwpproplist.hxx             |    6 
 lotuswordpro/source/filter/lwpprtinfo.hxx              |    2 
 lotuswordpro/source/filter/lwprowlayout.hxx            |    6 
 lotuswordpro/source/filter/lwpsection.hxx              |    6 
 lotuswordpro/source/filter/lwpsilverbullet.cxx         |   23 --
 lotuswordpro/source/filter/lwpslvlist.hxx              |    2 
 lotuswordpro/source/filter/lwpsortopt.hxx              |    4 
 lotuswordpro/source/filter/lwptable.hxx                |   18 -
 lotuswordpro/source/filter/lwptablelayout.hxx          |   10 -
 lotuswordpro/source/filter/lwptaboverride.cxx          |   42 ++++
 lotuswordpro/source/filter/lwptaboverride.hxx          |    9 
 lotuswordpro/source/filter/lwptblcell.hxx              |    4 
 lotuswordpro/source/filter/lwptemp.hxx                 |    4 
 lotuswordpro/source/filter/lwptoc.hxx                  |    6 
 lotuswordpro/source/filter/lwpuidoc.cxx                |    2 
 lotuswordpro/source/filter/lwpuidoc.hxx                |   12 -
 lotuswordpro/source/filter/lwpusrdicts.hxx             |    4 
 lotuswordpro/source/filter/lwpverdocument.hxx          |    2 
 lotuswordpro/source/filter/lwpvpointer.hxx             |    4 
 lotuswordpro/source/filter/makefile.mk                 |    2 
 lotuswordpro/source/filter/xfilter/xfborders.hxx       |    8 
 lotuswordpro/source/filter/xfilter/xfchange.hxx        |   28 +-
 lotuswordpro/source/filter/xfilter/xfcolor.hxx         |    2 
 lotuswordpro/source/filter/xfilter/xffontworkstyle.hxx |    2 
 lotuswordpro/source/filter/xfilter/xfofficemeta.hxx    |    4 
 lotuswordpro/source/filter/xfilter/xfrubystyle.hxx     |    4 
 lotuswordpro/source/filter/xfilter/xfstylecont.hxx     |    2 
 83 files changed, 836 insertions(+), 441 deletions(-)

New commits:
commit cca6eaa937a75e16b2915e300dff8d18b794aa05
Author: David Tardon <dtardon at redhat.com>
Date:   Fri Dec 24 12:33:33 2010 +0100

    make copying aware of NULL pointers

diff --git a/lotuswordpro/source/filter/clone.hxx b/lotuswordpro/source/filter/clone.hxx
new file mode 100644
index 0000000..a210a83
--- /dev/null
+++ b/lotuswordpro/source/filter/clone.hxx
@@ -0,0 +1,82 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * Version: MPL 1.1 / GPLv3+ / LGPLv3+
+ *
+ * The contents of this file are subject to the Mozilla Public 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.mozilla.org/MPL/
+ *
+ * Software distributed under the License is distributed on an "AS IS" basis,
+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+ * for the specific language governing rights and limitations under the
+ * License.
+ *
+ * The Initial Developer of the Original Code is
+ *       Red Hat, Inc.
+ * Portions created by the Initial Developer are Copyright (C) 2010 the
+ * Initial Developer. All Rights Reserved.
+ *
+ * Contributor(s): David Tardon <dtardon at redhat.com>
+ *
+ * Alternatively, the contents of this file may be used under the terms of
+ * either the GNU General Public License Version 3 or later (the "GPLv3+"), or
+ * the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
+ * in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
+ * instead of those above.
+ */
+
+namespace detail
+{
+
+template<typename T>
+struct has_clone
+{
+    template<typename U, U x>
+    struct test;
+
+    typedef char yes;
+    typedef struct { char a[2]; } no;
+
+    template<typename U>
+    static yes check_sig(U*, test<U* (U::*)() const, &U::clone>* = 0);
+    template<typename U>
+    static no check_sig(...);
+
+    static bool const value = sizeof(has_clone<T>::template check_sig<T>(0)) == sizeof(yes);
+};
+
+template<typename T, bool HasClone>
+struct cloner
+{
+    static T* clone(T* const other)
+    {
+        return new T(*other);
+    }
+};
+
+template<typename T>
+struct cloner<T, true>
+{
+    static T* clone(T* const other)
+    {
+        return other->clone();
+    }
+};
+
+}
+
+/** Creates a new copy of the passed object.
+    If other is 0, just returns 0. Otherwise, if other has function
+    named clone with signature T* (T::*)() const, the function is called.
+    Otherwise, copy constructor is used.
+
+    @returns 0 or newly allocated object
+ */
+template<typename T>
+T* clone(T* const other)
+{
+    return other ? detail::cloner<T, detail::has_clone<T>::value>::clone(other) : 0;
+}
+
+// vim: set sts=4 sw=4 et:
diff --git a/lotuswordpro/source/filter/lwpbreaksoverride.cxx b/lotuswordpro/source/filter/lwpbreaksoverride.cxx
index f35a180..81791f0 100644
--- a/lotuswordpro/source/filter/lwpbreaksoverride.cxx
+++ b/lotuswordpro/source/filter/lwpbreaksoverride.cxx
@@ -64,6 +64,7 @@
 
 #include <memory>
 
+#include "clone.hxx"
 #include	"lwpbreaksoverride.hxx"
 #include	"lwpobjstrm.hxx"
 #include	"lwpatomholder.hxx"
@@ -78,7 +79,7 @@ LwpBreaksOverride::LwpBreaksOverride(LwpBreaksOverride const& rOther)
     : LwpOverride(rOther)
     , m_pNextStyle(0)
 {
-    std::auto_ptr<LwpAtomHolder> pNextStyle(new LwpAtomHolder(*rOther.m_pNextStyle));
+    std::auto_ptr<LwpAtomHolder> pNextStyle(::clone(rOther.m_pNextStyle));
     m_pNextStyle = pNextStyle.release();
 }
 
diff --git a/lotuswordpro/source/filter/lwpcharborderoverride.cxx b/lotuswordpro/source/filter/lwpcharborderoverride.cxx
index fa61ecd..c004134 100644
--- a/lotuswordpro/source/filter/lwpcharborderoverride.cxx
+++ b/lotuswordpro/source/filter/lwpcharborderoverride.cxx
@@ -64,6 +64,7 @@
 
 #include <memory>
 
+#include "clone.hxx"
 #include "lwpcharborderoverride.hxx"
 #include "lwpborderstuff.hxx"
 #include "lwpmargins.hxx"
@@ -80,8 +81,8 @@ LwpCharacterBorderOverride::LwpCharacterBorderOverride(LwpCharacterBorderOverrid
     , m_nAboveWidth(rOther.m_nAboveWidth)
     , m_nBelowWidth(rOther.m_nBelowWidth)
 {
-    std::auto_ptr<LwpBorderStuff> pBorderStuff(new LwpBorderStuff(*rOther.m_pBorderStuff));
-    std::auto_ptr<LwpMargins> pMargins(new LwpMargins(*rOther.m_pMargins));
+    std::auto_ptr<LwpBorderStuff> pBorderStuff(::clone(rOther.m_pBorderStuff));
+    std::auto_ptr<LwpMargins> pMargins(::clone(rOther.m_pMargins));
     m_pBorderStuff = pBorderStuff.release();
     m_pMargins = pMargins.release();
 }
diff --git a/lotuswordpro/source/filter/lwpoverride.cxx b/lotuswordpro/source/filter/lwpoverride.cxx
index 017367d..3263461 100644
--- a/lotuswordpro/source/filter/lwpoverride.cxx
+++ b/lotuswordpro/source/filter/lwpoverride.cxx
@@ -64,6 +64,7 @@
 
 #include <memory>
 
+#include "clone.hxx"
 #include "lwpoverride.hxx"
 #include "lwpfilehdr.hxx"
 #include "lwpatomholder.hxx"
@@ -387,10 +388,10 @@ LwpSpacingOverride::LwpSpacingOverride(LwpSpacingOverride const& rOther)
     , m_pParaSpacingAbove(0)
     , m_pParaSpacingBelow(0)
 {
-    std::auto_ptr<LwpSpacingCommonOverride> pSpacing(rOther.m_pSpacing->clone());
-    std::auto_ptr<LwpSpacingCommonOverride> pAboveLineSpacing(rOther.m_pAboveLineSpacing->clone());
-    std::auto_ptr<LwpSpacingCommonOverride> pParaSpacingAbove(rOther.m_pParaSpacingAbove->clone());
-    std::auto_ptr<LwpSpacingCommonOverride> pParaSpacingBelow(rOther.m_pParaSpacingBelow->clone());
+    std::auto_ptr<LwpSpacingCommonOverride> pSpacing(::clone(rOther.m_pSpacing));
+    std::auto_ptr<LwpSpacingCommonOverride> pAboveLineSpacing(::clone(rOther.m_pAboveLineSpacing));
+    std::auto_ptr<LwpSpacingCommonOverride> pParaSpacingAbove(::clone(rOther.m_pParaSpacingAbove));
+    std::auto_ptr<LwpSpacingCommonOverride> pParaSpacingBelow(::clone(rOther.m_pParaSpacingBelow));
     m_pSpacing = pSpacing.release();
     m_pAboveLineSpacing = pAboveLineSpacing.release();
     m_pParaSpacingAbove = pParaSpacingAbove.release();
@@ -469,8 +470,7 @@ LwpAmikakeOverride::LwpAmikakeOverride(LwpAmikakeOverride const& rOther)
     , m_pBackgroundStuff(0)
     , m_nType(rOther.m_nType)
 {
-    std::auto_ptr<LwpBackgroundStuff> pBackgroundStuff(
-            new LwpBackgroundStuff(*rOther.m_pBackgroundStuff));
+    std::auto_ptr<LwpBackgroundStuff> pBackgroundStuff(::clone(rOther.m_pBackgroundStuff));
     m_pBackgroundStuff = pBackgroundStuff.release();
 }
 
diff --git a/lotuswordpro/source/filter/lwpparaborderoverride.cxx b/lotuswordpro/source/filter/lwpparaborderoverride.cxx
index 10bf3f4..93ce6a1 100644
--- a/lotuswordpro/source/filter/lwpparaborderoverride.cxx
+++ b/lotuswordpro/source/filter/lwpparaborderoverride.cxx
@@ -64,6 +64,7 @@
 
 #include <memory>
 
+#include "clone.hxx"
 #include	"lwpparaborderoverride.hxx"
 #include	"lwpborderstuff.hxx"
 #include	"lwpshadow.hxx"
@@ -105,10 +106,10 @@ LwpParaBorderOverride::LwpParaBorderOverride(LwpParaBorderOverride const& rOther
     , m_nRightWidth(rOther.m_nRightWidth)
     , m_nBetweenMargin(rOther.m_nBetweenMargin)
 {
-    std::auto_ptr<LwpBorderStuff> pBorderStuff(new LwpBorderStuff(*rOther.m_pBorderStuff));
-    std::auto_ptr<LwpBorderStuff> pBetweenStuff(new LwpBorderStuff(*rOther.m_pBetweenStuff));
-    std::auto_ptr<LwpShadow> pShadow(new LwpShadow(*rOther.m_pShadow));
-    std::auto_ptr<LwpMargins> pMargins(new LwpMargins(*rOther.m_pMargins));
+    std::auto_ptr<LwpBorderStuff> pBorderStuff(::clone(rOther.m_pBorderStuff));
+    std::auto_ptr<LwpBorderStuff> pBetweenStuff(::clone(rOther.m_pBetweenStuff));
+    std::auto_ptr<LwpShadow> pShadow(::clone(rOther.m_pShadow));
+    std::auto_ptr<LwpMargins> pMargins(::clone(rOther.m_pMargins));
     m_pBorderStuff = pBorderStuff.release();
     m_pBetweenStuff = pBetweenStuff.release();
     m_pShadow = pShadow.release();
commit f1bf205835ea398bd223bfa68cdcabade260aea6
Author: David Tardon <dtardon at redhat.com>
Date:   Fri Dec 24 10:03:59 2010 +0100

    replace virtual operator= by cloning

diff --git a/lotuswordpro/prj/build.lst b/lotuswordpro/prj/build.lst
index 64b2b2f..4eefa64 100644
--- a/lotuswordpro/prj/build.lst
+++ b/lotuswordpro/prj/build.lst
@@ -1,4 +1,4 @@
-wp	lotuswordpro : sfx2 sot svx comphelper NULL
+wp	lotuswordpro : sfx2 sot svx comphelper BOOST:boost NULL
 wp	lotuswordpro			usr1	-	all	lwp_mkout NULL
 wp	lotuswordpro\source\filter	nmake	-	all	lwp_filter NULL
 wp	lotuswordpro\source\filter\xfilter	nmake	-	all	lwp_xfilter NULL
diff --git a/lotuswordpro/source/filter/lwpbackgroundoverride.cxx b/lotuswordpro/source/filter/lwpbackgroundoverride.cxx
new file mode 100644
index 0000000..43397b7
--- /dev/null
+++ b/lotuswordpro/source/filter/lwpbackgroundoverride.cxx
@@ -0,0 +1,39 @@
+/*
+ * Version: MPL 1.1 / GPLv3+ / LGPLv3+
+ *
+ * The contents of this file are subject to the Mozilla Public 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.mozilla.org/MPL/
+ *
+ * Software distributed under the License is distributed on an "AS IS" basis,
+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+ * for the specific language governing rights and limitations under the
+ * License.
+ *
+ * The Initial Developer of the Original Code is
+ *       Red Hat, Inc.
+ * Portions created by the Initial Developer are Copyright (C) 2010 the
+ * Initial Developer. All Rights Reserved.
+ *
+ * Contributor(s): David Tardon <dtardon at redhat.com>
+ *
+ * Alternatively, the contents of this file may be used under the terms of
+ * either the GNU General Public License Version 3 or later (the "GPLv3+"), or
+ * the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
+ * in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
+ * instead of those above.
+ */
+
+#include "lwpbackgroundoverride.hxx"
+
+LwpBackgroundOverride::LwpBackgroundOverride(LwpBackgroundOverride const &rOther)
+    : LwpOverride(rOther)
+    , m_aStuff(rOther.m_aStuff)
+{
+}
+
+LwpBackgroundOverride* LwpBackgroundOverride::clone() const
+{
+    return new LwpBackgroundOverride(*this);
+}
diff --git a/lotuswordpro/source/filter/lwpbackgroundoverride.hxx b/lotuswordpro/source/filter/lwpbackgroundoverride.hxx
index c7719b7..f423cf2 100644
--- a/lotuswordpro/source/filter/lwpbackgroundoverride.hxx
+++ b/lotuswordpro/source/filter/lwpbackgroundoverride.hxx
@@ -68,6 +68,7 @@ public:
     LwpBackgroundOverride(){}
     virtual ~LwpBackgroundOverride(){}
 
+    virtual LwpBackgroundOverride* clone() const;
 
 public:
     virtual void Read(LwpObjectStream *pStrm)
@@ -85,6 +86,12 @@ public:
     LwpColor GetBackColor(){ return m_aStuff.m_aFillColor; }
     LwpBackgroundStuff* GetBGStuff() { return &m_aStuff; }
 
+protected:
+    LwpBackgroundOverride(LwpBackgroundOverride const& rOther);
+
+private:
+    LwpBackgroundOverride& operator=(LwpBackgroundOverride const& rOther); // not implemented
+
 private:
     LwpBackgroundStuff	m_aStuff;
 };
diff --git a/lotuswordpro/source/filter/lwpbreaksoverride.cxx b/lotuswordpro/source/filter/lwpbreaksoverride.cxx
index 332b06e..f35a180 100644
--- a/lotuswordpro/source/filter/lwpbreaksoverride.cxx
+++ b/lotuswordpro/source/filter/lwpbreaksoverride.cxx
@@ -61,6 +61,9 @@
 * Change History
 * 2005-01-12 Create and implement.
 ************************************************************************/
+
+#include <memory>
+
 #include	"lwpbreaksoverride.hxx"
 #include	"lwpobjstrm.hxx"
 #include	"lwpatomholder.hxx"
@@ -71,12 +74,25 @@ LwpBreaksOverride::LwpBreaksOverride()
     m_pNextStyle = new LwpAtomHolder();
 }
 
+LwpBreaksOverride::LwpBreaksOverride(LwpBreaksOverride const& rOther)
+    : LwpOverride(rOther)
+    , m_pNextStyle(0)
+{
+    std::auto_ptr<LwpAtomHolder> pNextStyle(new LwpAtomHolder(*rOther.m_pNextStyle));
+    m_pNextStyle = pNextStyle.release();
+}
+
 LwpBreaksOverride::~LwpBreaksOverride()
 {
     if( m_pNextStyle )
         delete m_pNextStyle;
 }
 
+LwpBreaksOverride* LwpBreaksOverride::clone() const
+{
+    return new LwpBreaksOverride(*this);
+}
+
 void	LwpBreaksOverride::Read(LwpObjectStream *pStrm)
 {
     if (pStrm->QuickReadBool())
@@ -182,13 +198,6 @@ void LwpBreaksOverride::Override(LwpBreaksOverride* pOther)
     }
 }
 
-void LwpBreaksOverride::operator=(const LwpOverride& rOther)
-{
-    LwpOverride::operator=(rOther);
-
-    // copy m_pNextStyle...
-}
-
 void LwpBreaksOverride::OverridePageBreakBefore(sal_Bool bVal)
 {
     if(bVal)
diff --git a/lotuswordpro/source/filter/lwpbreaksoverride.hxx b/lotuswordpro/source/filter/lwpbreaksoverride.hxx
index 9670c7c..aded8d7 100644
--- a/lotuswordpro/source/filter/lwpbreaksoverride.hxx
+++ b/lotuswordpro/source/filter/lwpbreaksoverride.hxx
@@ -75,6 +75,8 @@ public:
     LwpBreaksOverride();
     virtual ~LwpBreaksOverride();
 
+    virtual LwpBreaksOverride* clone() const;
+
     enum
     {
         BO_PAGEBEFORE	= 0x01,	// page break before this style
@@ -93,8 +95,6 @@ public:
     //add by , 01/28/2005
     void Override(LwpBreaksOverride* pOther);
 
-    void operator=(const LwpOverride& rOther);
-
     inline sal_Bool IsPageBreakBefore();
     inline sal_Bool IsPageBreakAfter();
     inline sal_Bool IsPageBreakWithin();
@@ -136,6 +136,12 @@ public:
     inline LwpAtomHolder* GetNextStyle();
     //end add
 
+protected:
+    LwpBreaksOverride(LwpBreaksOverride const& rOther);
+
+private:
+    LwpBreaksOverride& operator=(const LwpBreaksOverride& rOther); // not implemented
+
 private:
     LwpAtomHolder		*m_pNextStyle;
 };
diff --git a/lotuswordpro/source/filter/lwpbulletstylemgr.cxx b/lotuswordpro/source/filter/lwpbulletstylemgr.cxx
index 89b9123..34f0cd2 100644
--- a/lotuswordpro/source/filter/lwpbulletstylemgr.cxx
+++ b/lotuswordpro/source/filter/lwpbulletstylemgr.cxx
@@ -130,14 +130,14 @@ rtl::OUString LwpBulletStyleMgr::RegisterBulletStyle(LwpPara* pPara, LwpBulletOv
     }
 
     LwpObjectID aBulletID = pBullOver->GetSilverBullet();
-    LwpBulletOverride aBulletOver = *pBullOver;
+    boost::shared_ptr<LwpBulletOverride> pBulletOver(pBullOver->clone());
 
     sal_uInt16 nNameIndex = 0;
     std::vector <OverridePair>::iterator iter;
     for(iter = m_vIDsPairList.begin(); iter != m_vIDsPairList.end(); iter++)
     {
-        if (iter->first.GetSilverBullet() == aBulletID && iter->second == aIndentID
-            && iter->first.IsRightAligned() == pBullOver->IsRightAligned())
+        if (iter->first->GetSilverBullet() == aBulletID && iter->second == aIndentID
+            && iter->first->IsRightAligned() == pBullOver->IsRightAligned())
         {
             return m_vStyleNameList[nNameIndex];
         }
@@ -147,7 +147,7 @@ rtl::OUString LwpBulletStyleMgr::RegisterBulletStyle(LwpPara* pPara, LwpBulletOv
         }
     }
 
-    m_vIDsPairList.push_back(std::make_pair(aBulletOver, aIndentID));
+    m_vIDsPairList.push_back(std::make_pair(pBulletOver, aIndentID));
     rtl::OUString aStyleName;
 
     LwpFribPtr* pBulletParaFribs = pBulletPara->GetFribs();
diff --git a/lotuswordpro/source/filter/lwpbulletstylemgr.hxx b/lotuswordpro/source/filter/lwpbulletstylemgr.hxx
index 0ec224e..24bd640 100644
--- a/lotuswordpro/source/filter/lwpbulletstylemgr.hxx
+++ b/lotuswordpro/source/filter/lwpbulletstylemgr.hxx
@@ -64,6 +64,9 @@
 #ifndef _LWPBULLETSTYLEMGR_HXX
 #define _LWPBULLETSTYLEMGR_HXX
 
+#include <boost/scoped_ptr.hpp>
+#include <boost/shared_ptr.hpp>
+
 #include "lwpheader.hxx"
 #include "lwpfoundry.hxx"
 #include "lwpobjid.hxx"
@@ -112,7 +115,7 @@ private:
 
 private:
 //	std::vector <XFListStyle*> m_aBulletStyleList;
-    typedef std::pair<LwpBulletOverride, LwpObjectID> OverridePair;
+    typedef std::pair<boost::shared_ptr<LwpBulletOverride>, LwpObjectID> OverridePair;
     std::vector <rtl::OUString> m_vStyleNameList;
     std::vector <OverridePair> m_vIDsPairList;
     rtl::OUString m_aCurrentStyleName;
@@ -124,7 +127,7 @@ private:
     sal_Bool m_bContinue;
     sal_Bool m_bIsBulletSkipped;
     LwpObjectID m_aCurrentNumberingID;
-    LwpNumberingOverride m_aCurrentNumOverride;
+    boost::scoped_ptr<LwpNumberingOverride> m_pCurrentNumOverride;
     sal_uInt16 m_nCurrentPos;
 
 };
@@ -159,11 +162,11 @@ inline sal_uInt16 LwpBulletStyleMgr::GetCurrentPos() const
 
 inline void LwpBulletStyleMgr::SetCurrentNumOver(const LwpNumberingOverride& rOther)
 {
-    m_aCurrentNumOverride = rOther;
+    m_pCurrentNumOverride.reset(rOther.clone());
 }
 inline LwpNumberingOverride* LwpBulletStyleMgr::GetCurrentNumOver()
 {
-    return &m_aCurrentNumOverride;
+    return m_pCurrentNumOverride.get();
 }
 
 #endif
diff --git a/lotuswordpro/source/filter/lwpcharborderoverride.cxx b/lotuswordpro/source/filter/lwpcharborderoverride.cxx
index 06343f8..fa61ecd 100644
--- a/lotuswordpro/source/filter/lwpcharborderoverride.cxx
+++ b/lotuswordpro/source/filter/lwpcharborderoverride.cxx
@@ -62,6 +62,8 @@
  Jan 2005			Created
  ************************************************************************/
 
+#include <memory>
+
 #include "lwpcharborderoverride.hxx"
 #include "lwpborderstuff.hxx"
 #include "lwpmargins.hxx"
@@ -71,6 +73,19 @@ m_pBorderStuff(new LwpBorderStuff), m_pMargins(new LwpMargins)
 {
 }
 
+LwpCharacterBorderOverride::LwpCharacterBorderOverride(LwpCharacterBorderOverride const& rOther)
+    : LwpOverride(rOther)
+    , m_pBorderStuff(0)
+    , m_pMargins(0)
+    , m_nAboveWidth(rOther.m_nAboveWidth)
+    , m_nBelowWidth(rOther.m_nBelowWidth)
+{
+    std::auto_ptr<LwpBorderStuff> pBorderStuff(new LwpBorderStuff(*rOther.m_pBorderStuff));
+    std::auto_ptr<LwpMargins> pMargins(new LwpMargins(*rOther.m_pMargins));
+    m_pBorderStuff = pBorderStuff.release();
+    m_pMargins = pMargins.release();
+}
+
 LwpCharacterBorderOverride::~LwpCharacterBorderOverride()
 {
     if (m_pBorderStuff)
@@ -83,6 +98,11 @@ LwpCharacterBorderOverride::~LwpCharacterBorderOverride()
     }
 }
 
+LwpCharacterBorderOverride* LwpCharacterBorderOverride::clone() const
+{
+    return new LwpCharacterBorderOverride(*this);
+}
+
 void LwpCharacterBorderOverride::Read(LwpObjectStream* pStrm)
 {
     if (pStrm->QuickReadBool())
diff --git a/lotuswordpro/source/filter/lwpcharborderoverride.hxx b/lotuswordpro/source/filter/lwpcharborderoverride.hxx
index d427979..b9ac2fe 100644
--- a/lotuswordpro/source/filter/lwpcharborderoverride.hxx
+++ b/lotuswordpro/source/filter/lwpcharborderoverride.hxx
@@ -76,6 +76,8 @@ public:
 
     virtual ~LwpCharacterBorderOverride();
 
+    virtual LwpCharacterBorderOverride* clone() const;
+
     void Read(LwpObjectStream* pStrm);
 
     void Override(LwpCharacterBorderOverride* pOther);
@@ -100,6 +102,12 @@ public:
     inline void RevertAboveWidth();
     inline void RevertBelowWidth();
 
+protected:
+    LwpCharacterBorderOverride(LwpCharacterBorderOverride const& rOther);
+
+private:
+    LwpCharacterBorderOverride& operator=(LwpCharacterBorderOverride const& rOther); // not implemented
+
 private:
     LwpBorderStuff*	m_pBorderStuff;
     LwpMargins*		m_pMargins;
diff --git a/lotuswordpro/source/filter/lwpnumberingoverride.cxx b/lotuswordpro/source/filter/lwpnumberingoverride.cxx
index 2e759f2..dd5b94c 100644
--- a/lotuswordpro/source/filter/lwpnumberingoverride.cxx
+++ b/lotuswordpro/source/filter/lwpnumberingoverride.cxx
@@ -71,6 +71,18 @@ LwpNumberingOverride::LwpNumberingOverride()
     m_nPosition = 0;
 }
 
+LwpNumberingOverride::LwpNumberingOverride(LwpNumberingOverride const& rOther)
+    : LwpOverride(rOther)
+    , m_nLevel(rOther.m_nLevel)
+    , m_nPosition(rOther.m_nPosition)
+{
+}
+
+LwpNumberingOverride* LwpNumberingOverride::clone() const
+{
+    return new LwpNumberingOverride(*this);
+}
+
 void	LwpNumberingOverride::Read(LwpObjectStream *pStrm)
 {
     if (pStrm->QuickReadBool())
@@ -135,17 +147,6 @@ void LwpNumberingOverride::Override(LwpNumberingOverride* pOther)
     }
 }
 
-void LwpNumberingOverride::operator=(const LwpOverride& rOther)
-{
-    LwpOverride::operator=(rOther);
-
-    const LwpNumberingOverride* pOther =
-        static_cast<LwpNumberingOverride*>((LwpOverride*)&rOther);
-
-    m_nLevel = pOther->m_nLevel;
-    m_nPosition = pOther->m_nPosition;
-}
-
 void LwpNumberingOverride::OverrideLevel(sal_uInt16 nNewLv)
 {
     m_nLevel = nNewLv;
diff --git a/lotuswordpro/source/filter/lwpnumberingoverride.hxx b/lotuswordpro/source/filter/lwpnumberingoverride.hxx
index 1d0b715..ffbe1fd 100644
--- a/lotuswordpro/source/filter/lwpnumberingoverride.hxx
+++ b/lotuswordpro/source/filter/lwpnumberingoverride.hxx
@@ -74,6 +74,8 @@ public:
     LwpNumberingOverride();
     virtual ~LwpNumberingOverride(){}
 
+    virtual LwpNumberingOverride* clone() const;
+
     enum
     {
         NO_LEVEL		= 0x0001,
@@ -86,7 +88,6 @@ public:
 
     //add by , 02/03/2005
     void Override(LwpNumberingOverride* pOther);
-    void operator=(const LwpOverride& rOther);
 
     inline sal_uInt16 GetLevel() const;
     inline sal_uInt16 GetPosition() const;
@@ -108,6 +109,13 @@ public:
     inline void RevertHeading();
     inline void RevertSmartLevel();
     //end add
+
+protected:
+    LwpNumberingOverride(LwpNumberingOverride const& rOther);
+
+private:
+    LwpNumberingOverride& operator=(LwpNumberingOverride const& rOther); // not implemented
+
 private:
     sal_uInt16	m_nLevel;
     sal_uInt16	m_nPosition;
diff --git a/lotuswordpro/source/filter/lwpoverride.cxx b/lotuswordpro/source/filter/lwpoverride.cxx
index efce74c..017367d 100644
--- a/lotuswordpro/source/filter/lwpoverride.cxx
+++ b/lotuswordpro/source/filter/lwpoverride.cxx
@@ -62,6 +62,8 @@
  Jan 2005			Created
  ************************************************************************/
 
+#include <memory>
+
 #include "lwpoverride.hxx"
 #include "lwpfilehdr.hxx"
 #include "lwpatomholder.hxx"
@@ -70,6 +72,13 @@
 #include "lwpbackgroundstuff.hxx"
 
 /*class LwpOverride*/
+LwpOverride::LwpOverride(LwpOverride const& rOther)
+    : m_nValues(rOther.m_nValues)
+    , m_nOverride(rOther.m_nOverride)
+    , m_nApply(rOther.m_nApply)
+{
+}
+
 void LwpOverride::ReadCommon(LwpObjectStream* pStrm)
 {
     pStrm->QuickRead(&m_nValues, 2);
@@ -85,13 +94,6 @@ void LwpOverride::Clear()
     m_nApply = 0;
 }
 
-void LwpOverride::operator=(const LwpOverride& rOther)
-{
-    m_nValues = rOther.m_nValues;
-    m_nOverride = rOther.m_nOverride;
-    m_nApply = rOther.m_nApply;
-}
-
 void LwpOverride::Override(sal_uInt16 nBits, STATE eState)
 {
     if (eState == STATE_STYLE)
@@ -115,6 +117,17 @@ void LwpOverride::Override(sal_uInt16 nBits, STATE eState)
 }
 
 /*class LwpTextLanguageOverride*/
+LwpTextLanguageOverride::LwpTextLanguageOverride(LwpTextLanguageOverride const& rOther)
+    : LwpOverride(rOther)
+    , m_nLanguage(rOther.m_nLanguage)
+{
+}
+
+LwpTextLanguageOverride* LwpTextLanguageOverride::clone() const
+{
+    return new LwpTextLanguageOverride(*this);
+}
+
 void LwpTextLanguageOverride::Read(LwpObjectStream* pStrm)
 {
     if (pStrm->QuickReadBool())
@@ -128,6 +141,18 @@ void LwpTextLanguageOverride::Read(LwpObjectStream* pStrm)
 }
 
 /*class LwpTextAttributeOverride*/
+LwpTextAttributeOverride::LwpTextAttributeOverride(LwpTextAttributeOverride const& rOther)
+    : LwpOverride(rOther)
+    , m_nHideLevels(rOther.m_nHideLevels)
+    , m_nBaseLineOffset(rOther.m_nBaseLineOffset)
+{
+}
+
+LwpTextAttributeOverride* LwpTextAttributeOverride::clone() const
+{
+    return new LwpTextAttributeOverride(*this);
+}
+
 void LwpTextAttributeOverride::Read(LwpObjectStream* pStrm)
 {
     if (pStrm->QuickReadBool())
@@ -150,6 +175,17 @@ sal_Bool LwpTextAttributeOverride::IsHighLight()
 }
 
 /*class LwpKinsokuOptsOverride*/
+LwpKinsokuOptsOverride::LwpKinsokuOptsOverride(LwpKinsokuOptsOverride const& rOther)
+    : LwpOverride(rOther)
+    , m_nLevels(rOther.m_nLevels)
+{
+}
+
+LwpKinsokuOptsOverride* LwpKinsokuOptsOverride::clone() const
+{
+    return new LwpKinsokuOptsOverride(*this);
+}
+
 void LwpKinsokuOptsOverride::Read(LwpObjectStream* pStrm)
 {
     if (pStrm->QuickReadBool())
@@ -162,6 +198,18 @@ void LwpKinsokuOptsOverride::Read(LwpObjectStream* pStrm)
 }
 
 /*class LwpBulletOverride*/
+LwpBulletOverride::LwpBulletOverride(LwpBulletOverride const& rOther)
+    : LwpOverride(rOther)
+    , m_SilverBullet(rOther.m_SilverBullet)
+    , m_bIsNull(rOther.m_bIsNull)
+{
+}
+
+LwpBulletOverride* LwpBulletOverride::clone() const
+{
+    return new LwpBulletOverride(*this);
+}
+
 void LwpBulletOverride::Read(LwpObjectStream * pStrm)
 {
     if (pStrm->QuickReadBool())
@@ -199,15 +247,6 @@ void LwpBulletOverride::OverrideRightAligned(sal_Bool bOver)
     }
 }
 
-void LwpBulletOverride::operator=(const LwpOverride& rOther)
-{
-    LwpOverride::operator=(rOther);
-    const LwpBulletOverride* pBullet = static_cast<LwpBulletOverride*>((LwpOverride*)&rOther);
-
-    m_SilverBullet = pBullet->m_SilverBullet;
-
-}
-
 void LwpBulletOverride::OverrideSilverBullet(LwpObjectID aID)
 {
     if (!aID.IsNull())
@@ -259,6 +298,19 @@ void LwpBulletOverride::Override(LwpBulletOverride* pOther)
 }
 
 /*class LwpAlignmentOverride*/
+LwpAlignmentOverride::LwpAlignmentOverride(LwpAlignmentOverride const& rOther)
+    : LwpOverride(rOther)
+    , m_nAlignType(rOther.m_nAlignType)
+    , m_nPosition(rOther.m_nPosition)
+    , m_nAlignChar(rOther.m_nAlignChar)
+{
+}
+
+LwpAlignmentOverride* LwpAlignmentOverride::clone() const
+{
+    return new LwpAlignmentOverride(*this);
+}
+
 void LwpAlignmentOverride::Read(LwpObjectStream * pStrm)
 {
     if (pStrm->QuickReadBool())
@@ -273,6 +325,19 @@ void LwpAlignmentOverride::Read(LwpObjectStream * pStrm)
 }
 
 /*class LwpSpacingCommonOverride*/
+LwpSpacingCommonOverride::LwpSpacingCommonOverride(LwpSpacingCommonOverride const& rOther)
+    : LwpOverride(rOther)
+    , m_nSpacingType(rOther.m_nSpacingType)
+    , m_nAmount(rOther.m_nAmount)
+    , m_nMultiple(rOther.m_nMultiple)
+{
+}
+
+LwpSpacingCommonOverride* LwpSpacingCommonOverride::clone() const
+{
+    return new LwpSpacingCommonOverride(*this);
+}
+
 void LwpSpacingCommonOverride::Read(LwpObjectStream* pStrm)
 {
     if (pStrm->QuickReadBool())
@@ -295,16 +360,6 @@ m_pParaSpacingBelow(new LwpSpacingCommonOverride)
 {
 }
 
-LwpSpacingOverride& LwpSpacingOverride::operator=(LwpSpacingOverride& other)
-{
-    LwpOverride::operator=(other);
-    *m_pSpacing = *other.m_pSpacing;
-    *m_pAboveLineSpacing = *other.m_pAboveLineSpacing;
-    *m_pParaSpacingAbove = *other.m_pParaSpacingAbove;
-    *m_pParaSpacingAbove = *other.m_pParaSpacingAbove;
-    return *this;
-}
-
 LwpSpacingOverride::~LwpSpacingOverride()
 {
     if (m_pSpacing)
@@ -325,6 +380,28 @@ LwpSpacingOverride::~LwpSpacingOverride()
     }
 }
 
+LwpSpacingOverride::LwpSpacingOverride(LwpSpacingOverride const& rOther)
+    : LwpOverride(rOther)
+    , m_pSpacing(0)
+    , m_pAboveLineSpacing(0)
+    , m_pParaSpacingAbove(0)
+    , m_pParaSpacingBelow(0)
+{
+    std::auto_ptr<LwpSpacingCommonOverride> pSpacing(rOther.m_pSpacing->clone());
+    std::auto_ptr<LwpSpacingCommonOverride> pAboveLineSpacing(rOther.m_pAboveLineSpacing->clone());
+    std::auto_ptr<LwpSpacingCommonOverride> pParaSpacingAbove(rOther.m_pParaSpacingAbove->clone());
+    std::auto_ptr<LwpSpacingCommonOverride> pParaSpacingBelow(rOther.m_pParaSpacingBelow->clone());
+    m_pSpacing = pSpacing.release();
+    m_pAboveLineSpacing = pAboveLineSpacing.release();
+    m_pParaSpacingAbove = pParaSpacingAbove.release();
+    m_pParaSpacingBelow = pParaSpacingBelow.release();
+}
+
+LwpSpacingOverride* LwpSpacingOverride::clone() const
+{
+    return new LwpSpacingOverride(*this);
+}
+
 void LwpSpacingOverride::Read(LwpObjectStream* pStrm)
 {
     if (pStrm->QuickReadBool())
@@ -343,6 +420,20 @@ void LwpSpacingOverride::Read(LwpObjectStream* pStrm)
 }
 
 /*class LwpIndentOverride*/
+LwpIndentOverride::LwpIndentOverride(LwpIndentOverride const& rOther)
+    : LwpOverride(rOther)
+    , m_nAll(rOther.m_nAll)
+    , m_nFirst(rOther.m_nFirst)
+    , m_nRest(rOther.m_nRest)
+    , m_nRight(rOther.m_nRight)
+{
+}
+
+LwpIndentOverride* LwpIndentOverride::clone() const
+{
+    return new LwpIndentOverride(*this);
+}
+
 void LwpIndentOverride::Read(LwpObjectStream* pStrm)
 {
     if (pStrm->QuickReadBool())
@@ -373,6 +464,21 @@ LwpAmikakeOverride::~LwpAmikakeOverride()
     }
 }
 
+LwpAmikakeOverride::LwpAmikakeOverride(LwpAmikakeOverride const& rOther)
+    : LwpOverride(rOther)
+    , m_pBackgroundStuff(0)
+    , m_nType(rOther.m_nType)
+{
+    std::auto_ptr<LwpBackgroundStuff> pBackgroundStuff(
+            new LwpBackgroundStuff(*rOther.m_pBackgroundStuff));
+    m_pBackgroundStuff = pBackgroundStuff.release();
+}
+
+LwpAmikakeOverride* LwpAmikakeOverride::clone() const
+{
+    return new LwpAmikakeOverride(*this);
+}
+
 void LwpAmikakeOverride::Read(LwpObjectStream* pStrm)
 {
     if (pStrm->QuickReadBool())
@@ -419,16 +525,6 @@ void LwpAlignmentOverride::OverrideAlignment(AlignType val)//add by  1-24
     m_nOverride |= AO_TYPE;
 }
 
-LwpIndentOverride& LwpIndentOverride::operator=(LwpIndentOverride& other)
-{
-    LwpOverride::operator=(other);
-    m_nAll   = other.m_nAll;
-    m_nFirst = other.m_nFirst;
-    m_nRest  = other.m_nRest;
-    m_nRight = other.m_nRight;
-    return *this;
-}
-
 void LwpIndentOverride::Override(LwpIndentOverride* other)
 {
     if(m_nOverride & IO_ALL)
diff --git a/lotuswordpro/source/filter/lwpoverride.hxx b/lotuswordpro/source/filter/lwpoverride.hxx
index b571720..96a3e01 100644
--- a/lotuswordpro/source/filter/lwpoverride.hxx
+++ b/lotuswordpro/source/filter/lwpoverride.hxx
@@ -84,9 +84,9 @@ public:
 
     virtual ~LwpOverride(){}
 
-    virtual void Read(LwpObjectStream* pStrm) = 0;
+    virtual LwpOverride* clone() const = 0;
 
-    virtual void operator=(const LwpOverride& rOther);
+    virtual void Read(LwpObjectStream* pStrm) = 0;
 
     void ReadCommon(LwpObjectStream* pStrm);
 
@@ -95,6 +95,12 @@ public:
     void Override(sal_uInt16 nBits, STATE eState);
 
 protected:
+    LwpOverride(LwpOverride const& rOther);
+
+private:
+    LwpOverride& operator=(LwpOverride const& rOther); // not implemented
+
+protected:
     sal_uInt16	m_nValues;
     sal_uInt16	m_nOverride;
     sal_uInt16	m_nApply;
@@ -106,8 +112,16 @@ class LwpTextLanguageOverride : public LwpOverride
 public:
     LwpTextLanguageOverride() : m_nLanguage(0) {}
 
+    virtual LwpTextLanguageOverride* clone() const;
+
     void Read(LwpObjectStream* pStrm);
 
+protected:
+    LwpTextLanguageOverride(LwpTextLanguageOverride const& rOther);
+
+private:
+    LwpTextLanguageOverride& operator=(LwpTextLanguageOverride const& rOther); // not implemented
+
 private:
     sal_uInt16	m_nLanguage;
 };
@@ -118,12 +132,20 @@ class LwpTextAttributeOverride : public LwpOverride
 public:
     LwpTextAttributeOverride() : m_nHideLevels(0), m_nBaseLineOffset(0) {}
 
+    virtual LwpTextAttributeOverride* clone() const;
+
     void Read(LwpObjectStream* pStrm);
 
     inline sal_uInt16 GetHideLevels() const;
 
     sal_Bool IsHighLight();
 
+protected:
+    LwpTextAttributeOverride(LwpTextAttributeOverride const& rOther);
+
+private:
+    LwpTextAttributeOverride& operator=(LwpTextAttributeOverride const& rOther); // not implemented
+
 private:
     enum{
     TAO_HIGHLIGHT = 0x08,
@@ -142,8 +164,16 @@ class LwpKinsokuOptsOverride : public LwpOverride
 public:
     LwpKinsokuOptsOverride() : m_nLevels(0) {}
 
+    virtual LwpKinsokuOptsOverride* clone() const;
+
     void Read(LwpObjectStream* pStrm);
 
+protected:
+    LwpKinsokuOptsOverride(LwpKinsokuOptsOverride const& rOther);
+
+private:
+    LwpKinsokuOptsOverride& operator=(LwpKinsokuOptsOverride const& rOther); // not implemented
+
 private:
     sal_uInt16	m_nLevels;
 };
@@ -154,12 +184,12 @@ class LwpBulletOverride : public LwpOverride
 public:
     LwpBulletOverride() {m_bIsNull = sal_True;}
 
+    virtual LwpBulletOverride* clone() const;
+
     void Read(LwpObjectStream* pStrm);
 
     inline LwpObjectID GetSilverBullet() const;
 
-    void operator=(const LwpOverride& rOther);
-
     void Override(LwpBulletOverride* pOther);
 
     inline sal_Bool IsSilverBulletOverridden();
@@ -179,6 +209,13 @@ public:
     inline void RevertRightAligned();
 
     sal_Bool IsInValid(){return m_bIsNull;}
+
+protected:
+    LwpBulletOverride(LwpBulletOverride const& rOther);
+
+private:
+    LwpBulletOverride& operator=(LwpBulletOverride const& rOther); // not implemented
+
 private:
     enum
     {
@@ -192,6 +229,7 @@ private:
     LwpObjectID	m_SilverBullet;
     sal_Bool m_bIsNull;
 };
+
 inline LwpObjectID LwpBulletOverride::GetSilverBullet() const
 {
     return m_SilverBullet;
@@ -248,6 +286,8 @@ class LwpAlignmentOverride : public LwpOverride
 public:
     LwpAlignmentOverride() : m_nAlignType(ALIGN_LEFT), m_nPosition(0), m_nAlignChar(0){}
 
+    virtual LwpAlignmentOverride* clone() const;
+
     void Read(LwpObjectStream* pStrm);
 
     enum AlignType
@@ -265,6 +305,13 @@ public:
     AlignType GetAlignType(){ return m_nAlignType; }
     void Override(LwpAlignmentOverride* other);//add by  1-24
     void OverrideAlignment(AlignType val);//add by  1-24
+
+protected:
+    LwpAlignmentOverride(LwpAlignmentOverride const& rOther);
+
+private:
+    LwpAlignmentOverride& operator=(LwpAlignmentOverride const& rOther); // not implemented
+
 private:
     enum
     {
@@ -284,6 +331,8 @@ class LwpSpacingCommonOverride : public LwpOverride
 public:
     LwpSpacingCommonOverride() : m_nSpacingType(SPACING_NONE), m_nAmount(0), m_nMultiple(65536){}
 
+    virtual LwpSpacingCommonOverride* clone() const;
+
     void Read(LwpObjectStream* pStrm);
 
     enum SpacingType
@@ -304,6 +353,12 @@ public:
     void OverrideMultiple(sal_Int32 val);
 
 protected:
+    LwpSpacingCommonOverride(LwpSpacingCommonOverride const& rOther);
+
+private:
+    LwpSpacingCommonOverride& operator=(LwpSpacingCommonOverride const& rOther); // not implemented
+
+protected:
     enum
     {
         SPO_TYPE	= 0x01,
@@ -313,7 +368,6 @@ protected:
     SpacingType	m_nSpacingType;//sal_uInt16
     sal_Int32	m_nAmount;
     sal_Int32	m_nMultiple;
-
 };
 
 /////////////////////////////////////////////////////////////////
@@ -321,9 +375,10 @@ class LwpSpacingOverride : public LwpOverride
 {
 public:
     LwpSpacingOverride();
-    LwpSpacingOverride& operator=(LwpSpacingOverride& other);
     virtual ~LwpSpacingOverride();
 
+    virtual LwpSpacingOverride* clone() const;
+
     void Read(LwpObjectStream* pStrm);
 
     void Override(LwpSpacingOverride* other);
@@ -332,6 +387,13 @@ public:
     LwpSpacingCommonOverride* GetAboveLineSpacing(){return m_pAboveLineSpacing;}
     LwpSpacingCommonOverride* GetAboveSpacing(){return m_pParaSpacingAbove;}
     LwpSpacingCommonOverride* GetBelowSpacing(){return m_pParaSpacingBelow;}
+
+protected:
+    LwpSpacingOverride(LwpSpacingOverride const& rOther);
+
+private:
+    LwpSpacingOverride& operator=(LwpSpacingOverride const& rOther); // not implemented
+
 private:
     LwpSpacingCommonOverride*	m_pSpacing;
     LwpSpacingCommonOverride*	m_pAboveLineSpacing;
@@ -344,7 +406,9 @@ class LwpIndentOverride : public LwpOverride
 {
 public:
     LwpIndentOverride() : m_nAll(0), m_nFirst(0), m_nRest(0), m_nRight(0) {}
-    LwpIndentOverride& operator=(LwpIndentOverride& other);
+
+    virtual LwpIndentOverride* clone() const;
+
     void Read(LwpObjectStream* pStrm);
 
     enum
@@ -373,6 +437,13 @@ public:
     void SetMFirst(sal_Int32 val){m_nFirst=val;}
     void SetMRest(sal_Int32 val){m_nRest=val;}
     void SetMRight(sal_Int32 val){m_nRight=val;}
+
+protected:
+    LwpIndentOverride(LwpIndentOverride const& rOther);
+
+private:
+    LwpIndentOverride& operator=(LwpIndentOverride const& rOther); // not implemented
+
 private:
     enum
     {
@@ -400,6 +471,7 @@ private:
     sal_Int32	m_nRest;
     sal_Int32	m_nRight;
 };
+
 inline double LwpIndentOverride::GetFirst() const
 {
         return LwpTools::ConvertToMetric(LwpTools::ConvertFromUnits(m_nFirst-m_nRest));
@@ -422,6 +494,8 @@ public:
 
     virtual ~LwpAmikakeOverride();
 
+    virtual LwpAmikakeOverride* clone() const;
+
     void Read(LwpObjectStream* pStrm);
     enum
     {
@@ -430,6 +504,12 @@ public:
         AMIKAKE_CHARACTER	= 2
     };
 
+protected:
+    LwpAmikakeOverride(LwpAmikakeOverride const& rOther);
+
+private:
+    LwpAmikakeOverride& operator=(LwpAmikakeOverride const& rOther); // not implemented
+
 private:
     LwpBackgroundStuff*	m_pBackgroundStuff;
     sal_uInt16		m_nType;
diff --git a/lotuswordpro/source/filter/lwppara.cxx b/lotuswordpro/source/filter/lwppara.cxx
index 4a9e108..d1f1e37 100644
--- a/lotuswordpro/source/filter/lwppara.cxx
+++ b/lotuswordpro/source/filter/lwppara.cxx
@@ -369,11 +369,10 @@ void LwpPara::RegisterStyle()
 
     if (GetParaStyle()->GetIndent())
     {
-        m_pIndentOverride = new LwpIndentOverride;
-        *m_pIndentOverride = *(GetParaStyle()->GetIndent()); //add by  2-6,for indent hierachy
+        std::auto_ptr<LwpIndentOverride> pIndentOverride(GetParaStyle()->GetIndent()->clone());
+        delete m_pIndentOverride;
+        m_pIndentOverride = pIndentOverride.release();
     }
-//	else
-//		m_pIndentOverride = NULL;
 
     XFParaStyle* pOverStyle = NULL;
     sal_Bool noSpacing = sal_True;
@@ -395,13 +394,15 @@ void LwpPara::RegisterStyle()
             {
             case PP_LOCAL_ALIGN:
             {
-                LwpAlignmentOverride aAlign;
                 if (!pParaStyle->GetAlignment())
                     OverrideAlignment(NULL,static_cast<LwpParaAlignProperty*>(pProps)->GetAlignment(),pOverStyle);
                 else
                 {
-                    aAlign = *(pParaStyle->GetAlignment());
-                    OverrideAlignment(&aAlign,static_cast<LwpParaAlignProperty*>(pProps)->GetAlignment(),pOverStyle);
+                    boost::scoped_ptr<LwpAlignmentOverride> const pAlign(
+                            pParaStyle->GetAlignment()->clone());
+                    OverrideAlignment(pAlign.get(),
+                            static_cast<LwpParaAlignProperty*>(pProps)->GetAlignment(),
+                            pOverStyle);
                 }
             }
                 break;
@@ -419,14 +420,16 @@ void LwpPara::RegisterStyle()
                 break;
             case PP_LOCAL_SPACING:
             {
-                LwpSpacingOverride aSpacing;
                 noSpacing = sal_False;
                 if (!pParaStyle->GetSpacing())
                     OverrideSpacing(NULL,static_cast<LwpParaSpacingProperty*>(pProps)->GetSpacing(),pOverStyle);
                 else
                 {
-                    aSpacing = *(pParaStyle->GetSpacing());
-                    OverrideSpacing(&aSpacing,static_cast<LwpParaSpacingProperty*>(pProps)->GetSpacing(),pOverStyle);
+                    boost::scoped_ptr<LwpSpacingOverride> const
+                        pSpacing(pParaStyle->GetSpacing()->clone());
+                    OverrideSpacing(pSpacing.get(),
+                            static_cast<LwpParaSpacingProperty*>(pProps)->GetSpacing(),
+                            pOverStyle);
                 }
             }
                 break;
@@ -737,13 +740,13 @@ void LwpPara::RegisterStyle()
                     LwpStory* pMyStory = this->GetStory();
                     if (pMyStory)
                     {
-                        if (pMyStory->IsBullStyleUsedBefore(m_aBulletStyleName, m_aParaNumbering.GetPosition()))
+                        if (pMyStory->IsBullStyleUsedBefore(m_aBulletStyleName, m_pParaNumbering->GetPosition()))
                         {
                             //m_bBullContinue = sal_True;
                         }
                         else
                         {
-                            pMyStory->AddBullStyleName2List(m_aBulletStyleName, m_aParaNumbering.GetPosition());
+                            pMyStory->AddBullStyleName2List(m_aBulletStyleName, m_pParaNumbering->GetPosition());
                         }
                     }
 
@@ -965,8 +968,7 @@ XFContentContainer* LwpPara::AddBulletList(XFContentContainer* pCont)
     }
     if (m_pSilverBullet->HasName())
     {
-//		nLevel = m_pParaNumbering->GetPosition();
-        nLevel = m_aParaNumbering.GetPosition();
+        nLevel = m_pParaNumbering->GetPosition();
         m_nLevel = nLevel;//add by ,for get para level
 //		m_aBulletStyleName = m_pSilverBullet->GetBulletStyleName();
     }
@@ -977,7 +979,7 @@ XFContentContainer* LwpPara::AddBulletList(XFContentContainer* pCont)
 
 LwpNumberingOverride* LwpPara::GetParaNumbering()
 {
-    return &m_aParaNumbering;
+    return m_pParaNumbering.get();
 }
 
 void LwpForked3NotifyList::Read(LwpObjectStream* pObjStrm)
diff --git a/lotuswordpro/source/filter/lwppara.hxx b/lotuswordpro/source/filter/lwppara.hxx
index cbb7050..f2b5189 100644
--- a/lotuswordpro/source/filter/lwppara.hxx
+++ b/lotuswordpro/source/filter/lwppara.hxx
@@ -65,6 +65,9 @@
 
 #ifndef _LWPPARAGRAPH_HXX_
 #define _LWPPARAGRAPH_HXX_
+
+#include <boost/scoped_ptr.hpp>
+
 #include "lwpfribheader.hxx"
 #include "lwpobj.hxx"
 #include "lwpobjstrm.hxx"
@@ -243,8 +246,7 @@ protected:
     LwpObjectID m_aSilverBulletID;
     LwpSilverBullet* m_pSilverBullet;
     LwpBulletOverride* m_pBullOver;
-//	LwpNumberingOverride* m_pParaNumbering;
-    LwpNumberingOverride m_aParaNumbering;
+    boost::scoped_ptr<LwpNumberingOverride> m_pParaNumbering;
     rtl::OUString m_aBulletStyleName;
     sal_Bool m_bBullContinue;
     //end add
diff --git a/lotuswordpro/source/filter/lwppara1.cxx b/lotuswordpro/source/filter/lwppara1.cxx
index b14bc70..279387a 100644
--- a/lotuswordpro/source/filter/lwppara1.cxx
+++ b/lotuswordpro/source/filter/lwppara1.cxx
@@ -62,6 +62,10 @@
  Jan 2005			Created
  ************************************************************************/
 
+#include <memory>
+
+#include <boost/cast.hpp>
+
 #include "lwppara.hxx"
 #include "lwpglobalmgr.hxx"
 #include "lwpfilehdr.hxx"
@@ -100,6 +104,14 @@
 #include "lwpdropcapmgr.hxx"
 #include "lwptable.hxx"
 #include "lwpcelllayout.hxx"
+
+// for the check in boost::polymorphic_downcast
+#if OSL_DEBUG_LEVEL > 0 && !defined(NDEBUG)
+#   define NDEBUG 1
+#endif
+
+using boost::polymorphic_downcast;
+
 /**
  * @short   get text of paragraph
  */
@@ -340,22 +352,22 @@ void LwpPara::OverrideParaBorder(LwpParaProperty* pProps, XFParaStyle* pOverStyl
     }
 
     LwpOverride* pBorder = pParaStyle->GetParaBorder();
-    LwpParaBorderOverride aFinalBorder;
-    if (pBorder)
-    {
-        aFinalBorder = *pBorder;
-    }
+    std::auto_ptr<LwpParaBorderOverride> pFinalBorder(
+        pBorder
+            ? polymorphic_downcast<LwpParaBorderOverride*>(pBorder->clone())
+            : new LwpParaBorderOverride)
+        ;
 
     // get local border
     pBorder = static_cast<LwpParaBorderProperty*>(pProps)->GetLocalParaBorder();
     if (pBorder)
     {
-        LwpParaBorderOverride aLocalBorder;
-        aLocalBorder =  *pBorder;
-        aLocalBorder.Override(&aFinalBorder);
+        boost::scoped_ptr<LwpParaBorderOverride> pLocalBorder(
+                polymorphic_downcast<LwpParaBorderOverride*>(pBorder->clone()));
+        pLocalBorder->Override(pFinalBorder.get());
     }
 
-    pParaStyle->ApplyParaBorder(pOverStyle, &aFinalBorder);
+    pParaStyle->ApplyParaBorder(pOverStyle, pFinalBorder.release());
 }
 /**
  * @short:   Override parabreaks style.
@@ -372,23 +384,24 @@ void LwpPara::OverrideParaBreaks(LwpParaProperty* pProps, XFParaStyle* pOverStyl
     }
 
     LwpOverride* pBreaks = pParaStyle->GetBreaks();
-    LwpBreaksOverride* pFinalBreaks = new LwpBreaksOverride();
-    if (pBreaks)
-    {
-        *pFinalBreaks = *pBreaks;
-    }
+    std::auto_ptr<LwpBreaksOverride> pFinalBreaks(
+        pBreaks
+            ? polymorphic_downcast<LwpBreaksOverride*>(pBreaks->clone())
+            : new LwpBreaksOverride)
+        ;
 
     // get local breaks
     pBreaks = static_cast<LwpParaBreaksProperty*>(pProps)->GetLocalParaBreaks();
     if (pBreaks)
     {
-        LwpBreaksOverride aLocalBreaks;
-        aLocalBreaks = *pBreaks;
-        aLocalBreaks.Override(pFinalBreaks);
+        boost::scoped_ptr<LwpBreaksOverride> const pLocalBreaks(
+                polymorphic_downcast<LwpBreaksOverride*>(pBreaks->clone()));
+        pLocalBreaks->Override(pFinalBreaks.get());
     }
 
     // save the breaks
-    m_pBreaks = pFinalBreaks;
+    delete m_pBreaks;
+    m_pBreaks = pFinalBreaks.release();
 
 //add by  1/31
     XFStyleManager* pXFStyleManager = LwpGlobalMgr::GetInstance()->GetXFStyleManager();
@@ -458,18 +471,18 @@ void LwpPara::OverrideParaBullet(LwpParaProperty* pProps)
             m_bHasBullet = sal_True;
 
             LwpOverride* pBullet= pParaStyle->GetBulletOverride();
-            LwpBulletOverride aFinalBullet;
-            if (pBullet)
-            {
-                aFinalBullet = *pBullet;
-            }
-
-            LwpBulletOverride aLocalBullet;
-            aLocalBullet = *pLocalBullet;
-            aLocalBullet.Override(&aFinalBullet);
-
-            *m_pBullOver = aFinalBullet;
-            aSilverBulletID = aFinalBullet.GetSilverBullet();
+            std::auto_ptr<LwpBulletOverride> pFinalBullet(
+                pBullet
+                    ? polymorphic_downcast<LwpBulletOverride*>(pBullet->clone())
+                    : new LwpBulletOverride)
+                ;
+
+            boost::scoped_ptr<LwpBulletOverride> const pLocalBullet2(pLocalBullet->clone());
+            pLocalBullet2->Override(pFinalBullet.get());
+
+            aSilverBulletID = pFinalBullet->GetSilverBullet();
+            delete m_pBullOver;
+            m_pBullOver = pFinalBullet.release();
             if (!aSilverBulletID.IsNull())
             {
                 m_pSilverBullet = static_cast<LwpSilverBullet*>(aSilverBulletID.obj(VO_SILVERBULLET));
@@ -494,8 +507,9 @@ void LwpPara::OverrideParaBullet(LwpParaProperty* pProps)
                 m_pSilverBullet->SetFoundry(m_pFoundry);
             }
 
-            m_pBullOver = new LwpBulletOverride();
-            *m_pBullOver = *pBullOver;
+            std::auto_ptr<LwpBulletOverride> pBulletOverride(pBullOver->clone());
+            delete m_pBullOver;
+            m_pBullOver = pBulletOverride.release();
         }
     }
 }
@@ -513,31 +527,30 @@ void LwpPara::OverrideParaNumbering(LwpParaProperty* pProps)
     }
 
     LwpNumberingOverride* pParaNumbering = pParaStyle->GetNumberingOverride();
-    LwpNumberingOverride aOver;
+    std::auto_ptr<LwpNumberingOverride> pOver(new LwpNumberingOverride);
     //Override with the local numbering, if any
     if (pProps)
     {
         LwpNumberingOverride* pPropNumbering = static_cast<LwpParaNumberingProperty*>(pProps)->GetLocalNumbering();
         if (pPropNumbering)
         {
-            aOver = *pPropNumbering;
+            pOver.reset(pPropNumbering->clone());
         }
     }
     else
     {
         if (pParaNumbering)
         {
-            aOver = *pParaNumbering;
+            pOver.reset(pParaNumbering->clone());
         }
     }
 
     if (m_nFlags & VALID_LEVEL)
     {
-        aOver.OverrideLevel(m_nLevel);
+        pOver->OverrideLevel(m_nLevel);
     }
 
-    m_aParaNumbering = aOver;
-
+    m_pParaNumbering.reset(pOver.release());
 }
 
 /**************************************************************************
diff --git a/lotuswordpro/source/filter/lwpparaborderoverride.cxx b/lotuswordpro/source/filter/lwpparaborderoverride.cxx
index 5473486..10bf3f4 100644
--- a/lotuswordpro/source/filter/lwpparaborderoverride.cxx
+++ b/lotuswordpro/source/filter/lwpparaborderoverride.cxx
@@ -61,6 +61,9 @@
 * Change History
 * 2005-01-11 create and implement.
 ************************************************************************/
+
+#include <memory>
+
 #include	"lwpparaborderoverride.hxx"
 #include	"lwpborderstuff.hxx"
 #include	"lwpshadow.hxx"
@@ -86,6 +89,32 @@ LwpParaBorderOverride::LwpParaBorderOverride()
     m_nBetweenMargin = 0;
 }
 
+LwpParaBorderOverride::LwpParaBorderOverride(LwpParaBorderOverride const& rOther)
+    : LwpOverride(rOther)
+    , m_pBorderStuff(0)
+    , m_pBetweenStuff(0)
+    , m_pShadow(0)
+    , m_pMargins(0)
+    , m_eAboveType(rOther.m_eAboveType)
+    , m_eBelowType(rOther.m_eBelowType)
+    , m_eRightType(rOther.m_eRightType)
+    , m_eBetweenType(rOther.m_eBetweenType)
+    , m_nAboveWidth(rOther.m_nAboveWidth)
+    , m_nBelowWidth(rOther.m_nBelowWidth)
+    , m_nBetweenWidth(rOther.m_nBetweenWidth)
+    , m_nRightWidth(rOther.m_nRightWidth)
+    , m_nBetweenMargin(rOther.m_nBetweenMargin)
+{
+    std::auto_ptr<LwpBorderStuff> pBorderStuff(new LwpBorderStuff(*rOther.m_pBorderStuff));
+    std::auto_ptr<LwpBorderStuff> pBetweenStuff(new LwpBorderStuff(*rOther.m_pBetweenStuff));
+    std::auto_ptr<LwpShadow> pShadow(new LwpShadow(*rOther.m_pShadow));
+    std::auto_ptr<LwpMargins> pMargins(new LwpMargins(*rOther.m_pMargins));
+    m_pBorderStuff = pBorderStuff.release();
+    m_pBetweenStuff = pBetweenStuff.release();
+    m_pShadow = pShadow.release();
+    m_pMargins = pMargins.release();
+}
+
 LwpParaBorderOverride::~LwpParaBorderOverride()
 {
     if( m_pBorderStuff )
@@ -98,6 +127,11 @@ LwpParaBorderOverride::~LwpParaBorderOverride()
         delete m_pMargins;
 }
 
+LwpParaBorderOverride* LwpParaBorderOverride::clone() const
+{
+    return new LwpParaBorderOverride(*this);
+}
+
 void LwpParaBorderOverride::Read(LwpObjectStream *pStrm)
 {
     if (pStrm->QuickReadBool())
@@ -131,42 +165,6 @@ void LwpParaBorderOverride::Read(LwpObjectStream *pStrm)
     pStrm->SkipExtra();
 }
 
-// 01/26/2005
-void LwpParaBorderOverride::operator=(const LwpOverride& rOther)
-{
-    LwpOverride::operator=(rOther);
-    const LwpParaBorderOverride* pParaBorder = static_cast<LwpParaBorderOverride*>((LwpOverride*)&rOther);
-
-    if (pParaBorder->m_pBorderStuff)
-    {
-        *m_pBorderStuff = *(pParaBorder->m_pBorderStuff);
-    }
-    if (pParaBorder->m_pBetweenStuff)
-    {
-        *m_pBetweenStuff = *(pParaBorder->m_pBetweenStuff);
-    }
-    if (pParaBorder->m_pShadow)
-    {
-        *m_pShadow = *(pParaBorder->m_pShadow);
-    }
-    if (pParaBorder->m_pMargins)
-    {
-        *m_pMargins = *(pParaBorder->m_pMargins);
-    }
-
-    m_eAboveType = pParaBorder->m_eAboveType;
-    m_eBelowType = pParaBorder->m_eBelowType;
-    m_eRightType = pParaBorder->m_eRightType;
-    m_eBetweenType = pParaBorder->m_eBelowType;
-
-    m_nAboveWidth = pParaBorder->m_nAboveWidth;
-    m_nBelowWidth = pParaBorder->m_nBelowWidth;
-    m_nBetweenWidth = pParaBorder->m_nBetweenWidth;
-    m_nRightWidth = pParaBorder->m_nRightWidth;
-
-    m_nBetweenMargin = pParaBorder->m_nBetweenMargin;
-}
-
 void LwpParaBorderOverride::Override(LwpParaBorderOverride* pOther)
 {
     if (m_nApply & PBO_STUFF)
diff --git a/lotuswordpro/source/filter/lwpparaborderoverride.hxx b/lotuswordpro/source/filter/lwpparaborderoverride.hxx
index 58ea6f3..aa72e59 100644
--- a/lotuswordpro/source/filter/lwpparaborderoverride.hxx
+++ b/lotuswordpro/source/filter/lwpparaborderoverride.hxx
@@ -76,6 +76,8 @@ public:
     LwpParaBorderOverride();
     virtual ~LwpParaBorderOverride();
 
+    virtual LwpParaBorderOverride* clone() const;
+
     enum BorderWidthType
     {
         PB_NONE			= 0,		/* No border */
@@ -90,9 +92,6 @@ public:
     LwpBorderStuff* GetBorderStuff(){ return m_pBorderStuff; }
     LwpMargins* GetMargins() { return m_pMargins; };
 
-    //add by , 01/25/2005
-    virtual void operator=(const LwpOverride& rOther);
-
     void Override(LwpParaBorderOverride* pOther);
 
     inline sal_Bool IsBorderStuffOverridden();
@@ -139,6 +138,13 @@ public:
 
     //end add
     friend class LwpParaBorderPiece;
+
+protected:
+    LwpParaBorderOverride(LwpParaBorderOverride const& rOther);
+
+private:
+    LwpParaBorderOverride& operator=(LwpParaBorderOverride const& rOther); // not implemented
+
 protected:
     enum
     {
diff --git a/lotuswordpro/source/filter/lwpparastyle.cxx b/lotuswordpro/source/filter/lwpparastyle.cxx
index b76d922..664751e 100644
--- a/lotuswordpro/source/filter/lwpparastyle.cxx
+++ b/lotuswordpro/source/filter/lwpparastyle.cxx
@@ -62,6 +62,7 @@
  Jan 2005			Created
  ************************************************************************/
 
+#include <boost/scoped_ptr.hpp>
 
 #include "lwpparastyle.hxx"
 #include "lwpfilehdr.hxx"
@@ -178,12 +179,10 @@ void	LwpParaStyle::Apply(XFParaStyle *pParaStyle)
         {
             if (!m_pBulletOverride->IsInValid())//Add by ,for remove bullet indent in named bullet style
             {
-                LwpIndentOverride* pNewIndent = new LwpIndentOverride;
-                *pNewIndent = *pIndent;
+                boost::scoped_ptr<LwpIndentOverride> pNewIndent(pIndent->clone());
                 pNewIndent->SetMFirst(0);
                 pNewIndent->SetMRest(0);
-                ApplyIndent(NULL,pParaStyle,pNewIndent);
-                delete pNewIndent;
+                ApplyIndent(NULL, pParaStyle, pNewIndent.get());
             }
             else
                 ApplyIndent(NULL,pParaStyle,pIndent);
@@ -444,13 +443,13 @@ void LwpParaStyle::ApplyIndent(LwpPara* pPara, XFParaStyle* pParaStyle, LwpInden
     else
         pParentPara = NULL;
 
-    LwpIndentOverride* pTotalIndent = new LwpIndentOverride;
+    std::auto_ptr<LwpIndentOverride> pTotalIndent(new LwpIndentOverride);
     if (pIndent->IsUseRelative() && pParentPara)
     {
         LwpIndentOverride* pParentIndent = pParentPara->GetIndent();
         if (!pParentIndent)
             return;
-        *pTotalIndent = *pIndent;
+        pTotalIndent.reset(pIndent->clone());
 
         //add by ,for bullet only
         if (pPara)
@@ -461,7 +460,7 @@ void LwpParaStyle::ApplyIndent(LwpPara* pPara, XFParaStyle* pParaStyle, LwpInden
                 pTotalIndent->SetMRight(pParentIndent->GetMRight()+ pTotalIndent->GetMRight());
                 pParaStyle->SetMargins(LwpTools::ConvertToMetric(LwpTools::ConvertFromUnits(
                     pTotalIndent->GetMAll())), pTotalIndent->GetRight());
-                pPara->SetIndent(pTotalIndent);
+                pPara->SetIndent(pTotalIndent.release());
                 return;
             }
         }
@@ -479,12 +478,12 @@ void LwpParaStyle::ApplyIndent(LwpPara* pPara, XFParaStyle* pParaStyle, LwpInden
 
         pParaStyle->SetIndent(pTotalIndent->GetFirst());
         pParaStyle->SetMargins(pTotalIndent->GetLeft(), pTotalIndent->GetRight());
-        pPara->SetIndent(pTotalIndent);
+        pPara->SetIndent(pTotalIndent.release());
 
     }
     else
     {
-        *pTotalIndent = *pIndent;
+        pTotalIndent.reset(pIndent->clone());
         //add by
         if (pPara)
         {
@@ -493,7 +492,7 @@ void LwpParaStyle::ApplyIndent(LwpPara* pPara, XFParaStyle* pParaStyle, LwpInden
 //				pParaStyle->SetIndent(LwpTools::ConvertFromUnits(pIndent->GetMAll()));
                 pParaStyle->SetMargins(LwpTools::ConvertToMetric(
                     LwpTools::ConvertFromUnits(pIndent->GetMAll())), pIndent->GetRight());
-                pPara->SetIndent(pTotalIndent);
+                pPara->SetIndent(pTotalIndent.release());
                 return;
             }
         }
@@ -503,7 +502,7 @@ void LwpParaStyle::ApplyIndent(LwpPara* pPara, XFParaStyle* pParaStyle, LwpInden
         pParaStyle->SetMargins(pIndent->GetLeft(), pIndent->GetRight());
         if (pPara)
         {
-            pPara->SetIndent(pTotalIndent);
+            pPara->SetIndent(pTotalIndent.release());
         }
     }
 }
diff --git a/lotuswordpro/source/filter/lwptaboverride.cxx b/lotuswordpro/source/filter/lwptaboverride.cxx
new file mode 100644
index 0000000..de863e7
--- /dev/null
+++ b/lotuswordpro/source/filter/lwptaboverride.cxx
@@ -0,0 +1,42 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * Version: MPL 1.1 / GPLv3+ / LGPLv3+
+ *
+ * The contents of this file are subject to the Mozilla Public 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.mozilla.org/MPL/
+ *
+ * Software distributed under the License is distributed on an "AS IS" basis,
+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+ * for the specific language governing rights and limitations under the
+ * License.
+ *
+ * The Initial Developer of the Original Code is
+ *       Red Hat, Inc.
+ * Portions created by the Initial Developer are Copyright (C) 2010 the
+ * Initial Developer. All Rights Reserved.
+ *
+ * Contributor(s): David Tardon <dtardon at redhat.com>
+ *
+ * Alternatively, the contents of this file may be used under the terms of
+ * either the GNU General Public License Version 3 or later (the "GPLv3+"), or
+ * the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
+ * in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
+ * instead of those above.
+ */
+
+#include "lwptaboverride.hxx"
+
+LwpTabOverride::LwpTabOverride(LwpTabOverride const& rOther)
+    : LwpOverride(rOther)
+    , m_aTabRackID(rOther.m_aTabRackID)
+{
+}
+
+LwpTabOverride* LwpTabOverride::clone() const
+{
+    return new LwpTabOverride(*this);
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/lotuswordpro/source/filter/lwptaboverride.hxx b/lotuswordpro/source/filter/lwptaboverride.hxx
index 92d84e0..94e48d9 100644
--- a/lotuswordpro/source/filter/lwptaboverride.hxx
+++ b/lotuswordpro/source/filter/lwptaboverride.hxx
@@ -79,6 +79,8 @@ public:
     {
     }
 
+    virtual LwpTabOverride* clone() const;
+
     virtual void Read(LwpObjectStream *pStrm)
     {
         if (pStrm->QuickReadBool())
@@ -94,6 +96,13 @@ public:
     inline sal_Bool IsTabRackOverridden();
     inline void Override(LwpTabOverride* pOther);
     inline void OverrideTabRack(LwpObjectID* pTabRackID);
+
+protected:
+    LwpTabOverride(LwpTabOverride const& rOther);
+
+private:
+    LwpTabOverride& operator=(LwpTabOverride const& rOther); // not implemented
+
 private:
     LwpObjectID	m_aTabRackID;
     enum
diff --git a/lotuswordpro/source/filter/makefile.mk b/lotuswordpro/source/filter/makefile.mk
index 4271a33..2a93958 100644
--- a/lotuswordpro/source/filter/makefile.mk
+++ b/lotuswordpro/source/filter/makefile.mk
@@ -20,6 +20,7 @@ SLOFILES= \
         $(SLO)$/utlist.obj		\
         $(SLO)$/lwp9reader.obj		\
         $(SLO)$/lwpatomholder.obj	\
+        $(SLO)$/lwpbackgroundoverride.obj\
         $(SLO)$/lwpbasetype.obj		\
         $(SLO)$/lwpcolor.obj		\
         $(SLO)$/lwpcontent.obj		\
@@ -64,6 +65,7 @@ SLOFILES= \
         $(SLO)$/lwpcharborderoverride.obj	\
         $(SLO)$/lwpbreaksoverride.obj	\
         $(SLO)$/lwpbackgroundstuff.obj 	\
+        $(SLO)$/lwptaboverride.obj	\
         $(SLO)$/lwptabrack.obj		\
         $(SLO)$/lwpcharacterstyle.obj	\
         $(SLO)$/lwpoverride.obj		\
commit c6c9b4a0eab8604ccc4d3275050ec3908ff05fb7
Author: David Tardon <dtardon at redhat.com>
Date:   Thu Dec 23 12:54:35 2010 +0100

    remove unused code

diff --git a/lotuswordpro/source/filter/lwpsilverbullet.cxx b/lotuswordpro/source/filter/lwpsilverbullet.cxx
index b729c99..ae2904c 100644
--- a/lotuswordpro/source/filter/lwpsilverbullet.cxx
+++ b/lotuswordpro/source/filter/lwpsilverbullet.cxx
@@ -118,22 +118,12 @@ void LwpSilverBullet::RegisterStyle()
 
     if (this->IsBulletOrdered() && this->HasName())
     {
-        ParaNumbering aParaNumbering;
-        XFNumFmt aFmt;
-
         //todo: find the flag in the file
         sal_Bool bCumulative = sal_False;
 
-        //get the numbeing format of level-1
-        m_pBulletPara->GetParaNumber(1, &aParaNumbering);
-        if (aParaNumbering.pPrefix)
-        {
-            aFmt.SetPrefix(aParaNumbering.pPrefix->GetText());
-        }
-
-
         for (sal_uInt8 nPos = 1; nPos < 10; nPos++)
         {
+            ParaNumbering aParaNumbering;
             //get numbering format according to the position.
             m_pBulletPara->GetParaNumber(nPos, &aParaNumbering);
             LwpFribParaNumber* pParaNumber = aParaNumbering.pParaNumber;
commit 97ea5d7fe31c2f006b15a8846416e324069637b8
Author: David Tardon <dtardon at redhat.com>
Date:   Thu Dec 23 12:48:24 2010 +0100

    remove unused code

diff --git a/lotuswordpro/source/filter/lwpsilverbullet.cxx b/lotuswordpro/source/filter/lwpsilverbullet.cxx
index 1c109c5..b729c99 100644
--- a/lotuswordpro/source/filter/lwpsilverbullet.cxx
+++ b/lotuswordpro/source/filter/lwpsilverbullet.cxx
@@ -189,17 +189,6 @@ void LwpSilverBullet::RegisterStyle()
             }
         }
     }
-    else
-    {
-        //register bullet style-list
-/*		for (sal_uInt8 nC = 1; nC < 11; nC++)
-        {
-            pListStyle->SetListBullet(nC, this->GetBulletChar(), this->GetBulletFontName(),
-                this->GetPrefix(), this->GetSuffix());
-            pListStyle->SetListPosition(nC, 0.0, 0.635, 0.0);
-        }*/
-
-    }
 
     //add style-list to style manager.
     m_strStyleName = pXFStyleManager->AddStyle(pListStyle)->GetStyleName();
commit 6d99309df074f0cb9a2b79b1fdd96fed1f175c28
Author: David Tardon <dtardon at redhat.com>
Date:   Thu Dec 23 12:46:09 2010 +0100

    remove unused code

diff --git a/lotuswordpro/source/filter/lwpbulletstylemgr.cxx b/lotuswordpro/source/filter/lwpbulletstylemgr.cxx
index 652b975..89b9123 100644
--- a/lotuswordpro/source/filter/lwpbulletstylemgr.cxx
+++ b/lotuswordpro/source/filter/lwpbulletstylemgr.cxx
@@ -185,24 +185,6 @@ rtl::OUString LwpBulletStyleMgr::RegisterBulletStyle(LwpPara* pPara, LwpBulletOv
     }
     else
     {
-        rtl::OUString aPrefix = rtl::OUString();
-
-        LwpFrib* pFrib = pBulletParaFribs->HasFrib(FRIB_TAG_DOCVAR);
-        LwpFribDocVar* pDocVarFrib = NULL;
-        if (pFrib)
-        {
-            pDocVarFrib = static_cast<LwpFribDocVar*>(pFrib);
-//				ModifierInfo* pInfo = pDocVarFrib->GetModifiers();
-            switch (pDocVarFrib->GetType())
-            {
-            case 0x000D: // division name
-                aPrefix = this->GetDivisionName();
-                break;
-            case 0x000E: // section name
-                aPrefix = this->GetSectionName(pPara);
-                break;
-            }
-        }
         ParaNumbering aParaNumbering;
         pBulletPara->GetParaNumber(1, &aParaNumbering);
         LwpFribParaNumber* pParaNumber = aParaNumbering.pParaNumber;
@@ -210,14 +192,13 @@ rtl::OUString LwpBulletStyleMgr::RegisterBulletStyle(LwpPara* pPara, LwpBulletOv
         {
             for (sal_uInt8 nPos = 1; nPos < 10; nPos++)
             {
-                aPrefix = rtl::OUString();
                 if (pParaNumber->GetStyleID() != NUMCHAR_other)
                 {
+                    rtl::OUString aPrefix;
                     XFNumFmt aFmt;
                     if (aParaNumbering.pPrefix)
                     {
                         aPrefix += aParaNumbering.pPrefix->GetText();
-//							aFmt.SetPrefix(aParaNumbering.pPrefix->GetText() + aAdditionalInfoName);
                     }
 
                     rtl::OUString aNumber = LwpSilverBullet::GetNumCharByStyleID(pParaNumber);
@@ -257,7 +238,7 @@ rtl::OUString LwpBulletStyleMgr::RegisterBulletStyle(LwpPara* pPara, LwpBulletOv
                 pListStyle->SetListPosition(nPos, 0.0, 0.635, 0.0);
             }
             aStyleName = pXFStyleMgr->AddStyle(pListStyle)->GetStyleName();
-            }
+        }
 
     }
 
commit 3a3cbe0e93d055cbcb9e8ce55a7be6784cc2e4a0
Author: David Tardon <dtardon at redhat.com>
Date:   Thu Dec 23 12:42:17 2010 +0100

    remove redundant semicolons

diff --git a/lotuswordpro/source/filter/lwp9reader.hxx b/lotuswordpro/source/filter/lwp9reader.hxx
index 788b3e4..c93c393 100644
--- a/lotuswordpro/source/filter/lwp9reader.hxx
+++ b/lotuswordpro/source/filter/lwp9reader.hxx
@@ -69,7 +69,7 @@ class Lwp9Reader
 {
     public:
         Lwp9Reader(LwpSvStream* InputStream, IXFStream* pStream);
-        ~Lwp9Reader(){};
+        ~Lwp9Reader(){}
     private:
         LwpSvStream*	m_pDocStream;
         IXFStream* m_pStream;
diff --git a/lotuswordpro/source/filter/lwpbackgroundoverride.hxx b/lotuswordpro/source/filter/lwpbackgroundoverride.hxx
index 1be793f..c7719b7 100644
--- a/lotuswordpro/source/filter/lwpbackgroundoverride.hxx
+++ b/lotuswordpro/source/filter/lwpbackgroundoverride.hxx
@@ -65,7 +65,7 @@ class LwpBackgroundOverride : public LwpOverride
 {
 
 public:
-    LwpBackgroundOverride(){};
+    LwpBackgroundOverride(){}
     virtual ~LwpBackgroundOverride(){}
 
 
diff --git a/lotuswordpro/source/filter/lwpbasetype.hxx b/lotuswordpro/source/filter/lwpbasetype.hxx
index bbad34c..1d4e41c 100644
--- a/lotuswordpro/source/filter/lwpbasetype.hxx
+++ b/lotuswordpro/source/filter/lwpbasetype.hxx
@@ -76,8 +76,8 @@
 class LwpPanoseNumber
 {
 public:
-    LwpPanoseNumber(){};
-    ~LwpPanoseNumber(){};
+    LwpPanoseNumber(){}
+    ~LwpPanoseNumber(){}
 public:
     void Read(LwpObjectStream *pStrm);
 private:
diff --git a/lotuswordpro/source/filter/lwpcelllayout.hxx b/lotuswordpro/source/filter/lwpcelllayout.hxx
index 66fb84b..6a911f9 100644
--- a/lotuswordpro/source/filter/lwpcelllayout.hxx
+++ b/lotuswordpro/source/filter/lwpcelllayout.hxx
@@ -94,10 +94,10 @@ public:
     virtual ~LwpCellLayout();
     virtual LWP_LAYOUT_TYPE GetLayoutType () { return LWP_CELL_LAYOUT;}
     virtual XFCell* ConvertCell(LwpObjectID aTableID, sal_uInt16 nRow, sal_uInt16 nCol);
-    sal_uInt16 GetRowID(){return crowid;};
-    sal_uInt8 GetColID(){return ccolid;};
+    sal_uInt16 GetRowID(){return crowid;}
+    sal_uInt8 GetColID(){return ccolid;}
     void RegisterStyle();
-    LwpObjectID * GetNumericsObject() {return &cLayNumerics;};
+    LwpObjectID * GetNumericsObject() {return &cLayNumerics;}
     LwpObjectID * GetPreviousCellStory();
     virtual LwpPara* GetLastParaOfPreviousStory();
     LwpTableLayout * GetTableLayout();
@@ -158,7 +158,7 @@ public:
     virtual LWP_LAYOUT_TYPE GetLayoutType () { return LWP_HIDDEN_CELL_LAYOUT;}
     virtual void Parse(IXFStream* pOutputStream);
     virtual XFCell* ConvertCell(LwpObjectID aTableID, sal_uInt16 nRow, sal_uInt16 nCol);
-    void RegisterStyle(){};
+    void RegisterStyle(){}
     virtual void SetCellMap(void);
 protected:
     void Read();
diff --git a/lotuswordpro/source/filter/lwpcharsetmgr.hxx b/lotuswordpro/source/filter/lwpcharsetmgr.hxx
index 6f5924b..fa36ee7 100644
--- a/lotuswordpro/source/filter/lwpcharsetmgr.hxx
+++ b/lotuswordpro/source/filter/lwpcharsetmgr.hxx
@@ -70,8 +70,8 @@
 class LwpCharSetMgr
 {
 public:
-    LwpCharSetMgr(){SetCodePageMap();};
-    ~LwpCharSetMgr(){};
+    LwpCharSetMgr(){SetCodePageMap();}
+    ~LwpCharSetMgr(){}
     static LwpCharSetMgr* GetInstance();
     void SetCodePageMap();
     rtl_TextEncoding	GetTextCharEncoding(sal_uInt16 wordproCode);
diff --git a/lotuswordpro/source/filter/lwpcolor.hxx b/lotuswordpro/source/filter/lwpcolor.hxx
index 15eb67a..a8325dc 100644
--- a/lotuswordpro/source/filter/lwpcolor.hxx
+++ b/lotuswordpro/source/filter/lwpcolor.hxx
@@ -74,8 +74,8 @@
 class LwpColor
 {
 public:
-    LwpColor():m_nRed(0), m_nGreen(0), m_nBlue(0), m_nExtra(0){};
-    ~LwpColor(){};
+    LwpColor():m_nRed(0), m_nGreen(0), m_nBlue(0), m_nExtra(0){}
+    ~LwpColor(){}
 public:
     void Read(LwpObjectStream *pStrm);
     sal_uInt16 GetRed();
diff --git a/lotuswordpro/source/filter/lwpcontent.hxx b/lotuswordpro/source/filter/lwpcontent.hxx
index c34efa2..eeaf7c2 100644
--- a/lotuswordpro/source/filter/lwpcontent.hxx
+++ b/lotuswordpro/source/filter/lwpcontent.hxx
@@ -78,7 +78,7 @@ class LwpContent : public LwpDLNFVList
 {
 public:
     LwpContent(LwpObjectHeader &objHdr, LwpSvStream* pStrm);
-    virtual ~LwpContent(){};
+    virtual ~LwpContent(){}
 protected:
     LwpAssociatedLayouts m_LayoutsWithMe;
     sal_uInt16 m_nFlags;
@@ -151,7 +151,7 @@ class LwpHeadContent : public LwpContent
 {
 public:
     LwpHeadContent(LwpObjectHeader &objHdr, LwpSvStream* pStrm);
-    virtual ~LwpHeadContent(){};
+    virtual ~LwpHeadContent(){}
 protected:
     void Read();
 };
diff --git a/lotuswordpro/source/filter/lwpdivinfo.hxx b/lotuswordpro/source/filter/lwpdivinfo.hxx
index fe2c0b1..459d56c 100644
--- a/lotuswordpro/source/filter/lwpdivinfo.hxx
+++ b/lotuswordpro/source/filter/lwpdivinfo.hxx
@@ -94,7 +94,7 @@ public:
     inline LwpDocument* GetDivision();
     void GetNumberOfPages(sal_uInt16& nPageno);
     sal_uInt16 GetMaxNumberOfPages();
-    LwpAtomHolder* GetExternalName(){return &m_ExternalName;};
+    LwpAtomHolder* GetExternalName(){return &m_ExternalName;}
 protected:
     void Read();
 private:
diff --git a/lotuswordpro/source/filter/lwpdivopts.cxx b/lotuswordpro/source/filter/lwpdivopts.cxx
index febe348..0d4d581 100644
--- a/lotuswordpro/source/filter/lwpdivopts.cxx
+++ b/lotuswordpro/source/filter/lwpdivopts.cxx
@@ -82,7 +82,7 @@ void LwpHyphenOptions::Read(LwpObjectStream *pStrm)
 
 
 
-LwpTextLanguage::LwpTextLanguage(){};
+LwpTextLanguage::LwpTextLanguage(){}
 LwpTextLanguage::~LwpTextLanguage(){}
 
 void LwpTextLanguage::Read(LwpObjectStream *pStrm)
diff --git a/lotuswordpro/source/filter/lwpdlvlist.hxx b/lotuswordpro/source/filter/lwpdlvlist.hxx
index e7912b9..823425a 100644
--- a/lotuswordpro/source/filter/lwpdlvlist.hxx
+++ b/lotuswordpro/source/filter/lwpdlvlist.hxx
@@ -74,7 +74,7 @@ class LwpDLVList : public LwpObject
 {
 public:
     LwpDLVList(LwpObjectHeader &objHdr, LwpSvStream* pStrm);
-    virtual ~LwpDLVList(){};
+    virtual ~LwpDLVList(){}
 protected:
     LwpObjectID m_ListPrevious;
     LwpObjectID m_ListNext;
@@ -99,7 +99,7 @@ class LwpDLNFVList : public LwpDLVList
 {
 public:
     LwpDLNFVList(LwpObjectHeader &objHdr, LwpSvStream* pStrm);
-    virtual ~LwpDLNFVList(){};
+    virtual ~LwpDLNFVList(){}
 protected:
     LwpObjectID m_ChildHead;
     LwpObjectID m_ChildTail;
@@ -167,7 +167,7 @@ LwpPropList* LwpDLNFPVList::GetPropList()
 class LwpDLVListHeadTail
 {
 public:
-    LwpDLVListHeadTail(){};
+    LwpDLVListHeadTail(){}
     void Read(LwpObjectStream* pObjStrm);
 private:
     LwpObjectID m_ListHead;
@@ -191,8 +191,8 @@ LwpObjectID* LwpDLVListHeadTail::GetTail()
 class LwpDLVListHead
 {
 public:
-    LwpDLVListHead(){};
-    ~LwpDLVListHead(){};
+    LwpDLVListHead(){}
+    ~LwpDLVListHead(){}
     void Read(LwpObjectStream* pObjStrm);
     inline LwpObjectID* GetFirst();
 protected:
diff --git a/lotuswordpro/source/filter/lwpdoc.hxx b/lotuswordpro/source/filter/lwpdoc.hxx
index 1ca3589..2171214 100644
--- a/lotuswordpro/source/filter/lwpdoc.hxx
+++ b/lotuswordpro/source/filter/lwpdoc.hxx
@@ -236,7 +236,7 @@ class LwpDocSock : public LwpDLNFVList
 {
 public:
     LwpDocSock(LwpObjectHeader &objHdr, LwpSvStream* pStrm);
-    ~LwpDocSock(){};
+    ~LwpDocSock(){}
 private:
     LwpObjectID m_Doc;
 protected:
diff --git a/lotuswordpro/source/filter/lwpdrawobj.hxx b/lotuswordpro/source/filter/lwpdrawobj.hxx
index e0e8f80..34f7526 100644
--- a/lotuswordpro/source/filter/lwpdrawobj.hxx
+++ b/lotuswordpro/source/filter/lwpdrawobj.hxx
@@ -83,7 +83,7 @@ protected:
 
 public:
     LwpDrawObj(SvStream* pStream, DrawingOffsetAndScale* pTransData = NULL);
-    virtual ~LwpDrawObj() {};
+    virtual ~LwpDrawObj() {}
 
 private:
     void ReadObjHeaderRecord();
@@ -173,7 +173,7 @@ private:
 
 public:
     LwpDrawLine(SvStream * pStream, DrawingOffsetAndScale* pTransData);
-    virtual ~LwpDrawLine() {};
+    virtual ~LwpDrawLine() {}
 
 protected:
     virtual void Read();
@@ -259,7 +259,7 @@ private:
 
 public:
     LwpDrawEllipse(SvStream * pStream, DrawingOffsetAndScale* pTransData);
-    virtual ~LwpDrawEllipse(){};
+    virtual ~LwpDrawEllipse(){}
 
 protected:
     virtual void Read();
@@ -281,7 +281,7 @@ private:
 
 public:
     LwpDrawArc(SvStream * pStream, DrawingOffsetAndScale* pTransData);
-    virtual ~LwpDrawArc() {};
+    virtual ~LwpDrawArc() {}
 
 protected:
     virtual void Read();
diff --git a/lotuswordpro/source/filter/lwpfilehdr.hxx b/lotuswordpro/source/filter/lwpfilehdr.hxx
index d748ee9..91eeccf 100644
--- a/lotuswordpro/source/filter/lwpfilehdr.hxx
+++ b/lotuswordpro/source/filter/lwpfilehdr.hxx
@@ -64,7 +64,7 @@ class LwpFileHeader
 {
 public:
     LwpFileHeader();
-    ~LwpFileHeader(){};
+    ~LwpFileHeader(){}
 private: //data member
     sal_uInt16 m_nAppRevision;
     sal_uInt16 m_nAppReleaseNo;
diff --git a/lotuswordpro/source/filter/lwpfont.hxx b/lotuswordpro/source/filter/lwpfont.hxx
index 1ee71fb..7862a46 100644
--- a/lotuswordpro/source/filter/lwpfont.hxx
+++ b/lotuswordpro/source/filter/lwpfont.hxx
@@ -80,8 +80,8 @@
 class LwpFontTableEntry
 {
 public:
-    LwpFontTableEntry(){};
-    ~LwpFontTableEntry(){};
+    LwpFontTableEntry(){}
+    ~LwpFontTableEntry(){}
 public:
     void Read(LwpObjectStream *pStrm);
     OUString GetFaceName();
@@ -111,12 +111,12 @@ private:
 class LwpFontNameEntry
 {
 public:
-    LwpFontNameEntry(){};
-    ~LwpFontNameEntry(){};
+    LwpFontNameEntry(){}
+    ~LwpFontNameEntry(){}
 public:
     void Read(LwpObjectStream *pStrm);
-    inline sal_uInt16 GetFaceID(){return m_nFaceName;};
-    inline sal_uInt16 GetAltFaceID(){return m_nAltFaceName;};
+    inline sal_uInt16 GetFaceID(){return m_nFaceName;}
+    inline sal_uInt16 GetAltFaceID(){return m_nAltFaceName;}
     void Override(XFFont* pFont);
     inline BOOL IsFaceNameOverridden();
     inline BOOL IsAltFaceNameOverridden();
@@ -173,8 +173,8 @@ public:
 class LwpFontAttrEntry
 {
 public:
-    LwpFontAttrEntry(){};
-    ~LwpFontAttrEntry(){};
+    LwpFontAttrEntry(){}
+    ~LwpFontAttrEntry(){}
 public:
     void Read(LwpObjectStream *pStrm);
     void Override(XFFont*pFont);
@@ -236,7 +236,7 @@ private:
 class LwpFontAttrManager
 {
 public:
-    LwpFontAttrManager():m_pFontAttrs(NULL){};
+    LwpFontAttrManager():m_pFontAttrs(NULL){}
     ~LwpFontAttrManager();
 public:
     void Read(LwpObjectStream *pStrm);
@@ -249,8 +249,8 @@ private:
 class LwpFontManager
 {
 public:
-    LwpFontManager(){};
-    ~LwpFontManager(){};
+    LwpFontManager(){}
+    ~LwpFontManager(){}
 private:
     LwpFontNameManager m_FNMgr;
     LwpFontAttrManager m_AttrMgr;
diff --git a/lotuswordpro/source/filter/lwpfootnote.hxx b/lotuswordpro/source/filter/lwpfootnote.hxx
index c381500..7455bef 100644
--- a/lotuswordpro/source/filter/lwpfootnote.hxx
+++ b/lotuswordpro/source/filter/lwpfootnote.hxx
@@ -106,7 +106,7 @@ class LwpFribFootnote: public LwpFrib
 
 public:
     LwpFribFootnote(LwpPara* pPara );
-    ~LwpFribFootnote(){};
+    ~LwpFribFootnote(){}
     void Read(LwpObjectStream* pObjStrm, sal_uInt16 len);
     void RegisterStyle();
     void XFConvert(XFContentContainer* pCont);
@@ -160,7 +160,7 @@ class LwpFootnoteTable : public LwpTable
 {
 public:
     LwpFootnoteTable(LwpObjectHeader &objHdr, LwpSvStream* pStrm);
-    ~LwpFootnoteTable(){};
+    ~LwpFootnoteTable(){}
 protected:
     void Read();
 };
@@ -171,8 +171,8 @@ protected:
 class LwpFootnoteNumberOptions
 {
 public:
-    LwpFootnoteNumberOptions(){};
-    ~LwpFootnoteNumberOptions(){};
+    LwpFootnoteNumberOptions(){}
+    ~LwpFootnoteNumberOptions(){}
     void Read(LwpObjectStream* pObjStrm);
 private:
     sal_uInt16 m_nFlag;
@@ -203,8 +203,8 @@ public:
 class LwpFootnoteSeparatorOptions
 {
 public:
-    LwpFootnoteSeparatorOptions(){};
-    ~LwpFootnoteSeparatorOptions(){};
+    LwpFootnoteSeparatorOptions(){}
+    ~LwpFootnoteSeparatorOptions(){}
     void Read(LwpObjectStream* pObjStrm);
 private:
     sal_uInt16 m_nFlag;
diff --git a/lotuswordpro/source/filter/lwpfoundry.hxx b/lotuswordpro/source/filter/lwpfoundry.hxx
index 2cc4afb..e6db4b8 100644
--- a/lotuswordpro/source/filter/lwpfoundry.hxx
+++ b/lotuswordpro/source/filter/lwpfoundry.hxx
@@ -89,8 +89,8 @@ class LwpBookMark;
 class LwpVersionManager
 {
 public:
-    LwpVersionManager(){};
-    ~LwpVersionManager(){};
+    LwpVersionManager(){}
+    ~LwpVersionManager(){}
 public:
     void Read(LwpObjectStream *pStrm);
     void Skip(LwpObjectStream *pStrm);
@@ -99,8 +99,8 @@ public:
 class LwpObjectManager
 {
 public:
-    LwpObjectManager(){};
-    ~LwpObjectManager(){};
+    LwpObjectManager(){}
+    ~LwpObjectManager(){}
 private:
     LwpObjectID m_Division;
 public:
@@ -110,8 +110,8 @@ public:
 class LwpNumberManager
 {
 public:
-    LwpNumberManager(){};
-    ~LwpNumberManager(){};
+    LwpNumberManager(){}
+    ~LwpNumberManager(){}
 private:
     LwpObjectID m_TableRange;
 public:
@@ -122,8 +122,8 @@ public:
 class LwpBulletManager
 {
 public:
-    LwpBulletManager(){};
-    ~LwpBulletManager(){};
+    LwpBulletManager(){}
+    ~LwpBulletManager(){}
 private:
     LwpObjectID m_Head;
 public:
@@ -135,8 +135,8 @@ class LwpContent;
 class LwpContentManager
 {
 public:
-    LwpContentManager(){};
-    ~LwpContentManager(){};
+    LwpContentManager(){}
+    ~LwpContentManager(){}
 private:
     LwpObjectID m_ContentList;
     LwpObjectID m_EnumHead;
@@ -160,8 +160,8 @@ public:
 class LwpPieceManager
 {
 public:
-    LwpPieceManager(){};
-    ~LwpPieceManager(){};
+    LwpPieceManager(){}
+    ~LwpPieceManager(){}
 private:
     LwpObjectID m_GeometryPieceList;
     LwpObjectID m_ScalePieceList;
@@ -197,13 +197,13 @@ class LwpListList;
 class LwpOrderedObjectManager
 {
 public:
-    LwpOrderedObjectManager(){};
-    ~LwpOrderedObjectManager(){};
+    LwpOrderedObjectManager(){}
+    ~LwpOrderedObjectManager(){}
 protected:
     LwpObjectID m_Head;
 public:
     void Read(LwpObjectStream *pStrm);
-    LwpObjectID* GetHeadID() { return &m_Head;};
+    LwpObjectID* GetHeadID() { return &m_Head;}
     LwpOrderedObject* Enumerate(LwpOrderedObject* pLast);
 protected:
     LwpListList* GetNextActiveListList(LwpListList* pLast);
diff --git a/lotuswordpro/source/filter/lwpframelayout.hxx b/lotuswordpro/source/filter/lwpframelayout.hxx
index 14fed6e..4ba8a98 100644
--- a/lotuswordpro/source/filter/lwpframelayout.hxx
+++ b/lotuswordpro/source/filter/lwpframelayout.hxx
@@ -190,7 +190,7 @@ class LwpDropcapLayout : public LwpFrameLayout
 {
 public:
     LwpDropcapLayout(LwpObjectHeader &objHdr, LwpSvStream* pStrm);
-    virtual ~LwpDropcapLayout(){};
+    virtual ~LwpDropcapLayout(){}
     virtual LWP_LAYOUT_TYPE GetLayoutType () { return LWP_DROPCAP_LAYOUT;}
     virtual void Parse(IXFStream* pOutputStream);
     virtual void XFConvert(XFContentContainer* pCont);
@@ -211,7 +211,7 @@ class LwpRubyLayout : public LwpFrameLayout
 {
 public:
     LwpRubyLayout(LwpObjectHeader &objHdr, LwpSvStream* pStrm);
-    virtual ~LwpRubyLayout(){};
+    virtual ~LwpRubyLayout(){}
     LwpRubyMarker* GetMarker();
     void ConvertContentText();
     LwpStory* GetContentStory();
diff --git a/lotuswordpro/source/filter/lwpfrib.hxx b/lotuswordpro/source/filter/lwpfrib.hxx
index 71f177f..071c6be 100644
--- a/lotuswordpro/source/filter/lwpfrib.hxx
+++ b/lotuswordpro/source/filter/lwpfrib.hxx
@@ -113,9 +113,9 @@ public:
     sal_Bool m_ModFlag;
     rtl::OUString GetStyleName(){return m_StyleName;}//add by  1-10
 //	void SetStyle(LwpFoundry* pFoundry);
-    sal_Bool IsModified(){return m_ModFlag;};
+    sal_Bool IsModified(){return m_ModFlag;}
     void SetModifiers(ModifierInfo* pModifiers);
-    ModifierInfo* GetModifiers(){return m_pModifiers;};
+    ModifierInfo* GetModifiers(){return m_pModifiers;}
     virtual void RegisterStyle(LwpFoundry* pFoundry);
     sal_Bool HasNextFrib();
     void ConvertChars(XFContentContainer* pXFPara,OUString text);
diff --git a/lotuswordpro/source/filter/lwpfribbreaks.hxx b/lotuswordpro/source/filter/lwpfribbreaks.hxx
index 4622fc4..8ad2a5c 100644
--- a/lotuswordpro/source/filter/lwpfribbreaks.hxx
+++ b/lotuswordpro/source/filter/lwpfribbreaks.hxx
@@ -90,15 +90,15 @@ private:
 class LwpFribLineBreak: public LwpFrib
 {
 public:
-    LwpFribLineBreak( LwpPara* pPara ) : LwpFrib(pPara){};
-    ~LwpFribLineBreak(){};
+    LwpFribLineBreak( LwpPara* pPara ) : LwpFrib(pPara){}
+    ~LwpFribLineBreak(){}
 };
 
 class LwpFribColumnBreak: public LwpFrib
 {
 public:
-    LwpFribColumnBreak( LwpPara* pPara ) : LwpFrib(pPara){};
-    ~LwpFribColumnBreak(){};
+    LwpFribColumnBreak( LwpPara* pPara ) : LwpFrib(pPara){}
+    ~LwpFribColumnBreak(){}
     void RegisterBreakStyle(LwpPara* pPara);
 };
 
diff --git a/lotuswordpro/source/filter/lwpfribframe.hxx b/lotuswordpro/source/filter/lwpfribframe.hxx
index 777417a..2fe46a7 100644
--- a/lotuswordpro/source/filter/lwpfribframe.hxx
+++ b/lotuswordpro/source/filter/lwpfribframe.hxx
@@ -71,8 +71,8 @@
 class LwpFribFrame : public LwpFrib
 {
 public:
-    LwpFribFrame( LwpPara* pPara) : LwpFrib(pPara){};
-    ~LwpFribFrame(){};
+    LwpFribFrame( LwpPara* pPara) : LwpFrib(pPara){}
+    ~LwpFribFrame(){}
     void Read(LwpObjectStream* pObjStrm, sal_uInt16 len);
     LwpObject* GetLayout();
     void RegisterStyle(LwpFoundry* pFoundry);
@@ -85,8 +85,8 @@ private:
 class LwpFribRubyFrame : public LwpFrib
 {
 public:
-    LwpFribRubyFrame( LwpPara* pPara) : LwpFrib(pPara){};
-    ~LwpFribRubyFrame(){};
+    LwpFribRubyFrame( LwpPara* pPara) : LwpFrib(pPara){}
+    ~LwpFribRubyFrame(){}
     void Read(LwpObjectStream* pObjStrm, sal_uInt16 len);
     LwpRubyLayout* GetLayout();
     void RegisterStyle(LwpFoundry* pFoundry);
diff --git a/lotuswordpro/source/filter/lwpfribmark.hxx b/lotuswordpro/source/filter/lwpfribmark.hxx
index 268ccd0..fd2f4ff 100644
--- a/lotuswordpro/source/filter/lwpfribmark.hxx
+++ b/lotuswordpro/source/filter/lwpfribmark.hxx
@@ -75,8 +75,8 @@
 class LwpFribCHBlock : public LwpFrib
 {
 public:
-    LwpFribCHBlock( LwpPara* pPara ) : LwpFrib(pPara){};
-    ~LwpFribCHBlock(){};
+    LwpFribCHBlock( LwpPara* pPara ) : LwpFrib(pPara){}
+    ~LwpFribCHBlock(){}
     void Read(LwpObjectStream* pObjStrm, sal_uInt16 len);
     LwpCHBlkMarker* GetMarker();
     sal_uInt8 GetType(){return m_nType;}
@@ -91,7 +91,7 @@ class LwpFribBookMark : public LwpFrib
 {
 public:
     LwpFribBookMark( LwpPara* pPara );
-    ~LwpFribBookMark(){};
+    ~LwpFribBookMark(){}
     void Read(LwpObjectStream* pObjStrm, sal_uInt16 len);
     LwpObjectID GetMarkerID(){return m_objMarker;}
     sal_uInt8 GetType(){return m_nType;}
@@ -109,7 +109,7 @@ class LwpFribField : public LwpFrib
 {
 public:
     LwpFribField( LwpPara* pPara );
-    ~LwpFribField(){};
+    ~LwpFribField(){}
     void Read(LwpObjectStream* pObjStrm, sal_uInt16 len);
     LwpFieldMark* GetMarker();
     sal_uInt8 GetType(){return m_nType;}
@@ -150,7 +150,7 @@ class LwpFribRubyMarker : public LwpFrib
 {
 public:
     LwpFribRubyMarker( LwpPara* pPara );
-    ~LwpFribRubyMarker(){};
+    ~LwpFribRubyMarker(){}
     void Read(LwpObjectStream* pObjStrm, sal_uInt16 len);
     LwpRubyMarker* GetMarker();
     sal_uInt8 GetType(){return m_nType;}
diff --git a/lotuswordpro/source/filter/lwpfribptr.hxx b/lotuswordpro/source/filter/lwpfribptr.hxx
index 07984a1..0051634 100644
--- a/lotuswordpro/source/filter/lwpfribptr.hxx
+++ b/lotuswordpro/source/filter/lwpfribptr.hxx
@@ -86,10 +86,10 @@ private:
 public:
 //	String GetText();
     void XFConvert();
-    void SetXFPara(XFParagraph* Para){m_pXFPara = Para;};
-    XFParagraph* GetXFPara(){return m_pXFPara;};
-    void SetPara(LwpPara* para){m_pPara=para;};
-    LwpPara* GetPara(){return m_pPara;};
+    void SetXFPara(XFParagraph* Para){m_pXFPara = Para;}
+    XFParagraph* GetXFPara(){return m_pXFPara;}
+    void SetPara(LwpPara* para){m_pPara=para;}
+    LwpPara* GetPara(){return m_pPara;}
     void RegisterStyle();
     void FindLayouts();// for register pagelayout, add by , 02/20/2005
     LwpFrib* GetFribs(){return m_pFribs;}
diff --git a/lotuswordpro/source/filter/lwpfribsection.hxx b/lotuswordpro/source/filter/lwpfribsection.hxx
index 7e68a7f..c073d47 100644
--- a/lotuswordpro/source/filter/lwpfribsection.hxx
+++ b/lotuswordpro/source/filter/lwpfribsection.hxx
@@ -74,7 +74,7 @@ class LwpMasterPage
 {
 public:
     LwpMasterPage(LwpPara* pPara, LwpPageLayout* pLayout);
-    ~LwpMasterPage(){};
+    ~LwpMasterPage(){}
 
 public:
     //for page layout register and parse
diff --git a/lotuswordpro/source/filter/lwpfribtable.hxx b/lotuswordpro/source/filter/lwpfribtable.hxx
index 186872b..eabbdee 100644
--- a/lotuswordpro/source/filter/lwpfribtable.hxx
+++ b/lotuswordpro/source/filter/lwpfribtable.hxx
@@ -62,8 +62,8 @@ class LwpSuperTableLayout;
 class LwpFribTable : public LwpFrib
 {
 public:
-    LwpFribTable( LwpPara* pPara ) : LwpFrib(pPara){};
-    ~LwpFribTable(){};
+    LwpFribTable( LwpPara* pPara ) : LwpFrib(pPara){}
+    ~LwpFribTable(){}
     void Read(LwpObjectStream* pObjStrm, sal_uInt16 len);
     LwpSuperTableLayout* GetSuperTable();
     void RegisterStyle();
diff --git a/lotuswordpro/source/filter/lwpfribtext.cxx b/lotuswordpro/source/filter/lwpfribtext.cxx
index 0e7d077..a7f232f 100644
--- a/lotuswordpro/source/filter/lwpfribtext.cxx
+++ b/lotuswordpro/source/filter/lwpfribtext.cxx
@@ -81,7 +81,7 @@
 
 LwpFribText::LwpFribText( LwpPara *pPara, sal_Bool bNoUnicode )
     : LwpFrib(pPara), m_bNoUnicode(bNoUnicode)
-{};
+{}
 
 void LwpFribText::Read(LwpObjectStream* pObjStrm, sal_uInt16 len)
 {
diff --git a/lotuswordpro/source/filter/lwpfribtext.hxx b/lotuswordpro/source/filter/lwpfribtext.hxx
index 5753a5c..85e13a2 100644
--- a/lotuswordpro/source/filter/lwpfribtext.hxx
+++ b/lotuswordpro/source/filter/lwpfribtext.hxx
@@ -70,7 +70,7 @@ class LwpFribText : public LwpFrib
 {
 public:
     LwpFribText( LwpPara* pPara, sal_Bool bNoUnicode=false);
-    ~LwpFribText(){};
+    ~LwpFribText(){}
     void Read(LwpObjectStream* pObjStrm, sal_uInt16 len);
     void XFConvert(XFContentContainer* pXFPara,LwpStory* pStory);
 private:
@@ -83,15 +83,15 @@ public:
 class LwpFribHardSpace : public LwpFrib
 {
 public:
-    LwpFribHardSpace( LwpPara* pPara ) : LwpFrib(pPara){};
-    ~LwpFribHardSpace(){};
+    LwpFribHardSpace( LwpPara* pPara ) : LwpFrib(pPara){}
+    ~LwpFribHardSpace(){}
 };
 
 class LwpFribSoftHyphen : public LwpFrib
 {
 public:
-    LwpFribSoftHyphen( LwpPara* pPara ) : LwpFrib(pPara){};
-    ~LwpFribSoftHyphen(){};
+    LwpFribSoftHyphen( LwpPara* pPara ) : LwpFrib(pPara){}
+    ~LwpFribSoftHyphen(){}
 };
 
 //add by , 02/03/2005
@@ -99,7 +99,7 @@ class LwpFribParaNumber : public LwpFrib
 {
 public:
     LwpFribParaNumber( LwpPara* pPara ) : LwpFrib(pPara),
-        m_nStyleID(0), m_nNumberChar(0), m_nLevel(1), m_nStart(0){};
+        m_nStyleID(0), m_nNumberChar(0), m_nLevel(1), m_nStart(0){}
     void Read(LwpObjectStream* pObjStrm, sal_uInt16 len);
 
     inline sal_uInt16 GetStyleID() const;
@@ -194,15 +194,15 @@ private:
 class LwpFribTab : public LwpFrib
 {
 public:
-    LwpFribTab( LwpPara* pPara ) : LwpFrib(pPara){};
-    ~LwpFribTab(){};
+    LwpFribTab( LwpPara* pPara ) : LwpFrib(pPara){}
+    ~LwpFribTab(){}
 };
 
 class LwpFribUnicode: public LwpFrib
 {
 public:
-    LwpFribUnicode( LwpPara* pPara ) : LwpFrib(pPara){};
-    ~LwpFribUnicode(){};
+    LwpFribUnicode( LwpPara* pPara ) : LwpFrib(pPara){}
+    ~LwpFribUnicode(){}
     void Read(LwpObjectStream* pObjStrm, sal_uInt16 len);
     void XFConvert(XFContentContainer* pXFPara,LwpStory* pStory);
 private:
@@ -215,8 +215,8 @@ class LwpFribPageNumber : public LwpFrib
 {
 public:
     LwpFribPageNumber(LwpPara* pPara) : LwpFrib(pPara),
-        m_nNumStyle(0), m_nStartNum(1), m_nStartOnPage(1), m_nFlag(0){};
-    ~LwpFribPageNumber(){};
+        m_nNumStyle(0), m_nStartNum(1), m_nStartOnPage(1), m_nFlag(0){}
+    ~LwpFribPageNumber(){}
     void Read(LwpObjectStream* pObjStrm, sal_uInt16 len);
     void XFConvert(XFContentContainer* pXFPara);
 private:
diff --git a/lotuswordpro/source/filter/lwpholder.hxx b/lotuswordpro/source/filter/lwpholder.hxx
index e1c98c8..4722956 100644
--- a/lotuswordpro/source/filter/lwpholder.hxx
+++ b/lotuswordpro/source/filter/lwpholder.hxx
@@ -75,7 +75,7 @@ class LwpDLVListHeadHolder : public LwpObject
 {
 public:
     LwpDLVListHeadHolder(LwpObjectHeader& objHdr, LwpSvStream* pStrm);
-    ~LwpDLVListHeadHolder(){};
+    ~LwpDLVListHeadHolder(){}
     void Read();
     LwpObjectID* GetHeadID() { return &m_DLVHead;}
 private:
@@ -89,7 +89,7 @@ class LwpDLVListHeadTailHolder : public LwpObject
 {
 public:
     LwpDLVListHeadTailHolder(LwpObjectHeader& objHdr, LwpSvStream* pStrm);
-    ~LwpDLVListHeadTailHolder(){};
+    ~LwpDLVListHeadTailHolder(){}
     void Read();
     LwpObjectID* GetHead(){ return m_HeadTail.GetHead();}
     LwpObjectID* GetTail(){ return m_HeadTail.GetTail();}
@@ -104,7 +104,7 @@ class LwpObjectHolder : public LwpDLVList
 {
 public:
     LwpObjectHolder(LwpObjectHeader& objHdr, LwpSvStream* pStrm);
-    ~LwpObjectHolder(){};
+    ~LwpObjectHolder(){}
     void Read();
     LwpObjectID* GetObject(){return &m_Object;}
 protected:
@@ -119,7 +119,7 @@ class LwpListList : public LwpObjectHolder
 {
 public:
     LwpListList(LwpObjectHeader& objHdr, LwpSvStream* pStrm);
-    ~LwpListList(){};
+    ~LwpListList(){}
     void Read();
     LwpObjectID* GetHead(){ return m_HeadTail.GetHead();}
     LwpObjectID* GetTail(){ return m_HeadTail.GetTail();}
diff --git a/lotuswordpro/source/filter/lwplayout.hxx b/lotuswordpro/source/filter/lwplayout.hxx
index 04a9009..97994b0 100644
--- a/lotuswordpro/source/filter/lwplayout.hxx
+++ b/lotuswordpro/source/filter/lwplayout.hxx
@@ -97,7 +97,7 @@ class LwpVirtualLayout : public LwpDLNFPVList
 {
 public:
     LwpVirtualLayout(LwpObjectHeader &objHdr, LwpSvStream* pStrm);
-    virtual ~LwpVirtualLayout(){};
+    virtual ~LwpVirtualLayout(){}
     virtual sal_Bool MarginsSameAsParent();
     inline virtual sal_uInt16 GetNumCols(){return 1;}
     virtual double GetColWidth(sal_uInt16 nIndex);
@@ -107,8 +107,8 @@ public:
     virtual sal_Bool IsAutoGrow(){ return sal_False;}
     virtual sal_Bool IsAutoGrowUp(){ return sal_False;}
     virtual sal_Bool IsAutoGrowDown(){ return sal_False;}
-    virtual sal_Bool IsAutoGrowLeft(){ return sal_False;};
-    virtual sal_Bool IsAutoGrowRight(){ return sal_False;};
+    virtual sal_Bool IsAutoGrowLeft(){ return sal_False;}
+    virtual sal_Bool IsAutoGrowRight(){ return sal_False;}
     virtual sal_Bool IsFitGraphic();
     virtual sal_Bool IsAutoGrowWidth();
     virtual sal_Bool IsInlineToMargin();
@@ -157,8 +157,8 @@ public:
         }
         return enumXFAlignTop;
     };
-    virtual void SetStyleName(const OUString & str){ m_StyleName = str;};
-    virtual double GetWidth(){return -1;};
+    virtual void SetStyleName(const OUString & str){ m_StyleName = str;}
+    virtual double GetWidth(){return -1;}
 
     //Check whether there are contents in the layout
     virtual sal_Bool HasContent(){return sal_False;}
@@ -223,8 +223,8 @@ public:
 class LwpAssociatedLayouts
 {
 public:
-    LwpAssociatedLayouts(){};
-    //LwpAssociatedLayouts(LwpObjectStream* pStrm){Read(pStrm);};
+    LwpAssociatedLayouts(){}
+    //LwpAssociatedLayouts(LwpObjectStream* pStrm){Read(pStrm);}
 public:
     void Read(LwpObjectStream* pStrm);
     LwpObjectID* GetOnlyLayout(){return &m_OnlyLayout;}
@@ -239,7 +239,7 @@ class LwpHeadLayout : public LwpVirtualLayout
 {
 public:
     LwpHeadLayout(LwpObjectHeader &objHdr, LwpSvStream* pStrm);
-    virtual ~LwpHeadLayout(){};
+    virtual ~LwpHeadLayout(){}
     void RegisterStyle();
     LwpVirtualLayout* FindEnSuperTableLayout();
 protected:
diff --git a/lotuswordpro/source/filter/lwplaypiece.hxx b/lotuswordpro/source/filter/lwplaypiece.hxx
index ed7b9f5..1c96bf1 100644
--- a/lotuswordpro/source/filter/lwplaypiece.hxx
+++ b/lotuswordpro/source/filter/lwplaypiece.hxx
@@ -125,7 +125,7 @@ public:
     sal_uInt16 GetPlacement(){return m_nPlacement;}
     void SetPlacement(sal_uInt16 nVal){m_nPlacement = nVal;}
     // add by , 04/05/2005
-    inline LwpPoint* GetOffset() {return &m_Offset;};
+    inline LwpPoint* GetOffset() {return &m_Offset;}
     // end add
 protected:
     virtual void Read();
@@ -231,7 +231,7 @@ public:
     LwpLayoutColumns(LwpObjectHeader& objHdr, LwpSvStream* pStrm);
     virtual ~LwpLayoutColumns();
     virtual void Parse(IXFStream* pOutputStream);
-    inline sal_uInt16 GetNumCols(){return m_nNumCols;};
+    inline sal_uInt16 GetNumCols(){return m_nNumCols;}
     double GetColWidth(sal_uInt16 nIndex);
     double GetColGap(sal_uInt16 nIndex);
 protected:
diff --git a/lotuswordpro/source/filter/lwplnopts.hxx b/lotuswordpro/source/filter/lwplnopts.hxx
index bbb8fc0..b0c939d 100644
--- a/lotuswordpro/source/filter/lwplnopts.hxx
+++ b/lotuswordpro/source/filter/lwplnopts.hxx
@@ -76,7 +76,7 @@ class LwpLineNumberOptions
 {
 public:
     LwpLineNumberOptions(LwpObjectStream* pStrm);
-    ~LwpLineNumberOptions(){};
+    ~LwpLineNumberOptions(){}
 protected:
     sal_uInt16 m_nType;
     sal_uInt16 m_nFlags;
diff --git a/lotuswordpro/source/filter/lwpmarker.hxx b/lotuswordpro/source/filter/lwpmarker.hxx
index aa92cfd..a687d71 100644
--- a/lotuswordpro/source/filter/lwpmarker.hxx
+++ b/lotuswordpro/source/filter/lwpmarker.hxx
@@ -76,7 +76,7 @@ class LwpMarker : public LwpDLNFPVList
 {
 public:
     LwpMarker(LwpObjectHeader &objHdr, LwpSvStream *pStrm);
-    ~LwpMarker(){};
+    ~LwpMarker(){}
     void Read();
     OUString GetNamedProperty(OUString name);
 protected:
@@ -97,8 +97,8 @@ private:
 class LwpFribRange
 {
 public:
-    LwpFribRange(){};
-    ~LwpFribRange(){};
+    LwpFribRange(){}
+    ~LwpFribRange(){}
     void Read(LwpObjectStream* pObjStrm);
 private:
     LwpObjectID m_StartPara;
@@ -109,7 +109,7 @@ class LwpStoryMarker : public LwpMarker
 {
 public:
     LwpStoryMarker(LwpObjectHeader &objHdr, LwpSvStream *pStrm);
-    ~LwpStoryMarker(){};
+    ~LwpStoryMarker(){}
     void Read();
 private:
     LwpFribRange m_Range;
@@ -120,7 +120,7 @@ class LwpCHBlkMarker : public LwpStoryMarker
 {
 public:
     LwpCHBlkMarker(LwpObjectHeader &objHdr, LwpSvStream *pStrm);
-    ~LwpCHBlkMarker(){};
+    ~LwpCHBlkMarker(){}
     void Read();
     sal_uInt16 GetAction(){return m_nAction;}
     void ConvertCHBlock(XFContentContainer* pXFPara,sal_uInt8 nType);
@@ -179,7 +179,7 @@ class LwpBookMark : public LwpDLNFVList
 {
 public:
     LwpBookMark(LwpObjectHeader &objHdr, LwpSvStream *pStrm);
-    ~LwpBookMark(){};
+    ~LwpBookMark(){}
 protected:
     void Read();
 public:
@@ -199,7 +199,7 @@ class LwpFieldMark : public LwpStoryMarker
 {
 public:
     LwpFieldMark(LwpObjectHeader &objHdr, LwpSvStream *pStrm);
-    ~LwpFieldMark(){};
+    ~LwpFieldMark(){}
     void Read();
     void ParseIndex(OUString& sKey1,OUString& sKey2);
     void ParseTOC(OUString& sLevel,OUString& sText);
@@ -265,7 +265,7 @@ class LwpRubyMarker : public LwpStoryMarker
 {
 public:
     LwpRubyMarker(LwpObjectHeader &objHdr, LwpSvStream *pStrm);
-    ~LwpRubyMarker(){};
+    ~LwpRubyMarker(){}
     void Read();
     OUString GetRubyText(){return m_strRubyText;}
     void SetRubyText(OUString sText){m_strRubyText = sText;}
diff --git a/lotuswordpro/source/filter/lwpnotes.hxx b/lotuswordpro/source/filter/lwpnotes.hxx
index acdb60a..5b24cbd 100644
--- a/lotuswordpro/source/filter/lwpnotes.hxx
+++ b/lotuswordpro/source/filter/lwpnotes.hxx
@@ -75,7 +75,7 @@ class LwpFribNote: public LwpFrib
 {
 public:
     LwpFribNote(LwpPara* pPara );
-    ~LwpFribNote(){};
+    ~LwpFribNote(){}
     void Read(LwpObjectStream* pObjStrm, sal_uInt16 len);
     void RegisterStyle();
     void XFConvert(XFContentContainer* pCont);
@@ -95,7 +95,7 @@ public:
     virtual LWP_LAYOUT_TYPE GetLayoutType () { return LWP_NOTE_LAYOUT;}
     virtual void RegisterStyle();
     virtual void XFConvert(XFContentContainer* pCont);
-    sal_uInt32 GetTime(){ return m_nTime;};
+    sal_uInt32 GetTime(){ return m_nTime;}
     OUString GetAuthor();
 
 protected:
diff --git a/lotuswordpro/source/filter/lwpnumericfmt.hxx b/lotuswordpro/source/filter/lwpnumericfmt.hxx
index eb053fc..fb7d1f6 100644
--- a/lotuswordpro/source/filter/lwpnumericfmt.hxx
+++ b/lotuswordpro/source/filter/lwpnumericfmt.hxx
@@ -246,7 +246,7 @@ class LwpNumericFormat
 {
 public:
     LwpNumericFormat(LwpObjectStream * pStrm);
-    ~LwpNumericFormat(){};
+    ~LwpNumericFormat(){}
     void Read();
     static sal_Bool IsCurrencyFormat(USHORT Format);
     USHORT GetDecimalPlaces(void);
@@ -302,8 +302,8 @@ class LwpLayoutNumerics : public LwpVirtualPiece
 {
 public:
     LwpLayoutNumerics(LwpObjectHeader& objHdr, LwpSvStream* pStrm)
-    :LwpVirtualPiece(objHdr, pStrm),cNumerics(m_pObjStrm){};
-    ~LwpLayoutNumerics(){};
+    :LwpVirtualPiece(objHdr, pStrm),cNumerics(m_pObjStrm){}
+    ~LwpLayoutNumerics(){}
     XFStyle* Convert();
     virtual void Read();
 protected:
diff --git a/lotuswordpro/source/filter/lwpobjhdr.cxx b/lotuswordpro/source/filter/lwpobjhdr.cxx
index 4c7f97b..2e706d4 100644
--- a/lotuswordpro/source/filter/lwpobjhdr.cxx
+++ b/lotuswordpro/source/filter/lwpobjhdr.cxx
@@ -70,7 +70,7 @@ LwpObjectHeader::LwpObjectHeader()
     : m_nTag(0), m_ID(), m_nSize(0), m_bCompressed(sal_False)
     // m_nHeaderSize(0), m_nVersionID(0), m_nRefCount(0), m_nFlagBits(0),
     //m_nNextVersionOffset(0), m_nNextVersionID(0),
-{};
+{}
 /**
  * @descr  read header from stream
   */
diff --git a/lotuswordpro/source/filter/lwpoleobject.hxx b/lotuswordpro/source/filter/lwpoleobject.hxx
index d75dc18..2c5526e 100644
--- a/lotuswordpro/source/filter/lwpoleobject.hxx
+++ b/lotuswordpro/source/filter/lwpoleobject.hxx
@@ -122,7 +122,7 @@ class LwpOleObject : public LwpGraphicOleObject
 {
 public:
     LwpOleObject(LwpObjectHeader& objHdr, LwpSvStream* pStrm);
-    ~LwpOleObject(){};
+    ~LwpOleObject(){}
     virtual void Read();
     virtual void Parse(IXFStream* pOutputStream);
     virtual void XFConvert(XFContentContainer * pCont);
diff --git a/lotuswordpro/source/filter/lwpoverride.hxx b/lotuswordpro/source/filter/lwpoverride.hxx
index f9c9133..b571720 100644
--- a/lotuswordpro/source/filter/lwpoverride.hxx
+++ b/lotuswordpro/source/filter/lwpoverride.hxx
@@ -80,7 +80,7 @@ enum STATE
 class LwpOverride
 {
 public:
-    LwpOverride() : m_nValues(0), m_nOverride(0), m_nApply(0) {};
+    LwpOverride() : m_nValues(0), m_nOverride(0), m_nApply(0) {}
 
     virtual ~LwpOverride(){}
 
@@ -104,7 +104,7 @@ protected:
 class LwpTextLanguageOverride : public LwpOverride
 {
 public:
-    LwpTextLanguageOverride() : m_nLanguage(0) {};
+    LwpTextLanguageOverride() : m_nLanguage(0) {}
 
     void Read(LwpObjectStream* pStrm);
 
@@ -116,7 +116,7 @@ private:
 class LwpTextAttributeOverride : public LwpOverride
 {
 public:
-    LwpTextAttributeOverride() : m_nHideLevels(0), m_nBaseLineOffset(0) {};
+    LwpTextAttributeOverride() : m_nHideLevels(0), m_nBaseLineOffset(0) {}
 
     void Read(LwpObjectStream* pStrm);
 
@@ -140,7 +140,7 @@ inline sal_uInt16 LwpTextAttributeOverride::GetHideLevels() const
 class LwpKinsokuOptsOverride : public LwpOverride
 {
 public:
-    LwpKinsokuOptsOverride() : m_nLevels(0) {};
+    LwpKinsokuOptsOverride() : m_nLevels(0) {}
 
     void Read(LwpObjectStream* pStrm);
 
@@ -246,7 +246,7 @@ inline void LwpBulletOverride::RevertRightAligned()
 class LwpAlignmentOverride : public LwpOverride
 {
 public:
-    LwpAlignmentOverride() : m_nAlignType(ALIGN_LEFT), m_nPosition(0), m_nAlignChar(0){};
+    LwpAlignmentOverride() : m_nAlignType(ALIGN_LEFT), m_nPosition(0), m_nAlignChar(0){}
 
     void Read(LwpObjectStream* pStrm);
 
@@ -282,7 +282,7 @@ private:
 class LwpSpacingCommonOverride : public LwpOverride
 {
 public:
-    LwpSpacingCommonOverride() : m_nSpacingType(SPACING_NONE), m_nAmount(0), m_nMultiple(65536){};
+    LwpSpacingCommonOverride() : m_nSpacingType(SPACING_NONE), m_nAmount(0), m_nMultiple(65536){}
 
     void Read(LwpObjectStream* pStrm);
 
@@ -294,9 +294,9 @@ public:
         SPACING_NONE	= 3
     };
 
-    SpacingType GetType() const {return m_nSpacingType;};
-    sal_Int32 GetAmount() const {return m_nAmount;};
-    sal_Int32 GetMultiple() const {return m_nMultiple;};
+    SpacingType GetType() const {return m_nSpacingType;}
+    sal_Int32 GetAmount() const {return m_nAmount;}
+    sal_Int32 GetMultiple() const {return m_nMultiple;}
 
     void Override(LwpSpacingCommonOverride* other);

... etc. - the rest is truncated


More information about the Libreoffice-commits mailing list