diff --git a/src/Mod/Sketcher/Gui/EditModeGeometryCoinConverter.cpp b/src/Mod/Sketcher/Gui/EditModeGeometryCoinConverter.cpp index 212e2f0502..24f0c1f361 100644 --- a/src/Mod/Sketcher/Gui/EditModeGeometryCoinConverter.cpp +++ b/src/Mod/Sketcher/Gui/EditModeGeometryCoinConverter.cpp @@ -51,10 +51,12 @@ using namespace SketcherGui; -EditModeGeometryCoinConverter::EditModeGeometryCoinConverter( GeometryLayerNodes & geometrylayernodes, +EditModeGeometryCoinConverter::EditModeGeometryCoinConverter( ViewProviderSketch & vp, + GeometryLayerNodes & geometrylayernodes, DrawingParameters & drawingparameters, GeometryLayerParameters& geometryLayerParams, CoinMapping & coinMap ): + viewProvider(vp), geometryLayerNodes(geometrylayernodes), drawingParameters(drawingparameters), geometryLayerParameters(geometryLayerParams), diff --git a/src/Mod/Sketcher/Gui/EditModeGeometryCoinConverter.h b/src/Mod/Sketcher/Gui/EditModeGeometryCoinConverter.h index ae23634440..fae35fcc3d 100644 --- a/src/Mod/Sketcher/Gui/EditModeGeometryCoinConverter.h +++ b/src/Mod/Sketcher/Gui/EditModeGeometryCoinConverter.h @@ -43,6 +43,7 @@ namespace Part { } namespace SketcherGui { + class ViewProviderSketch; struct GeometryLayerNodes; struct DrawingParameters; class GeometryLayerParameters; @@ -95,7 +96,8 @@ public: * * @param drawingparameters: Parameters for drawing the overlay information */ - EditModeGeometryCoinConverter( GeometryLayerNodes & geometrylayernodes, + EditModeGeometryCoinConverter( ViewProviderSketch & vp, + GeometryLayerNodes & geometrylayernodes, DrawingParameters & drawingparameters, GeometryLayerParameters& geometryLayerParams, CoinMapping & coinMap ); @@ -129,6 +131,9 @@ private: void convert(const Sketcher::GeometryFacade * geometryfacade, [[maybe_unused]] int geoId); private: + /// Reference to ViewProviderSketch in order to access the public and the Attorney Interface + ViewProviderSketch & viewProvider; + GeometryLayerNodes & geometryLayerNodes; std::vector> Coords; diff --git a/src/Mod/Sketcher/Gui/EditModeGeometryCoinManager.cpp b/src/Mod/Sketcher/Gui/EditModeGeometryCoinManager.cpp index 5dae35b766..966b96194e 100644 --- a/src/Mod/Sketcher/Gui/EditModeGeometryCoinManager.cpp +++ b/src/Mod/Sketcher/Gui/EditModeGeometryCoinManager.cpp @@ -144,7 +144,7 @@ void EditModeGeometryCoinManager::processGeometry(const GeoListFacade & geolistf }; // process geometry layers - EditModeGeometryCoinConverter gcconv(geometrylayernodes, drawingParameters, geometryLayerParameters, coinMapping); + EditModeGeometryCoinConverter gcconv(viewProvider, geometrylayernodes, drawingParameters, geometryLayerParameters, coinMapping); gcconv.convert(geolistfacade); diff --git a/src/Mod/Sketcher/Gui/ViewProviderSketchCoinAttorney.h b/src/Mod/Sketcher/Gui/ViewProviderSketchCoinAttorney.h index 17ea673524..d086b9dfe7 100644 --- a/src/Mod/Sketcher/Gui/ViewProviderSketchCoinAttorney.h +++ b/src/Mod/Sketcher/Gui/ViewProviderSketchCoinAttorney.h @@ -113,6 +113,7 @@ private: friend class EditModeConstraintCoinManager; friend class EditModeGeometryCoinManager; friend class EditModeInformationOverlayCoinConverter; + friend class EditModeGeometryCoinConverter; }; inline bool ViewProviderSketchCoinAttorney::constraintHasExpression(const ViewProviderSketch & vp, int constrid)