From e9003842502252d6eebedd48e420abc3f5ee10a6 Mon Sep 17 00:00:00 2001 From: wmayer Date: Sun, 29 Dec 2019 13:55:39 +0100 Subject: [PATCH] declare getMDIView and getMDIViewPage as const --- src/Gui/ViewProvider.h | 4 +++- src/Mod/Spreadsheet/Gui/ViewProviderSpreadsheet.cpp | 7 ++++--- src/Mod/Spreadsheet/Gui/ViewProviderSpreadsheet.h | 2 +- src/Mod/TechDraw/Gui/ViewProviderDrawingView.cpp | 3 ++- src/Mod/TechDraw/Gui/ViewProviderDrawingView.h | 2 +- src/Mod/TechDraw/Gui/ViewProviderGeomHatch.cpp | 3 ++- src/Mod/TechDraw/Gui/ViewProviderGeomHatch.h | 2 +- src/Mod/TechDraw/Gui/ViewProviderHatch.cpp | 3 ++- src/Mod/TechDraw/Gui/ViewProviderHatch.h | 2 +- src/Mod/TechDraw/Gui/ViewProviderPage.cpp | 7 ++++--- src/Mod/TechDraw/Gui/ViewProviderPage.h | 4 ++-- src/Mod/TechDraw/Gui/ViewProviderTemplate.cpp | 5 +++-- src/Mod/TechDraw/Gui/ViewProviderTemplate.h | 4 ++-- 13 files changed, 28 insertions(+), 20 deletions(-) diff --git a/src/Gui/ViewProvider.h b/src/Gui/ViewProvider.h index ba6d682ba9..c6872254bc 100644 --- a/src/Gui/ViewProvider.h +++ b/src/Gui/ViewProvider.h @@ -470,7 +470,9 @@ public: static Base::Matrix4D convert(const SbMatrix &sbMat); //@} - virtual MDIView *getMDIView() {return 0;} + virtual MDIView *getMDIView() const { + return nullptr; + } public: // this method is called by the viewer when the ViewProvider is in edit diff --git a/src/Mod/Spreadsheet/Gui/ViewProviderSpreadsheet.cpp b/src/Mod/Spreadsheet/Gui/ViewProviderSpreadsheet.cpp index 8a704f3130..d78143413d 100644 --- a/src/Mod/Spreadsheet/Gui/ViewProviderSpreadsheet.cpp +++ b/src/Mod/Spreadsheet/Gui/ViewProviderSpreadsheet.cpp @@ -169,10 +169,11 @@ SheetView *ViewProviderSheet::showSpreadsheetView() } return view; -} +} -Gui::MDIView *ViewProviderSheet::getMDIView() { - return showSpreadsheetView(); +Gui::MDIView *ViewProviderSheet::getMDIView() const +{ + return const_cast(this)->showSpreadsheetView(); } void ViewProviderSheet::updateData(const App::Property* prop) diff --git a/src/Mod/Spreadsheet/Gui/ViewProviderSpreadsheet.h b/src/Mod/Spreadsheet/Gui/ViewProviderSpreadsheet.h index 009df48c7e..9602254d9a 100644 --- a/src/Mod/Spreadsheet/Gui/ViewProviderSpreadsheet.h +++ b/src/Mod/Spreadsheet/Gui/ViewProviderSpreadsheet.h @@ -65,7 +65,7 @@ public: virtual bool isShow(void) const override { return true; } - virtual Gui::MDIView *getMDIView() override; + virtual Gui::MDIView *getMDIView() const override; protected: SheetView* showSpreadsheetView(); diff --git a/src/Mod/TechDraw/Gui/ViewProviderDrawingView.cpp b/src/Mod/TechDraw/Gui/ViewProviderDrawingView.cpp index 3e91aedcfa..f083d784ff 100644 --- a/src/Mod/TechDraw/Gui/ViewProviderDrawingView.cpp +++ b/src/Mod/TechDraw/Gui/ViewProviderDrawingView.cpp @@ -257,7 +257,8 @@ MDIViewPage* ViewProviderDrawingView::getMDIViewPage() const return result; } -Gui::MDIView *ViewProviderDrawingView::getMDIView() { +Gui::MDIView *ViewProviderDrawingView::getMDIView() const +{ return getMDIViewPage(); } diff --git a/src/Mod/TechDraw/Gui/ViewProviderDrawingView.h b/src/Mod/TechDraw/Gui/ViewProviderDrawingView.h index b1f8458323..191ff95892 100644 --- a/src/Mod/TechDraw/Gui/ViewProviderDrawingView.h +++ b/src/Mod/TechDraw/Gui/ViewProviderDrawingView.h @@ -70,7 +70,7 @@ public: QGIView* getQView(void); MDIViewPage* getMDIViewPage() const; - virtual Gui::MDIView *getMDIView() override; + virtual Gui::MDIView *getMDIView() const override; /** @name Restoring view provider from document load */ //@{ diff --git a/src/Mod/TechDraw/Gui/ViewProviderGeomHatch.cpp b/src/Mod/TechDraw/Gui/ViewProviderGeomHatch.cpp index 8125812d41..93c8dd2cc4 100644 --- a/src/Mod/TechDraw/Gui/ViewProviderGeomHatch.cpp +++ b/src/Mod/TechDraw/Gui/ViewProviderGeomHatch.cpp @@ -203,7 +203,8 @@ TechDraw::DrawGeomHatch* ViewProviderGeomHatch::getViewObject() const return dynamic_cast(pcObject); } -Gui::MDIView *ViewProviderGeomHatch::getMDIView() { +Gui::MDIView *ViewProviderGeomHatch::getMDIView() const +{ auto obj = getViewObject(); if(!obj) return 0; auto vp = Gui::Application::Instance->getViewProvider(obj->getSourceView()); diff --git a/src/Mod/TechDraw/Gui/ViewProviderGeomHatch.h b/src/Mod/TechDraw/Gui/ViewProviderGeomHatch.h index 70f544317a..2917bf0f29 100644 --- a/src/Mod/TechDraw/Gui/ViewProviderGeomHatch.h +++ b/src/Mod/TechDraw/Gui/ViewProviderGeomHatch.h @@ -68,7 +68,7 @@ public: TechDraw::DrawGeomHatch* getViewObject() const; - virtual Gui::MDIView *getMDIView() override; + virtual Gui::MDIView *getMDIView() const override; }; } // namespace TechDrawGui diff --git a/src/Mod/TechDraw/Gui/ViewProviderHatch.cpp b/src/Mod/TechDraw/Gui/ViewProviderHatch.cpp index d827a1597d..e2f30d10ee 100644 --- a/src/Mod/TechDraw/Gui/ViewProviderHatch.cpp +++ b/src/Mod/TechDraw/Gui/ViewProviderHatch.cpp @@ -123,7 +123,8 @@ TechDraw::DrawHatch* ViewProviderHatch::getViewObject() const return dynamic_cast(pcObject); } -Gui::MDIView *ViewProviderHatch::getMDIView() { +Gui::MDIView *ViewProviderHatch::getMDIView() const +{ auto obj = getViewObject(); if(!obj) return 0; auto vp = Gui::Application::Instance->getViewProvider(obj->getSourceView()); diff --git a/src/Mod/TechDraw/Gui/ViewProviderHatch.h b/src/Mod/TechDraw/Gui/ViewProviderHatch.h index 1f62a402db..d27358340a 100644 --- a/src/Mod/TechDraw/Gui/ViewProviderHatch.h +++ b/src/Mod/TechDraw/Gui/ViewProviderHatch.h @@ -57,7 +57,7 @@ public: TechDraw::DrawHatch* getViewObject() const; - virtual Gui::MDIView *getMDIView() override; + virtual Gui::MDIView *getMDIView() const override; private: static App::PropertyFloatConstraint::Constraints scaleRange; diff --git a/src/Mod/TechDraw/Gui/ViewProviderPage.cpp b/src/Mod/TechDraw/Gui/ViewProviderPage.cpp index 5fbda4d4c2..4b99524ea2 100644 --- a/src/Mod/TechDraw/Gui/ViewProviderPage.cpp +++ b/src/Mod/TechDraw/Gui/ViewProviderPage.cpp @@ -335,7 +335,7 @@ void ViewProviderPage::unsetEdit(int ModNum) } -MDIViewPage* ViewProviderPage::getMDIViewPage() +MDIViewPage* ViewProviderPage::getMDIViewPage() const { if (m_mdiView.isNull()) { Base::Console().Log("INFO - ViewProviderPage::getMDIViewPage has no m_mdiView!\n"); @@ -444,7 +444,8 @@ TechDraw::DrawPage* ViewProviderPage::getDrawPage() const return dynamic_cast(pcObject); } -Gui::MDIView *ViewProviderPage::getMDIView() { - showMDIViewPage(); +Gui::MDIView *ViewProviderPage::getMDIView() const +{ + const_cast(this)->showMDIViewPage(); return m_mdiView.data(); } diff --git a/src/Mod/TechDraw/Gui/ViewProviderPage.h b/src/Mod/TechDraw/Gui/ViewProviderPage.h index a84f58c4c6..1fb87865e4 100644 --- a/src/Mod/TechDraw/Gui/ViewProviderPage.h +++ b/src/Mod/TechDraw/Gui/ViewProviderPage.h @@ -81,11 +81,11 @@ public: Connection connectGuiRepaint; void unsetEdit(int ModNum) override; - MDIViewPage* getMDIViewPage(); + MDIViewPage* getMDIViewPage() const; bool showMDIViewPage(); void removeMDIView(void); - virtual Gui::MDIView *getMDIView() override; + virtual Gui::MDIView *getMDIView() const override; bool getFrameState(void); void setFrameState(bool state); diff --git a/src/Mod/TechDraw/Gui/ViewProviderTemplate.cpp b/src/Mod/TechDraw/Gui/ViewProviderTemplate.cpp index a194338f80..37cf514bfe 100644 --- a/src/Mod/TechDraw/Gui/ViewProviderTemplate.cpp +++ b/src/Mod/TechDraw/Gui/ViewProviderTemplate.cpp @@ -182,7 +182,7 @@ void ViewProviderTemplate::setMarkers(bool state) } } -MDIViewPage* ViewProviderTemplate::getMDIViewPage(void) +MDIViewPage* ViewProviderTemplate::getMDIViewPage(void) const { MDIViewPage* myMdi = nullptr; auto t = getTemplate(); @@ -195,7 +195,8 @@ MDIViewPage* ViewProviderTemplate::getMDIViewPage(void) return myMdi; } -Gui::MDIView *ViewProviderTemplate::getMDIView() { +Gui::MDIView *ViewProviderTemplate::getMDIView() const +{ return getMDIViewPage(); } diff --git a/src/Mod/TechDraw/Gui/ViewProviderTemplate.h b/src/Mod/TechDraw/Gui/ViewProviderTemplate.h index 4ab4392c8c..8880c132b2 100644 --- a/src/Mod/TechDraw/Gui/ViewProviderTemplate.h +++ b/src/Mod/TechDraw/Gui/ViewProviderTemplate.h @@ -56,8 +56,8 @@ public: virtual bool isShow(void) const override; QGITemplate* getQTemplate(void); TechDraw::DrawTemplate* getTemplate() const; - MDIViewPage* getMDIViewPage(void); - virtual Gui::MDIView *getMDIView() override; + MDIViewPage* getMDIViewPage(void) const; + virtual Gui::MDIView *getMDIView() const override; void setMarkers(bool state); };