diff --git a/src/Mod/PartDesign/Gui/TaskLinearPatternParameters.cpp b/src/Mod/PartDesign/Gui/TaskLinearPatternParameters.cpp index e9bb9b2358..cf5f4d4692 100644 --- a/src/Mod/PartDesign/Gui/TaskLinearPatternParameters.cpp +++ b/src/Mod/PartDesign/Gui/TaskLinearPatternParameters.cpp @@ -197,11 +197,11 @@ void TaskLinearPatternParameters::kickUpdateViewTimer() const void TaskLinearPatternParameters::onSelectionChanged(const Gui::SelectionChanges& msg) { - if (selectionMode != none && msg.Type == Gui::SelectionChanges::AddSelection) { + if (selectionMode != SelectionMode::None && msg.Type == Gui::SelectionChanges::AddSelection) { if (originalSelected(msg)) { exitSelectionMode(); } - else if (selectionMode == reference) { + else if (selectionMode == SelectionMode::Reference) { // TODO check if this works correctly (2015-09-01, Fat-Zer) exitSelectionMode(); std::vector directions; @@ -211,7 +211,7 @@ void TaskLinearPatternParameters::onSelectionChanged(const Gui::SelectionChanges getReferencedSelection(pcLinearPattern, msg, selObj, directions); // Note: ReferenceSelection has already checked the selection for validity - if (selObj && (selectionMode == reference || + if (selObj && (selectionMode == SelectionMode::Reference || selObj->isDerivedFrom(App::Line::getClassTypeId()) || selObj->isDerivedFrom(Part::Feature::getClassTypeId()) || selObj->isDerivedFrom(PartDesign::Line::getClassTypeId()) || @@ -288,7 +288,7 @@ void TaskLinearPatternParameters::onDirectionChanged(int /*num*/) // enter reference selection mode hideObject(); showBase(); - selectionMode = reference; + selectionMode = SelectionMode::Reference; Gui::Selection().clearSelection(); addReferenceSelectionGate(AllowSelection::EDGE | AllowSelection::FACE | AllowSelection::PLANAR); } else { diff --git a/src/Mod/PartDesign/Gui/TaskMirroredParameters.cpp b/src/Mod/PartDesign/Gui/TaskMirroredParameters.cpp index e34e14babb..bd1c5a8266 100644 --- a/src/Mod/PartDesign/Gui/TaskMirroredParameters.cpp +++ b/src/Mod/PartDesign/Gui/TaskMirroredParameters.cpp @@ -120,7 +120,7 @@ void TaskMirroredParameters::updateUI() void TaskMirroredParameters::onSelectionChanged(const Gui::SelectionChanges& msg) { - if (selectionMode!=none && msg.Type == Gui::SelectionChanges::AddSelection) { + if (selectionMode != SelectionMode::None && msg.Type == Gui::SelectionChanges::AddSelection) { if (originalSelected(msg)) { exitSelectionMode(); @@ -132,7 +132,7 @@ void TaskMirroredParameters::onSelectionChanged(const Gui::SelectionChanges& msg if (!selObj) return; - if ( selectionMode == reference || selObj->isDerivedFrom ( App::Plane::getClassTypeId () ) ) { + if ( selectionMode == SelectionMode::Reference || selObj->isDerivedFrom ( App::Plane::getClassTypeId () ) ) { setupTransaction(); pcMirrored->MirrorPlane.setValue(selObj, mirrorPlanes); recomputeFeature(); @@ -154,7 +154,7 @@ void TaskMirroredParameters::onPlaneChanged(int /*num*/) // enter reference selection mode hideObject(); showBase(); - selectionMode = reference; + selectionMode = SelectionMode::Reference; Gui::Selection().clearSelection(); addReferenceSelectionGate(AllowSelection::FACE | AllowSelection::PLANAR); } else { diff --git a/src/Mod/PartDesign/Gui/TaskPolarPatternParameters.cpp b/src/Mod/PartDesign/Gui/TaskPolarPatternParameters.cpp index 0a46247c13..e297023f61 100644 --- a/src/Mod/PartDesign/Gui/TaskPolarPatternParameters.cpp +++ b/src/Mod/PartDesign/Gui/TaskPolarPatternParameters.cpp @@ -196,7 +196,7 @@ void TaskPolarPatternParameters::adaptVisibilityToMode() void TaskPolarPatternParameters::onSelectionChanged(const Gui::SelectionChanges& msg) { - if (selectionMode!=none && msg.Type == Gui::SelectionChanges::AddSelection) { + if (selectionMode != SelectionMode::None && msg.Type == Gui::SelectionChanges::AddSelection) { if (originalSelected(msg)) { exitSelectionMode(); @@ -209,7 +209,7 @@ void TaskPolarPatternParameters::onSelectionChanged(const Gui::SelectionChanges& if(!selObj) return; - if (selectionMode == reference || selObj->isDerivedFrom ( App::Line::getClassTypeId () ) ) { + if (selectionMode == SelectionMode::Reference || selObj->isDerivedFrom ( App::Line::getClassTypeId () ) ) { setupTransaction(); pcPolarPattern->Axis.setValue(selObj, axes); recomputeFeature(); @@ -283,7 +283,7 @@ void TaskPolarPatternParameters::onAxisChanged(int /*num*/) // enter reference selection mode hideObject(); showBase(); - selectionMode = reference; + selectionMode = SelectionMode::Reference; Gui::Selection().clearSelection(); addReferenceSelectionGate(AllowSelection::EDGE | AllowSelection::CIRCLE); } else { diff --git a/src/Mod/PartDesign/Gui/TaskTransformedParameters.cpp b/src/Mod/PartDesign/Gui/TaskTransformedParameters.cpp index dbdc46a6a8..3ff597c14c 100644 --- a/src/Mod/PartDesign/Gui/TaskTransformedParameters.cpp +++ b/src/Mod/PartDesign/Gui/TaskTransformedParameters.cpp @@ -196,7 +196,7 @@ void TaskTransformedParameters::removeObject(App::DocumentObject* obj) bool TaskTransformedParameters::originalSelected(const Gui::SelectionChanges& msg) { if (msg.Type == Gui::SelectionChanges::AddSelection && ( - (selectionMode == addFeature) || (selectionMode == removeFeature))) { + (selectionMode == SelectionMode::AddFeature) || (selectionMode == SelectionMode::RemoveFeature))) { if (strcmp(msg.pDocName, getObject()->getDocument()->getName()) != 0) return false; @@ -208,7 +208,7 @@ bool TaskTransformedParameters::originalSelected(const Gui::SelectionChanges& ms // Do the same like in TaskDlgTransformedParameters::accept() but without doCommand std::vector originals = pcTransformed->Originals.getValues(); std::vector::iterator o = std::find(originals.begin(), originals.end(), selectedObject); - if (selectionMode == addFeature) { + if (selectionMode == SelectionMode::AddFeature) { if (o == originals.end()) { originals.push_back(selectedObject); addObject(selectedObject); @@ -271,7 +271,7 @@ void TaskTransformedParameters::onButtonAddFeature(bool checked) if (checked) { hideObject(); showBase(); - selectionMode = addFeature; + selectionMode = SelectionMode::AddFeature; Gui::Selection().clearSelection(); } else { exitSelectionMode(); @@ -303,7 +303,7 @@ void TaskTransformedParameters::onButtonRemoveFeature(bool checked) { if (checked) { checkVisibility(); - selectionMode = removeFeature; + selectionMode = SelectionMode::RemoveFeature; Gui::Selection().clearSelection(); } else { exitSelectionMode(); @@ -510,7 +510,7 @@ void TaskTransformedParameters::exitSelectionMode() { try { clearButtons(); - selectionMode = none; + selectionMode = SelectionMode::None; Gui::Selection().rmvSelectionGate(); showObject(); } catch(Base::Exception &e) { diff --git a/src/Mod/PartDesign/Gui/TaskTransformedParameters.h b/src/Mod/PartDesign/Gui/TaskTransformedParameters.h index 0e76ab97bd..ae433343fe 100644 --- a/src/Mod/PartDesign/Gui/TaskTransformedParameters.h +++ b/src/Mod/PartDesign/Gui/TaskTransformedParameters.h @@ -232,8 +232,13 @@ protected: int transactionID = 0; bool enableTransaction = true; - enum selectionModes { none, addFeature, removeFeature, reference }; - selectionModes selectionMode = none; + enum class SelectionMode { + None, + AddFeature, + RemoveFeature, + Reference + }; + SelectionMode selectionMode = SelectionMode::None; /// The MultiTransform parent task of this task TaskMultiTransformParameters* parentTask;