From 0305555d52f893c8d23aa872329d83cd4d6bb156 Mon Sep 17 00:00:00 2001 From: Franck Jullien Date: Mon, 11 Mar 2019 18:51:12 +0100 Subject: [PATCH] TechDraw: transfert mousePressEvent from QGIPrimPath to parent --- src/Mod/TechDraw/Gui/QGIPrimPath.cpp | 10 ++++++++++ src/Mod/TechDraw/Gui/QGIPrimPath.h | 1 + src/Mod/TechDraw/Gui/QGIView.h | 3 ++- 3 files changed, 13 insertions(+), 1 deletion(-) diff --git a/src/Mod/TechDraw/Gui/QGIPrimPath.cpp b/src/Mod/TechDraw/Gui/QGIPrimPath.cpp index 81615dd141..043cb123b7 100644 --- a/src/Mod/TechDraw/Gui/QGIPrimPath.cpp +++ b/src/Mod/TechDraw/Gui/QGIPrimPath.cpp @@ -227,3 +227,13 @@ Base::Reference QGIPrimPath::getParmGroup() .GetGroup("BaseApp")->GetGroup("Preferences")->GetGroup("Mod/TechDraw/Colors"); return hGrp; } + +void QGIPrimPath::mousePressEvent(QGraphicsSceneMouseEvent * event) +{ + QGIView *parent; + QGraphicsItem* qparent = parentItem(); + if (qparent != nullptr) { + parent = dynamic_cast (qparent); + parent->mousePressEvent(event); + } +} diff --git a/src/Mod/TechDraw/Gui/QGIPrimPath.h b/src/Mod/TechDraw/Gui/QGIPrimPath.h index 5a5e107860..0ee6156876 100644 --- a/src/Mod/TechDraw/Gui/QGIPrimPath.h +++ b/src/Mod/TechDraw/Gui/QGIPrimPath.h @@ -61,6 +61,7 @@ protected: virtual void hoverEnterEvent(QGraphicsSceneHoverEvent *event); virtual void hoverLeaveEvent(QGraphicsSceneHoverEvent *event); virtual QVariant itemChange(GraphicsItemChange change, const QVariant &value); + virtual void mousePressEvent(QGraphicsSceneMouseEvent *event) override; virtual QColor getNormalColor(void); virtual QColor getPreColor(void); diff --git a/src/Mod/TechDraw/Gui/QGIView.h b/src/Mod/TechDraw/Gui/QGIView.h index fa1122aff3..6ea64cf08f 100644 --- a/src/Mod/TechDraw/Gui/QGIView.h +++ b/src/Mod/TechDraw/Gui/QGIView.h @@ -100,6 +100,8 @@ public: static Gui::ViewProvider* getViewProvider(App::DocumentObject* obj); MDIViewPage* getMDIViewPage(void) const; + // Mouse handling + virtual void mousePressEvent(QGraphicsSceneMouseEvent *event) override; protected: QGIView* getQGIVByName(std::string name); @@ -107,7 +109,6 @@ protected: virtual QVariant itemChange(GraphicsItemChange change, const QVariant &value) override; // Mouse handling virtual void mouseMoveEvent(QGraphicsSceneMouseEvent *event) override; - virtual void mousePressEvent(QGraphicsSceneMouseEvent *event) override; // Preselection events: virtual void hoverEnterEvent(QGraphicsSceneHoverEvent *event) override; virtual void hoverLeaveEvent(QGraphicsSceneHoverEvent *event) override;