From 740afeb642f13baea7068bc29117dd88200f7c65 Mon Sep 17 00:00:00 2001 From: Abdullah Tahiri Date: Sun, 17 Dec 2017 10:48:46 +0100 Subject: [PATCH] Sketcher: constraints' widget checkbox as python command ======================================================== Enables do/undo after switching constraints from one space to the other --- .../Sketcher/Gui/TaskSketcherConstrains.cpp | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/src/Mod/Sketcher/Gui/TaskSketcherConstrains.cpp b/src/Mod/Sketcher/Gui/TaskSketcherConstrains.cpp index 577fe7f3fa..4ab22c1eb2 100644 --- a/src/Mod/Sketcher/Gui/TaskSketcherConstrains.cpp +++ b/src/Mod/Sketcher/Gui/TaskSketcherConstrains.cpp @@ -735,9 +735,21 @@ void TaskSketcherConstrains::on_listWidgetConstraints_itemChanged(QListWidgetIte } } - const_cast(v)->isInVirtualSpace = !(item->checkState() == Qt::Checked); // update constraint virtual space status - - sketchView->updateVirtualSpace(); + // update constraint virtual space status + Gui::Command::openCommand("Update constraint's virtual space"); + try { + Gui::Command::doCommand(Gui::Command::Doc,"App.ActiveDocument.%s.setVirtualSpace(%d, %s)", + sketch->getNameInDocument(), + it->ConstraintNbr, + ((item->checkState() == Qt::Checked) != sketchView->getIsShownVirtualSpace())?"False":"True"); + Gui::Command::commitCommand(); + } + catch (const Base::Exception & e) { + Gui::Command::abortCommand(); + + QMessageBox::critical(Gui::MainWindow::getInstance(), tr("Error"), + QString::fromLatin1(e.what()), QMessageBox::Ok, QMessageBox::Ok); + } inEditMode = false; }