diff --git a/src/Gui/ViewProvider.h b/src/Gui/ViewProvider.h index 7dfa5f662..73344c5c5 100644 --- a/src/Gui/ViewProvider.h +++ b/src/Gui/ViewProvider.h @@ -205,7 +205,7 @@ public: void setVisible(bool); bool isVisible() const; /// Overrides the display mode with mode. - void setOverrideMode(const std::string &mode); + virtual void setOverrideMode(const std::string &mode); //@} diff --git a/src/Gui/ViewProviderPythonFeature.h b/src/Gui/ViewProviderPythonFeature.h index b891efafb..1d8349c82 100644 --- a/src/Gui/ViewProviderPythonFeature.h +++ b/src/Gui/ViewProviderPythonFeature.h @@ -295,6 +295,7 @@ protected: ViewProviderT::attach(ViewProviderT::pcObject); // needed to load the right display mode after they're known now ViewProviderT::DisplayMode.touch(); + ViewProviderT::setOverrideMode(viewerMode); } ViewProviderT::updateView(); } @@ -326,11 +327,17 @@ protected: else return true; } + virtual void setOverrideMode(const std::string &mode) + { + ViewProviderT::setOverrideMode(mode); + viewerMode = mode; + } private: ViewProviderPythonFeatureImp* imp; App::DynamicProperty *props; App::PropertyPythonObject Proxy; + std::string viewerMode; bool _attached; };