[Libreoffice-commits] core.git: compilerplugins/clang include/basic include/comphelper include/connectivity include/drawinglayer include/editeng include/filter include/oox include/registry include/sfx2 include/sot include/svl include/svtools include/svx include/toolkit include/vbahelper include/vcl vcl/inc vcl/source
Noel Grandin (via logerrit)
logerrit at kemper.freedesktop.org
Sat Jun 19 12:11:49 UTC 2021
compilerplugins/clang/finalclasses.cxx | 4 +-
compilerplugins/clang/finalclasses.py | 2 -
include/basic/basmgr.hxx | 4 --
include/basic/sbmeth.hxx | 2 -
include/basic/sbmod.hxx | 2 -
include/basic/sbstar.hxx | 7 ---
include/basic/sbx.hxx | 3 -
include/comphelper/SelectionMultiplex.hxx | 4 +-
include/comphelper/accessiblewrapper.hxx | 8 +---
include/comphelper/configurationlistener.hxx | 5 +-
include/comphelper/containermultiplexer.hxx | 2 -
include/comphelper/propmultiplex.hxx | 4 +-
include/connectivity/PColumn.hxx | 6 +--
include/connectivity/dbcharset.hxx | 1
include/connectivity/sqlscan.hxx | 2 -
include/drawinglayer/primitive2d/Primitive2DContainer.hxx | 2 -
include/editeng/colritem.hxx | 2 -
include/editeng/unotext.hxx | 4 +-
include/filter/msfilter/mstoolbar.hxx | 4 +-
include/oox/ole/axbinaryreader.hxx | 12 +++---
include/oox/ole/axbinarywriter.hxx | 6 +--
include/registry/registry.hxx | 12 +++---
include/sfx2/bindings.hxx | 2 -
include/sfx2/linkmgr.hxx | 2 -
include/sfx2/objsh.hxx | 1
include/sfx2/sidebar/SidebarController.hxx | 2 -
include/sfx2/viewfrm.hxx | 6 ---
include/sfx2/zoomitem.hxx | 2 -
include/sot/stg.hxx | 6 +--
include/sot/storage.hxx | 3 -
include/svl/itemset.hxx | 4 +-
include/svtools/brwbox.hxx | 4 +-
include/svtools/editbrowsebox.hxx | 19 ++++-----
include/svx/EnhancedCustomShape2d.hxx | 2 -
include/svx/bmpmask.hxx | 2 -
include/svx/float3d.hxx | 6 +--
include/svx/fmsrcimp.hxx | 4 +-
include/svx/fmtools.hxx | 2 -
include/svx/gallerybinaryengine.hxx | 2 -
include/svx/gallerybinaryengineentry.hxx | 2 -
include/svx/gallerybinarystoragelocations.hxx | 2 -
include/svx/galtheme.hxx | 2 -
include/svx/graphctl.hxx | 4 --
include/svx/hlnkitem.hxx | 2 -
include/svx/imapdlg.hxx | 2 -
include/svx/nbdtmg.hxx | 4 +-
include/svx/rubydialog.hxx | 2 -
include/svx/scene3d.hxx | 5 +-
include/svx/sdasitm.hxx | 2 -
include/svx/sdgcpitm.hxx | 2 -
include/svx/sdggaitm.hxx | 2 -
include/svx/sdgluitm.hxx | 4 +-
include/svx/sdgmoitm.hxx | 2 -
include/svx/sdr/contact/viewcontactofsdrmediaobj.hxx | 5 +-
include/svx/sdtaditm.hxx | 2 -
include/svx/sdtaitm.hxx | 4 +-
include/svx/sdtakitm.hxx | 2 -
include/svx/sdtfsitm.hxx | 2 -
include/svx/srchdlg.hxx | 2 -
include/svx/svdhdl.hxx | 4 --
include/svx/svdlayer.hxx | 2 -
include/svx/svdoedge.hxx | 5 +-
include/svx/svdograf.hxx | 3 -
include/svx/svdomeas.hxx | 5 --
include/svx/svdpage.hxx | 2 -
include/svx/svx3ditems.hxx | 22 +++++------
include/svx/sxcecitm.hxx | 8 ++--
include/svx/sxcllitm.hxx | 4 +-
include/svx/sxctitm.hxx | 2 -
include/svx/sxekitm.hxx | 2 -
include/svx/sxelditm.hxx | 2 -
include/svx/sxenditm.hxx | 12 +++---
include/svx/sxmbritm.hxx | 2 -
include/svx/sxmtfitm.hxx | 6 +--
include/svx/sxmtpitm.hxx | 4 +-
include/svx/sxmtritm.hxx | 2 -
include/svx/sxmuitm.hxx | 2 -
include/svx/unoshape.hxx | 2 -
include/svx/xbtmpit.hxx | 2 -
include/svx/xflftrit.hxx | 2 -
include/svx/xflhtit.hxx | 2 -
include/svx/xlndsit.hxx | 2 -
include/svx/xlnedcit.hxx | 2 -
include/svx/xlnstcit.hxx | 2 -
include/svx/xtable.hxx | 24 +++---------
include/toolkit/awt/vclxdevice.hxx | 2 -
include/vbahelper/vbacollectionimpl.hxx | 2 -
include/vcl/BitmapBasicMorphologyFilter.hxx | 4 +-
include/vcl/BitmapFilterStackBlur.hxx | 2 -
include/vcl/alpha.hxx | 2 -
include/vcl/filter/pdfdocument.hxx | 28 +++++++-------
include/vcl/fontcharmap.hxx | 2 -
include/vcl/layout.hxx | 2 -
include/vcl/menu.hxx | 8 +---
include/vcl/pdfextoutdevdata.hxx | 2 -
include/vcl/tabpage.hxx | 2 -
include/vcl/toolkit/field.hxx | 6 +--
include/vcl/toolkit/group.hxx | 2 -
include/vcl/toolkit/ivctrl.hxx | 4 --
include/vcl/toolkit/svlbitm.hxx | 2 -
include/vcl/transfer.hxx | 6 +--
include/vcl/uitest/formattedfielduiobject.hxx | 4 +-
include/vcl/uitest/metricfielduiobject.hxx | 4 +-
include/vcl/xtextedt.hxx | 2 -
vcl/inc/wizdlg.hxx | 4 --
vcl/source/control/roadmapwizard.cxx | 19 +--------
vcl/source/control/wizardmachine.cxx | 8 ----
107 files changed, 197 insertions(+), 268 deletions(-)
New commits:
commit e3077168072452fb8f1c0a8afb2992877cb96d1c
Author: Noel Grandin <noel.grandin at collabora.co.uk>
AuthorDate: Thu Jun 17 09:49:37 2021 +0200
Commit: Noel Grandin <noel.grandin at collabora.co.uk>
CommitDate: Sat Jun 19 14:08:50 2021 +0200
loplugin:finalclasses
improve the plugin to detect more cases.
I only apply the new final changes to classes in /include here.
Which reveals that
RoadmapWizard::getPageController( TabPage* _pCurrentPage )
will always return nullptr
Also needed to sprinkle some
SAL_DLLPUBLIC_TEMPLATE
around to workaround Visual Studio linking problems.
Change-Id: Iadb7d46a9e0e73dabce562375ca013c0fea6690c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/117365
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin at collabora.co.uk>
diff --git a/compilerplugins/clang/finalclasses.cxx b/compilerplugins/clang/finalclasses.cxx
index 4271a0a76f1b..ff7b34925630 100644
--- a/compilerplugins/clang/finalclasses.cxx
+++ b/compilerplugins/clang/finalclasses.cxx
@@ -22,7 +22,7 @@ or
In the case of (a), those members/fields can be made private.
In the case of (b), making the class final means the compiler can devirtualise
-some method class.
+some method calls
The process goes something like this:
$ make check
@@ -86,7 +86,6 @@ bool FinalClasses::VisitCXXRecordDecl(const CXXRecordDecl* decl)
{
if (ignoreLocation(decl))
return true;
- decl = decl->getCanonicalDecl();
if (!decl->hasDefinition())
return true;
@@ -114,6 +113,7 @@ bool FinalClasses::VisitCXXRecordDecl(const CXXRecordDecl* decl)
if ( i->isVirtual() )
bFoundVirtual = true;
}
+
if (!bFoundProtected)
{
for (auto it = decl->field_begin(); it != decl->field_end(); ++it) {
diff --git a/compilerplugins/clang/finalclasses.py b/compilerplugins/clang/finalclasses.py
index dfaa402f9513..05a1d0c43c8c 100755
--- a/compilerplugins/clang/finalclasses.py
+++ b/compilerplugins/clang/finalclasses.py
@@ -1,4 +1,4 @@
-#!/usr/bin/python
+#!/usr/bin/python3
import re
import sys
diff --git a/include/basic/basmgr.hxx b/include/basic/basmgr.hxx
index b439baed85fa..55f582ae6496 100644
--- a/include/basic/basmgr.hxx
+++ b/include/basic/basmgr.hxx
@@ -104,7 +104,7 @@ struct BasicManagerImpl;
#define LIB_NOTFOUND 0xFFFF
-class BASIC_DLLPUBLIC BasicManager : public SfxBroadcaster
+class BASIC_DLLPUBLIC BasicManager final : public SfxBroadcaster
{
friend class LibraryContainer_Impl;
friend class StarBasicAccess_Impl;
@@ -121,8 +121,6 @@ private:
std::unique_ptr<BasicManagerImpl> mpImpl;
BASIC_DLLPRIVATE void Init();
-
-protected:
bool ImpLoadLibrary( BasicLibInfo* pLibInfo, SotStorage* pCurStorage );
void ImpCreateStdLib( StarBASIC* pParentFromStdLib );
void ImpMgrNotLoaded( const OUString& rStorageName );
diff --git a/include/basic/sbmeth.hxx b/include/basic/sbmeth.hxx
index 5fa65b79b37c..fefd84aed1ea 100644
--- a/include/basic/sbmeth.hxx
+++ b/include/basic/sbmeth.hxx
@@ -67,7 +67,7 @@ public:
typedef tools::SvRef<SbMethod> SbMethodRef;
-class SbIfaceMapperMethod : public SbMethod
+class SbIfaceMapperMethod final : public SbMethod
{
friend class SbiRuntime;
diff --git a/include/basic/sbmod.hxx b/include/basic/sbmod.hxx
index 3a0ebaa0a091..3f4d3e602407 100644
--- a/include/basic/sbmod.hxx
+++ b/include/basic/sbmod.hxx
@@ -139,7 +139,7 @@ typedef tools::SvRef<SbModule> SbModuleRef;
typedef std::vector<SbModuleRef> SbModules;
// Object class for instances of class modules
-class UNLESS_MERGELIBS(BASIC_DLLPUBLIC) SbClassModuleObject : public SbModule
+class UNLESS_MERGELIBS(BASIC_DLLPUBLIC) SbClassModuleObject final : public SbModule
{
SbModule* mpClassModule;
bool mbInitializeEventDone;
diff --git a/include/basic/sbstar.hxx b/include/basic/sbstar.hxx
index 9c3d02421af9..08040a4d5510 100644
--- a/include/basic/sbstar.hxx
+++ b/include/basic/sbstar.hxx
@@ -34,7 +34,7 @@ namespace com::sun::star::script { struct ModuleInfo; }
class SbMethod;
-class BASIC_DLLPUBLIC StarBASIC : public SbxObject
+class BASIC_DLLPUBLIC StarBASIC final : public SbxObject
{
friend class SbiScanner;
friend class SbiExpression; // Access to RTL
@@ -58,17 +58,12 @@ class BASIC_DLLPUBLIC StarBASIC : public SbxObject
SbxObjectRef pVBAGlobals;
BASIC_DLLPRIVATE void implClearDependingVarsOnDelete( StarBASIC* pDeletedBasic );
-
-protected:
bool CError( ErrCode, const OUString&, sal_Int32, sal_Int32, sal_Int32 );
-private:
BASIC_DLLPRIVATE bool RTError( ErrCode, const OUString& rMsg, sal_Int32, sal_Int32, sal_Int32 );
BASIC_DLLPRIVATE BasicDebugFlags BreakPoint( sal_Int32 nLine, sal_Int32 nCol1, sal_Int32 nCol2 );
BASIC_DLLPRIVATE BasicDebugFlags StepPoint( sal_Int32 nLine, sal_Int32 nCol1, sal_Int32 nCol2 );
virtual bool LoadData( SvStream&, sal_uInt16 ) override;
virtual bool StoreData( SvStream& ) const override;
-
-protected:
bool ErrorHdl();
BasicDebugFlags BreakHdl();
virtual ~StarBASIC() override;
diff --git a/include/basic/sbx.hxx b/include/basic/sbx.hxx
index c0d3daa3a78f..999ba3c3127d 100644
--- a/include/basic/sbx.hxx
+++ b/include/basic/sbx.hxx
@@ -48,7 +48,7 @@ struct SbxParamInfo
typedef std::vector<std::unique_ptr<SbxParamInfo>> SbxParams;
-class UNLESS_MERGELIBS(BASIC_DLLPUBLIC) SbxInfo : public SvRefBase
+class UNLESS_MERGELIBS(BASIC_DLLPUBLIC) SbxInfo final : public SvRefBase
{
friend class SbxVariable;
friend class SbMethod;
@@ -61,7 +61,6 @@ class UNLESS_MERGELIBS(BASIC_DLLPUBLIC) SbxInfo : public SvRefBase
SbxInfo(SbxInfo const&) = delete;
void operator=(SbxInfo const&) = delete;
-protected:
void LoadData( SvStream&, sal_uInt16 );
void StoreData( SvStream& ) const;
virtual ~SbxInfo() override;
diff --git a/include/comphelper/SelectionMultiplex.hxx b/include/comphelper/SelectionMultiplex.hxx
index 46b892c37525..00ba7f955b09 100644
--- a/include/comphelper/SelectionMultiplex.hxx
+++ b/include/comphelper/SelectionMultiplex.hxx
@@ -55,7 +55,7 @@ namespace comphelper
//= OSelectionChangeMultiplexer
/// multiplexer for selection changes
- class COMPHELPER_DLLPUBLIC OSelectionChangeMultiplexer :public cppu::WeakImplHelper< css::view::XSelectionChangeListener>
+ class COMPHELPER_DLLPUBLIC OSelectionChangeMultiplexer final : public cppu::WeakImplHelper< css::view::XSelectionChangeListener>
{
friend class OSelectionChangeListener;
css::uno::Reference< css::view::XSelectionSupplier> m_xSet;
@@ -64,7 +64,7 @@ namespace comphelper
OSelectionChangeMultiplexer(const OSelectionChangeMultiplexer&) = delete;
OSelectionChangeMultiplexer& operator=(const OSelectionChangeMultiplexer&) = delete;
- protected:
+
virtual ~OSelectionChangeMultiplexer() override;
public:
OSelectionChangeMultiplexer(OSelectionChangeListener* _pListener, const css::uno::Reference< css::view::XSelectionSupplier>& _rxSet);
diff --git a/include/comphelper/accessiblewrapper.hxx b/include/comphelper/accessiblewrapper.hxx
index ea9a0af0209b..2423f2ffc2a2 100644
--- a/include/comphelper/accessiblewrapper.hxx
+++ b/include/comphelper/accessiblewrapper.hxx
@@ -324,9 +324,8 @@ namespace comphelper
> OWrappedAccessibleChildrenManager_Base;
/** manages wrapping XAccessible's to XAccessible's
*/
- class UNLESS_MERGELIBS(COMPHELPER_DLLPUBLIC) OWrappedAccessibleChildrenManager : public OWrappedAccessibleChildrenManager_Base
+ class UNLESS_MERGELIBS(COMPHELPER_DLLPUBLIC) OWrappedAccessibleChildrenManager final : public OWrappedAccessibleChildrenManager_Base
{
- protected:
css::uno::Reference< css::uno::XComponentContext >
m_xContext;
css::uno::WeakReference< css::accessibility::XAccessible >
@@ -381,17 +380,14 @@ namespace comphelper
css::accessibility::AccessibleEventObject& _rTranslatedEvent
);
- protected:
+ private:
// XEventListener
virtual void SAL_CALL disposing( const css::lang::EventObject& Source ) override;
- protected:
void implTranslateChildEventValue( const css::uno::Any& _rInValue, css::uno::Any& _rOutValue );
- protected:
virtual ~OWrappedAccessibleChildrenManager( ) override;
- private:
OWrappedAccessibleChildrenManager( const OWrappedAccessibleChildrenManager& ) = delete;
OWrappedAccessibleChildrenManager& operator=( const OWrappedAccessibleChildrenManager& ) = delete;
};
diff --git a/include/comphelper/configurationlistener.hxx b/include/comphelper/configurationlistener.hxx
index bc7994a12c3a..55342514c2ba 100644
--- a/include/comphelper/configurationlistener.hxx
+++ b/include/comphelper/configurationlistener.hxx
@@ -59,8 +59,9 @@ public:
uno_type get() const { return maValue; }
};
-class COMPHELPER_DLLPUBLIC ConfigurationListener :
- public cppu::WeakImplHelper< css::beans::XPropertyChangeListener >
+// workaround for incremental linking bugs in MSVC2019
+class SAL_DLLPUBLIC_TEMPLATE ConfigurationListener_Base : public cppu::WeakImplHelper< css::beans::XPropertyChangeListener > {};
+class COMPHELPER_DLLPUBLIC ConfigurationListener final : public ConfigurationListener_Base
{
css::uno::Reference< css::beans::XPropertySet > mxConfig;
std::vector< ConfigurationListenerPropertyBase * > maListeners;
diff --git a/include/comphelper/containermultiplexer.hxx b/include/comphelper/containermultiplexer.hxx
index b1c4f9dadb5f..5b40b62ae515 100644
--- a/include/comphelper/containermultiplexer.hxx
+++ b/include/comphelper/containermultiplexer.hxx
@@ -69,7 +69,7 @@ namespace comphelper
// workaround for incremental linking bugs in MSVC2015
class SAL_DLLPUBLIC_TEMPLATE OContainerListenerAdapter_Base : public cppu::WeakImplHelper< css::container::XContainerListener > {};
- class COMPHELPER_DLLPUBLIC OContainerListenerAdapter : public OContainerListenerAdapter_Base
+ class COMPHELPER_DLLPUBLIC OContainerListenerAdapter final : public OContainerListenerAdapter_Base
{
friend class OContainerListener;
diff --git a/include/comphelper/propmultiplex.hxx b/include/comphelper/propmultiplex.hxx
index 38a1ee73056a..41d456d43dfb 100644
--- a/include/comphelper/propmultiplex.hxx
+++ b/include/comphelper/propmultiplex.hxx
@@ -72,7 +72,9 @@ namespace comphelper
//= OPropertyChangeMultiplexer
/// multiplexer for property changes
- class COMPHELPER_DLLPUBLIC OPropertyChangeMultiplexer :public cppu::WeakImplHelper< css::beans::XPropertyChangeListener>
+ // workaround for incremental linking bugs in MSVC2019
+ class SAL_DLLPUBLIC_TEMPLATE OPropertyChangeMultiplexer_Base : public cppu::WeakImplHelper< css::beans::XPropertyChangeListener > {};
+ class COMPHELPER_DLLPUBLIC OPropertyChangeMultiplexer final : public OPropertyChangeMultiplexer_Base
{
friend class OPropertyChangeListener;
std::vector< OUString > m_aProperties;
diff --git a/include/connectivity/PColumn.hxx b/include/connectivity/PColumn.hxx
index 8cb089324a79..46ceaa1bb099 100644
--- a/include/connectivity/PColumn.hxx
+++ b/include/connectivity/PColumn.hxx
@@ -40,7 +40,7 @@ namespace connectivity::parse
typedef sdbcx::OColumn OParseColumn_BASE;
typedef ::comphelper::OPropertyArrayUsageHelper<OParseColumn> OParseColumn_PROP;
- class OOO_DLLPUBLIC_DBTOOLS OParseColumn :
+ class OOO_DLLPUBLIC_DBTOOLS OParseColumn final :
public OParseColumn_BASE, public OParseColumn_PROP
{
OUString m_aRealName;
@@ -50,7 +50,6 @@ namespace connectivity::parse
bool m_bAggregateFunction;
bool m_bIsSearchable;
- protected:
virtual ::cppu::IPropertyArrayHelper* createArrayHelper() const override;
virtual ::cppu::IPropertyArrayHelper & SAL_CALL getInfoHelper() override;
@@ -112,12 +111,11 @@ namespace connectivity::parse
typedef sdbcx::OColumn OOrderColumn_BASE;
typedef ::comphelper::OPropertyArrayUsageHelper<OOrderColumn> OOrderColumn_PROP;
- class OOrderColumn :
+ class OOrderColumn final :
public OOrderColumn_BASE, public OOrderColumn_PROP
{
const bool m_bAscending;
- protected:
virtual ::cppu::IPropertyArrayHelper* createArrayHelper() const override;
virtual ::cppu::IPropertyArrayHelper & SAL_CALL getInfoHelper() override;
diff --git a/include/connectivity/dbcharset.hxx b/include/connectivity/dbcharset.hxx
index 79e8c8ec48cf..3ee993243d25 100644
--- a/include/connectivity/dbcharset.hxx
+++ b/include/connectivity/dbcharset.hxx
@@ -121,7 +121,6 @@ namespace dbtools
// friend sal_Int32 operator-(const CharsetIterator& lhs, const CharsetIterator& rhs);
- protected:
const OCharsetMap* m_pContainer;
OCharsetMap::TextEncBag::const_iterator m_aPos;
diff --git a/include/connectivity/sqlscan.hxx b/include/connectivity/sqlscan.hxx
index be6d4178f0a8..fe463f50606b 100644
--- a/include/connectivity/sqlscan.hxx
+++ b/include/connectivity/sqlscan.hxx
@@ -39,7 +39,7 @@ namespace connectivity
public:
OSQLScanner();
- virtual ~OSQLScanner();
+ ~OSQLScanner();
sal_Int32 SQLyygetc();
void SQLyyerror(char const *fmt);
diff --git a/include/drawinglayer/primitive2d/Primitive2DContainer.hxx b/include/drawinglayer/primitive2d/Primitive2DContainer.hxx
index cca3a0a91485..c62f960bd8d0 100644
--- a/include/drawinglayer/primitive2d/Primitive2DContainer.hxx
+++ b/include/drawinglayer/primitive2d/Primitive2DContainer.hxx
@@ -34,7 +34,7 @@ class ViewInformation2D;
namespace drawinglayer::primitive2d
{
-class SAL_WARN_UNUSED DRAWINGLAYER_DLLPUBLIC Primitive2DContainer
+class SAL_WARN_UNUSED DRAWINGLAYER_DLLPUBLIC Primitive2DContainer final
: public std::deque<Primitive2DReference>,
public Primitive2DDecompositionVisitor
{
diff --git a/include/editeng/colritem.hxx b/include/editeng/colritem.hxx
index 630648adea19..afb1d9d15c18 100644
--- a/include/editeng/colritem.hxx
+++ b/include/editeng/colritem.hxx
@@ -27,7 +27,7 @@
/** SvxColorItem item describes a color.
*/
-class EDITENG_DLLPUBLIC SvxColorItem : public SfxPoolItem
+class EDITENG_DLLPUBLIC SvxColorItem final : public SfxPoolItem
{
private:
Color mColor;
diff --git a/include/editeng/unotext.hxx b/include/editeng/unotext.hxx
index 8a029b72a1b1..0c09b4361edc 100644
--- a/include/editeng/unotext.hxx
+++ b/include/editeng/unotext.hxx
@@ -579,7 +579,7 @@ public:
};
-class SvxUnoTextContentEnumeration : public ::cppu::WeakAggImplHelper1< css::container::XEnumeration >
+class SvxUnoTextContentEnumeration final : public ::cppu::WeakAggImplHelper1< css::container::XEnumeration >
{
private:
css::uno::Reference< css::text::XText > mxParentText;
@@ -597,7 +597,7 @@ public:
};
-class SvxUnoTextRangeEnumeration : public ::cppu::WeakAggImplHelper1< css::container::XEnumeration >
+class SvxUnoTextRangeEnumeration final : public ::cppu::WeakAggImplHelper1< css::container::XEnumeration >
{
private:
std::unique_ptr<SvxEditSource> mpEditSource;
diff --git a/include/filter/msfilter/mstoolbar.hxx b/include/filter/msfilter/mstoolbar.hxx
index dacc21c3180b..7cceb145897d 100644
--- a/include/filter/msfilter/mstoolbar.hxx
+++ b/include/filter/msfilter/mstoolbar.hxx
@@ -207,7 +207,7 @@ public:
bool Read(SvStream &rS) override;
};
-class TBCBSpecific : public TBBase
+class TBCBSpecific final : public TBBase
{
sal_uInt8 bFlags;
std::shared_ptr< TBCBitMap > icon; // optional
@@ -245,7 +245,7 @@ public:
0x16 (ActiveX control) controlSpecificInfo MUST NOT exist
*/
-class MSFILTER_DLLPUBLIC TBCHeader : public TBBase
+class MSFILTER_DLLPUBLIC TBCHeader final : public TBBase
{
sal_Int8 bSignature;
sal_Int8 bVersion;
diff --git a/include/oox/ole/axbinaryreader.hxx b/include/oox/ole/axbinaryreader.hxx
index 43024556bdff..eb185f235d49 100644
--- a/include/oox/ole/axbinaryreader.hxx
+++ b/include/oox/ole/axbinaryreader.hxx
@@ -168,7 +168,7 @@ private:
};
/** Complex property for a 32-bit value pair, e.g. point or size. */
- struct PairProperty : public ComplexProperty
+ struct PairProperty final : public ComplexProperty
{
AxPairData& mrPairData;
@@ -178,7 +178,7 @@ private:
};
/** Complex property for a string value. */
- struct StringProperty : public ComplexProperty
+ struct StringProperty final : public ComplexProperty
{
OUString& mrValue;
sal_uInt32 mnSize;
@@ -189,7 +189,7 @@ private:
};
/** Complex property for an array of strings. */
- struct ArrayStringProperty : public ComplexProperty
+ struct ArrayStringProperty final : public ComplexProperty
{
AxArrayString& mrArray;
sal_uInt32 mnSize;
@@ -199,7 +199,7 @@ private:
};
/** Complex property for a GUID value. */
- struct GuidProperty : public ComplexProperty
+ struct GuidProperty final : public ComplexProperty
{
OUString& mrGuid;
@@ -209,7 +209,7 @@ private:
};
/** Stream property for a font structure. */
- struct FontProperty : public ComplexProperty
+ struct FontProperty final : public ComplexProperty
{
AxFontData& mrFontData;
@@ -219,7 +219,7 @@ private:
};
/** Stream property for a picture or mouse icon. */
- struct PictureProperty : public ComplexProperty
+ struct PictureProperty final : public ComplexProperty
{
StreamDataSequence& mrPicData;
diff --git a/include/oox/ole/axbinarywriter.hxx b/include/oox/ole/axbinarywriter.hxx
index 89bb4eb9a60c..eb370473aecb 100644
--- a/include/oox/ole/axbinarywriter.hxx
+++ b/include/oox/ole/axbinarywriter.hxx
@@ -116,7 +116,7 @@ private:
};
/** Complex property for a 32-bit value pair, e.g. point or size. */
- struct PairProperty : public ComplexProperty
+ struct PairProperty final : public ComplexProperty
{
AxPairData& mrPairData;
@@ -126,7 +126,7 @@ private:
};
/** Complex property for a string value. */
- struct StringProperty : public ComplexProperty
+ struct StringProperty final : public ComplexProperty
{
OUString& mrValue;
sal_uInt32 mnSize;
@@ -137,7 +137,7 @@ private:
};
/** Stream property for a picture or mouse icon. */
- struct PictureProperty : public ComplexProperty
+ struct PictureProperty final : public ComplexProperty
{
virtual bool writeProperty( AxAlignedOutputStream& rOutStrm ) override;
};
diff --git a/include/registry/registry.hxx b/include/registry/registry.hxx
index 3c81c41e077f..3190b13ca66c 100644
--- a/include/registry/registry.hxx
+++ b/include/registry/registry.hxx
@@ -208,7 +208,8 @@ public:
inline sal_uInt32 getLength() const;
friend class RegistryKey;
-protected:
+
+private:
/** sets the data of the key array.
@param registry specifies the registry files where the keys are located.
@@ -216,7 +217,7 @@ protected:
@param length specifies the length of the array specified by phKeys.
*/
inline void setKeyHandles(Registry const & registry, RegKeyHandle* phKeys, sal_uInt32 length);
-private:
+
/// stores the number of open subkeys, the number of elements.
sal_uInt32 m_length;
/// stores an array of open subkeys.
@@ -246,7 +247,8 @@ public:
inline sal_uInt32 getLength() const;
friend class RegistryKey;
-protected:
+
+private:
/** sets the data of the array.
@param registry specifies the registry files where the keys are located.
@@ -254,7 +256,7 @@ protected:
@param length specifies the length of the array specified by pKeyNames.
*/
inline void setKeyNames(Registry const & registry, rtl_uString** pKeyNames, sal_uInt32 length);
-private:
+
/// stores the number of key names, the number of elements.
sal_uInt32 m_length;
/// stores an array of key names.
@@ -557,7 +559,7 @@ public:
inline RegistryKey(Registry const & registry,
RegKeyHandle hKey);
-protected:
+private:
/** sets the internal registry on which this key should work.
*/
inline void setRegistry(Registry const & registry);
diff --git a/include/sfx2/bindings.hxx b/include/sfx2/bindings.hxx
index 3eb756ebb18d..f4f44bd1af7a 100644
--- a/include/sfx2/bindings.hxx
+++ b/include/sfx2/bindings.hxx
@@ -67,7 +67,7 @@ template<> struct typed_flags<SfxCallMode>: is_typed_flags<SfxCallMode, 0x0F>
}
-class SFX2_DLLPUBLIC SfxBindings: public SfxBroadcaster
+class SFX2_DLLPUBLIC SfxBindings final : public SfxBroadcaster
/* [Description]
diff --git a/include/sfx2/linkmgr.hxx b/include/sfx2/linkmgr.hxx
index b952e992092b..e4f58a996480 100644
--- a/include/sfx2/linkmgr.hxx
+++ b/include/sfx2/linkmgr.hxx
@@ -61,7 +61,7 @@ class SFX2_DLLPUBLIC LinkManager
SvLinkSources aServerTbl;
SfxObjectShell *pPersist; // LinkMgr must be release before SfxObjectShell
-protected:
+
bool InsertLink( SvBaseLink* pLink, SvBaseLinkObjectType nObjType, SfxLinkUpdateMode nUpdateType,
const OUString* pName );
public:
diff --git a/include/sfx2/objsh.hxx b/include/sfx2/objsh.hxx
index dfdd240a4413..725f72b1c9f6 100644
--- a/include/sfx2/objsh.hxx
+++ b/include/sfx2/objsh.hxx
@@ -814,7 +814,6 @@ typedef tools::SvRef<SfxObjectShell> SfxObjectShellRef;
class SfxObjectShellLock
{
-protected:
SfxObjectShell * pObj;
public:
SfxObjectShellLock() { pObj = nullptr; }
diff --git a/include/sfx2/sidebar/SidebarController.hxx b/include/sfx2/sidebar/SidebarController.hxx
index 48d595722717..133c1f5806c6 100644
--- a/include/sfx2/sidebar/SidebarController.hxx
+++ b/include/sfx2/sidebar/SidebarController.hxx
@@ -59,7 +59,7 @@ namespace sfx2::sidebar {
class DeckDescriptor;
class SidebarDockingWindow;
-class SFX2_DLLPUBLIC SidebarController
+class SFX2_DLLPUBLIC SidebarController final
: private ::cppu::BaseMutex,
public SidebarControllerInterfaceBase
{
diff --git a/include/sfx2/viewfrm.hxx b/include/sfx2/viewfrm.hxx
index 4585b722e487..7dd7f0e8553a 100644
--- a/include/sfx2/viewfrm.hxx
+++ b/include/sfx2/viewfrm.hxx
@@ -46,7 +46,7 @@ class SfxInfoBarWindow;
enum class InfobarType;
class CommandPopupHandler;
-class SFX2_DLLPUBLIC SfxViewFrame: public SfxShell, public SfxListener
+class SFX2_DLLPUBLIC SfxViewFrame final : public SfxShell, public SfxListener
{
std::unique_ptr<struct SfxViewFrame_Impl> m_pImpl;
@@ -59,12 +59,8 @@ class SFX2_DLLPUBLIC SfxViewFrame: public SfxShell, public SfxListener
std::unique_ptr<CommandPopupHandler> m_pCommandPopupHandler;
-private:
SAL_DLLPRIVATE void Construct_Impl( SfxObjectShell *pObjSh );
-
-protected:
virtual void Notify( SfxBroadcaster& rBC, const SfxHint& rHint ) override;
-
DECL_LINK(GetInvolvedHandler, weld::Button&, void);
DECL_LINK(DonationHandler, weld::Button&, void);
DECL_LINK(WhatsNewHandler, weld::Button&, void);
diff --git a/include/sfx2/zoomitem.hxx b/include/sfx2/zoomitem.hxx
index 32285cb704cd..4e7703dfdf92 100644
--- a/include/sfx2/zoomitem.hxx
+++ b/include/sfx2/zoomitem.hxx
@@ -52,7 +52,7 @@ namespace o3tl
template<> struct typed_flags<SvxZoomEnableFlags> : is_typed_flags<SvxZoomEnableFlags, 0x701f> {};
}
-class SFX2_DLLPUBLIC SvxZoomItem: public SfxUInt16Item
+class SFX2_DLLPUBLIC SvxZoomItem final : public SfxUInt16Item
{
SvxZoomEnableFlags nValueSet; // allowed values (see #defines below)
SvxZoomType eType;
diff --git a/include/sot/stg.hxx b/include/sot/stg.hxx
index ce4d28efbd79..1cd16ac32e89 100644
--- a/include/sot/stg.hxx
+++ b/include/sot/stg.hxx
@@ -201,13 +201,12 @@ public:
};
class UCBStorageStream_Impl;
-class UCBStorageStream : public BaseStorageStream
+class UCBStorageStream final : public BaseStorageStream
{
friend class UCBStorage;
UCBStorageStream_Impl*
pImp;
-protected:
virtual ~UCBStorageStream() override;
public:
UCBStorageStream( const OUString& rName, StreamMode nMode, bool bDirect, bool bRepair, css::uno::Reference< css::ucb::XProgressHandler > const & xProgress );
@@ -237,11 +236,10 @@ namespace ucbhelper
class UCBStorage_Impl;
struct UCBStorageElement_Impl;
-class SOT_DLLPUBLIC UCBStorage : public BaseStorage
+class SOT_DLLPUBLIC UCBStorage final : public BaseStorage
{
UCBStorage_Impl* pImp;
-protected:
virtual ~UCBStorage() override;
public:
static bool IsStorageFile( SvStream* );
diff --git a/include/sot/storage.hxx b/include/sot/storage.hxx
index 41b57506946c..dd44b020694a 100644
--- a/include/sot/storage.hxx
+++ b/include/sot/storage.hxx
@@ -70,7 +70,7 @@ public:
};
class BaseStorage;
-class SOT_DLLPUBLIC SotStorage : virtual public SotObject
+class SOT_DLLPUBLIC SotStorage final : virtual public SotObject
{
friend class SotStorageStream;
@@ -83,7 +83,6 @@ friend class SotStorageStream;
OString m_aKey; // aKey.Len != 0 -> encryption
sal_Int32 m_nVersion;
-protected:
virtual ~SotStorage() override;
void CreateStorage(bool bUCBStorage, StreamMode);
public:
diff --git a/include/svl/itemset.hxx b/include/svl/itemset.hxx
index e8bc88a13263..7c85e7534f59 100644
--- a/include/svl/itemset.hxx
+++ b/include/svl/itemset.hxx
@@ -259,7 +259,7 @@ inline void SfxItemSet::SetParent( const SfxItemSet* pNew )
m_pParent = pNew;
}
-class SVL_DLLPUBLIC SfxAllItemSet: public SfxItemSet
+class SVL_DLLPUBLIC SfxAllItemSet final : public SfxItemSet
// Handles all Ranges. Ranges are automatically modified by putting items.
@@ -271,7 +271,7 @@ public:
virtual std::unique_ptr<SfxItemSet> Clone( bool bItems = true, SfxItemPool *pToPool = nullptr ) const override;
virtual SfxItemSet CloneAsValue( bool bItems = true, SfxItemPool *pToPool = nullptr ) const override;
-protected:
+private:
virtual const SfxPoolItem* PutImpl( const SfxPoolItem&, sal_uInt16 nWhich, bool bPassingOwnership ) override;
};
diff --git a/include/svtools/brwbox.hxx b/include/svtools/brwbox.hxx
index 004e939a7fbc..bcebf9a15053 100644
--- a/include/svtools/brwbox.hxx
+++ b/include/svtools/brwbox.hxx
@@ -140,7 +140,7 @@ class BrowseBox;
class ScrollBarBox;
class BrowserMouseEvent;
-class BrowserDataWin
+class BrowserDataWin final
:public Control
,public DragSourceHelper
,public DropTargetHelper
@@ -214,7 +214,7 @@ public:
void Invalidate( const tools::Rectangle& rRect, InvalidateFlags nFlags = InvalidateFlags::NONE ) override;
using Control::Invalidate;
-protected:
+private:
void StartRowDividerDrag( const Point& _rStartPos );
bool ImplRowDividerHitTest( const BrowserMouseEvent& _rEvent );
};
diff --git a/include/svtools/editbrowsebox.hxx b/include/svtools/editbrowsebox.hxx
index 0a9067d73733..be1ad5f96594 100644
--- a/include/svtools/editbrowsebox.hxx
+++ b/include/svtools/editbrowsebox.hxx
@@ -231,7 +231,7 @@ namespace svt
std::unique_ptr<weld::Entry> m_xWidget;
};
- class SVT_DLLPUBLIC EntryImplementation : public IEditImplementation
+ class SVT_DLLPUBLIC EntryImplementation final : public IEditImplementation
{
EditControlBase& m_rEdit;
int m_nMaxTextLen;
@@ -377,7 +377,7 @@ namespace svt
virtual bool ProcessKey(const KeyEvent& rKEvt) override;
};
- class SVT_DLLPUBLIC MultiLineEditImplementation : public IEditImplementation
+ class SVT_DLLPUBLIC MultiLineEditImplementation final : public IEditImplementation
{
MultiLineTextCell& m_rEdit;
int m_nMaxTextLen;
@@ -627,7 +627,7 @@ namespace svt
};
//= ComboBoxCellController
- class SVT_DLLPUBLIC ComboBoxCellController : public CellController
+ class SVT_DLLPUBLIC ComboBoxCellController final : public CellController
{
public:
@@ -637,9 +637,8 @@ namespace svt
virtual bool IsValueChangedFromSaved() const override;
virtual void SaveValue() override;
- protected:
- virtual bool MoveAllowed(const KeyEvent& rEvt) const override;
private:
+ virtual bool MoveAllowed(const KeyEvent& rEvt) const override;
DECL_LINK(ModifyHdl, LinkParamNone*, void);
};
@@ -725,31 +724,31 @@ namespace svt
void InitFormattedControlBase();
};
- class SVT_DLLPUBLIC FormattedControl : public FormattedControlBase
+ class SVT_DLLPUBLIC FormattedControl final : public FormattedControlBase
{
public:
FormattedControl(BrowserDataWin* pParent, bool bSpinVariant);
};
- class SVT_DLLPUBLIC DoubleNumericControl : public FormattedControlBase
+ class SVT_DLLPUBLIC DoubleNumericControl final : public FormattedControlBase
{
public:
DoubleNumericControl(BrowserDataWin* pParent, bool bSpinVariant);
};
- class SVT_DLLPUBLIC LongCurrencyControl : public FormattedControlBase
+ class SVT_DLLPUBLIC LongCurrencyControl final : public FormattedControlBase
{
public:
LongCurrencyControl(BrowserDataWin* pParent, bool bSpinVariant);
};
- class SVT_DLLPUBLIC TimeControl : public FormattedControlBase
+ class SVT_DLLPUBLIC TimeControl final : public FormattedControlBase
{
public:
TimeControl(BrowserDataWin* pParent, bool bSpinVariant);
};
- class SVT_DLLPUBLIC DateControl : public FormattedControlBase
+ class SVT_DLLPUBLIC DateControl final : public FormattedControlBase
{
public:
DateControl(BrowserDataWin* pParent, bool bDropDown);
diff --git a/include/svx/EnhancedCustomShape2d.hxx b/include/svx/EnhancedCustomShape2d.hxx
index ba0d4a6314bf..18ce21437bcc 100644
--- a/include/svx/EnhancedCustomShape2d.hxx
+++ b/include/svx/EnhancedCustomShape2d.hxx
@@ -76,7 +76,7 @@ namespace o3tl
// escher, but we are using it internally in to differentiate
// between X_RANGE and Y_RANGE
-class SVXCORE_DLLPUBLIC EnhancedCustomShape2d : public SfxItemSet
+class SVXCORE_DLLPUBLIC EnhancedCustomShape2d final : public SfxItemSet
{
SdrObjCustomShape& mrSdrObjCustomShape;
MSO_SPT eSpType;
diff --git a/include/svx/bmpmask.hxx b/include/svx/bmpmask.hxx
index 78dbbbea83b8..1500b8d3bd64 100644
--- a/include/svx/bmpmask.hxx
+++ b/include/svx/bmpmask.hxx
@@ -84,7 +84,7 @@ class MaskSet;
class BmpColorWindow;
class ColorListBox;
-class SAL_WARN_UNUSED SVX_DLLPUBLIC SvxBmpMask : public SfxDockingWindow
+class SAL_WARN_UNUSED SVX_DLLPUBLIC SvxBmpMask final : public SfxDockingWindow
{
friend class MaskData;
friend class MaskSet;
diff --git a/include/svx/float3d.hxx b/include/svx/float3d.hxx
index fbc74e6e31a6..fd8ae56509cf 100644
--- a/include/svx/float3d.hxx
+++ b/include/svx/float3d.hxx
@@ -256,9 +256,8 @@ public:
|*
\************************************************************************/
-class Svx3DCtrlItem : public SfxControllerItem
+class Svx3DCtrlItem final : public SfxControllerItem
{
- protected:
virtual void StateChangedAtToolBoxControl( sal_uInt16 nSId, SfxItemState eState,
const SfxPoolItem* pState ) override;
@@ -273,11 +272,10 @@ class Svx3DCtrlItem : public SfxControllerItem
|*
\************************************************************************/
-class SvxConvertTo3DItem : public SfxControllerItem
+class SvxConvertTo3DItem final : public SfxControllerItem
{
bool bState;
-protected:
virtual void StateChangedAtToolBoxControl(sal_uInt16 nSId, SfxItemState eState, const SfxPoolItem* pState) override;
public:
diff --git a/include/svx/fmsrcimp.hxx b/include/svx/fmsrcimp.hxx
index a9b311fe522a..68cd77b17fe2 100644
--- a/include/svx/fmsrcimp.hxx
+++ b/include/svx/fmsrcimp.hxx
@@ -69,7 +69,9 @@ struct FmSearchProgress
* class FmRecordCountListener - utility class for FmSearchEngine, listens at a certain cursor and provides
* the differences in RecordCount
*/
-class SAL_WARN_UNUSED FmRecordCountListener final : public cppu::WeakImplHelper< css::beans::XPropertyChangeListener >
+// workaround for incremental linking bugs in MSVC2019
+class SAL_DLLPUBLIC_TEMPLATE FmRecordCountListener_Base : public cppu::WeakImplHelper< css::beans::XPropertyChangeListener > {};
+class SAL_WARN_UNUSED FmRecordCountListener final : public FmRecordCountListener_Base
{
// attribute
Link<sal_Int32,void> m_lnkWhoWantsToKnow;
diff --git a/include/svx/fmtools.hxx b/include/svx/fmtools.hxx
index e8c0c7dbe4fd..1ead9069b4f0 100644
--- a/include/svx/fmtools.hxx
+++ b/include/svx/fmtools.hxx
@@ -144,7 +144,7 @@ protected:
void setAdapter(FmXDisposeMultiplexer* pAdapter);
};
-class SAL_WARN_UNUSED FmXDisposeMultiplexer : public cppu::WeakImplHelper< css::lang::XEventListener >
+class SAL_WARN_UNUSED FmXDisposeMultiplexer final : public cppu::WeakImplHelper< css::lang::XEventListener >
{
css::uno::Reference< css::lang::XComponent> m_xObject;
FmXDisposeListener* m_pListener;
diff --git a/include/svx/gallerybinaryengine.hxx b/include/svx/gallerybinaryengine.hxx
index 11747c5ee2ea..5e89b5dd756d 100644
--- a/include/svx/gallerybinaryengine.hxx
+++ b/include/svx/gallerybinaryengine.hxx
@@ -44,7 +44,7 @@ class FmFormModel;
class GalleryTheme;
class GalleryThemeEntry;
-class SVXCORE_DLLPUBLIC GalleryBinaryEngine : public GalleryFileStorage
+class SVXCORE_DLLPUBLIC GalleryBinaryEngine final : public GalleryFileStorage
{
private:
tools::SvRef<SotStorage> m_aSvDrawStorageRef;
diff --git a/include/svx/gallerybinaryengineentry.hxx b/include/svx/gallerybinaryengineentry.hxx
index 042119ae7be2..48a27113ace1 100644
--- a/include/svx/gallerybinaryengineentry.hxx
+++ b/include/svx/gallerybinaryengineentry.hxx
@@ -29,7 +29,7 @@ class GalleryBinaryStorageLocations;
class GalleryObjectCollection;
class GalleryBinaryEngine;
-class GalleryBinaryEngineEntry : public GalleryFileStorageEntry
+class GalleryBinaryEngineEntry final : public GalleryFileStorageEntry
{
private:
std::unique_ptr<GalleryBinaryStorageLocations> mpGalleryStorageLocations;
diff --git a/include/svx/gallerybinarystoragelocations.hxx b/include/svx/gallerybinarystoragelocations.hxx
index aefe1fcad3eb..6876c64a2a17 100644
--- a/include/svx/gallerybinarystoragelocations.hxx
+++ b/include/svx/gallerybinarystoragelocations.hxx
@@ -23,7 +23,7 @@
#include <svx/svxdllapi.h>
#include <svx/gallerystoragelocations.hxx>
-class SVXCORE_DLLPUBLIC GalleryBinaryStorageLocations : public GalleryStorageLocations
+class SVXCORE_DLLPUBLIC GalleryBinaryStorageLocations final : public GalleryStorageLocations
{
private:
INetURLObject maThmURL;
diff --git a/include/svx/galtheme.hxx b/include/svx/galtheme.hxx
index 0630262c040c..585293be0ae2 100644
--- a/include/svx/galtheme.hxx
+++ b/include/svx/galtheme.hxx
@@ -47,7 +47,7 @@ namespace unogallery
class GalleryItem;
}
-class SVXCORE_DLLPUBLIC GalleryTheme : public SfxBroadcaster
+class SVXCORE_DLLPUBLIC GalleryTheme final : public SfxBroadcaster
{
friend class Gallery;
friend class GalleryThemeCacheEntry;
diff --git a/include/svx/graphctl.hxx b/include/svx/graphctl.hxx
index 11a5854eebd3..517addf8f843 100644
--- a/include/svx/graphctl.hxx
+++ b/include/svx/graphctl.hxx
@@ -128,12 +128,10 @@ public:
virtual css::uno::Reference< css::accessibility::XAccessible > CreateAccessible() override;
};
-class GraphCtrlView : public SdrView
+class GraphCtrlView final : public SdrView
{
GraphCtrl& rGraphCtrl;
-protected:
-
virtual void MarkListHasChanged() override
{
SdrView::MarkListHasChanged();
diff --git a/include/svx/hlnkitem.hxx b/include/svx/hlnkitem.hxx
index 08eded81b517..5d6ac5689401 100644
--- a/include/svx/hlnkitem.hxx
+++ b/include/svx/hlnkitem.hxx
@@ -45,7 +45,7 @@ enum SvxLinkInsertMode
HLINK_HTMLMODE = 0x0080
};
-class SVX_DLLPUBLIC SvxHyperlinkItem : public SfxPoolItem
+class SVX_DLLPUBLIC SvxHyperlinkItem final : public SfxPoolItem
{
OUString sName;
OUString sURL;
diff --git a/include/svx/imapdlg.hxx b/include/svx/imapdlg.hxx
index 3032018de9df..3c6ea8f62010 100644
--- a/include/svx/imapdlg.hxx
+++ b/include/svx/imapdlg.hxx
@@ -81,7 +81,7 @@ class IMapOwnData;
class IMapWindow;
class GraphCtrl;
-class SVX_DLLPUBLIC SvxIMapDlg : public SfxModelessDialogController
+class SVX_DLLPUBLIC SvxIMapDlg final : public SfxModelessDialogController
{
friend class IMapOwnData;
friend class IMapWindow;
diff --git a/include/svx/nbdtmg.hxx b/include/svx/nbdtmg.hxx
index 7892a085ff5e..7d397687ab37 100644
--- a/include/svx/nbdtmg.hxx
+++ b/include/svx/nbdtmg.hxx
@@ -168,7 +168,7 @@ class BulletsTypeMgr final : public NBOTypeMgrBase
};
-class NumberingTypeMgr: public NBOTypeMgrBase
+class NumberingTypeMgr final : public NBOTypeMgrBase
{
private:
NumberingTypeMgr(const NumberingTypeMgr&) = delete;
@@ -187,7 +187,7 @@ class NumberingTypeMgr: public NBOTypeMgrBase
static NumberingTypeMgr& GetInstance();
};
-class OutlineTypeMgr: public NBOTypeMgrBase
+class OutlineTypeMgr final : public NBOTypeMgrBase
{
private:
OutlineTypeMgr(const OutlineTypeMgr&) = delete;
diff --git a/include/svx/rubydialog.hxx b/include/svx/rubydialog.hxx
index 5bdd4c9e66d7..12593c73ffc6 100644
--- a/include/svx/rubydialog.hxx
+++ b/include/svx/rubydialog.hxx
@@ -52,7 +52,7 @@ public:
class SvxRubyData_Impl;
-class SvxRubyDialog : public SfxModelessDialogController
+class SvxRubyDialog final : public SfxModelessDialogController
{
friend class RubyPreview;
diff --git a/include/svx/scene3d.hxx b/include/svx/scene3d.hxx
index 4c8b1b14a7e2..d2d91f3c3e9c 100644
--- a/include/svx/scene3d.hxx
+++ b/include/svx/scene3d.hxx
@@ -54,9 +54,8 @@ class Imp3DDepthRemapper;
|*
\************************************************************************/
-class SVXCORE_DLLPUBLIC E3dScene : public E3dObject, public SdrObjList
+class SVXCORE_DLLPUBLIC E3dScene final : public E3dObject, public SdrObjList
{
-protected:
virtual std::unique_ptr<sdr::properties::BaseProperties> CreateObjectSpecificProperties() override;
virtual std::unique_ptr<sdr::contact::ViewContact> CreateObjectSpecificViewContact() override;
@@ -184,7 +183,7 @@ public:
virtual SdrObjList* GetSubList() const override;
virtual void SetTransformChanged() override;
-protected:
+private:
virtual basegfx::B3DRange RecalcBoundVolume() const override;
};
diff --git a/include/svx/sdasitm.hxx b/include/svx/sdasitm.hxx
index e8db1996a9c8..c02076bfb923 100644
--- a/include/svx/sdasitm.hxx
+++ b/include/svx/sdasitm.hxx
@@ -30,7 +30,7 @@
namespace com::sun::star::uno { class Any; }
-class SVXCORE_DLLPUBLIC SdrCustomShapeGeometryItem : public SfxPoolItem
+class SVXCORE_DLLPUBLIC SdrCustomShapeGeometryItem final : public SfxPoolItem
{
public:
typedef std::pair < const OUString, const OUString > PropertyPair;
diff --git a/include/svx/sdgcpitm.hxx b/include/svx/sdgcpitm.hxx
index 1f309ea728f8..a9712a15608d 100644
--- a/include/svx/sdgcpitm.hxx
+++ b/include/svx/sdgcpitm.hxx
@@ -28,7 +28,7 @@
// SdrGrafCropItem -
-class UNLESS_MERGELIBS(SVXCORE_DLLPUBLIC) SdrGrafCropItem : public SvxGrfCrop
+class UNLESS_MERGELIBS(SVXCORE_DLLPUBLIC) SdrGrafCropItem final : public SvxGrfCrop
{
public:
diff --git a/include/svx/sdggaitm.hxx b/include/svx/sdggaitm.hxx
index 5a81962e8792..345082fca6b9 100644
--- a/include/svx/sdggaitm.hxx
+++ b/include/svx/sdggaitm.hxx
@@ -28,7 +28,7 @@
// SdrGrafGamma100Item -
-class SVXCORE_DLLPUBLIC SdrGrafGamma100Item : public SfxUInt32Item
+class SVXCORE_DLLPUBLIC SdrGrafGamma100Item final : public SfxUInt32Item
{
public:
diff --git a/include/svx/sdgluitm.hxx b/include/svx/sdgluitm.hxx
index 886b3cf22344..4ef5e69e9e45 100644
--- a/include/svx/sdgluitm.hxx
+++ b/include/svx/sdgluitm.hxx
@@ -28,7 +28,7 @@
// SdrGrafLuminanceItem -
-class SVXCORE_DLLPUBLIC SdrGrafLuminanceItem : public SdrSignedPercentItem
+class SVXCORE_DLLPUBLIC SdrGrafLuminanceItem final : public SdrSignedPercentItem
{
public:
@@ -43,7 +43,7 @@ public:
// SdrGrafContrastItem -
-class SVXCORE_DLLPUBLIC SdrGrafContrastItem : public SdrSignedPercentItem
+class SVXCORE_DLLPUBLIC SdrGrafContrastItem final : public SdrSignedPercentItem
{
public:
diff --git a/include/svx/sdgmoitm.hxx b/include/svx/sdgmoitm.hxx
index 9d1fbc8daf47..fa205b6db2e7 100644
--- a/include/svx/sdgmoitm.hxx
+++ b/include/svx/sdgmoitm.hxx
@@ -32,7 +32,7 @@ protected:
SfxEnumItem(SDRATTR_GRAFMODE, eMode) {}
};
-class SVXCORE_DLLPUBLIC SdrGrafModeItem : public SdrGrafModeItem_Base
+class SVXCORE_DLLPUBLIC SdrGrafModeItem final : public SdrGrafModeItem_Base
{
public:
SdrGrafModeItem( GraphicDrawMode eMode = GraphicDrawMode::Standard ) : SdrGrafModeItem_Base( eMode ) {}
diff --git a/include/svx/sdr/contact/viewcontactofsdrmediaobj.hxx b/include/svx/sdr/contact/viewcontactofsdrmediaobj.hxx
index 44e9e435afbe..95c2eda21b8f 100644
--- a/include/svx/sdr/contact/viewcontactofsdrmediaobj.hxx
+++ b/include/svx/sdr/contact/viewcontactofsdrmediaobj.hxx
@@ -32,7 +32,7 @@ class MediaItem;
namespace sdr::contact
{
-class SVXCORE_DLLPUBLIC ViewContactOfSdrMediaObj : public ViewContactOfSdrObj
+class SVXCORE_DLLPUBLIC ViewContactOfSdrMediaObj final : public ViewContactOfSdrObj
{
friend class ViewObjectContactOfSdrMediaObj;
@@ -53,7 +53,7 @@ public:
void updateMediaItem(::avmedia::MediaItem& rItem) const;
void executeMediaItem(const ::avmedia::MediaItem& rItem);
-protected:
+private:
// Create an Object-Specific ViewObjectContact, set ViewContact and
// ObjectContact. Always needs to return something.
virtual ViewObjectContact&
@@ -62,7 +62,6 @@ protected:
// get notified if some properties have changed
void mediaPropertiesChanged(const ::avmedia::MediaItem& rNewState);
-protected:
// This method is responsible for creating the graphical visualisation data
// ONLY based on model data
virtual drawinglayer::primitive2d::Primitive2DContainer
diff --git a/include/svx/sdtaditm.hxx b/include/svx/sdtaditm.hxx
index 1208dd7724c4..79ae6bc011be 100644
--- a/include/svx/sdtaditm.hxx
+++ b/include/svx/sdtaditm.hxx
@@ -31,7 +31,7 @@ enum class SdrTextAniDirection
Left, Right, Up, Down
};
-class SVXCORE_DLLPUBLIC SdrTextAniDirectionItem: public SfxEnumItem<SdrTextAniDirection> {
+class SVXCORE_DLLPUBLIC SdrTextAniDirectionItem final : public SfxEnumItem<SdrTextAniDirection> {
public:
SdrTextAniDirectionItem(SdrTextAniDirection eDir=SdrTextAniDirection::Left): SfxEnumItem(SDRATTR_TEXT_ANIDIRECTION, eDir) {}
virtual SdrTextAniDirectionItem* Clone(SfxItemPool* pPool=nullptr) const override;
diff --git a/include/svx/sdtaitm.hxx b/include/svx/sdtaitm.hxx
index d977f83bec4e..69b909da5bd3 100644
--- a/include/svx/sdtaitm.hxx
+++ b/include/svx/sdtaitm.hxx
@@ -32,7 +32,7 @@ enum SdrTextVertAdjust {SDRTEXTVERTADJUST_TOP, // aligned to top (normally
SDRTEXTVERTADJUST_BLOCK // support vertical full with supported now
/*,SDRTEXTVERTADJUST_STRETCH*/}; // also stretch letters in their height (ni)
-class SVXCORE_DLLPUBLIC SdrTextVertAdjustItem: public SfxEnumItem<SdrTextVertAdjust> {
+class SVXCORE_DLLPUBLIC SdrTextVertAdjustItem final : public SfxEnumItem<SdrTextVertAdjust> {
public:
SdrTextVertAdjustItem(SdrTextVertAdjust eAdj=SDRTEXTVERTADJUST_TOP): SfxEnumItem(SDRATTR_TEXT_VERTADJUST, eAdj) {}
SdrTextVertAdjustItem(SdrTextVertAdjust eAdj, sal_uInt16 nWhich): SfxEnumItem(nWhich, eAdj) {}
@@ -56,7 +56,7 @@ enum SdrTextHorzAdjust {SDRTEXTHORZADJUST_LEFT, // left adjusted
SDRTEXTHORZADJUST_BLOCK // use the whole text frame width
/*,SDRTEXTHORZADJUST_STRETCH*/}; // FitToSize in X direction (ni).
-class SVXCORE_DLLPUBLIC SdrTextHorzAdjustItem: public SfxEnumItem<SdrTextHorzAdjust> {
+class SVXCORE_DLLPUBLIC SdrTextHorzAdjustItem final : public SfxEnumItem<SdrTextHorzAdjust> {
public:
SdrTextHorzAdjustItem(SdrTextHorzAdjust eAdj=SDRTEXTHORZADJUST_BLOCK): SfxEnumItem(SDRATTR_TEXT_HORZADJUST, eAdj) {}
virtual SdrTextHorzAdjustItem* Clone(SfxItemPool* pPool=nullptr) const override;
diff --git a/include/svx/sdtakitm.hxx b/include/svx/sdtakitm.hxx
index f2dca7833118..0d86e517bb84 100644
--- a/include/svx/sdtakitm.hxx
+++ b/include/svx/sdtakitm.hxx
@@ -76,7 +76,7 @@ enum class SdrTextAniKind {
// of the text depends on the anchor of the drawing object. This
// corresponds to the position of the text in normal Paint (without scrolling).
-class SVXCORE_DLLPUBLIC SdrTextAniKindItem: public SfxEnumItem<SdrTextAniKind> {
+class SVXCORE_DLLPUBLIC SdrTextAniKindItem final : public SfxEnumItem<SdrTextAniKind> {
public:
SdrTextAniKindItem(SdrTextAniKind eKind=SdrTextAniKind::NONE): SfxEnumItem(SDRATTR_TEXT_ANIKIND, eKind) {}
virtual SdrTextAniKindItem* Clone(SfxItemPool* pPool=nullptr) const override;
diff --git a/include/svx/sdtfsitm.hxx b/include/svx/sdtfsitm.hxx
index c446bc1fbca6..d98e431dab68 100644
--- a/include/svx/sdtfsitm.hxx
+++ b/include/svx/sdtfsitm.hxx
@@ -30,7 +30,7 @@
// TextMaxFrameWidth is reached).
-class SVXCORE_DLLPUBLIC SdrTextFitToSizeTypeItem
+class SVXCORE_DLLPUBLIC SdrTextFitToSizeTypeItem final
: public SfxEnumItem<css::drawing::TextFitToSizeType>
{
public:
diff --git a/include/svx/srchdlg.hxx b/include/svx/srchdlg.hxx
index cdbefe91ae58..71c956dcd69a 100644
--- a/include/svx/srchdlg.hxx
+++ b/include/svx/srchdlg.hxx
@@ -106,7 +106,7 @@ public:
*/
-class SVX_DLLPUBLIC SvxSearchDialog : public SfxModelessDialogController
+class SVX_DLLPUBLIC SvxSearchDialog final : public SfxModelessDialogController
{
friend class SvxSearchController;
friend class SvxSearchDialogWrapper;
diff --git a/include/svx/svdhdl.hxx b/include/svx/svdhdl.hxx
index 707c1ddc5a48..461937c05969 100644
--- a/include/svx/svdhdl.hxx
+++ b/include/svx/svdhdl.hxx
@@ -382,7 +382,7 @@ public:
};
-class ImpEdgeHdl: public SdrHdl
+class ImpEdgeHdl final : public SdrHdl
{
SdrEdgeLineCode eLineCode;
@@ -427,7 +427,6 @@ public:
class SVXCORE_DLLPUBLIC SdrHdlList
{
-protected:
size_t mnFocusIndex;
SdrMarkView* pView;
std::deque<std::unique_ptr<SdrHdl>> maList;
@@ -437,7 +436,6 @@ protected:
bool bDistortShear : 1;
bool bMoveOutside : 1; // move handles outwards (for TextEdit)
-private:
SVX_DLLPRIVATE SdrHdlList(const SdrHdlList&) = delete;
SVX_DLLPRIVATE void operator=(const SdrHdlList&) = delete;
diff --git a/include/svx/svdlayer.hxx b/include/svx/svdlayer.hxx
index cc9e0d4bf91b..2e35c831afee 100644
--- a/include/svx/svdlayer.hxx
+++ b/include/svx/svdlayer.hxx
@@ -104,12 +104,10 @@ friend class SdrView;
friend class SdrModel;
friend class SdrPage;
-protected:
std::vector<std::unique_ptr<SdrLayer>> maLayers;
SdrLayerAdmin* pParent; // The page's admin knows the doc's admin
SdrModel* pModel; // For broadcasting
OUString maControlLayerName;
-protected:
// Find a LayerID which is not in use yet. If all have been used up,
// we return 0.
// If you want to play safe, check GetLayerCount()<SDRLAYER_MAXCOUNT
diff --git a/include/svx/svdoedge.hxx b/include/svx/svdoedge.hxx
index 3389fd19c151..838595e70273 100644
--- a/include/svx/svdoedge.hxx
+++ b/include/svx/svdoedge.hxx
@@ -124,7 +124,7 @@ public:
/// Utility class SdrEdgeObj
-class SVXCORE_DLLPUBLIC SdrEdgeObj : public SdrTextObj
+class SVXCORE_DLLPUBLIC SdrEdgeObj final : public SdrTextObj
{
private:
// to allow sdr::properties::ConnectorProperties access to ImpSetAttrToEdgeInfo()
@@ -133,7 +133,6 @@ private:
friend class SdrCreateView;
friend class ImpEdgeHdl;
-protected:
virtual std::unique_ptr<sdr::contact::ViewContact> CreateObjectSpecificViewContact() override;
virtual std::unique_ptr<sdr::properties::BaseProperties> CreateObjectSpecificProperties() override;
@@ -167,7 +166,7 @@ public:
void SetSuppressDefaultConnect(bool bNew) { mbSuppressDefaultConnect = bNew; }
bool GetSuppressDefaultConnect() const { return mbSuppressDefaultConnect; }
-protected:
+private:
virtual void Notify(SfxBroadcaster& rBC, const SfxHint& rHint) override;
static XPolygon ImpCalcObjToCenter(const Point& rStPt, tools::Long nEscAngle, const tools::Rectangle& rRect, const Point& rCenter);
diff --git a/include/svx/svdograf.hxx b/include/svx/svdograf.hxx
index 0903f448b251..bf7e329d5442 100644
--- a/include/svx/svdograf.hxx
+++ b/include/svx/svdograf.hxx
@@ -73,7 +73,7 @@ class SdrGraphicLink;
/**
* This class represents an embedded or linked bitmap graphic object.
*/
-class SVXCORE_DLLPUBLIC SdrGrafObj : public SdrRectObj
+class SVXCORE_DLLPUBLIC SdrGrafObj final : public SdrRectObj
{
private:
// to allow sdr::properties::GraphicProperties access to SetXPolyDirty()
@@ -118,7 +118,6 @@ private:
void onGraphicChanged();
GDIMetaFile GetMetaFile(GraphicType &rGraphicType) const;
-protected:
// protected destructor
virtual ~SdrGrafObj() override;
diff --git a/include/svx/svdomeas.hxx b/include/svx/svdomeas.hxx
index e3ca9abc3449..83277c5e9831 100644
--- a/include/svx/svdomeas.hxx
+++ b/include/svx/svdomeas.hxx
@@ -42,15 +42,13 @@ public:
virtual ~SdrMeasureObjGeoData() override;
};
-class SVXCORE_DLLPUBLIC SdrMeasureObj : public SdrTextObj
+class SVXCORE_DLLPUBLIC SdrMeasureObj final : public SdrTextObj
{
private:
// to allow sdr::properties::MeasureProperties access to SetTextDirty()
friend class sdr::properties::MeasureProperties;
-
friend class SdrMeasureField;
-protected:
virtual std::unique_ptr<sdr::contact::ViewContact> CreateObjectSpecificViewContact() override;
virtual std::unique_ptr<sdr::properties::BaseProperties> CreateObjectSpecificProperties() override;
@@ -58,7 +56,6 @@ protected:
Point aPt2;
bool bTextDirty;
-protected:
void ImpTakeAttr(ImpMeasureRec& rRec) const;
OUString TakeRepresentation(SdrMeasureFieldKind eMeasureFieldKind) const;
void ImpCalcGeometrics(const ImpMeasureRec& rRec, ImpMeasurePoly& rPol) const;
diff --git a/include/svx/svdpage.hxx b/include/svx/svdpage.hxx
index 9837a422572b..d5552a7c72a4 100644
--- a/include/svx/svdpage.hxx
+++ b/include/svx/svdpage.hxx
@@ -306,7 +306,7 @@ public:
};
// class SdrPageProperties
-class SVXCORE_DLLPUBLIC SdrPageProperties : public SfxListener, public svl::StyleSheetUser
+class SVXCORE_DLLPUBLIC SdrPageProperties final : public SfxListener, public svl::StyleSheetUser
{
private:
// data
diff --git a/include/svx/svx3ditems.hxx b/include/svx/svx3ditems.hxx
index 46609570155a..7cb5eae6e399 100644
--- a/include/svx/svx3ditems.hxx
+++ b/include/svx/svx3ditems.hxx
@@ -61,13 +61,13 @@ inline SfxBoolItem makeSvx3DDoubleSidedItem(bool bVal) {
// #i28528#
// Added extra Item (Bool) for chart2 to be able to show reduced line geometry
-class Svx3DReducedLineGeometryItem : public SfxBoolItem {
+class Svx3DReducedLineGeometryItem final : public SfxBoolItem {
public:
Svx3DReducedLineGeometryItem(bool bVal = false);
Svx3DReducedLineGeometryItem* Clone(SfxItemPool * = nullptr) const override;
};
-class UNLESS_MERGELIBS(SVXCORE_DLLPUBLIC) Svx3DNormalsKindItem : public SfxUInt16Item {
+class UNLESS_MERGELIBS(SVXCORE_DLLPUBLIC) Svx3DNormalsKindItem final : public SfxUInt16Item {
public:
Svx3DNormalsKindItem(sal_uInt16 nVal = 0);
@@ -81,7 +81,7 @@ inline SfxBoolItem makeSvx3DNormalsInvertItem(bool bVal) {
return SfxBoolItem(SDRATTR_3DOBJ_NORMALS_INVERT, bVal);
}
-class UNLESS_MERGELIBS(SVXCORE_DLLPUBLIC) Svx3DTextureProjectionXItem : public SfxUInt16Item {
+class UNLESS_MERGELIBS(SVXCORE_DLLPUBLIC) Svx3DTextureProjectionXItem final : public SfxUInt16Item {
public:
Svx3DTextureProjectionXItem(sal_uInt16 nVal = 0);
@@ -91,7 +91,7 @@ public:
SVX_DLLPRIVATE virtual Svx3DTextureProjectionXItem* Clone(SfxItemPool* pPool = nullptr) const override;
};
-class UNLESS_MERGELIBS(SVXCORE_DLLPUBLIC) Svx3DTextureProjectionYItem : public SfxUInt16Item {
+class UNLESS_MERGELIBS(SVXCORE_DLLPUBLIC) Svx3DTextureProjectionYItem final : public SfxUInt16Item {
public:
Svx3DTextureProjectionYItem(sal_uInt16 nVal = 0);
@@ -142,7 +142,7 @@ inline SfxBoolItem makeSvx3DTextureFilterItem(bool bVal) {
}
// Svx3D _3DSCENE_ Items
-class UNLESS_MERGELIBS(SVXCORE_DLLPUBLIC) Svx3DPerspectiveItem : public SfxUInt16Item {
+class UNLESS_MERGELIBS(SVXCORE_DLLPUBLIC) Svx3DPerspectiveItem final : public SfxUInt16Item {
public:
Svx3DPerspectiveItem(ProjectionType nVal = ProjectionType::Perspective);
@@ -268,7 +268,7 @@ inline SfxUInt16Item makeSvx3DShadowSlantItem(sal_uInt16 nVal) {
return SfxUInt16Item(SDRATTR_3DSCENE_SHADOW_SLANT, nVal);
}
-class UNLESS_MERGELIBS(SVXCORE_DLLPUBLIC) Svx3DShadeModeItem : public SfxUInt16Item {
+class UNLESS_MERGELIBS(SVXCORE_DLLPUBLIC) Svx3DShadeModeItem final : public SfxUInt16Item {
public:
Svx3DShadeModeItem(sal_uInt16 nVal = 2);
@@ -280,35 +280,35 @@ public:
// #107245# Item to replace bExtrudeSmoothed and bLatheSmoothed
-class Svx3DSmoothNormalsItem : public SfxBoolItem {
+class Svx3DSmoothNormalsItem final : public SfxBoolItem {
public:
Svx3DSmoothNormalsItem(bool bVal = true);
Svx3DSmoothNormalsItem* Clone(SfxItemPool * = nullptr) const override;
};
// #107245# Item to replace bExtrudeSmoothFrontBack and bLatheSmoothFrontBack
-class Svx3DSmoothLidsItem : public SfxBoolItem {
+class Svx3DSmoothLidsItem final : public SfxBoolItem {
public:
Svx3DSmoothLidsItem(bool bVal = false);
Svx3DSmoothLidsItem* Clone(SfxItemPool * = nullptr) const override;
};
// #107245# Item to replace bExtrudeCharacterMode and bLatheCharacterMode
-class Svx3DCharacterModeItem : public SfxBoolItem {
+class Svx3DCharacterModeItem final : public SfxBoolItem {
public:
Svx3DCharacterModeItem(bool bVal = false);
Svx3DCharacterModeItem* Clone(SfxItemPool * = nullptr) const override;
};
// #107245# Item to replace bExtrudeCloseFront and bLatheCloseFront
-class UNLESS_MERGELIBS(SVXCORE_DLLPUBLIC) Svx3DCloseFrontItem : public SfxBoolItem {
+class UNLESS_MERGELIBS(SVXCORE_DLLPUBLIC) Svx3DCloseFrontItem final : public SfxBoolItem {
public:
Svx3DCloseFrontItem(bool bVal = true);
Svx3DCloseFrontItem* Clone(SfxItemPool * = nullptr) const override;
};
// #107245# Item to replace bExtrudeCloseBack and bLatheCloseBack
-class UNLESS_MERGELIBS(SVXCORE_DLLPUBLIC) Svx3DCloseBackItem : public SfxBoolItem {
+class UNLESS_MERGELIBS(SVXCORE_DLLPUBLIC) Svx3DCloseBackItem final : public SfxBoolItem {
public:
Svx3DCloseBackItem(bool bVal = true);
Svx3DCloseBackItem* Clone(SfxItemPool * = nullptr) const override;
diff --git a/include/svx/sxcecitm.hxx b/include/svx/sxcecitm.hxx
index cb36eb75d1da..dae0a918d889 100644
--- a/include/svx/sxcecitm.hxx
+++ b/include/svx/sxcecitm.hxx
@@ -30,7 +30,7 @@ enum class SdrCaptionEscDir { Horizontal, Vertical, BestFit };
// class SdrCaptionEscDirItem
-class SVXCORE_DLLPUBLIC SdrCaptionEscDirItem: public SfxEnumItem<SdrCaptionEscDir> {
+class SVXCORE_DLLPUBLIC SdrCaptionEscDirItem final : public SfxEnumItem<SdrCaptionEscDir> {
public:
SdrCaptionEscDirItem(SdrCaptionEscDir eDir=SdrCaptionEscDir::Horizontal): SfxEnumItem(SDRATTR_CAPTIONESCDIR, eDir) {}
virtual SdrCaptionEscDirItem* Clone(SfxItemPool* pPool=nullptr) const override;
@@ -46,7 +46,7 @@ public:
// sal_True = line escape position is relative
// sal_False = line escape position is absolute
-class SVXCORE_DLLPUBLIC SdrCaptionEscIsRelItem: public SdrYesNoItem {
+class SVXCORE_DLLPUBLIC SdrCaptionEscIsRelItem final : public SdrYesNoItem {
public:
SdrCaptionEscIsRelItem(bool bRel=true): SdrYesNoItem(SDRATTR_CAPTIONESCISREL,bRel) {}
virtual ~SdrCaptionEscIsRelItem() override;
@@ -65,7 +65,7 @@ public:
// 10000 = 100.00% = right resp. down
// only when SdrCaptionEscIsRelItem=TRUE
-class SVXCORE_DLLPUBLIC SdrCaptionEscRelItem: public SfxInt32Item {
+class SVXCORE_DLLPUBLIC SdrCaptionEscRelItem final : public SfxInt32Item {
public:
SdrCaptionEscRelItem(tools::Long nEscRel=5000): SfxInt32Item(SDRATTR_CAPTIONESCREL,nEscRel) {}
virtual ~SdrCaptionEscRelItem() override;
@@ -84,7 +84,7 @@ public:
// >0 = in direction right resp. down
// only when SdrCaptionEscIsRelItem=FALSE
-class SdrCaptionEscAbsItem: public SdrMetricItem {
+class SdrCaptionEscAbsItem final : public SdrMetricItem {
public:
SdrCaptionEscAbsItem(tools::Long nEscAbs=0): SdrMetricItem(SDRATTR_CAPTIONESCABS,nEscAbs) {}
virtual SdrCaptionEscAbsItem* Clone(SfxItemPool*) const override
diff --git a/include/svx/sxcllitm.hxx b/include/svx/sxcllitm.hxx
index f73838f4eba0..8ac03f0eaf84 100644
--- a/include/svx/sxcllitm.hxx
+++ b/include/svx/sxcllitm.hxx
@@ -28,7 +28,7 @@
* Only for Type3 and Type4
* Only relevant, if SdrCaptionFitLineLenItem = false
*/
-class SVXCORE_DLLPUBLIC SdrCaptionLineLenItem: public SdrMetricItem {
+class SVXCORE_DLLPUBLIC SdrCaptionLineLenItem final : public SdrMetricItem {
public:
SdrCaptionLineLenItem(tools::Long nLineLen=0): SdrMetricItem(SDRATTR_CAPTIONLINELEN,nLineLen) {}
virtual ~SdrCaptionLineLenItem() override;
@@ -44,7 +44,7 @@ public:
* The length of the first caption line is either automatically
* calculated or the default setting is used (SdrCaptionLineLenItem)
*/
-class SVXCORE_DLLPUBLIC SdrCaptionFitLineLenItem: public SdrYesNoItem {
+class SVXCORE_DLLPUBLIC SdrCaptionFitLineLenItem final : public SdrYesNoItem {
public:
SdrCaptionFitLineLenItem(bool bBestFit=true): SdrYesNoItem(SDRATTR_CAPTIONFITLINELEN,bBestFit) {}
virtual ~SdrCaptionFitLineLenItem() override;
diff --git a/include/svx/sxctitm.hxx b/include/svx/sxctitm.hxx
index 6c2b728a2735..3d46f54cb0bd 100644
--- a/include/svx/sxctitm.hxx
+++ b/include/svx/sxctitm.hxx
@@ -27,7 +27,7 @@ enum class SdrCaptionType { Type1, Type2, Type3, Type4 };
-class SVXCORE_DLLPUBLIC SdrCaptionTypeItem: public SfxEnumItem<SdrCaptionType> {
+class SVXCORE_DLLPUBLIC SdrCaptionTypeItem final : public SfxEnumItem<SdrCaptionType> {
public:
SdrCaptionTypeItem(SdrCaptionType eStyle=SdrCaptionType::Type3): SfxEnumItem(SDRATTR_CAPTIONTYPE, eStyle) {}
virtual SdrCaptionTypeItem* Clone(SfxItemPool* pPool=nullptr) const override;
diff --git a/include/svx/sxekitm.hxx b/include/svx/sxekitm.hxx
index 36a9b72d5083..fd54d38bbbe2 100644
--- a/include/svx/sxekitm.hxx
+++ b/include/svx/sxekitm.hxx
@@ -28,7 +28,7 @@ enum class SdrEdgeKind
OrthoLines, ThreeLines, OneLine, Bezier, Arc
};
-class SVXCORE_DLLPUBLIC SdrEdgeKindItem: public SfxEnumItem<SdrEdgeKind> {
+class SVXCORE_DLLPUBLIC SdrEdgeKindItem final : public SfxEnumItem<SdrEdgeKind> {
public:
SdrEdgeKindItem(SdrEdgeKind eStyle=SdrEdgeKind::OrthoLines): SfxEnumItem(SDRATTR_EDGEKIND, eStyle) {}
virtual SdrEdgeKindItem* Clone(SfxItemPool* pPool=nullptr) const override;
diff --git a/include/svx/sxelditm.hxx b/include/svx/sxelditm.hxx
index 81cae31f3f5a..c957070ce271 100644
--- a/include/svx/sxelditm.hxx
+++ b/include/svx/sxelditm.hxx
@@ -22,7 +22,7 @@
#include <svx/svddef.hxx>
#include <svx/sdmetitm.hxx>
-class SdrEdgeLineDeltaCountItem : public SfxUInt16Item
+class SdrEdgeLineDeltaCountItem final : public SfxUInt16Item
{
public:
SdrEdgeLineDeltaCountItem(sal_uInt16 nVal = 0)
diff --git a/include/svx/sxenditm.hxx b/include/svx/sxenditm.hxx
index 82ff4b7c348e..de7accd9b2b6 100644
--- a/include/svx/sxenditm.hxx
+++ b/include/svx/sxenditm.hxx
@@ -23,7 +23,7 @@
#include <svx/sdmetitm.hxx>
#include <svx/svxdllapi.h>
-class SVXCORE_DLLPUBLIC SdrEdgeNode1HorzDistItem: public SdrMetricItem {
+class SVXCORE_DLLPUBLIC SdrEdgeNode1HorzDistItem final : public SdrMetricItem {
public:
SdrEdgeNode1HorzDistItem(tools::Long nVal): SdrMetricItem(SDRATTR_EDGENODE1HORZDIST,nVal) {}
virtual bool QueryValue( css::uno::Any& rVal, sal_uInt8 nMemberId = 0 ) const override;
@@ -31,7 +31,7 @@ public:
virtual SdrEdgeNode1HorzDistItem* Clone(SfxItemPool* pPool=nullptr) const override;
};
-class SVXCORE_DLLPUBLIC SdrEdgeNode1VertDistItem: public SdrMetricItem {
+class SVXCORE_DLLPUBLIC SdrEdgeNode1VertDistItem final : public SdrMetricItem {
public:
SdrEdgeNode1VertDistItem(tools::Long nVal): SdrMetricItem(SDRATTR_EDGENODE1VERTDIST,nVal) {}
virtual bool QueryValue( css::uno::Any& rVal, sal_uInt8 nMemberId = 0 ) const override;
@@ -39,7 +39,7 @@ public:
virtual SdrEdgeNode1VertDistItem* Clone(SfxItemPool* pPool=nullptr) const override;
};
-class SVXCORE_DLLPUBLIC SdrEdgeNode2HorzDistItem: public SdrMetricItem {
+class SVXCORE_DLLPUBLIC SdrEdgeNode2HorzDistItem final : public SdrMetricItem {
public:
SdrEdgeNode2HorzDistItem(tools::Long nVal): SdrMetricItem(SDRATTR_EDGENODE2HORZDIST,nVal) {}
virtual bool QueryValue( css::uno::Any& rVal, sal_uInt8 nMemberId = 0 ) const override;
@@ -47,7 +47,7 @@ public:
virtual SdrEdgeNode2HorzDistItem* Clone(SfxItemPool* pPool=nullptr) const override;
};
-class SVXCORE_DLLPUBLIC SdrEdgeNode2VertDistItem: public SdrMetricItem {
+class SVXCORE_DLLPUBLIC SdrEdgeNode2VertDistItem final : public SdrMetricItem {
public:
SdrEdgeNode2VertDistItem(tools::Long nVal): SdrMetricItem(SDRATTR_EDGENODE2VERTDIST,nVal) {}
virtual bool QueryValue( css::uno::Any& rVal, sal_uInt8 nMemberId = 0 ) const override;
@@ -55,13 +55,13 @@ public:
virtual SdrEdgeNode2VertDistItem* Clone(SfxItemPool* pPool=nullptr) const override;
};
-class SdrEdgeNode1GlueDistItem: public SdrMetricItem {
+class SdrEdgeNode1GlueDistItem final : public SdrMetricItem {
public:
SdrEdgeNode1GlueDistItem(tools::Long nVal=0): SdrMetricItem(SDRATTR_EDGENODE1GLUEDIST,nVal) {}
virtual SdrEdgeNode1GlueDistItem* Clone(SfxItemPool* pPool=nullptr) const override;
};
-class SdrEdgeNode2GlueDistItem: public SdrMetricItem {
+class SdrEdgeNode2GlueDistItem final : public SdrMetricItem {
public:
SdrEdgeNode2GlueDistItem(tools::Long nVal=0): SdrMetricItem(SDRATTR_EDGENODE2GLUEDIST,nVal) {}
virtual SdrEdgeNode2GlueDistItem* Clone(SfxItemPool* pPool=nullptr) const override;
diff --git a/include/svx/sxmbritm.hxx b/include/svx/sxmbritm.hxx
index c26d2b25f217..022656aaa142 100644
--- a/include/svx/sxmbritm.hxx
+++ b/include/svx/sxmbritm.hxx
@@ -29,7 +29,7 @@
// TextUpsideDown, but easily operated)
// can also be dragged by dragging the measure line item
// (SdrMeasureLineDistItem) over the reference edge
-class SVXCORE_DLLPUBLIC SdrMeasureBelowRefEdgeItem: public SdrYesNoItem {
+class SVXCORE_DLLPUBLIC SdrMeasureBelowRefEdgeItem final : public SdrYesNoItem {
public:
SdrMeasureBelowRefEdgeItem(bool bOn=false): SdrYesNoItem(SDRATTR_MEASUREBELOWREFEDGE,bOn) {}
virtual ~SdrMeasureBelowRefEdgeItem() override;
diff --git a/include/svx/sxmtfitm.hxx b/include/svx/sxmtfitm.hxx
index 2e89ebebd127..11de732865a7 100644
--- a/include/svx/sxmtfitm.hxx
+++ b/include/svx/sxmtfitm.hxx
@@ -27,7 +27,7 @@
// Nail text down to a fix angle.
// The text angle is independent of the dimension line.
// Abrogate TextUpsideDown, TextRota90 and TextAutoAngle. (n.i.)
-class SdrMeasureTextIsFixedAngleItem: public SdrYesNoItem {
+class SdrMeasureTextIsFixedAngleItem final : public SdrYesNoItem {
public:
SdrMeasureTextIsFixedAngleItem(bool bOn=false): SdrYesNoItem(SDRATTR_MEASURETEXTISFIXEDANGLE,bOn) {}
virtual ~SdrMeasureTextIsFixedAngleItem() override;
@@ -40,7 +40,7 @@ public:
};
//Angle of the text in 1/100deg. 0=horizontal; read from left to right. (n.i.)
-class SdrMeasureTextFixedAngleItem: public SdrAngleItem {
+class SdrMeasureTextFixedAngleItem final : public SdrAngleItem {
public:
SdrMeasureTextFixedAngleItem(Degree100 nVal=0_deg100): SdrAngleItem(SDRATTR_MEASURETEXTFIXEDANGLE,nVal) {}
virtual ~SdrMeasureTextFixedAngleItem() override;
@@ -53,7 +53,7 @@ public:
};
// The decimal places used for the measure value
-class SVXCORE_DLLPUBLIC SdrMeasureDecimalPlacesItem: public SfxInt16Item {
+class SVXCORE_DLLPUBLIC SdrMeasureDecimalPlacesItem final : public SfxInt16Item {
public:
SdrMeasureDecimalPlacesItem(sal_Int16 nVal=2): SfxInt16Item(SDRATTR_MEASUREDECIMALPLACES,nVal) {}
virtual ~SdrMeasureDecimalPlacesItem() override;
diff --git a/include/svx/sxmtpitm.hxx b/include/svx/sxmtpitm.hxx
index 3a751b419749..2445909e2fd4 100644
--- a/include/svx/sxmtpitm.hxx
+++ b/include/svx/sxmtpitm.hxx
@@ -25,7 +25,7 @@
#include <com/sun/star/drawing/MeasureTextHorzPos.hpp>
#include <com/sun/star/drawing/MeasureTextVertPos.hpp>
-class SVXCORE_DLLPUBLIC SdrMeasureTextHPosItem: public SfxEnumItem<css::drawing::MeasureTextHorzPos> {
+class SVXCORE_DLLPUBLIC SdrMeasureTextHPosItem final : public SfxEnumItem<css::drawing::MeasureTextHorzPos> {
public:
SdrMeasureTextHPosItem(css::drawing::MeasureTextHorzPos ePos = css::drawing::MeasureTextHorzPos::MeasureTextHorzPos_AUTO)
: SfxEnumItem(SDRATTR_MEASURETEXTHPOS, ePos)
@@ -41,7 +41,7 @@ public:
virtual bool GetPresentation(SfxItemPresentation ePres, MapUnit eCoreMetric, MapUnit ePresMetric, OUString& rText, const IntlWrapper&) const override;
};
-class SVXCORE_DLLPUBLIC SdrMeasureTextVPosItem: public SfxEnumItem<css::drawing::MeasureTextVertPos> {
+class SVXCORE_DLLPUBLIC SdrMeasureTextVPosItem final : public SfxEnumItem<css::drawing::MeasureTextVertPos> {
public:
SdrMeasureTextVPosItem(css::drawing::MeasureTextVertPos ePos = css::drawing::MeasureTextVertPos_AUTO)
: SfxEnumItem(SDRATTR_MEASURETEXTVPOS, ePos)
diff --git a/include/svx/sxmtritm.hxx b/include/svx/sxmtritm.hxx
index e208d2790d29..184a59f39307 100644
--- a/include/svx/sxmtritm.hxx
+++ b/include/svx/sxmtritm.hxx
@@ -23,7 +23,7 @@
#include <svx/sdynitm.hxx>
// text across the dimension line (90deg counter-clockwise rotation)
-class SVXCORE_DLLPUBLIC SdrMeasureTextRota90Item: public SdrYesNoItem {
+class SVXCORE_DLLPUBLIC SdrMeasureTextRota90Item final : public SdrYesNoItem {
public:
SdrMeasureTextRota90Item(bool bOn=false): SdrYesNoItem(SDRATTR_MEASURETEXTROTA90,bOn) {}
virtual ~SdrMeasureTextRota90Item() override;
diff --git a/include/svx/sxmuitm.hxx b/include/svx/sxmuitm.hxx
index e350e9677774..ab0ad8a3cd35 100644
--- a/include/svx/sxmuitm.hxx
+++ b/include/svx/sxmuitm.hxx
@@ -26,7 +26,7 @@
// specification of the unit if measurement. The numerical quantity value is converted in this unity.
// (based on the facts of the MapUnit of the model). This unity is displayed if necessary.
-class SVXCORE_DLLPUBLIC SdrMeasureUnitItem: public SfxEnumItem<FieldUnit> {
+class SVXCORE_DLLPUBLIC SdrMeasureUnitItem final : public SfxEnumItem<FieldUnit> {
public:
SdrMeasureUnitItem(FieldUnit eUnit=FieldUnit::NONE): SfxEnumItem(SDRATTR_MEASUREUNIT, eUnit) {}
virtual SdrMeasureUnitItem* Clone(SfxItemPool* pPool=nullptr) const override;
diff --git a/include/svx/unoshape.hxx b/include/svx/unoshape.hxx
index 75c152e76744..2dc2f5c59843 100644
--- a/include/svx/unoshape.hxx
+++ b/include/svx/unoshape.hxx
@@ -479,7 +479,7 @@ public:
/***********************************************************************
* *
***********************************************************************/
-class SvxShapeConnector : public css::drawing::XConnectorShape,
+class SvxShapeConnector final : public css::drawing::XConnectorShape,
public SvxShapeText
{
public:
diff --git a/include/svx/xbtmpit.hxx b/include/svx/xbtmpit.hxx
index bfc67952ce97..0882081fb7ca 100644
--- a/include/svx/xbtmpit.hxx
+++ b/include/svx/xbtmpit.hxx
@@ -28,7 +28,7 @@
class SdrModel;
-class SVXCORE_DLLPUBLIC XFillBitmapItem : public NameOrIndex
+class SVXCORE_DLLPUBLIC XFillBitmapItem final : public NameOrIndex
{
private:
GraphicObject maGraphicObject;
diff --git a/include/svx/xflftrit.hxx b/include/svx/xflftrit.hxx
index e33b57e0f4ee..bd8a54a240ce 100644
--- a/include/svx/xflftrit.hxx
+++ b/include/svx/xflftrit.hxx
@@ -27,7 +27,7 @@
-class SVXCORE_DLLPUBLIC XFillFloatTransparenceItem : public XFillGradientItem
+class SVXCORE_DLLPUBLIC XFillFloatTransparenceItem final : public XFillGradientItem
{
private:
diff --git a/include/svx/xflhtit.hxx b/include/svx/xflhtit.hxx
index 1ef7d4e11d55..9eb8805415aa 100644
--- a/include/svx/xflhtit.hxx
+++ b/include/svx/xflhtit.hxx
@@ -29,7 +29,7 @@ class SdrModel;
-class SVXCORE_DLLPUBLIC XFillHatchItem : public NameOrIndex
+class SVXCORE_DLLPUBLIC XFillHatchItem final : public NameOrIndex
{
XHatch aHatch;
diff --git a/include/svx/xlndsit.hxx b/include/svx/xlndsit.hxx
index c9ec5d711de5..04b40d41fab2 100644
--- a/include/svx/xlndsit.hxx
+++ b/include/svx/xlndsit.hxx
@@ -30,7 +30,7 @@ class SdrModel;
-class SVXCORE_DLLPUBLIC XLineDashItem : public NameOrIndex
+class SVXCORE_DLLPUBLIC XLineDashItem final : public NameOrIndex
{
XDash aDash;
diff --git a/include/svx/xlnedcit.hxx b/include/svx/xlnedcit.hxx
index 6cb8cf402efc..fde707675f6a 100644
--- a/include/svx/xlnedcit.hxx
+++ b/include/svx/xlnedcit.hxx
@@ -25,7 +25,7 @@
-class SVXCORE_DLLPUBLIC XLineEndCenterItem : public SfxBoolItem
+class SVXCORE_DLLPUBLIC XLineEndCenterItem final : public SfxBoolItem
{
public:
XLineEndCenterItem(bool bEndCenter = false);
diff --git a/include/svx/xlnstcit.hxx b/include/svx/xlnstcit.hxx
index bde8c597d8b0..a48307cab525 100644
--- a/include/svx/xlnstcit.hxx
+++ b/include/svx/xlnstcit.hxx
@@ -25,7 +25,7 @@
-class SVXCORE_DLLPUBLIC XLineStartCenterItem : public SfxBoolItem
+class SVXCORE_DLLPUBLIC XLineStartCenterItem final : public SfxBoolItem
{
public:
XLineStartCenterItem(bool bStartCenter = false);
diff --git a/include/svx/xtable.hxx b/include/svx/xtable.hxx
index a4e192a0704a..c56c6d092688 100644
--- a/include/svx/xtable.hxx
+++ b/include/svx/xtable.hxx
@@ -234,9 +234,8 @@ public:
rtl::Reference<XPropertyList> const & plist);
};
-class SVXCORE_DLLPUBLIC XColorList : public XPropertyList
+class SVXCORE_DLLPUBLIC XColorList final : public XPropertyList
{
-protected:
virtual BitmapEx CreateBitmapForUI(tools::Long nIndex) override;
public:
@@ -253,9 +252,8 @@ public:
static XColorListRef GetStdColorList(); // returns a singleton
};
-class SVXCORE_DLLPUBLIC XLineEndList : public XPropertyList
+class SVXCORE_DLLPUBLIC XLineEndList final : public XPropertyList
{
-protected:
virtual BitmapEx CreateBitmapForUI(tools::Long nIndex) override;
public:
@@ -268,14 +266,13 @@ public:
virtual bool Create() override;
};
-class SVXCORE_DLLPUBLIC XDashList : public XPropertyList
+class SVXCORE_DLLPUBLIC XDashList final : public XPropertyList
{
private:
BitmapEx maBitmapSolidLine;
OUString maStringSolidLine;
OUString maStringNoLine;
-protected:
static BitmapEx ImpCreateBitmapForXDash(const XDash* pDash);
virtual BitmapEx CreateBitmapForUI(tools::Long nIndex) override;
@@ -300,11 +297,10 @@ public:
OUString const & GetStringForUiNoLine() const;
};
-class SVXCORE_DLLPUBLIC XHatchList : public XPropertyList
+class SVXCORE_DLLPUBLIC XHatchList final : public XPropertyList
{
private:
BitmapEx CreateBitmap(tools::Long nIndex, const Size& rSize) const;
-protected:
virtual BitmapEx CreateBitmapForUI(tools::Long nIndex) override;
public:
XHatchList(const OUString& rPath, const OUString& rReferer);
@@ -318,12 +314,10 @@ public:
virtual bool Create() override;
};
-class SVXCORE_DLLPUBLIC XGradientList : public XPropertyList
+class SVXCORE_DLLPUBLIC XGradientList final : public XPropertyList
{
private:
BitmapEx CreateBitmap(tools::Long nIndex, const Size& rSize) const;
-
-protected:
virtual BitmapEx CreateBitmapForUI(tools::Long nIndex) override;
public:
@@ -338,12 +332,10 @@ public:
virtual bool Create() override;
};
-class SVXCORE_DLLPUBLIC XBitmapList : public XPropertyList
+class SVXCORE_DLLPUBLIC XBitmapList final : public XPropertyList
{
private:
BitmapEx CreateBitmap( tools::Long nIndex, const Size& rSize ) const;
-
-protected:
virtual BitmapEx CreateBitmapForUI(tools::Long nIndex) override;
public:
@@ -357,12 +349,10 @@ public:
virtual bool Create() override;
};
-class SVXCORE_DLLPUBLIC XPatternList : public XPropertyList
+class SVXCORE_DLLPUBLIC XPatternList final : public XPropertyList
{
private:
BitmapEx CreateBitmap( tools::Long nIndex, const Size& rSize ) const;
-
-protected:
virtual BitmapEx CreateBitmapForUI(tools::Long nIndex) override;
public:
diff --git a/include/toolkit/awt/vclxdevice.hxx b/include/toolkit/awt/vclxdevice.hxx
index 6db587343f15..c24b79be110c 100644
--- a/include/toolkit/awt/vclxdevice.hxx
+++ b/include/toolkit/awt/vclxdevice.hxx
@@ -74,7 +74,7 @@ public:
-class VCLXVirtualDevice : public VCLXDevice
+class VCLXVirtualDevice final : public VCLXDevice
{
public:
virtual ~VCLXVirtualDevice() override;
diff --git a/include/vbahelper/vbacollectionimpl.hxx b/include/vbahelper/vbacollectionimpl.hxx
index 9bb537e84f17..c6a0b85aee75 100644
--- a/include/vbahelper/vbacollectionimpl.hxx
+++ b/include/vbahelper/vbacollectionimpl.hxx
@@ -152,7 +152,7 @@ public:
typedef std::vector< css::uno::Reference< OneIfc > > XNamedVec;
private:
- class XNamedEnumerationHelper : public EnumerationHelper_BASE
+ class XNamedEnumerationHelper final : public EnumerationHelper_BASE
{
XNamedVec mXNamedVec;
typename XNamedVec::iterator mIt;
diff --git a/include/vcl/BitmapBasicMorphologyFilter.hxx b/include/vcl/BitmapBasicMorphologyFilter.hxx
index c7999dc28819..055e1e14e637 100644
--- a/include/vcl/BitmapBasicMorphologyFilter.hxx
+++ b/include/vcl/BitmapBasicMorphologyFilter.hxx
@@ -40,7 +40,7 @@ private:
bool m_bUseValueOutside = false;
};
-class BitmapErodeFilter : public BitmapBasicMorphologyFilter
+class BitmapErodeFilter final : public BitmapBasicMorphologyFilter
{
public:
BitmapErodeFilter(sal_Int32 nRadius)
@@ -53,7 +53,7 @@ public:
}
};
-class BitmapDilateFilter : public BitmapBasicMorphologyFilter
+class BitmapDilateFilter final : public BitmapBasicMorphologyFilter
{
public:
BitmapDilateFilter(sal_Int32 nRadius)
diff --git a/include/vcl/BitmapFilterStackBlur.hxx b/include/vcl/BitmapFilterStackBlur.hxx
index 8ac6a47e968e..2fdb78b0b1af 100644
--- a/include/vcl/BitmapFilterStackBlur.hxx
+++ b/include/vcl/BitmapFilterStackBlur.hxx
@@ -15,7 +15,7 @@
#include <vcl/bitmapex.hxx>
#include <vcl/BitmapFilter.hxx>
-class VCL_DLLPUBLIC BitmapFilterStackBlur : public BitmapFilter
+class VCL_DLLPUBLIC BitmapFilterStackBlur final : public BitmapFilter
{
sal_Int32 mnRadius;
diff --git a/include/vcl/alpha.hxx b/include/vcl/alpha.hxx
index 07d4997ee5a0..1078ce06fe8e 100644
--- a/include/vcl/alpha.hxx
+++ b/include/vcl/alpha.hxx
@@ -29,7 +29,7 @@
class BitmapEx;
-class VCL_DLLPUBLIC AlphaMask : public Bitmap
+class VCL_DLLPUBLIC AlphaMask final : public Bitmap
{
public:
diff --git a/include/vcl/filter/pdfdocument.hxx b/include/vcl/filter/pdfdocument.hxx
index 26866544bf60..073225b589b0 100644
--- a/include/vcl/filter/pdfdocument.hxx
+++ b/include/vcl/filter/pdfdocument.hxx
@@ -138,7 +138,7 @@ public:
};
/// Array object: a list.
-class VCL_DLLPUBLIC PDFArrayElement : public PDFElement
+class VCL_DLLPUBLIC PDFArrayElement final : public PDFElement
{
std::vector<PDFElement*> m_aElements;
/// The object that contains this array.
@@ -164,7 +164,7 @@ public:
};
/// Reference object: something with a unique ID.
-class VCL_DLLPUBLIC PDFReferenceElement : public PDFElement
+class VCL_DLLPUBLIC PDFReferenceElement final : public PDFElement
{
PDFDocument& m_rDoc;
int m_fObjectValue;
@@ -197,7 +197,7 @@ public:
};
/// Stream object: a byte array with a known length.
-class VCL_DLLPUBLIC PDFStreamElement : public PDFElement
+class VCL_DLLPUBLIC PDFStreamElement final : public PDFElement
{
size_t m_nLength;
sal_uInt64 m_nOffset;
@@ -241,7 +241,7 @@ public:
};
/// Dictionary object: a set key-value pairs.
-class VCL_DLLPUBLIC PDFDictionaryElement : public PDFElement
+class VCL_DLLPUBLIC PDFDictionaryElement final : public PDFElement
{
/// Key-value pairs when the dictionary is a nested value.
std::map<OString, PDFElement*> m_aItems;
@@ -376,7 +376,7 @@ public:
};
/// Numbering object: an integer or a real.
-class VCL_DLLPUBLIC PDFNumberElement : public PDFElement
+class VCL_DLLPUBLIC PDFNumberElement final : public PDFElement
{
/// Input file start location.
sal_uInt64 m_nOffset = 0;
@@ -397,7 +397,7 @@ public:
};
/// A one-liner comment.
-class VCL_DLLPUBLIC PDFCommentElement : public PDFElement
+class VCL_DLLPUBLIC PDFCommentElement final : public PDFElement
{
PDFDocument& m_rDoc;
OString m_aComment;
@@ -409,7 +409,7 @@ public:
};
/// End of a dictionary: '>>'.
-class VCL_DLLPUBLIC PDFEndDictionaryElement : public PDFElement
+class VCL_DLLPUBLIC PDFEndDictionaryElement final : public PDFElement
{
/// Offset before the '>>' token.
sal_uInt64 m_nLocation = 0;
@@ -423,7 +423,7 @@ public:
};
/// End of a stream: 'endstream' keyword.
-class VCL_DLLPUBLIC PDFEndStreamElement : public PDFElement
+class VCL_DLLPUBLIC PDFEndStreamElement final : public PDFElement
{
public:
bool Read(SvStream& rStream) override;
@@ -432,7 +432,7 @@ public:
};
/// End of an object: 'endobj' keyword.
-class VCL_DLLPUBLIC PDFEndObjectElement : public PDFElement
+class VCL_DLLPUBLIC PDFEndObjectElement final : public PDFElement
{
public:
bool Read(SvStream& rStream) override;
@@ -441,7 +441,7 @@ public:
};
/// End of an array: ']'.
-class VCL_DLLPUBLIC PDFEndArrayElement : public PDFElement
+class VCL_DLLPUBLIC PDFEndArrayElement final : public PDFElement
{
/// Location before the ']' token.
sal_uInt64 m_nOffset = 0;
@@ -455,7 +455,7 @@ public:
};
/// Boolean object: a 'true' or a 'false'.
-class VCL_DLLPUBLIC PDFBooleanElement : public PDFElement
+class VCL_DLLPUBLIC PDFBooleanElement final : public PDFElement
{
bool m_aValue;
@@ -474,7 +474,7 @@ public:
};
/// Null object: the 'null' singleton.
-class VCL_DLLPUBLIC PDFNullElement : public PDFElement
+class VCL_DLLPUBLIC PDFNullElement final : public PDFElement
{
public:
bool Read(SvStream& rStream) override;
@@ -489,7 +489,7 @@ public:
* elements remember their source offset / length, and based on that it's
* possible to modify the input file.
*/
-class VCL_DLLPUBLIC PDFDocument : public PDFObjectContainer
+class VCL_DLLPUBLIC PDFDocument final : public PDFObjectContainer
{
/// This vector owns all elements.
std::vector<std::unique_ptr<PDFElement>> m_aElements;
@@ -597,7 +597,7 @@ public:
};
/// The trailer singleton is at the end of the doc.
-class VCL_DLLPUBLIC PDFTrailerElement : public PDFElement
+class VCL_DLLPUBLIC PDFTrailerElement final : public PDFElement
{
PDFDocument& m_rDoc;
PDFDictionaryElement* m_pDictionaryElement;
diff --git a/include/vcl/fontcharmap.hxx b/include/vcl/fontcharmap.hxx
index cdd18fcd633e..ade1da6e715c 100644
--- a/include/vcl/fontcharmap.hxx
+++ b/include/vcl/fontcharmap.hxx
@@ -32,7 +32,7 @@ class OutputDevice;
typedef tools::SvRef<ImplFontCharMap> ImplFontCharMapRef;
typedef tools::SvRef<FontCharMap> FontCharMapRef;
-class VCL_DLLPUBLIC FontCharMap : public SvRefBase
+class VCL_DLLPUBLIC FontCharMap final : public SvRefBase
{
public:
/** A new FontCharMap is created based on a "default" map, which includes
diff --git a/include/vcl/layout.hxx b/include/vcl/layout.hxx
index ec4722b48849..eb07ba5b33c4 100644
--- a/include/vcl/layout.hxx
+++ b/include/vcl/layout.hxx
@@ -538,7 +538,7 @@ private:
//Any Commands an EventBoxHelper receives are forwarded to its parent
//The VclEventBox ensures that m_aEventBoxHelper is the
//first child and is transparent, but covers the rest of the children
- class EventBoxHelper : public vcl::Window
+ class EventBoxHelper final : public vcl::Window
{
public:
EventBoxHelper(vcl::Window* pParent)
diff --git a/include/vcl/menu.hxx b/include/vcl/menu.hxx
index 7bc136d680f7..faf002d9a4d7 100644
--- a/include/vcl/menu.hxx
+++ b/include/vcl/menu.hxx
@@ -410,7 +410,7 @@ public:
const OUString& get_id() const { return maID; }
};
-class VCL_DLLPUBLIC MenuBar : public Menu
+class VCL_DLLPUBLIC MenuBar final : public Menu
{
Link<void*,void> maCloseHdl;
bool mbCloseBtnVisible : 1;
@@ -429,8 +429,6 @@ class VCL_DLLPUBLIC MenuBar : public Menu
SAL_DLLPRIVATE bool ImplHandleKeyEvent(const KeyEvent& rKEvent);
SAL_DLLPRIVATE bool ImplHandleCmdEvent(const CommandEvent& rCEvent);
-protected:
-
/// Return the MenuBarWindow.
MenuBarWindow* getMenuBarWindow();
@@ -500,7 +498,7 @@ inline MenuBar& MenuBar::operator=( const MenuBar& rMenu )
return *this;
}
-class VCL_DLLPUBLIC PopupMenu : public Menu
+class VCL_DLLPUBLIC PopupMenu final : public Menu
{
friend class Menu;
friend class MenuFloatingWindow;
@@ -509,8 +507,6 @@ class VCL_DLLPUBLIC PopupMenu : public Menu
private:
SAL_DLLPRIVATE MenuFloatingWindow * ImplGetFloatingWindow() const;
-
-protected:
SAL_DLLPRIVATE sal_uInt16 ImplExecute( const VclPtr<vcl::Window>& pW, const tools::Rectangle& rRect, FloatWinPopupFlags nPopupModeFlags, Menu* pSFrom, bool bPreSelectFirst );
SAL_DLLPRIVATE void ImplFlushPendingSelect();
SAL_DLLPRIVATE tools::Long ImplCalcHeight( sal_uInt16 nEntries ) const;
diff --git a/include/vcl/pdfextoutdevdata.hxx b/include/vcl/pdfextoutdevdata.hxx
index ea5466b8610f..05bfde12d2d4 100644
--- a/include/vcl/pdfextoutdevdata.hxx
+++ b/include/vcl/pdfextoutdevdata.hxx
@@ -66,7 +66,7 @@ struct PDFExtOutDevBookmarkEntry
*/
struct PageSyncData;
struct GlobalSyncData;
-class VCL_DLLPUBLIC PDFExtOutDevData : public ExtOutDevData
+class VCL_DLLPUBLIC PDFExtOutDevData final : public ExtOutDevData
{
const OutputDevice& mrOutDev;
diff --git a/include/vcl/tabpage.hxx b/include/vcl/tabpage.hxx
index 45d1c1220d60..a807165ffeeb 100644
--- a/include/vcl/tabpage.hxx
+++ b/include/vcl/tabpage.hxx
@@ -26,7 +26,7 @@
class ScrollBar;
-class VCL_DLLPUBLIC TabPage
+class VCL_DLLPUBLIC TabPage final
: public vcl::Window
, public vcl::IContext
{
diff --git a/include/vcl/toolkit/field.hxx b/include/vcl/toolkit/field.hxx
index e30d16e55edc..bf677aec692a 100644
--- a/include/vcl/toolkit/field.hxx
+++ b/include/vcl/toolkit/field.hxx
@@ -199,7 +199,7 @@ private:
OUString maCustomUnitText;
};
-class VCL_DLLPUBLIC MetricField : public SpinField, public MetricFormatter
+class VCL_DLLPUBLIC MetricField final : public SpinField, public MetricFormatter
{
public:
explicit MetricField( vcl::Window* pParent, WinBits nWinStyle );
@@ -231,7 +231,7 @@ public:
virtual FactoryFunction GetUITestFactory() const override;
};
-class VCL_DLLPUBLIC MetricBox : public ComboBox, public MetricFormatter
+class VCL_DLLPUBLIC MetricBox final : public ComboBox, public MetricFormatter
{
public:
explicit MetricBox( vcl::Window* pParent, WinBits nWinStyle );
@@ -499,7 +499,7 @@ public:
virtual void dispose() override;
};
-class UNLESS_MERGELIBS(VCL_DLLPUBLIC) NumericBox : public ComboBox, public NumericFormatter
+class UNLESS_MERGELIBS(VCL_DLLPUBLIC) NumericBox final : public ComboBox, public NumericFormatter
{
SAL_DLLPRIVATE void ImplNumericReformat( const OUString& rStr, sal_Int64& rValue, OUString& rOutStr );
public:
diff --git a/include/vcl/toolkit/group.hxx b/include/vcl/toolkit/group.hxx
index b6d7da71ee93..d6088b884cd1 100644
--- a/include/vcl/toolkit/group.hxx
+++ b/include/vcl/toolkit/group.hxx
@@ -27,7 +27,7 @@
#include <vcl/dllapi.h>
#include <vcl/ctrl.hxx>
-class UNLESS_MERGELIBS(VCL_DLLPUBLIC) GroupBox : public Control
+class UNLESS_MERGELIBS(VCL_DLLPUBLIC) GroupBox final : public Control
{
private:
using Control::ImplInitSettings;
diff --git a/include/vcl/toolkit/ivctrl.hxx b/include/vcl/toolkit/ivctrl.hxx
index b572448e006f..502d16d09917 100644
--- a/include/vcl/toolkit/ivctrl.hxx
+++ b/include/vcl/toolkit/ivctrl.hxx
@@ -174,15 +174,13 @@ public:
class MnemonicGenerator;
-class VCL_DLLPUBLIC SvtIconChoiceCtrl : public Control
+class VCL_DLLPUBLIC SvtIconChoiceCtrl final : public Control
{
friend class SvxIconChoiceCtrl_Impl;
Link<SvtIconChoiceCtrl*,void> _aClickIconHdl;
std::unique_ptr<SvxIconChoiceCtrl_Impl, o3tl::default_delete<SvxIconChoiceCtrl_Impl>> _pImpl;
-protected:
-
virtual void KeyInput( const KeyEvent& rKEvt ) override;
virtual void Command( const CommandEvent& rCEvt ) override;
virtual void Paint( vcl::RenderContext& rRenderContext, const tools::Rectangle& rRect ) override;
diff --git a/include/vcl/toolkit/svlbitm.hxx b/include/vcl/toolkit/svlbitm.hxx
index 6ed70b37d093..f02c4125a13b 100644
--- a/include/vcl/toolkit/svlbitm.hxx
+++ b/include/vcl/toolkit/svlbitm.hxx
@@ -147,7 +147,7 @@ public:
virtual std::unique_ptr<SvLBoxItem> Clone(SvLBoxItem const * pSource) const override;
};
-class SvLBoxButton : public SvLBoxItem
+class SvLBoxButton final : public SvLBoxItem
{
bool isVis;
SvLBoxButtonData* pData;
diff --git a/include/vcl/transfer.hxx b/include/vcl/transfer.hxx
index c94b005b13fa..75d81f5fa5db 100644
--- a/include/vcl/transfer.hxx
+++ b/include/vcl/transfer.hxx
@@ -134,7 +134,7 @@ class VCL_DLLPUBLIC TransferableHelper : public cppu::WeakImplHelper< css::datat
private:
// nested class to implement the XTerminateListener interface
- class VCL_DLLPRIVATE TerminateListener : public cppu::WeakImplHelper< css::frame::XTerminateListener, css::lang::XServiceInfo >
+ class VCL_DLLPRIVATE TerminateListener final : public cppu::WeakImplHelper< css::frame::XTerminateListener, css::lang::XServiceInfo >
{
private:
@@ -376,7 +376,7 @@ class VCL_DLLPUBLIC DragSourceHelper
private:
// nested class to implement the XDragGestureListener interface
- class SAL_DLLPRIVATE DragGestureListener : public cppu::WeakImplHelper< css::datatransfer::dnd::XDragGestureListener >
+ class SAL_DLLPRIVATE DragGestureListener final : public cppu::WeakImplHelper< css::datatransfer::dnd::XDragGestureListener >
{
private:
@@ -422,7 +422,7 @@ class VCL_DLLPUBLIC DropTargetHelper
private:
// nested class to implement the XDropTargetListener interface
- class SAL_DLLPRIVATE DropTargetListener : public cppu::WeakImplHelper< css::datatransfer::dnd::XDropTargetListener >
+ class SAL_DLLPRIVATE DropTargetListener final : public cppu::WeakImplHelper< css::datatransfer::dnd::XDropTargetListener >
{
private:
diff --git a/include/vcl/uitest/formattedfielduiobject.hxx b/include/vcl/uitest/formattedfielduiobject.hxx
index 0077f0fde798..0bbc95c75e9b 100644
--- a/include/vcl/uitest/formattedfielduiobject.hxx
+++ b/include/vcl/uitest/formattedfielduiobject.hxx
@@ -14,7 +14,7 @@
class FormattedField;
-class FormattedFieldUIObject : public SpinFieldUIObject
+class FormattedFieldUIObject final : public SpinFieldUIObject
{
VclPtr<FormattedField> mxFormattedField;
@@ -28,7 +28,7 @@ public:
static std::unique_ptr<UIObject> create(vcl::Window* pWindow);
-protected:
+private:
virtual OUString get_name() const override;
};
diff --git a/include/vcl/uitest/metricfielduiobject.hxx b/include/vcl/uitest/metricfielduiobject.hxx
index a4b4efdd26aa..f45da7723053 100644
--- a/include/vcl/uitest/metricfielduiobject.hxx
+++ b/include/vcl/uitest/metricfielduiobject.hxx
@@ -14,7 +14,7 @@
class MetricField;
-class MetricFieldUIObject : public SpinFieldUIObject
+class MetricFieldUIObject final : public SpinFieldUIObject
{
VclPtr<MetricField> mxMetricField;
@@ -28,7 +28,7 @@ public:
static std::unique_ptr<UIObject> create(vcl::Window* pWindow);
-protected:
+private:
virtual OUString get_name() const override;
};
diff --git a/include/vcl/xtextedt.hxx b/include/vcl/xtextedt.hxx
index 94ca9d843f38..765c972df21a 100644
--- a/include/vcl/xtextedt.hxx
+++ b/include/vcl/xtextedt.hxx
@@ -24,7 +24,7 @@
namespace i18nutil { struct SearchOptions; }
-class VCL_DLLPUBLIC ExtTextEngine : public TextEngine
+class VCL_DLLPUBLIC ExtTextEngine final : public TextEngine
{
public:
ExtTextEngine();
diff --git a/vcl/inc/wizdlg.hxx b/vcl/inc/wizdlg.hxx
index d1dd68f0cde3..997a63c06dd7 100644
--- a/vcl/inc/wizdlg.hxx
+++ b/vcl/inc/wizdlg.hxx
@@ -169,7 +169,7 @@ namespace vcl
@return
<TRUE/> if and only if the page is allowed to be left
*/
- bool prepareLeaveCurrentState( WizardTypes::CommitPageReason eReason );
+ static bool prepareLeaveCurrentState( WizardTypes::CommitPageReason eReason );
/** determine the next state to travel from the given one
@@ -238,8 +238,6 @@ namespace vcl
*/
WizardTypes::WizardState getCurrentState() const { return GetCurLevel(); }
- static IWizardPageController* getPageController( TabPage* _pCurrentPage );
-
/** returns a human readable name for a given state
There is a default implementation for this method, which returns the display name
diff --git a/vcl/source/control/roadmapwizard.cxx b/vcl/source/control/roadmapwizard.cxx
index 1b24e39cc4fc..8b7116e75282 100644
--- a/vcl/source/control/roadmapwizard.cxx
+++ b/vcl/source/control/roadmapwizard.cxx
@@ -324,7 +324,7 @@ namespace vcl
TabPage* pCurrentPage = GetPage( getCurrentState() );
if ( pCurrentPage )
{
- const IWizardPageController* pController = getPageController( GetPage( getCurrentState() ) );
+ const IWizardPageController* pController = nullptr;
OSL_ENSURE( pController != nullptr, "RoadmapWizard::implUpdateRoadmap: no controller for the current page!" );
bCurrentPageCanAdvance = !pController || pController->canAdvance();
}
@@ -717,23 +717,8 @@ namespace vcl
return bResult;
}
- void RoadmapWizard::enterState(WizardTypes::WizardState nState)
+ void RoadmapWizard::enterState(WizardTypes::WizardState /*nState*/)
{
- // tell the page
- IWizardPageController* pController = getPageController( GetPage( nState ) );
- if (pController)
- {
- pController->initializePage();
-
- if ( isAutomaticNextButtonStateEnabled() )
- enableButtons( WizardButtonFlags::NEXT, canAdvance() );
-
- enableButtons( WizardButtonFlags::PREVIOUS, !m_xWizardImpl->aStateHistory.empty() );
-
- // set the new title - it depends on the current page (i.e. state)
- implUpdateTitle();
- }
-
// synchronize the roadmap
implUpdateRoadmap( );
m_xRoadmapImpl->pRoadmap->SelectRoadmapItemByID( getCurrentState() );
diff --git a/vcl/source/control/wizardmachine.cxx b/vcl/source/control/wizardmachine.cxx
index 59554f275663..c83bcf929afd 100644
--- a/vcl/source/control/wizardmachine.cxx
+++ b/vcl/source/control/wizardmachine.cxx
@@ -681,7 +681,7 @@ namespace vcl
bool RoadmapWizard::prepareLeaveCurrentState( WizardTypes::CommitPageReason _eReason )
{
- IWizardPageController* pController = getPageController( GetPage( getCurrentState() ) );
+ IWizardPageController* pController = nullptr;
ENSURE_OR_RETURN( pController != nullptr, "RoadmapWizard::prepareLeaveCurrentState: no controller for the current page!", true );
return pController->commitPage( _eReason );
}
@@ -835,12 +835,6 @@ namespace vcl
travelNext();
}
- IWizardPageController* RoadmapWizard::getPageController( TabPage* _pCurrentPage )
- {
- IWizardPageController* pController = dynamic_cast< IWizardPageController* >( _pCurrentPage );
- return pController;
- }
-
bool RoadmapWizard::isTravelingSuspended() const
{
return m_xWizardImpl->m_bTravelingSuspended;
More information about the Libreoffice-commits
mailing list