From 9475da34b8d7e0de46816ab8a4cc488d9780971d Mon Sep 17 00:00:00 2001 From: Roman Telezhynskyi Date: Tue, 11 Jul 2017 13:05:48 +0300 Subject: [PATCH] Tool Seam allowance's bounding box should not include passmarks. --HG-- branch : develop --- src/libs/vtools/tools/vtoolseamallowance.cpp | 11 +++++------ src/libs/vtools/tools/vtoolseamallowance.h | 1 + 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/libs/vtools/tools/vtoolseamallowance.cpp b/src/libs/vtools/tools/vtoolseamallowance.cpp index cc477abf8..dc422e2ff 100644 --- a/src/libs/vtools/tools/vtoolseamallowance.cpp +++ b/src/libs/vtools/tools/vtoolseamallowance.cpp @@ -793,6 +793,7 @@ void VToolSeamAllowance::paint(QPainter *painter, const QStyleOptionGraphicsItem setPen(toolPen); m_seamAllowance->setPen(toolPen); + m_passmarks->setPen(toolPen); if ((m_dataLabel->IsIdle() == false || m_patternInfo->IsIdle() == false @@ -1101,7 +1102,8 @@ VToolSeamAllowance::VToolSeamAllowance(VAbstractPattern *doc, VContainer *data, m_seamAllowance(new VNoBrushScalePathItem(this)), m_dataLabel(new VTextGraphicsItem(this)), m_patternInfo(new VTextGraphicsItem(this)), - m_grainLine(new VGrainlineItem(this)) + m_grainLine(new VGrainlineItem(this)), + m_passmarks(new QGraphicsPathItem(this)) { VPiece detail = data->GetPiece(id); InitNodes(detail, scene); @@ -1184,11 +1186,8 @@ void VToolSeamAllowance::RefreshGeometry() m_seamAllowance->setBrush(QBrush(Qt::NoBrush)); // Disable if the main path was hidden } - { - QPainterPath mainPath = path; - mainPath.addPath(detail.PassmarksPath(this->getData())); - this->setPath(mainPath); - } + this->setPath(path); + m_passmarks->setPath(detail.PassmarksPath(this->getData())); this->setPos(detail.GetMx(), detail.GetMy()); diff --git a/src/libs/vtools/tools/vtoolseamallowance.h b/src/libs/vtools/tools/vtoolseamallowance.h index f8375705e..70e007ed7 100644 --- a/src/libs/vtools/tools/vtoolseamallowance.h +++ b/src/libs/vtools/tools/vtoolseamallowance.h @@ -146,6 +146,7 @@ private: VTextGraphicsItem *m_dataLabel; VTextGraphicsItem *m_patternInfo; VGrainlineItem *m_grainLine; + QGraphicsPathItem *m_passmarks; VToolSeamAllowance(VAbstractPattern *doc, VContainer *data, const quint32 &id, const Source &typeCreation, VMainGraphicsScene *scene, const QString &drawName, QGraphicsItem * parent = nullptr);