lotuswordpro/inc/lwpbasetype.hxx                        |    4 
 lotuswordpro/inc/lwpfoundry.hxx                         |    9 -
 lotuswordpro/inc/lwpidxmgr.hxx                          |    6 
 lotuswordpro/inc/lwpobjfactory.hxx                      |    4 
 lotuswordpro/inc/lwpoverride.hxx                        |   64 ++--------
 lotuswordpro/inc/xfilter/xfnumberstyle.hxx              |   27 +---
 lotuswordpro/source/filter/LotusWordProImportFilter.hxx |    5 
 lotuswordpro/source/filter/lwp9reader.hxx               |    3 
 lotuswordpro/source/filter/lwpbreaksoverride.hxx        |    7 -
 lotuswordpro/source/filter/lwpcelllayout.hxx            |    4 
 lotuswordpro/source/filter/lwpcharborderoverride.hxx    |    7 -
 lotuswordpro/source/filter/lwpfootnote.hxx              |    5 
 lotuswordpro/source/filter/lwpholder.hxx                |   12 -
 lotuswordpro/source/filter/lwplayout.hxx                |    4 
 lotuswordpro/source/filter/lwplaypiece.hxx              |   99 +++++++---------
 lotuswordpro/source/filter/lwplnopts.hxx                |    5 
 lotuswordpro/source/filter/lwpnotes.hxx                 |    5 
 lotuswordpro/source/filter/lwpnumberingoverride.hxx     |    8 -
 lotuswordpro/source/filter/lwpnumericfmt.hxx            |   11 -
 lotuswordpro/source/filter/lwppagelayout.hxx            |    6 
 lotuswordpro/source/filter/lwppara.hxx                  |   14 +-
 lotuswordpro/source/filter/lwpparaborderoverride.hxx    |    9 -
 lotuswordpro/source/filter/lwpstory.hxx                 |    3 
 lotuswordpro/source/filter/lwptable.hxx                 |    8 -
 lotuswordpro/source/filter/lwptaboverride.hxx           |    7 -
 lotuswordpro/source/filter/lwptblcell.hxx               |   55 ++++----
 lotuswordpro/source/filter/lwptblformula.hxx            |    8 -
 lotuswordpro/source/filter/lwptoc.hxx                   |    6 
 lotuswordpro/source/filter/lwpvpointer.hxx              |    5 
 29 files changed, 167 insertions(+), 243 deletions(-)

New commits:
commit bbf1312b2d775a851a38290e3c12c677f6acbfde
Author: Noel Grandin <noel.gran...@collabora.co.uk>
Date:   Tue Oct 31 16:04:38 2017 +0200

    loplugin:finalclasses in lotuswordpro
    
    Change-Id: I09a570741f5801980ae07fb90835e543519df046
    Reviewed-on: https://gerrit.libreoffice.org/44135
    Reviewed-by: Noel Grandin <noel.gran...@collabora.co.uk>
    Tested-by: Noel Grandin <noel.gran...@collabora.co.uk>

diff --git a/lotuswordpro/inc/lwpbasetype.hxx b/lotuswordpro/inc/lwpbasetype.hxx
index 7da677280c4c..99f33050b2fe 100644
--- a/lotuswordpro/inc/lwpbasetype.hxx
+++ b/lotuswordpro/inc/lwpbasetype.hxx
@@ -101,7 +101,7 @@ private:
 /**
  * @brief   point class
 */
-class LwpPoint
+class LwpPoint final
 {
 public:
     LwpPoint();
@@ -111,7 +111,7 @@ public:
     sal_Int32 GetY() const {return m_nY;}
     inline void SetX(sal_Int32 nX);
     inline void SetY(sal_Int32 nY);
-protected:
+private:
     sal_Int32 m_nX;
     sal_Int32 m_nY;
 };
diff --git a/lotuswordpro/inc/lwpfoundry.hxx b/lotuswordpro/inc/lwpfoundry.hxx
index 7c5ff3bee569..30b604b295fa 100644
--- a/lotuswordpro/inc/lwpfoundry.hxx
+++ b/lotuswordpro/inc/lwpfoundry.hxx
@@ -177,17 +177,16 @@ public:
 
 class LwpOrderedObject;
 class LwpListList;
-class LwpOrderedObjectManager
+class LwpOrderedObjectManager final
 {
 public:
     LwpOrderedObjectManager(){}
-protected:
-    LwpObjectID m_Head;
-public:
     void Read(LwpObjectStream *pStrm);
     LwpOrderedObject* Enumerate(LwpOrderedObject* pLast);
-protected:
+private:
     LwpListList* GetNextActiveListList(LwpListList* pLast);
+
+    LwpObjectID m_Head;
 };
 
 class LwpStyleManager;
diff --git a/lotuswordpro/inc/lwpidxmgr.hxx b/lotuswordpro/inc/lwpidxmgr.hxx
index 21f902a76cda..fc01fed425a4 100644
--- a/lotuswordpro/inc/lwpidxmgr.hxx
+++ b/lotuswordpro/inc/lwpidxmgr.hxx
@@ -77,11 +77,11 @@ struct LwpKey
 /**
  * @brief   LwpIndexManager, to read all index records and maintain the index 
information
 */
