diff --git a/src/Mod/PartDesign/Gui/TaskChamferParameters.cpp b/src/Mod/PartDesign/Gui/TaskChamferParameters.cpp index 39db3a50f8..7b2ef24c73 100644 --- a/src/Mod/PartDesign/Gui/TaskChamferParameters.cpp +++ b/src/Mod/PartDesign/Gui/TaskChamferParameters.cpp @@ -106,8 +106,8 @@ void TaskChamferParameters::onSelectionChanged(const Gui::SelectionChanges& msg) ui->listWidgetReferences->addItem(QString::fromStdString(msg.pSubName)); else removeItemFromListWidget(ui->listWidgetReferences, msg.pSubName); - clearButtons(none); - exitSelectionMode(); + // highlight existing references for possible further selections + DressUpView->highlightReferences(true); } } } diff --git a/src/Mod/PartDesign/Gui/TaskDraftParameters.cpp b/src/Mod/PartDesign/Gui/TaskDraftParameters.cpp index 810b7e1323..7d2b66cf49 100644 --- a/src/Mod/PartDesign/Gui/TaskDraftParameters.cpp +++ b/src/Mod/PartDesign/Gui/TaskDraftParameters.cpp @@ -128,8 +128,8 @@ void TaskDraftParameters::onSelectionChanged(const Gui::SelectionChanges& msg) ui->listWidgetReferences->addItem(QString::fromStdString(msg.pSubName)); else removeItemFromListWidget(ui->listWidgetReferences, msg.pSubName); - clearButtons(none); - exitSelectionMode(); + // highlight existing references for possible further selections + DressUpView->highlightReferences(true); } else if (selectionMode == plane) { PartDesign::Draft* pcDraft = static_cast(DressUpView->getObject()); std::vector planes; @@ -142,8 +142,8 @@ void TaskDraftParameters::onSelectionChanged(const Gui::SelectionChanges& msg) ui->linePlane->setText(getRefStr(selObj, planes)); pcDraft->getDocument()->recomputeFeature(pcDraft); - clearButtons(none); - exitSelectionMode(); + // highlight existing references for possible further selections + DressUpView->highlightReferences(true); } else if (selectionMode == line) { PartDesign::Draft* pcDraft = static_cast(DressUpView->getObject()); std::vector edges; @@ -156,8 +156,8 @@ void TaskDraftParameters::onSelectionChanged(const Gui::SelectionChanges& msg) ui->lineLine->setText(getRefStr(selObj, edges)); pcDraft->getDocument()->recomputeFeature(pcDraft); - clearButtons(none); - exitSelectionMode(); + // highlight existing references for possible further selections + DressUpView->highlightReferences(true); } } } diff --git a/src/Mod/PartDesign/Gui/TaskDressUpParameters.cpp b/src/Mod/PartDesign/Gui/TaskDressUpParameters.cpp index 761e4ec357..2120a7113c 100644 --- a/src/Mod/PartDesign/Gui/TaskDressUpParameters.cpp +++ b/src/Mod/PartDesign/Gui/TaskDressUpParameters.cpp @@ -131,6 +131,11 @@ void TaskDressUpParameters::onButtonRefAdd(bool checked) Gui::Selection().clearSelection(); Gui::Selection().addSelectionGate(new ReferenceSelection(this->getBase(), allowEdges, allowFaces, false)); DressUpView->highlightReferences(true); + } else { + clearButtons(none); + exitSelectionMode(); + showObject(); + DressUpView->highlightReferences(false); } } @@ -144,6 +149,12 @@ void TaskDressUpParameters::onButtonRefRemove(const bool checked) Gui::Selection().addSelectionGate(new ReferenceSelection(this->getBase(), allowEdges, allowFaces, false)); DressUpView->highlightReferences(true); } + else { + clearButtons(none); + exitSelectionMode(); + showObject(); + DressUpView->highlightReferences(false); + } } const std::vector TaskDressUpParameters::getReferences() const diff --git a/src/Mod/PartDesign/Gui/TaskFilletParameters.cpp b/src/Mod/PartDesign/Gui/TaskFilletParameters.cpp index fecc314796..1d51f9f3d8 100644 --- a/src/Mod/PartDesign/Gui/TaskFilletParameters.cpp +++ b/src/Mod/PartDesign/Gui/TaskFilletParameters.cpp @@ -106,8 +106,8 @@ void TaskFilletParameters::onSelectionChanged(const Gui::SelectionChanges& msg) ui->listWidgetReferences->addItem(QString::fromStdString(msg.pSubName)); else removeItemFromListWidget(ui->listWidgetReferences, msg.pSubName); - clearButtons(none); - exitSelectionMode(); + // highlight existing references for possible further selections + DressUpView->highlightReferences(true); } } } diff --git a/src/Mod/PartDesign/Gui/TaskThicknessParameters.cpp b/src/Mod/PartDesign/Gui/TaskThicknessParameters.cpp index 77f2c82f7c..51299c3cd0 100644 --- a/src/Mod/PartDesign/Gui/TaskThicknessParameters.cpp +++ b/src/Mod/PartDesign/Gui/TaskThicknessParameters.cpp @@ -128,8 +128,8 @@ void TaskThicknessParameters::onSelectionChanged(const Gui::SelectionChanges& ms ui->listWidgetReferences->addItem(QString::fromStdString(msg.pSubName)); else removeItemFromListWidget(ui->listWidgetReferences, msg.pSubName); - clearButtons(none); - exitSelectionMode(); + // highlight existing references for possible further selections + DressUpView->highlightReferences(true); } } }