summaryrefslogtreecommitdiff
path: root/svtools
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 /svtools
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 'svtools')
-rw-r--r--svtools/inc/svtools/accessiblefactory.hxx3
-rw-r--r--svtools/inc/svtools/accessibletable.hxx6
-rw-r--r--svtools/inc/svtools/accessibletableprovider.hxx9
-rw-r--r--svtools/inc/svtools/table/tablesort.hxx3
-rw-r--r--svtools/inc/svtools/toolpanel/toolpaneldeck.hxx6
-rw-r--r--svtools/inc/svtools/wizardmachine.hxx3
-rw-r--r--svtools/source/contnr/contentenumeration.hxx6
-rw-r--r--svtools/source/contnr/fileview.cxx3
-rw-r--r--svtools/source/toolpanel/paneltabbar.cxx5
9 files changed, 44 insertions, 0 deletions
diff --git a/svtools/inc/svtools/accessiblefactory.hxx b/svtools/inc/svtools/accessiblefactory.hxx
index 6fefb18a17a1..f747b9a4cb31 100644
--- a/svtools/inc/svtools/accessiblefactory.hxx
+++ b/svtools/inc/svtools/accessiblefactory.hxx
@@ -180,6 +180,9 @@ namespace svt
::svt::IToolPanelDeck& i_rPanelDeck,
::svt::PanelTabBar& i_rTabBar
) = 0;
+
+ protected:
+ ~IAccessibleFactory() {}
};
//........................................................................
diff --git a/svtools/inc/svtools/accessibletable.hxx b/svtools/inc/svtools/accessibletable.hxx
index 5afd1ff2d68e..5d8c932f8b48 100644
--- a/svtools/inc/svtools/accessibletable.hxx
+++ b/svtools/inc/svtools/accessibletable.hxx
@@ -128,6 +128,9 @@ public:
virtual bool IsRowSelected( sal_Int32 const i_rowIndex ) const = 0;
virtual void SelectRow( sal_Int32 const i_rowIndex, bool const i_select ) = 0;
virtual void SelectAllRows( bool const i_select ) = 0;
+
+protected:
+ ~IAccessibleTable() {}
};
// ----------------------------------------------------------------------------
@@ -172,6 +175,9 @@ public:
const ::com::sun::star::uno::Any& rNewValue,
const ::com::sun::star::uno::Any& rOldValue
) = 0;
+
+protected:
+ ~IAccessibleTableControl() {}
};
// ----------------------------------------------------------------------------
diff --git a/svtools/inc/svtools/accessibletableprovider.hxx b/svtools/inc/svtools/accessibletableprovider.hxx
index 3f16370a4bad..558ee6f9f357 100644
--- a/svtools/inc/svtools/accessibletableprovider.hxx
+++ b/svtools/inc/svtools/accessibletableprovider.hxx
@@ -141,6 +141,9 @@ public:
virtual Rectangle GetFieldCharacterBounds(sal_Int32 _nRow,sal_Int32 _nColumnPos,sal_Int32 nIndex) = 0;
virtual sal_Int32 GetFieldIndexAtPoint(sal_Int32 _nRow,sal_Int32 _nColumnPos,const Point& _rPoint) = 0;
+
+protected:
+ ~IAccessibleTableProvider() {}
};
// ----------------------------------------------------------------------------
@@ -168,6 +171,9 @@ public:
*/
virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
getHeaderBar( ::svt::AccessibleBrowseBoxObjType _eObjType ) = 0;
+
+protected:
+ ~IAccessibleTabListBox() {}
};
/** interface for an implementation of a browse box's Accesible component
@@ -239,6 +245,9 @@ public:
const ::com::sun::star::uno::Any& rNewValue,
const ::com::sun::star::uno::Any& rOldValue
) = 0;
+
+protected:
+ ~IAccessibleBrowseBox() {}
};
// ----------------------------------------------------------------------------
diff --git a/svtools/inc/svtools/table/tablesort.hxx b/svtools/inc/svtools/table/tablesort.hxx
index 5c0245776f46..760004fffe90 100644
--- a/svtools/inc/svtools/table/tablesort.hxx
+++ b/svtools/inc/svtools/table/tablesort.hxx
@@ -83,6 +83,9 @@ namespace svt { namespace table
the data is currently not sorted.
*/
virtual ColumnSort getCurrentSortOrder() const = 0;
+
+ protected:
+ ~ITableDataSort() {}
};
//......................................................................................................................
diff --git a/svtools/inc/svtools/toolpanel/toolpaneldeck.hxx b/svtools/inc/svtools/toolpanel/toolpaneldeck.hxx
index 8c277c80c9df..b360cfc47120 100644
--- a/svtools/inc/svtools/toolpanel/toolpaneldeck.hxx
+++ b/svtools/inc/svtools/toolpanel/toolpaneldeck.hxx
@@ -74,6 +74,9 @@ namespace svt
release all references to the deck then.
*/
virtual void Dying() = 0;
+
+ protected:
+ ~IToolPanelDeckListener() {}
};
//====================================================================
@@ -129,6 +132,9 @@ namespace svt
/** removes a container listener previously added via addListener.
*/
virtual void RemoveListener( IToolPanelDeckListener& i_rListener ) = 0;
+
+ protected:
+ ~IToolPanelDeck() {}
};
//====================================================================
diff --git a/svtools/inc/svtools/wizardmachine.hxx b/svtools/inc/svtools/wizardmachine.hxx
index 8700bf4ede06..f84a78e5400d 100644
--- a/svtools/inc/svtools/wizardmachine.hxx
+++ b/svtools/inc/svtools/wizardmachine.hxx
@@ -87,6 +87,9 @@ namespace svt
The default implementation always returns <TRUE/>.
*/
virtual bool canAdvance() const = 0;
+
+ protected:
+ ~IWizardPageController() {}
};
//=====================================================================
diff --git a/svtools/source/contnr/contentenumeration.hxx b/svtools/source/contnr/contentenumeration.hxx
index 612f71ff435d..576b0e6e5721 100644
--- a/svtools/source/contnr/contentenumeration.hxx
+++ b/svtools/source/contnr/contentenumeration.hxx
@@ -135,6 +135,9 @@ namespace svt
{
public:
virtual sal_Bool GetTranslation( const ::rtl::OUString& _rOriginalName, ::rtl::OUString& _rTranslatedName ) const = 0;
+
+ protected:
+ ~IContentTitleTranslation() {}
};
//====================================================================
@@ -180,6 +183,9 @@ namespace svt
{
public:
virtual void enumerationDone( EnumerationResult _eResult ) = 0;
+
+ protected:
+ ~IEnumerationResultHandler() {}
};
//====================================================================
diff --git a/svtools/source/contnr/fileview.cxx b/svtools/source/contnr/fileview.cxx
index 9180e77bea86..b6868319eb5b 100644
--- a/svtools/source/contnr/fileview.cxx
+++ b/svtools/source/contnr/fileview.cxx
@@ -113,6 +113,9 @@ namespace
{
public:
virtual void onTimeout( CallbackTimer* _pInstigator ) = 0;
+
+ protected:
+ ~ITimeoutHandler() {}
};
//====================================================================
diff --git a/svtools/source/toolpanel/paneltabbar.cxx b/svtools/source/toolpanel/paneltabbar.cxx
index 9baad589b62c..71e0616916ce 100644
--- a/svtools/source/toolpanel/paneltabbar.cxx
+++ b/svtools/source/toolpanel/paneltabbar.cxx
@@ -100,6 +100,9 @@ namespace svt
// class, but not at the OutputDevice. This makes the API somewhat weird, as we're now mixing operations on the
// target device, done in a normalized geometry, with operations on the window, done in a transformed geometry.
// So, we should get rid of postRenderItem completely.
+
+ protected:
+ ~ITabBarRenderer() {}
};
typedef ::boost::shared_ptr< ITabBarRenderer > PTabBarRenderer;
@@ -265,6 +268,8 @@ namespace svt
{
}
+ virtual ~NWFTabItemRenderer() {}
+
// ITabBarRenderer
virtual void renderBackground() const;
virtual Rectangle calculateDecorations( const Rectangle& i_rContentArea, const ItemFlags i_nItemFlags ) const;