diff --git a/src/Gui/View3DInventorViewer.cpp b/src/Gui/View3DInventorViewer.cpp index 9e5e745a40..42374ed80a 100644 --- a/src/Gui/View3DInventorViewer.cpp +++ b/src/Gui/View3DInventorViewer.cpp @@ -971,7 +971,7 @@ SbBool View3DInventorViewer::hasViewProvider(ViewProvider* pcProvider) const SbBool View3DInventorViewer::containsViewProvider(const ViewProvider* vp) const { SoSearchAction sa; - sa.setNode(const_cast(vp)->getRoot()); + sa.setNode(vp->getRoot()); sa.setSearchingAll(true); sa.apply(getSoRenderManager()->getSceneGraph()); return sa.getPath() != nullptr; diff --git a/src/Gui/ViewProvider.h b/src/Gui/ViewProvider.h index c6872254bc..849b05b73e 100644 --- a/src/Gui/ViewProvider.h +++ b/src/Gui/ViewProvider.h @@ -128,10 +128,10 @@ public: virtual ~ViewProvider(); // returns the root node of the Provider (3D) - virtual SoSeparator* getRoot(void){return pcRoot;} + virtual SoSeparator* getRoot(void) const {return pcRoot;} // return the mode switch node of the Provider (3D) - SoSwitch *getModeSwitch(void){return pcModeSwitch;} - SoTransform *getTransformNode(){return pcTransform;} + SoSwitch *getModeSwitch(void) const {return pcModeSwitch;} + SoTransform *getTransformNode() const {return pcTransform;} // returns the root for the Annotations. SoSeparator* getAnnotation(void); // returns the root node of the Provider (3D) diff --git a/src/Gui/ViewProviderPythonFeature.h b/src/Gui/ViewProviderPythonFeature.h index 931e86e0ba..45ed27095f 100644 --- a/src/Gui/ViewProviderPythonFeature.h +++ b/src/Gui/ViewProviderPythonFeature.h @@ -223,7 +223,7 @@ public: /** @name Nodes */ //@{ - virtual SoSeparator* getRoot() override { + virtual SoSeparator* getRoot() const override { return ViewProviderT::getRoot(); } virtual SoSeparator* getFrontRoot() const override { diff --git a/src/Mod/Mesh/Gui/ViewProvider.h b/src/Mod/Mesh/Gui/ViewProvider.h index 2026d0dc67..4ac5979a99 100644 --- a/src/Mod/Mesh/Gui/ViewProvider.h +++ b/src/Mod/Mesh/Gui/ViewProvider.h @@ -96,7 +96,7 @@ public: virtual ~ViewProviderExport(); virtual QIcon getIcon() const; - SoSeparator* getRoot(void){return 0;} + SoSeparator* getRoot(void) const {return nullptr;} std::vector getDisplayModes(void) const; const char* getDefaultDisplayMode() const; };