summaryrefslogtreecommitdiff
path: root/sd
diff options
context:
space:
mode:
authorStephan Bergmann <sbergman@redhat.com>2012-03-14 13:27:56 +0100
committerStephan Bergmann <sbergman@redhat.com>2012-03-14 13:32:02 +0100
commit6e67c03dc0225fc66343546b14e902b9d238b1a3 (patch)
tree6e078783d65e280a721b4e46f0ae0ca6b950f121 /sd
parentfe4be5047988782f3143a1af505c5eecb3f2af5a (diff)
Enable -Wnon-virtual-dtor for GCC 4.6
...which has the necessary features to support it. Change a lot of classes to either contain a protected non-virtual dtor (which is backwards compatible, so even works for cppumaker-generated UNO headers) or a public virtual one. cppuhelper/propertysetmixin.hxx still needs to disable the warning, as the relevant class has a non-virtual dtor but friends, which would still cause GCC to warn. Includes a patch for libcmis, intended to be upstreamed.
Diffstat (limited to 'sd')
-rw-r--r--sd/inc/CustomAnimationEffect.hxx3
-rw-r--r--sd/inc/sdabstdlg.hxx3
-rw-r--r--sd/source/ui/dlg/sddlgfact.hxx2
-rw-r--r--sd/source/ui/inc/ViewShellBase.hxx3
-rw-r--r--sd/source/ui/inc/taskpane/ILayoutableWindow.hxx3
-rw-r--r--sd/source/ui/inc/tools/AsynchronousTask.hxx3
-rw-r--r--sd/source/ui/slidesorter/cache/SlsBitmapCompressor.hxx6
-rw-r--r--sd/source/ui/slidesorter/inc/cache/SlsCacheContext.hxx2
-rw-r--r--sd/source/ui/slidesorter/inc/model/SlsEnumeration.hxx2
-rw-r--r--sd/source/ui/slidesorter/inc/view/SlsILayerPainter.hxx4
-rw-r--r--sd/source/ui/slidesorter/view/SlsInsertAnimator.cxx3
-rw-r--r--sd/source/ui/toolpanel/controls/MasterPageContainerFiller.hxx3
-rw-r--r--sd/source/ui/toolpanel/controls/MasterPageContainerProviders.hxx6
-rw-r--r--sd/source/ui/toolpanel/controls/MasterPageContainerQueue.hxx6
14 files changed, 48 insertions, 1 deletions
diff --git a/sd/inc/CustomAnimationEffect.hxx b/sd/inc/CustomAnimationEffect.hxx
index a55acd3fab22..5d0c5e54c5a1 100644
--- a/sd/inc/CustomAnimationEffect.hxx
+++ b/sd/inc/CustomAnimationEffect.hxx
@@ -240,6 +240,9 @@ class ISequenceListener
{
public:
virtual void notify_change() = 0;
+
+protected:
+ ~ISequenceListener() {}
};
/** this class keeps track of a group of animations that build up
diff --git a/sd/inc/sdabstdlg.hxx b/sd/inc/sdabstdlg.hxx
index 09aabe3a87b5..8d3e6c09f79e 100644
--- a/sd/inc/sdabstdlg.hxx
+++ b/sd/inc/sdabstdlg.hxx
@@ -224,6 +224,9 @@ public:
virtual CreateTabPage GetSdPrintOptionsTabPageCreatorFunc() = 0;
virtual CreateTabPage GetSdOptionsMiscTabPageCreatorFunc() = 0;
virtual CreateTabPage GetSdOptionsSnapTabPageCreatorFunc() = 0;
+
+protected:
+ ~SdAbstractDialogFactory() {}
};
#endif
diff --git a/sd/source/ui/dlg/sddlgfact.hxx b/sd/source/ui/dlg/sddlgfact.hxx
index 9a0f5f829d1e..829932f0b3c7 100644
--- a/sd/source/ui/dlg/sddlgfact.hxx
+++ b/sd/source/ui/dlg/sddlgfact.hxx
@@ -259,6 +259,8 @@ class SdAbstractDialogFactory_Impl : public SdAbstractDialogFactory
{
public:
+ virtual ~SdAbstractDialogFactory_Impl() {}
+
virtual VclAbstractDialog* CreateBreakDlg(::Window* pWindow, ::sd::DrawView* pDrView, ::sd::DrawDocShell* pShell, sal_uLong nSumActionCount, sal_uLong nObjCount );
virtual AbstractCopyDlg* CreateCopyDlg( ::Window* pWindow, const SfxItemSet& rInAttrs, const rtl::Reference<XColorList> &pColTab, ::sd::View* pView );
virtual AbstractSdCustomShowDlg* CreateSdCustomShowDlg( ::Window* pWindow, SdDrawDocument& rDrawDoc );
diff --git a/sd/source/ui/inc/ViewShellBase.hxx b/sd/source/ui/inc/ViewShellBase.hxx
index e8e6f394cc4d..6c6ee69dbb13 100644
--- a/sd/source/ui/inc/ViewShellBase.hxx
+++ b/sd/source/ui/inc/ViewShellBase.hxx
@@ -263,6 +263,9 @@ class ICustomhandleSupplier
{
public:
virtual void addCustomHandler( SdrView& rSourceView, ViewShell::ShellType eShellType, SdrHdlList& rHandlerList ) = 0;
+
+protected:
+ ~ICustomhandleSupplier() {}
};
} // end of namespace sd
diff --git a/sd/source/ui/inc/taskpane/ILayoutableWindow.hxx b/sd/source/ui/inc/taskpane/ILayoutableWindow.hxx
index 138353ee0d0b..9a22bc3b7d23 100644
--- a/sd/source/ui/inc/taskpane/ILayoutableWindow.hxx
+++ b/sd/source/ui/inc/taskpane/ILayoutableWindow.hxx
@@ -44,6 +44,9 @@ public:
resized.
*/
virtual void RequestResize (void) = 0;
+
+protected:
+ ~ILayouter() {}
};
diff --git a/sd/source/ui/inc/tools/AsynchronousTask.hxx b/sd/source/ui/inc/tools/AsynchronousTask.hxx
index f27508cd278a..f05d0cce5516 100644
--- a/sd/source/ui/inc/tools/AsynchronousTask.hxx
+++ b/sd/source/ui/inc/tools/AsynchronousTask.hxx
@@ -49,6 +49,9 @@ public:
returned.
*/
virtual bool HasNextStep (void) = 0;
+
+protected:
+ ~AsynchronousTask() {}
};
} } // end of namespace ::sd::tools
diff --git a/sd/source/ui/slidesorter/cache/SlsBitmapCompressor.hxx b/sd/source/ui/slidesorter/cache/SlsBitmapCompressor.hxx
index d1b67da6ebc3..a8fe6aa69521 100644
--- a/sd/source/ui/slidesorter/cache/SlsBitmapCompressor.hxx
+++ b/sd/source/ui/slidesorter/cache/SlsBitmapCompressor.hxx
@@ -66,6 +66,9 @@ public:
the returned bitmap as is or if a new preview has to be created.
*/
virtual bool IsLossless (void) const = 0;
+
+protected:
+ ~BitmapCompressor() {}
};
@@ -78,6 +81,9 @@ class BitmapReplacement
{
public:
virtual sal_Int32 GetMemorySize (void) const { return 0; }
+
+protected:
+ ~BitmapReplacement() {}
};
diff --git a/sd/source/ui/slidesorter/inc/cache/SlsCacheContext.hxx b/sd/source/ui/slidesorter/inc/cache/SlsCacheContext.hxx
index aaf99ad19886..7f094b0643c5 100644
--- a/sd/source/ui/slidesorter/inc/cache/SlsCacheContext.hxx
+++ b/sd/source/ui/slidesorter/inc/cache/SlsCacheContext.hxx
@@ -47,6 +47,8 @@ typedef const SdrPage* CacheKey;
class CacheContext
{
public:
+ virtual ~CacheContext() {}
+
/** This method is called when the asynchronous creation of a preview
has been finished.
@param aKey
diff --git a/sd/source/ui/slidesorter/inc/model/SlsEnumeration.hxx b/sd/source/ui/slidesorter/inc/model/SlsEnumeration.hxx
index fe4b1cc12506..0de68b5a85e8 100644
--- a/sd/source/ui/slidesorter/inc/model/SlsEnumeration.hxx
+++ b/sd/source/ui/slidesorter/inc/model/SlsEnumeration.hxx
@@ -41,6 +41,8 @@ template <class T>
class Enumeration
{
public:
+ virtual ~Enumeration() {}
+
virtual bool HasMoreElements (void) const = 0;
/** Returns T instead of T& so that it can handle shared pointers.
*/
diff --git a/sd/source/ui/slidesorter/inc/view/SlsILayerPainter.hxx b/sd/source/ui/slidesorter/inc/view/SlsILayerPainter.hxx
index 98ef3f04af0f..a01b402d6038 100644
--- a/sd/source/ui/slidesorter/inc/view/SlsILayerPainter.hxx
+++ b/sd/source/ui/slidesorter/inc/view/SlsILayerPainter.hxx
@@ -40,6 +40,8 @@ namespace sd { namespace slidesorter { namespace view {
class ILayerInvalidator
{
public:
+ virtual ~ILayerInvalidator() {}
+
virtual void Invalidate (const Rectangle& rInvalidationBox) = 0;
};
typedef ::boost::shared_ptr<ILayerInvalidator> SharedILayerInvalidator;
@@ -47,6 +49,8 @@ typedef ::boost::shared_ptr<ILayerInvalidator> SharedILayerInvalidator;
class ILayerPainter
{
public:
+ virtual ~ILayerPainter() {}
+
virtual void SetLayerInvalidator (
const SharedILayerInvalidator& rpInvalidator) = 0;
virtual void Paint (
diff --git a/sd/source/ui/slidesorter/view/SlsInsertAnimator.cxx b/sd/source/ui/slidesorter/view/SlsInsertAnimator.cxx
index 0a2408d3dcbe..06ef5d2de3f7 100644
--- a/sd/source/ui/slidesorter/view/SlsInsertAnimator.cxx
+++ b/sd/source/ui/slidesorter/view/SlsInsertAnimator.cxx
@@ -54,6 +54,9 @@ public:
virtual view::SlideSorterView& GetView (void) const = 0;
virtual ::boost::shared_ptr<controller::Animator> GetAnimator (void) = 0;
virtual SharedSdWindow GetContentWindow (void) = 0;
+
+protected:
+ ~AnimatorAccess() {}
};
diff --git a/sd/source/ui/toolpanel/controls/MasterPageContainerFiller.hxx b/sd/source/ui/toolpanel/controls/MasterPageContainerFiller.hxx
index 661a26bd68b8..7776624e8d9a 100644
--- a/sd/source/ui/toolpanel/controls/MasterPageContainerFiller.hxx
+++ b/sd/source/ui/toolpanel/controls/MasterPageContainerFiller.hxx
@@ -57,6 +57,9 @@ public:
to the container via the PutMasterPage() method.
*/
virtual void FillingDone (void) = 0;
+
+ protected:
+ ~ContainerAdapter() {}
};
MasterPageContainerFiller (ContainerAdapter& rContainerAdapter);
diff --git a/sd/source/ui/toolpanel/controls/MasterPageContainerProviders.hxx b/sd/source/ui/toolpanel/controls/MasterPageContainerProviders.hxx
index 85a8cf7ed40a..b09394a3cab7 100644
--- a/sd/source/ui/toolpanel/controls/MasterPageContainerProviders.hxx
+++ b/sd/source/ui/toolpanel/controls/MasterPageContainerProviders.hxx
@@ -66,6 +66,9 @@ public:
virtual int GetCostIndex (void) = 0;
virtual bool operator== (const PageObjectProvider& rProvider) = 0;
+
+protected:
+ ~PageObjectProvider() {}
};
@@ -100,6 +103,9 @@ public:
preview.
*/
virtual bool NeedsPageObject (void) = 0;
+
+protected:
+ ~PreviewProvider() {}
};
diff --git a/sd/source/ui/toolpanel/controls/MasterPageContainerQueue.hxx b/sd/source/ui/toolpanel/controls/MasterPageContainerQueue.hxx
index 2cab5d31edc5..804d87521b89 100644
--- a/sd/source/ui/toolpanel/controls/MasterPageContainerQueue.hxx
+++ b/sd/source/ui/toolpanel/controls/MasterPageContainerQueue.hxx
@@ -47,12 +47,16 @@ namespace sd { namespace toolpanel { namespace controls {
class MasterPageContainerQueue
{
public:
- class ContainerAdapter { public:
+ class ContainerAdapter {
+ public:
virtual bool UpdateDescriptor (
const SharedMasterPageDescriptor& rpDescriptor,
bool bForcePageObject,
bool bForcePreview,
bool bSendEvents) = 0;
+
+ protected:
+ ~ContainerAdapter() {}
};
static MasterPageContainerQueue* Create (