TechDraw - Undo for Cosmetics Vertices and Lines

This commit is contained in:
Tomas Pavlicek
2021-06-28 15:37:23 +02:00
committed by Bernd Hahnebach
parent df215f4fce
commit 2a1597cded
4 changed files with 22 additions and 1 deletions

View File

@@ -324,7 +324,10 @@ short DrawViewPart::mustExecute() const
SeamHidden.isTouched() ||
IsoHidden.isTouched() ||
IsoCount.isTouched() ||
CoarseView.isTouched());
CoarseView.isTouched() ||
CosmeticVertexes.isTouched() ||
CosmeticEdges.isTouched() ||
CenterLines.isTouched());
}
if (result) {

View File

@@ -348,6 +348,8 @@ void execMidpoints(Gui::Command* cmd)
return;
}
Gui::Command::openCommand(QT_TRANSLATE_NOOP("Command", "Add Midpont Vertices"));
const std::vector<TechDraw::BaseGeom*> edges = dvp->getEdgeGeometry();
double scale = dvp->getScale();
for (auto& s: selectedEdges) {
@@ -357,6 +359,9 @@ void execMidpoints(Gui::Command* cmd)
mid = DrawUtil::invertY(mid);
dvp->addCosmeticVertex(mid / scale);
}
Gui::Command::commitCommand();
dvp->recomputeFeature();
}
@@ -371,6 +376,8 @@ void execQuadrants(Gui::Command* cmd)
return;
}
Gui::Command::openCommand(QT_TRANSLATE_NOOP("Command", "Add Quadrant Vertices"));
const std::vector<TechDraw::BaseGeom*> edges = dvp->getEdgeGeometry();
double scale = dvp->getScale();
for (auto& s: selectedEdges) {
@@ -382,6 +389,9 @@ void execQuadrants(Gui::Command* cmd)
dvp->addCosmeticVertex(iq / scale);
}
}
Gui::Command::commitCommand();
dvp->recomputeFeature();
}

View File

@@ -161,11 +161,15 @@ void TaskCosVertex::updateUi(void)
void TaskCosVertex::addCosVertex(QPointF qPos)
{
Gui::Command::openCommand(QT_TRANSLATE_NOOP("Command", "Add Cosmetic Vertex"));
// Base::Console().Message("TCV::addCosVertex(%s)\n", TechDraw::DrawUtil::formatVector(qPos).c_str());
Base::Vector3d pos(qPos.x(), -qPos.y());
// int idx =
(void) m_baseFeat->addCosmeticVertex(pos);
m_baseFeat->requestPaint();
Gui::Command::commitCommand();
}

View File

@@ -203,6 +203,8 @@ void TaskCosmeticLine::setUiEdit()
//******************************************************************************
void TaskCosmeticLine::createCosmeticLine(void)
{
Gui::Command::openCommand(QT_TRANSLATE_NOOP("Command", "Create Cosmetic Line"));
double x = ui->qsbx1->value().getValue();
double y = ui->qsby1->value().getValue();
double z = ui->qsbz1->value().getValue();
@@ -227,6 +229,8 @@ void TaskCosmeticLine::createCosmeticLine(void)
m_tag = m_partFeat->addCosmeticEdge(p0, p1);
m_ce = m_partFeat->getCosmeticEdge(m_tag);
Gui::Command::commitCommand();
}
void TaskCosmeticLine::updateCosmeticLine(void)