summaryrefslogtreecommitdiff
path: root/include/vcl
diff options
context:
space:
mode:
authorNoel Grandin <noel.grandin@collabora.co.uk>2021-06-17 09:49:37 +0200
committerNoel Grandin <noel.grandin@collabora.co.uk>2021-06-19 14:08:50 +0200
commite3077168072452fb8f1c0a8afb2992877cb96d1c (patch)
tree785da5126ddb052250ee3747fa221c746cc62e82 /include/vcl
parente48dd86341fff8a010f514bbcd818468f3a92815 (diff)
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@collabora.co.uk>
Diffstat (limited to 'include/vcl')
-rw-r--r--include/vcl/BitmapBasicMorphologyFilter.hxx4
-rw-r--r--include/vcl/BitmapFilterStackBlur.hxx2
-rw-r--r--include/vcl/alpha.hxx2
-rw-r--r--include/vcl/filter/pdfdocument.hxx28
-rw-r--r--include/vcl/fontcharmap.hxx2
-rw-r--r--include/vcl/layout.hxx2
-rw-r--r--include/vcl/menu.hxx8
-rw-r--r--include/vcl/pdfextoutdevdata.hxx2
-rw-r--r--include/vcl/tabpage.hxx2
-rw-r--r--include/vcl/toolkit/field.hxx6
-rw-r--r--include/vcl/toolkit/group.hxx2
-rw-r--r--include/vcl/toolkit/ivctrl.hxx4
-rw-r--r--include/vcl/toolkit/svlbitm.hxx2
-rw-r--r--include/vcl/transfer.hxx6
-rw-r--r--include/vcl/uitest/formattedfielduiobject.hxx4
-rw-r--r--include/vcl/uitest/metricfielduiobject.hxx4
-rw-r--r--include/vcl/xtextedt.hxx2
17 files changed, 38 insertions, 44 deletions
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();