-class LwpIndexManager
+class LwpIndexManager final
 {
 public:
     LwpIndexManager();
-protected:
+private:
     static const sal_uInt8 MAXOBJECTIDS;
     std::vector<LwpKey> m_ObjectKeys;      //the <id, offset> ordered vector
     std::vector<LwpKey> m_RootObjs;        //For those object ids in 
RootObjIndex
@@ -93,7 +93,7 @@ protected:
 
     sal_uInt32 m_ChildIndex[256];   //Offset of leaf index
     sal_uInt16 m_nLeafCount;
-protected:
+
     void ReadRootData(LwpObjectStream *pObjStrm );  //Read root index data
 
     //Add new method to handle ObjIndex
diff --git a/lotuswordpro/inc/lwpobjfactory.hxx 
b/lotuswordpro/inc/lwpobjfactory.hxx
index 37c3c3a48420..f3a00e1f769c 100644
--- a/lotuswordpro/inc/lwpobjfactory.hxx
+++ b/lotuswordpro/inc/lwpobjfactory.hxx
@@ -77,11 +77,10 @@
 /**
  * @brief   object factory used for lwp object creation and maintenance
 */
-class LwpObjectFactory
+class LwpObjectFactory final
 {
 public:
     explicit LwpObjectFactory(LwpSvStream* pSvStream);
-public:
     ~LwpObjectFactory();
 
 //For object Factory and object manager
@@ -106,7 +105,6 @@ private:
     LwpIdToObjMap m_IdToObjList;
     LwpIndexManager m_IndexMgr;
 
-protected:
     rtl::Reference<LwpObject> FindObject(const LwpObjectID &objID);
 public:
     rtl::Reference<LwpObject> CreateObject(sal_uInt32 type, LwpObjectHeader 
&objHdr);
diff --git a/lotuswordpro/inc/lwpoverride.hxx b/lotuswordpro/inc/lwpoverride.hxx
index b7d0752fa664..d9df79894382 100644
--- a/lotuswordpro/inc/lwpoverride.hxx
+++ b/lotuswordpro/inc/lwpoverride.hxx
@@ -103,7 +103,7 @@ protected:
     sal_uInt16  m_nApply;
 };
 
-class LwpTextLanguageOverride : public LwpOverride
+class LwpTextLanguageOverride final : public LwpOverride
 {
 public:
     LwpTextLanguageOverride() : m_nLanguage(0) {}
@@ -112,17 +112,14 @@ public:
 
     void Read(LwpObjectStream* pStrm) override;
 
-protected:
-    LwpTextLanguageOverride(LwpTextLanguageOverride const& rOther);
-
 private:
+    LwpTextLanguageOverride(LwpTextLanguageOverride const& rOther);
     LwpTextLanguageOverride& operator=(LwpTextLanguageOverride const& rOther) 
= delete;
 
-private:
     sal_uInt16  m_nLanguage;
 };
 
-class LwpTextAttributeOverride : public LwpOverride
+class LwpTextAttributeOverride final : public LwpOverride
 {
 public:
     LwpTextAttributeOverride() : m_nHideLevels(0), m_nBaseLineOffset(0) {}
@@ -135,13 +132,10 @@ public:
 
     bool IsHighlight();
 
-protected:
-    LwpTextAttributeOverride(LwpTextAttributeOverride const& rOther);
-
 private:
+    LwpTextAttributeOverride(LwpTextAttributeOverride const& rOther);
     LwpTextAttributeOverride& operator=(LwpTextAttributeOverride const& 
rOther) = delete;
 
-private:
     enum{
     TAO_HIGHLIGHT = 0x08,
     };
@@ -154,7 +148,7 @@ inline sal_uInt16 LwpTextAttributeOverride::GetHideLevels() 
const
     return m_nHideLevels;
 }
 
-class LwpKinsokuOptsOverride : public LwpOverride
+class LwpKinsokuOptsOverride final : public LwpOverride
 {
 public:
     LwpKinsokuOptsOverride() : m_nLevels(0) {}
@@ -163,17 +157,14 @@ public:
 
     void Read(LwpObjectStream* pStrm) override;
 
-protected:
-    LwpKinsokuOptsOverride(LwpKinsokuOptsOverride const& rOther);
-
 private:
+    LwpKinsokuOptsOverride(LwpKinsokuOptsOverride const& rOther);
     LwpKinsokuOptsOverride& operator=(LwpKinsokuOptsOverride const& rOther) = 
delete;
 
-private:
     sal_uInt16  m_nLevels;
 };
 
-class LwpBulletOverride : public LwpOverride
+class LwpBulletOverride final : public LwpOverride
 {
 public:
     LwpBulletOverride() {m_bIsNull = true;}
@@ -203,13 +194,10 @@ public:
 
     bool IsInValid(){return m_bIsNull;}
 
-protected:
-    LwpBulletOverride(LwpBulletOverride const& rOther);
-
 private:
+    LwpBulletOverride(LwpBulletOverride const& rOther);
     LwpBulletOverride& operator=(LwpBulletOverride const& rOther) = delete;
 
-private:
     enum
     {
         BO_SILVERBULLET = 0x01,
@@ -273,7 +261,7 @@ inline void LwpBulletOverride::RevertRightAligned()
     LwpOverride::Override(BO_RIGHTALIGN, STATE_STYLE);
 }
 
-class LwpAlignmentOverride : public LwpOverride
+class LwpAlignmentOverride final : public LwpOverride
 {
 public:
     LwpAlignmentOverride() : m_nAlignType(ALIGN_LEFT), m_nPosition(0), 
m_nAlignChar(0){}
@@ -298,13 +286,10 @@ public:
     void Override(LwpAlignmentOverride* other);
     void OverrideAlignment(AlignType val);
 
-protected:
-    LwpAlignmentOverride(LwpAlignmentOverride const& rOther);
-
 private:
+    LwpAlignmentOverride(LwpAlignmentOverride const& rOther);
     LwpAlignmentOverride& operator=(LwpAlignmentOverride const& rOther) = 
delete;
 
-private:
     enum
     {
         AO_TYPE     = 0x01,
@@ -317,7 +302,7 @@ private:
     sal_uInt16  m_nAlignChar;
 };
 
-class LwpSpacingCommonOverride : public LwpOverride
+class LwpSpacingCommonOverride final : public LwpOverride
 {
 public:
     LwpSpacingCommonOverride() : m_nSpacingType(SPACING_NONE), m_nAmount(0), 
m_nMultiple(65536){}
@@ -343,13 +328,10 @@ public:
     void OverrideAmount(sal_Int32 val);
     void OverrideMultiple(sal_Int32 val);
 
-protected:
-    LwpSpacingCommonOverride(LwpSpacingCommonOverride const& rOther);
-
 private:
+    LwpSpacingCommonOverride(LwpSpacingCommonOverride const& rOther);
     LwpSpacingCommonOverride& operator=(LwpSpacingCommonOverride const& 
rOther) = delete;
 
-protected:
     enum
     {
         SPO_TYPE    = 0x01,
@@ -361,7 +343,7 @@ protected:
     sal_Int32   m_nMultiple;
 };
 
-class LwpSpacingOverride : public LwpOverride
+class LwpSpacingOverride final : public LwpOverride
 {
 public:
     LwpSpacingOverride();
@@ -378,20 +360,17 @@ public:
     LwpSpacingCommonOverride* GetAboveSpacing(){return m_pParaSpacingAbove;}
     LwpSpacingCommonOverride* GetBelowSpacing(){return m_pParaSpacingBelow;}
 
-protected:
-    LwpSpacingOverride(LwpSpacingOverride const& rOther);
-
 private:
+    LwpSpacingOverride(LwpSpacingOverride const& rOther);
     LwpSpacingOverride& operator=(LwpSpacingOverride const& rOther) = delete;
 
-private:
     LwpSpacingCommonOverride*   m_pSpacing;
     LwpSpacingCommonOverride*   m_pAboveLineSpacing;
     LwpSpacingCommonOverride*   m_pParaSpacingAbove;
     LwpSpacingCommonOverride*   m_pParaSpacingBelow;
 };
 
-class LwpIndentOverride : public LwpOverride
+class LwpIndentOverride final : public LwpOverride
 {
 public:
     LwpIndentOverride() : m_nAll(0), m_nFirst(0), m_nRest(0), m_nRight(0) {}
@@ -427,13 +406,10 @@ public:
     void SetMRest(sal_Int32 val){m_nRest=val;}
     void SetMRight(sal_Int32 val){m_nRight=val;}
 
-protected:
-    LwpIndentOverride(LwpIndentOverride const& rOther);
-
 private:
+    LwpIndentOverride(LwpIndentOverride const& rOther);
     LwpIndentOverride& operator=(LwpIndentOverride const& rOther) = delete;
 
-private:
     enum
     {
         IO_ALL          = 0x0001,
@@ -470,7 +446,7 @@ inline double LwpIndentOverride::GetRight() const
 }
 
 class LwpBackgroundStuff;
-class LwpAmikakeOverride : public LwpOverride
+class LwpAmikakeOverride final : public LwpOverride
 {
 public:
     LwpAmikakeOverride();
@@ -487,16 +463,12 @@ public:
         AMIKAKE_CHARACTER   = 2
     };
 
-protected:
-    LwpAmikakeOverride(LwpAmikakeOverride const& rOther);
-
 private:
+    LwpAmikakeOverride(LwpAmikakeOverride const& rOther);
     LwpAmikakeOverride& operator=(LwpAmikakeOverride const& rOther) = delete;
 
-private:
     std::unique_ptr<LwpBackgroundStuff> m_pBackgroundStuff;
     sal_uInt16      m_nType;
-
 };
 
 #endif
diff --git a/lotuswordpro/inc/xfilter/xfnumberstyle.hxx 
b/lotuswordpro/inc/xfilter/xfnumberstyle.hxx
index f84d0755c9cc..69d9a7e68280 100644
--- a/lotuswordpro/inc/xfilter/xfnumberstyle.hxx
+++ b/lotuswordpro/inc/xfilter/xfnumberstyle.hxx
@@ -65,12 +65,11 @@
 #include <xfilter/xfcolor.hxx>
 #include <rtl/ustring.hxx>
 
-class XFNumberStyle : public XFStyle
+class XFNumberStyle final : public XFStyle
 {
 public:
     XFNumberStyle();
 
-public:
     void    SetDecimalDigits(sal_Int32 decimal);
 
     void    SetGroup();
@@ -92,31 +91,25 @@ public:
 
     virtual void ToXml(IXFStream *pStrm) override;
 
-protected:
+private:
     void    ToXml_StartElement(IXFStream *pStrm);
-
     void    ToXml_EndElement(IXFStream *pStrm);
-
     void    ToXml_Normal(IXFStream *pStrm);
-
     void    ToXml_Negative(IXFStream *pStrm);
-
     void    ToXml_Content(IXFStream *pStrm, bool nagetive);
 
-protected:
     enumXFNumberType    m_eType;
-    sal_Int32   m_nDecimalDigits;
-    sal_Int32   m_nMinInteger;
-    sal_Int32   m_nMinExponent;
-    bool    m_bGroup;
-    XFColor     m_aColor;
-    bool    m_bCurrencySymbolPost;
+    sal_Int32  m_nDecimalDigits;
+    sal_Int32  m_nMinInteger;
+    sal_Int32  m_nMinExponent;
+    bool       m_bGroup;
+    XFColor    m_aColor;
+    bool       m_bCurrencySymbolPost;
     OUString   m_strCurrencySymbol;
     OUString   m_strPrefix;
     OUString   m_strSuffix;
-
-    bool    m_bRedIfNegative;
-    XFColor     m_aNegativeColor;
+    bool       m_bRedIfNegative;
+    XFColor    m_aNegativeColor;
     OUString   m_strNegativePrefix;
     OUString   m_strNegativeSuffix;
 };
diff --git a/lotuswordpro/source/filter/LotusWordProImportFilter.hxx 
b/lotuswordpro/source/filter/LotusWordProImportFilter.hxx
index 535cc5593808..b1dad02a331f 100644
--- a/lotuswordpro/source/filter/LotusWordProImportFilter.hxx
+++ b/lotuswordpro/source/filter/LotusWordProImportFilter.hxx
@@ -32,7 +32,7 @@
 /* This component will be instantiated for both import or export. Whether it 
calls
  * setSourceDocument or setTargetDocument determines which Impl function the 
filter
  * member calls */
-class LotusWordProImportFilter : public cppu::WeakImplHelper
+class LotusWordProImportFilter final : public cppu::WeakImplHelper
 <
     css::document::XFilter,
     css::document::XImporter,
@@ -41,9 +41,6 @@ class LotusWordProImportFilter : public cppu::WeakImplHelper
     css::lang::XServiceInfo
 >
 {
-private:
-
-protected:
     // oo.org declares
     css::uno::Reference< css::uno::XComponentContext > mxContext;
     css::uno::Reference< css::lang::XComponent > mxDoc;
diff --git a/lotuswordpro/source/filter/lwp9reader.hxx 
b/lotuswordpro/source/filter/lwp9reader.hxx
index 05bc935fc9b2..731d940c1a71 100644
--- a/lotuswordpro/source/filter/lwp9reader.hxx
+++ b/lotuswordpro/source/filter/lwp9reader.hxx
@@ -65,7 +65,7 @@
 /**
  * @brief   Reader framework class for Lotus Word Pro 9 file
 */
-class Lwp9Reader
+class Lwp9Reader final
 {
 public:
     Lwp9Reader(LwpSvStream* InputStream, IXFStream* pStream);
@@ -74,7 +74,6 @@ private:
     IXFStream*        m_pStream;
     LwpObjectFactory* m_pObjMgr;
     LwpFileHeader     m_LwpFileHdr;             //LWP7 object
-protected:
     void ReadFileHeader();
     void ReadIndex();
     void ParseDocument();
diff --git a/lotuswordpro/source/filter/lwpbreaksoverride.hxx 
b/lotuswordpro/source/filter/lwpbreaksoverride.hxx
index d8b629b62218..ba1f57e2a47c 100644
--- a/lotuswordpro/source/filter/lwpbreaksoverride.hxx
+++ b/lotuswordpro/source/filter/lwpbreaksoverride.hxx
@@ -65,7 +65,7 @@
 
 class LwpObjectStream;
 class LwpAtomHolder;
-class LwpBreaksOverride : public LwpOverride
+class LwpBreaksOverride final : public LwpOverride
 {
 
 public:
@@ -127,13 +127,10 @@ public:
     void OverrideKeepWithPrevious(bool bVal);
     void OverrideUseNextStyle(bool bVal);
 
-protected:
-    LwpBreaksOverride(LwpBreaksOverride const& rOther);
-
 private:
+    LwpBreaksOverride(LwpBreaksOverride const& rOther);
     LwpBreaksOverride& operator=(const LwpBreaksOverride& rOther) = delete;
 
-private:
     std::unique_ptr<LwpAtomHolder>  m_pNextStyle;
 };
 
diff --git a/lotuswordpro/source/filter/lwpcelllayout.hxx 
b/lotuswordpro/source/filter/lwpcelllayout.hxx
index 848302a1ea80..4969f568e9a1 100644
--- a/lotuswordpro/source/filter/lwpcelllayout.hxx
+++ b/lotuswordpro/source/filter/lwpcelllayout.hxx
@@ -140,7 +140,7 @@ protected:
  * @brief
  * VO_HIDDENCELLLAYOUT object
  */
-class LwpHiddenCellLayout : public LwpCellLayout
+class LwpHiddenCellLayout final : public LwpCellLayout
 {
 public:
     LwpHiddenCellLayout(LwpObjectHeader const &objHdr, LwpSvStream* pStrm);
@@ -150,7 +150,7 @@ public:
     virtual rtl::Reference<XFCell> ConvertCell(LwpObjectID aTableID, 
sal_uInt16 nRow, sal_uInt16 nCol) override;
     void RegisterStyle() override {}
     virtual void SetCellMap() override;
-protected:
+private:
     void Read() override;
     LwpObjectID cconnectedlayout;
 };
diff --git a/lotuswordpro/source/filter/lwpcharborderoverride.hxx 
b/lotuswordpro/source/filter/lwpcharborderoverride.hxx
index 97b077baff8a..132e9b2b95b0 100644
--- a/lotuswordpro/source/filter/lwpcharborderoverride.hxx
+++ b/lotuswordpro/source/filter/lwpcharborderoverride.hxx
@@ -65,7 +65,7 @@
 
 class LwpBorderStuff;
 class LwpMargins;
-class LwpCharacterBorderOverride : public LwpOverride
+class LwpCharacterBorderOverride final : public LwpOverride
 {
 public:
     LwpCharacterBorderOverride();
@@ -76,13 +76,10 @@ public:
 
     void Read(LwpObjectStream* pStrm) override;
 
-protected:
-    LwpCharacterBorderOverride(LwpCharacterBorderOverride const& rOther);
-
 private:
+    LwpCharacterBorderOverride(LwpCharacterBorderOverride const& rOther);
     LwpCharacterBorderOverride& operator=(LwpCharacterBorderOverride const& 
rOther) = delete;
 
-private:
     LwpBorderStuff* m_pBorderStuff;
     LwpMargins*     m_pMargins;
     sal_Int32       m_nAboveWidth;
diff --git a/lotuswordpro/source/filter/lwpfootnote.hxx 
b/lotuswordpro/source/filter/lwpfootnote.hxx
index 40ee2a9edd92..2abe1aae1e80 100644
--- a/lotuswordpro/source/filter/lwpfootnote.hxx
+++ b/lotuswordpro/source/filter/lwpfootnote.hxx
@@ -231,16 +231,15 @@ public:
 /**
  * @brief   VO_FOOTNOTEOPTS object
 */
-class LwpFootnoteOptions : public LwpObject
+class LwpFootnoteOptions final : public LwpObject
 {
 public:
     LwpFootnoteOptions(LwpObjectHeader const &objHdr, LwpSvStream* pStrm);
     void RegisterStyle() override;
-protected:
+private:
     void Read() override;
     void RegisterFootnoteStyle();
     void RegisterEndnoteStyle();
-private:
     virtual ~LwpFootnoteOptions() override;
 
     sal_uInt16 m_nFlag;
diff --git a/lotuswordpro/source/filter/lwpholder.hxx 
b/lotuswordpro/source/filter/lwpholder.hxx
index 6f36b2ddb381..1c84bc185d1c 100644
--- a/lotuswordpro/source/filter/lwpholder.hxx
+++ b/lotuswordpro/source/filter/lwpholder.hxx
@@ -82,17 +82,17 @@ private:
  * @brief   VO_HEADTAILHOLDER, LwpDLVListHeadTailHolder,
  *      contains a LwpDLVListHeadTail (Head and tail id)
 */
-class LwpDLVListHeadTailHolder : public LwpObject
+class LwpDLVListHeadTailHolder final : public LwpObject
 {
 public:
     LwpDLVListHeadTailHolder(LwpObjectHeader const & objHdr, LwpSvStream* 
pStrm);
     void Read() override;
     LwpObjectID& GetHead(){ return m_HeadTail.GetHead();}
     LwpObjectID& GetTail(){ return m_HeadTail.GetTail();}
-protected:
-    LwpDLVListHeadTail m_HeadTail;
 private:
     virtual ~LwpDLVListHeadTailHolder() override {}
+
+    LwpDLVListHeadTail m_HeadTail;
 };
 /**
  * @brief   LwpObjectHolder, which is LwpDLVList, contains an id to an object
@@ -114,16 +114,16 @@ protected:
  * @brief       VO_LISTLIST object in .lwp file
  *
  */
-class LwpListList : public LwpObjectHolder
+class LwpListList final : public LwpObjectHolder
 {
 public:
     LwpListList(LwpObjectHeader const & objHdr, LwpSvStream* pStrm);
     void Read() override;
     LwpObjectID& GetHead(){ return m_HeadTail.GetHead();}
-protected:
-    LwpDLVListHeadTail m_HeadTail;
 private:
     virtual ~LwpListList() override {}
+
+    LwpDLVListHeadTail m_HeadTail;
 };
 
 #endif
diff --git a/lotuswordpro/source/filter/lwplayout.hxx 
b/lotuswordpro/source/filter/lwplayout.hxx
index 599dc22359c2..e6b5fe849e5d 100644
--- a/lotuswordpro/source/filter/lwplayout.hxx
+++ b/lotuswordpro/source/filter/lwplayout.hxx
@@ -280,14 +280,14 @@ public:
     LwpVirtualLayout* FindChildByType(LWP_LAYOUT_TYPE eType);
 };
 
-class LwpAssociatedLayouts
+class LwpAssociatedLayouts final
 {
 public:
     LwpAssociatedLayouts(){}
     void Read(LwpObjectStream* pStrm);
     LwpObjectID& GetOnlyLayout() { return m_OnlyLayout;}
     rtl::Reference<LwpVirtualLayout> GetLayout(LwpVirtualLayout const * 
pStartLayout);
-protected:
+private:
     LwpObjectID m_OnlyLayout; //LwpVirtualLayout
     LwpDLVListHeadTail m_Layouts;
 };
diff --git a/lotuswordpro/source/filter/lwplaypiece.hxx 
b/lotuswordpro/source/filter/lwplaypiece.hxx
index 688b388d10f8..43f528fe5941 100644
--- a/lotuswordpro/source/filter/lwplaypiece.hxx
+++ b/lotuswordpro/source/filter/lwplaypiece.hxx
@@ -78,7 +78,7 @@ private:
     sal_Int16 m_nRotation;  //angle
 };
 
-class LwpLayoutGeometry : public LwpVirtualPiece
+class LwpLayoutGeometry final : public LwpVirtualPiece
 {
 public:
     LwpLayoutGeometry(LwpObjectHeader const & objHdr, LwpSvStream* pStrm);
@@ -89,20 +89,19 @@ public:
     const LwpPoint& GetAbsoluteOrigin() { return m_AbsoluteOrigin; }
     sal_uInt8 GetContentOrientation(){ return m_ContentOrientation;}
 
-protected:
+private:
     virtual void Read() override;
-protected:
+    virtual ~LwpLayoutGeometry() override;
+
     sal_Int32 m_nWidth;
     sal_Int32 m_nHeight;
     LwpPoint m_Origin;
     LwpPoint m_AbsoluteOrigin;
     LwpRotor m_ContainerRotor;
     sal_uInt8 m_ContentOrientation;
-private:
-    virtual ~LwpLayoutGeometry() override;
 };
 
-class LwpLayoutScale : public LwpVirtualPiece
+class LwpLayoutScale final : public LwpVirtualPiece
 {
 public:
     enum    {ORIGINAL_SIZE = 1, FIT_IN_FRAME = 2, PERCENTAGE = 4,
@@ -117,9 +116,10 @@ public:
     sal_Int32 GetScaleHeight(){return m_nScaleHeight;}
     sal_uInt16 GetPlacement(){return m_nPlacement;}
     LwpPoint& GetOffset() {return m_Offset;}
-protected:
+private:
     virtual void Read() override;
-protected:
+    virtual ~LwpLayoutScale() override;
+
     sal_uInt16 m_nScaleMode;
     sal_uInt32 m_nScalePercentage;
     sal_Int32 m_nScaleWidth;
@@ -127,53 +127,48 @@ protected:
     sal_uInt16 m_nContentRotation;
     LwpPoint m_Offset;
     sal_uInt16 m_nPlacement;
-private:
-    virtual ~LwpLayoutScale() override;
 };
 
-class LwpLayoutMargins : public LwpVirtualPiece
+class LwpLayoutMargins final : public LwpVirtualPiece
 {
 public:
     LwpLayoutMargins(LwpObjectHeader const & objHdr, LwpSvStream* pStrm);
     virtual void Parse(IXFStream* pOutputStream) override;
     LwpMargins& GetMargins() { return m_Margins; }
     LwpMargins& GetExtMargins(){ return m_ExtMargins;}
-protected:
+private:
     virtual void Read() override;
-protected:
+    virtual ~LwpLayoutMargins() override;
+
     LwpMargins m_Margins;
     LwpMargins m_ExtMargins;
     LwpMargins m_ExtraMargins;
-private:
-    virtual ~LwpLayoutMargins() override;
 };
 
-class LwpLayoutBorder : public LwpVirtualPiece
+class LwpLayoutBorder final : public LwpVirtualPiece
 {
 public:
     LwpLayoutBorder(LwpObjectHeader const & objHdr, LwpSvStream* pStrm);
     virtual void Parse(IXFStream* pOutputStream) override;
     LwpBorderStuff& GetBorderStuff(){ return m_BorderStuff;}
-protected:
-    virtual void Read() override;
-protected:
-    LwpBorderStuff m_BorderStuff;
 private:
+    virtual void Read() override;
     virtual ~LwpLayoutBorder() override;
+
+    LwpBorderStuff m_BorderStuff;
 };
 
-class LwpLayoutBackground : public LwpVirtualPiece
+class LwpLayoutBackground final : public LwpVirtualPiece
 {
 public:
     LwpLayoutBackground(LwpObjectHeader const & objHdr, LwpSvStream* pStrm);
     virtual void Parse(IXFStream* pOutputStream) override;
     LwpBackgroundStuff& GetBackgoudStuff(){return m_BackgroundStuff;}
-protected:
-    virtual void Read() override;
-protected:
-    LwpBackgroundStuff m_BackgroundStuff;
 private:
+    virtual void Read() override;
     virtual ~LwpLayoutBackground() override;
+
+    LwpBackgroundStuff m_BackgroundStuff;
 };
 
 class LwpExternalBorder
@@ -190,17 +185,16 @@ private:
 };
 
 //It seems that this class is used for designer border. Only read now.
-class LwpLayoutExternalBorder : public LwpVirtualPiece
+class LwpLayoutExternalBorder final : public LwpVirtualPiece
 {
 public:
     LwpLayoutExternalBorder(LwpObjectHeader const & objHdr, LwpSvStream* 
pStrm);
     virtual void Parse(IXFStream* pOutputStream) override;
-protected:
-    virtual void Read() override;
-protected:
-    LwpExternalBorder   m_ExtranalBorder;
 private:
+    virtual void Read() override;
     virtual ~LwpLayoutExternalBorder() override;
+
+    LwpExternalBorder   m_ExtranalBorder;
 };
 
 class LwpColumnInfo
@@ -216,7 +210,7 @@ private:
     sal_Int32 m_nGap;
 };
 
-class LwpLayoutColumns : public LwpVirtualPiece
+class LwpLayoutColumns final : public LwpVirtualPiece
 {
 public:
     LwpLayoutColumns(LwpObjectHeader const & objHdr, LwpSvStream* pStrm);
@@ -224,27 +218,25 @@ public:
     sal_uInt16 GetNumCols(){return m_nNumCols;}
     double GetColWidth(sal_uInt16 nIndex);
     double GetColGap(sal_uInt16 nIndex);
-protected:
+private:
     virtual void Read() override;
-protected:
+    virtual ~LwpLayoutColumns() override;
+
     sal_uInt16 m_nNumCols;
     LwpColumnInfo* m_pColumns;
-private:
-    virtual ~LwpLayoutColumns() override;
 };
 
-class LwpLayoutGutters : public LwpVirtualPiece
+class LwpLayoutGutters final : public LwpVirtualPiece
 {
 public:
     LwpLayoutGutters(LwpObjectHeader const & objHdr, LwpSvStream* pStrm);
     virtual void Parse(IXFStream* pOutputStream) override;
     LwpBorderStuff& GetBorderStuff() { return m_BorderBuffer; }
-protected:
-    virtual void Read() override;
-protected:
-    LwpBorderStuff m_BorderBuffer;
 private:
+    virtual void Read() override;
     virtual ~LwpLayoutGutters() override;
+
+    LwpBorderStuff m_BorderBuffer;
 };
 
 class LwpJoinStuff
@@ -293,31 +285,29 @@ private:
     LwpColor m_Color;
 };
 
-class LwpLayoutJoins : public LwpVirtualPiece
+class LwpLayoutJoins final : public LwpVirtualPiece
 {
 public:
     LwpLayoutJoins(LwpObjectHeader const & objHdr, LwpSvStream* pStrm);
     virtual void Parse(IXFStream* pOutputStream) override;
-protected:
-    virtual void Read() override;
-protected:
-    LwpJoinStuff m_JoinStuff;
 private:
+    virtual void Read() override;
     virtual ~LwpLayoutJoins() override;
+
+    LwpJoinStuff m_JoinStuff;
 };
 
-class LwpLayoutShadow : public LwpVirtualPiece
+class LwpLayoutShadow final : public LwpVirtualPiece
 {
 public:
     LwpLayoutShadow(LwpObjectHeader const & objHdr, LwpSvStream* pStrm);
     virtual void Parse(IXFStream* pOutputStream) override;
     LwpShadow& GetShadow() { return m_Shadow; }
-protected:
-    virtual void Read() override;
-protected:
-    LwpShadow m_Shadow;
 private:
+    virtual void Read() override;
     virtual ~LwpLayoutShadow() override;
+
+    LwpShadow m_Shadow;
 };
 
 class LwpLayoutRelativityGuts
@@ -362,18 +352,17 @@ private:
     sal_uInt8   m_nFlags;
 };
 
-class LwpLayoutRelativity: public LwpVirtualPiece
+class LwpLayoutRelativity final : public LwpVirtualPiece
 {
 public:
     LwpLayoutRelativity(LwpObjectHeader const & objHdr, LwpSvStream* pStrm);
     virtual void Parse(IXFStream* pOutputStream) override;
     LwpLayoutRelativityGuts& GetRelGuts() { return m_RelGuts; }
-protected:
-    virtual void Read() override;
-protected:
-    LwpLayoutRelativityGuts m_RelGuts;
 private:
+    virtual void Read() override;
     virtual ~LwpLayoutRelativity() override;
+
+    LwpLayoutRelativityGuts m_RelGuts;
 };
 
 #endif
diff --git a/lotuswordpro/source/filter/lwplnopts.hxx 
b/lotuswordpro/source/filter/lwplnopts.hxx
index 22959d83c26b..afa8bca39d21 100644
--- a/lotuswordpro/source/filter/lwplnopts.hxx
+++ b/lotuswordpro/source/filter/lwplnopts.hxx
@@ -65,14 +65,15 @@
 #include <lwptools.hxx>
 #include <xfilter/xflinenumberconfig.hxx>
 #include <xfilter/xfstylemanager.hxx>
+
 /**
  * @brief   line number options
 */
-class LwpLineNumberOptions
+class LwpLineNumberOptions final
 {
 public:
     explicit LwpLineNumberOptions(LwpObjectStream* pStrm);
-protected:
+private:
     sal_uInt16 m_nType;
     sal_uInt16 m_nFlags;
     sal_uInt16 m_nSeparator;
diff --git a/lotuswordpro/source/filter/lwpnotes.hxx 
b/lotuswordpro/source/filter/lwpnotes.hxx
index 4576f2bcc1c6..9abcce3897f6 100644
--- a/lotuswordpro/source/filter/lwpnotes.hxx
+++ b/lotuswordpro/source/filter/lwpnotes.hxx
@@ -83,7 +83,7 @@ private:
  * @brief       VO_NOTELAYOUT object
  *
  */
-class LwpNoteLayout: public LwpFrameLayout
+class LwpNoteLayout final : public LwpFrameLayout
 {
 public:
     LwpNoteLayout(LwpObjectHeader const &objHdr, LwpSvStream* pStrm);
@@ -94,11 +94,10 @@ public:
     sal_uInt32 GetTime(){ return m_nTime;}
     OUString GetAuthor();
 
-protected:
+private:
     void Read() override;
     LwpVirtualLayout* GetTextLayout();
 
-private:
     sal_uInt32 m_nTime;
     LwpAtomHolder m_UserName;
 };
diff --git a/lotuswordpro/source/filter/lwpnumberingoverride.hxx 
b/lotuswordpro/source/filter/lwpnumberingoverride.hxx
index 7fe2afb0dce7..029bef6a70d0 100644
--- a/lotuswordpro/source/filter/lwpnumberingoverride.hxx
+++ b/lotuswordpro/source/filter/lwpnumberingoverride.hxx
@@ -63,7 +63,7 @@
 #include <lwpoverride.hxx>
 
 class LwpObjectStream;
-class LwpNumberingOverride : public LwpOverride
+class LwpNumberingOverride final : public LwpOverride
 {
 public:
     LwpNumberingOverride();
@@ -77,7 +77,7 @@ public:
         HEADING         = 0x0004,
         SMARTLEVEL      = 0x0008
     };
-public:
+
     virtual void Read(LwpObjectStream *pStrm) override;
 
     inline sal_uInt16 GetLevel() const;
@@ -86,10 +86,8 @@ public:
 
     void OverrideLevel(sal_uInt16 nNewLv);
 
-protected:
-    LwpNumberingOverride(LwpNumberingOverride const& rOther);
-
 private:
+    LwpNumberingOverride(LwpNumberingOverride const& rOther);
     LwpNumberingOverride& operator=(LwpNumberingOverride const& rOther) = 
delete;
 
     sal_uInt16  m_nLevel;
diff --git a/lotuswordpro/source/filter/lwpnumericfmt.hxx 
b/lotuswordpro/source/filter/lwpnumericfmt.hxx
index 2dc55fe2919d..fb22a531cdb0 100644
--- a/lotuswordpro/source/filter/lwpnumericfmt.hxx
+++ b/lotuswordpro/source/filter/lwpnumericfmt.hxx
@@ -71,7 +71,7 @@
 
 class LwpObjectStream;
 
-class LwpNumericFormatSubset
+class LwpNumericFormatSubset final
 {
 public:
     LwpNumericFormatSubset();
@@ -83,7 +83,7 @@ public:
     bool IsDefaultSuffix(){ return !(cSubFlags&SF_OVER_SUFFIX); }
     LwpColor GetColor();
 
-protected:
+private:
     LwpColor cColor;
     LwpAtomHolder cPrefix;
     LwpAtomHolder cSuffix;
@@ -292,7 +292,7 @@ LwpNumericFormat::IsNegativeOverridden()
     return (cFlags & NF_OVER_NEGATIVE) != 0;
 }
 
-class LwpLayoutNumerics : public LwpVirtualPiece
+class LwpLayoutNumerics final : public LwpVirtualPiece
 {
 public:
     LwpLayoutNumerics(LwpObjectHeader const & objHdr, LwpSvStream* pStrm)
@@ -300,11 +300,10 @@ public:
     XFStyle* Convert();
     virtual void Read() override;
 
-protected:
-    LwpNumericFormat cNumerics;
-
 private:
     virtual ~LwpLayoutNumerics() override {}
+
+    LwpNumericFormat cNumerics;
 };
 
 #endif
diff --git a/lotuswordpro/source/filter/lwppagelayout.hxx 
b/lotuswordpro/source/filter/lwppagelayout.hxx
index 9dda1e2d11c2..68402d3e05fc 100644
--- a/lotuswordpro/source/filter/lwppagelayout.hxx
+++ b/lotuswordpro/source/filter/lwppagelayout.hxx
@@ -64,7 +64,7 @@
 class LwpHeaderLayout;
 class LwpFooterLayout;
 
-class LwpPageLayout: public LwpLayout
+class LwpPageLayout final : public LwpLayout
 {
 public:
     LwpPageLayout(LwpObjectHeader const &objHdr, LwpSvStream* pStrm);
@@ -73,7 +73,8 @@ public:
     OUString RegisterEndnoteStyle();
     virtual void Parse(IXFStream* pOutputStream) override;
     virtual LWP_LAYOUT_TYPE GetLayoutType () override { return 
LWP_PAGE_LAYOUT;}
-protected:
+
+private:
     void Read() override;
     LwpHeaderLayout* GetHeaderLayout();
     LwpFooterLayout* GetFooterLayout();
@@ -91,7 +92,6 @@ protected:
     void GetWidthAndHeight(double& fWidth, double& fHeight);
     double GetWidth() override;
     double GetHeight() override;
-protected:
     LwpAtomHolder   m_PrinterBinName;
     sal_uInt16      m_nPrinterBin;
     sal_Int32       m_nBdroffset;
diff --git a/lotuswordpro/source/filter/lwppara.hxx 
b/lotuswordpro/source/filter/lwppara.hxx
index c3619ffceb8c..282afeb16591 100644
--- a/lotuswordpro/source/filter/lwppara.hxx
+++ b/lotuswordpro/source/filter/lwppara.hxx
@@ -86,25 +86,25 @@ class LwpParaProperty;
 class LwpPara;
 class LwpBreaksOverride;
 class LwpBulletStyleMgr;
-class LwpNotifyListPersistent
+
+class LwpNotifyListPersistent final
 {
 public:
     LwpNotifyListPersistent(){}
     void Read(LwpObjectStream* pObjStrm);
-protected:
+private:
     LwpObjectID m_Head;
 };
 
-class LwpForked3NotifyList
+class LwpForked3NotifyList final
 {
 public:
     LwpForked3NotifyList(){}
-protected:
-    LwpNotifyListPersistent m_ExtraList;
-    LwpNotifyListPersistent m_PersistentList;
-public:
     LwpNotifyListPersistent& GetExtraList() { return m_ExtraList; }
     void Read(LwpObjectStream* pObjStrm);
+private:
+    LwpNotifyListPersistent m_ExtraList;
+    LwpNotifyListPersistent m_PersistentList;
 };
 
 class LwpParaStyle;
diff --git a/lotuswordpro/source/filter/lwpparaborderoverride.hxx 
b/lotuswordpro/source/filter/lwpparaborderoverride.hxx
index 8392ad7fd65c..5ad9f9745660 100644
--- a/lotuswordpro/source/filter/lwpparaborderoverride.hxx
+++ b/lotuswordpro/source/filter/lwpparaborderoverride.hxx
@@ -66,7 +66,7 @@ class LwpBorderStuff;
 class LwpShadow;
 class LwpMargins;
 
-class LwpParaBorderOverride : public LwpOverride
+class LwpParaBorderOverride final : public LwpOverride
 {
 public:
     LwpParaBorderOverride();
@@ -81,7 +81,6 @@ public:
         PB_MARGINWIDTH  = 2,        /* Border extends to margins */
         PB_CUSTOMWIDTH  = 3         /* Border width is specified explicitly */
     };
-public:
     virtual void Read(LwpObjectStream *pStrm) override;
 
     LwpShadow*  GetShadow(){ return m_pShadow; }
@@ -134,13 +133,10 @@ public:
 
     friend class LwpParaBorderPiece;
 
-protected:
-    LwpParaBorderOverride(LwpParaBorderOverride const& rOther);
-
 private:
+    LwpParaBorderOverride(LwpParaBorderOverride const& rOther);
     LwpParaBorderOverride& operator=(LwpParaBorderOverride const& rOther) = 
delete;
 
-protected:
     enum
     {
         PBO_STUFF           = 0x0001,
@@ -158,7 +154,6 @@ protected:
         PBO_RIGHT           = 0x1000
     };
 
-private:
     LwpBorderStuff      *m_pBorderStuff;
     LwpBorderStuff      *m_pBetweenStuff;
     LwpShadow           *m_pShadow;
diff --git a/lotuswordpro/source/filter/lwpstory.hxx 
b/lotuswordpro/source/filter/lwpstory.hxx
index fc3426de9b33..698ecc39168b 100644
--- a/lotuswordpro/source/filter/lwpstory.hxx
+++ b/lotuswordpro/source/filter/lwpstory.hxx
@@ -67,7 +67,7 @@
 #include "lwpcontent.hxx"
 
 class LwpPageLayout;
-class LwpStory: public LwpContent
+class LwpStory final : public LwpContent
 {
 public:
     LwpStory(LwpObjectHeader const &objHdr, LwpSvStream* pStrm);
@@ -93,7 +93,6 @@ private:
 
     rtl::Reference<XFContentContainer> m_xXFContainer;
 
-protected:
     void Read() override;
     void XFConvertFrameInCell(XFContentContainer* pCont);
     void XFConvertFrameInFrame(XFContentContainer* pCont);
diff --git a/lotuswordpro/source/filter/lwptable.hxx 
b/lotuswordpro/source/filter/lwptable.hxx
index b296c436efcb..435e9e559bba 100644
--- a/lotuswordpro/source/filter/lwptable.hxx
+++ b/lotuswordpro/source/filter/lwptable.hxx
@@ -90,7 +90,7 @@ protected:
  * @brief
  * for VO_TABLE object reading
  */
-class LwpForkedNotifyList
+class LwpForkedNotifyList final
 {
 public:
     LwpForkedNotifyList(){}
@@ -99,7 +99,7 @@ public:
         m_PersistentList.Read(pObjStrm);
     };
 
-protected:
+private:
     LwpNotifyListPersistent m_PersistentList;
 };
 /**
@@ -174,12 +174,12 @@ protected:
 #define MAX_NUM_ROWS 8192
 #define MAX_NUM_COLS 255
 
-class LwpGlossary : public LwpParallelColumns
+class LwpGlossary final : public LwpParallelColumns
 {
 public:
     LwpGlossary(LwpObjectHeader const &objHdr, LwpSvStream* pStrm);
     virtual ~LwpGlossary() override;
-protected:
+private:
     void Read() override;
     sal_uInt16 GetNumIndexRows();
 };
diff --git a/lotuswordpro/source/filter/lwptaboverride.hxx 
b/lotuswordpro/source/filter/lwptaboverride.hxx
index dd1eabe5a390..a2ea4b487096 100644
--- a/lotuswordpro/source/filter/lwptaboverride.hxx
+++ b/lotuswordpro/source/filter/lwptaboverride.hxx
@@ -63,7 +63,7 @@
 #include <lwpoverride.hxx>
 #include <lwpobjid.hxx>
 
-class   LwpTabOverride : public LwpOverride
+class LwpTabOverride final : public LwpOverride
 {
 public:
     LwpTabOverride()
@@ -86,13 +86,10 @@ public:
     inline LwpObjectID& GetTabRackID();
     inline void Override(LwpTabOverride* pOther);
 
-protected:
-    LwpTabOverride(LwpTabOverride const& rOther);
-
 private:
+    LwpTabOverride(LwpTabOverride const& rOther);
     LwpTabOverride& operator=(LwpTabOverride const& rOther) = delete;
 
-private:
     LwpObjectID m_aTabRackID;
     enum
     {
diff --git a/lotuswordpro/source/filter/lwptblcell.hxx 
b/lotuswordpro/source/filter/lwptblcell.hxx
index 89ef2071b69e..61d4393b8f8e 100644
--- a/lotuswordpro/source/filter/lwptblcell.hxx
+++ b/lotuswordpro/source/filter/lwptblcell.hxx
@@ -99,7 +99,7 @@ protected:
  * @brief
  * VO_ROWLIST object
  */
-class LwpRowList : public LwpDLVList
+class LwpRowList final : public LwpDLVList
 {
 public:
     LwpRowList(LwpObjectHeader const &objHdr, LwpSvStream* pStrm);
@@ -108,38 +108,37 @@ public:
     LwpObjectID GetChildHeadID(){return cChild.GetHead();}
     LwpObjectID GetNextID(){return GetNext();}
     sal_uInt16 GetRowID(){return cRowID;}
-protected:
+private:
+    void Read() override;
+    virtual ~LwpRowList() override;
+
     LwpDLVListHeadTail cChild;
     LwpObjectID cParent;
     sal_uInt16 cRowID;
-    void Read() override;
-private:
-    virtual ~LwpRowList() override;
 };
 /**
  * @brief
  * VO_NUMERICVALUE object
  */
-class LwpNumericValue : public LwpObject
+class LwpNumericValue final : public LwpObject
 {
 public:
     LwpNumericValue(LwpObjectHeader const &objHdr, LwpSvStream* pStrm);
 
     double GetValue(){return cNumber;}
     void Parse(IXFStream* pOutputStream) override;
-protected:
-    double cNumber;
-    //LwpContent m_TheContent;
-    void Read() override;
 private:
+    void Read() override;
     virtual ~LwpNumericValue() override;
+
+    double cNumber;
 };
 
 /**
  * @brief
  * VO_TABLERANGE object
  */
-class LwpTableRange: public LwpDLVList
+class LwpTableRange final : public LwpDLVList
 {
 public:
     LwpTableRange(LwpObjectHeader const &objHdr, LwpSvStream* pStrm);
@@ -148,61 +147,63 @@ public:
     const LwpObjectID& GetCellRangeID(){return cpCellRange;}
     const LwpObjectID& GetTableID(){ return cqTable;}
     LwpTableRange* GetNext() { return 
dynamic_cast<LwpTableRange*>(LwpDLVList::GetNext().obj().get());}
-protected:
-    LwpObjectID cqTable;
-    LwpObjectID cpCellRange;
-    void Read() override;
 private:
+    void Read() override;
     virtual ~LwpTableRange() override;
+
+    LwpObjectID cqTable;
+    LwpObjectID cpCellRange;
 };
 /**
  * @brief
  * VO_CELLRANGE object
  */
-class LwpCellRange: public LwpObject
+class LwpCellRange final : public LwpObject
 {
 public:
     LwpCellRange(LwpObjectHeader const &objHdr, LwpSvStream* pStrm);
 
     void Parse(IXFStream* pOutputStream) override;
     const LwpObjectID& GetFolderID(){return cpFolder;}
-protected:
-    LwpObjectID cpFolder;
-    void Read() override;
 private:
+    void Read() override;
     virtual ~LwpCellRange() override;
+
+    LwpObjectID cpFolder;
 };
 /**
  * @brief
  * VO_FOLDER object
  */
-class LwpFolder: public LwpDLVList
+class LwpFolder final : public LwpDLVList
 {
 public:
     LwpFolder(LwpObjectHeader const &objHdr, LwpSvStream* pStrm);
 
     void Parse(IXFStream* pOutputStream) override;
     LwpObjectID GetChildHeadID(){ return cChild.GetHead();}
-protected:
+private:
+    void Read() override;
+    virtual ~LwpFolder() override;
+
     LwpDLVListHeadTail cChild;
     LwpObjectID cParent;
     LwpObjectID cqTable;
-    void Read() override;
-private:
-    virtual ~LwpFolder() override;
 };
 /**
  * @brief
  * VO_DEPENDENT object
  */
-class LwpDependent: public LwpDLVList
+class LwpDependent final : public LwpDLVList
 {
 public:
     LwpDependent(LwpObjectHeader const &objHdr, LwpSvStream* pStrm);
 
     void Parse(IXFStream* pOutputStream) override;
-protected:
+private:
     void Read() override;
+    virtual ~LwpDependent() override;
+
     LwpObjectID cFormulaInfo;
     sal_uInt16 cReferenceOffset;    // Used to fix dependent formula when we're
                                 //  dropped, sorted.
@@ -215,8 +216,6 @@ protected:
     };
     sal_uInt8 cFlags;                // Used to fix dependent formula when 
we're
                                 //  dropped, sorted.
-private:
-    virtual ~LwpDependent() override;
 };
 
 /**
diff --git a/lotuswordpro/source/filter/lwptblformula.hxx 
b/lotuswordpro/source/filter/lwptblformula.hxx
index 44a61b017e26..800ad4020f20 100644
--- a/lotuswordpro/source/filter/lwptblformula.hxx
+++ b/lotuswordpro/source/filter/lwptblformula.hxx
@@ -191,13 +191,13 @@ public:
     virtual OUString ToString(LwpTableLayout* pCellsMap) override;
 };
 
-class LwpFormulaInfo : public LwpCellList
+class LwpFormulaInfo final : public LwpCellList
 {
 public:
     LwpFormulaInfo(LwpObjectHeader const &objHdr, LwpSvStream* pStrm);
     OUString Convert(LwpTableLayout* pCellsMap);
     void Convert(XFCell * pCell, LwpTableLayout* pCellsMap=nullptr) override;
-protected:
+private:
     void Read() override;
     bool ReadCellID();
     void ReadText();
@@ -205,13 +205,11 @@ protected:
     void ReadExpression();
     void ReadArguments(LwpFormulaFunc& aFunc);
     bool m_bSupported;
-private:
     virtual ~LwpFormulaInfo() override;
-
-    std::vector<LwpFormulaArg*> m_aStack;
     void ReadConst();
     void MarkUnsupported(sal_uInt16 TokenType);
 
+    std::vector<LwpFormulaArg*> m_aStack;
     sal_uInt16 m_nFormulaRow;
 };
 
diff --git a/lotuswordpro/source/filter/lwptoc.hxx 
b/lotuswordpro/source/filter/lwptoc.hxx
index 7923fdf8c394..b6e5e67fd1f2 100644
--- a/lotuswordpro/source/filter/lwptoc.hxx
+++ b/lotuswordpro/source/filter/lwptoc.hxx
@@ -67,7 +67,7 @@ class XFIndex;
  * @brief
  * VO_TOCSUPERTABLELAYOUT object
  */
-class LwpTocSuperLayout : public LwpSuperTableLayout
+class LwpTocSuperLayout final : public LwpSuperTableLayout
 {
 public:
     LwpTocSuperLayout(LwpObjectHeader const &objHdr, LwpSvStream* pStrm);
@@ -76,7 +76,7 @@ public:
     virtual void XFConvert(XFContentContainer* pCont) override;
     virtual LWP_LAYOUT_TYPE GetLayoutType () override { return 
LWP_TOC_SUPERTABLE_LAYOUT;}
     virtual void XFConvertFrame(XFContentContainer* pCont, sal_Int32 nStart = 
0, sal_Int32 nEnd = 0, bool bAll = false) override;
-protected:
+private:
     void Read() override;
     bool GetRightAlignPageNumber(sal_uInt16 index);
     bool GetUsePageNumber(sal_uInt16 index);
@@ -84,7 +84,7 @@ protected:
     LwpTocLevelData * GetSearchLevelPtr(sal_uInt16 index);
     static LwpTocLevelData * GetNextSearchLevelPtr(sal_uInt16 index, 
LwpTocLevelData * pCurData);
     void AddSourceStyle(XFIndex* pToc, LwpTocLevelData * pLevel,  LwpFoundry * 
pFoundry);
-private:
+
     enum {MAX_LEVELS = 9};
     enum
     {
diff --git a/lotuswordpro/source/filter/lwpvpointer.hxx 
b/lotuswordpro/source/filter/lwpvpointer.hxx
index 38be2b6a5f49..3ed6356dbc64 100644
--- a/lotuswordpro/source/filter/lwpvpointer.hxx
+++ b/lotuswordpro/source/filter/lwpvpointer.hxx
@@ -64,7 +64,7 @@
 #define INCLUDED_LOTUSWORDPRO_SOURCE_FILTER_LWPVPOINTER_HXX
 
 #include <lwpobj.hxx>
-class LwpVersionedPointer : public LwpObject
+class LwpVersionedPointer final : public LwpObject
 {
 public:
     LwpVersionedPointer(LwpObjectHeader const & objHdr, LwpSvStream* pStrm);
@@ -72,9 +72,8 @@ public:
     void RegisterStyle() override;
     void Parse(IXFStream* pOutputStream) override;
     LwpObjectID& GetPointer(){return m_PointerID;}
-protected:
-    LwpObjectID m_PointerID;
 private:
+    LwpObjectID m_PointerID;
     virtual ~LwpVersionedPointer() override {}
 };
 #endif
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to