diff --git a/common/lc_model.cpp b/common/lc_model.cpp index 4ae92658..2b612cc9 100644 --- a/common/lc_model.cpp +++ b/common/lc_model.cpp @@ -1736,8 +1736,7 @@ void lcModel::SubModelAddBoundingBoxPoints(const lcMatrix44& WorldMatrix, std::v void lcModel::RecordSelectionAction(lcModelActionSelectionMode ModelActionSelectionMode, const std::vector& Objects, lcObject* FocusObject, uint32_t FocusSection, lcSelectionMode SelectionMode) { - std::unique_ptr ModelActionSelection = std::make_unique(ModelActionSelectionMode); - bool ForceAdd = false; + std::unique_ptr ModelActionSelection = std::make_unique(); ModelActionSelection->SaveStartState(this); @@ -1776,17 +1775,11 @@ void lcModel::RecordSelectionAction(lcModelActionSelectionMode ModelActionSelect case lcModelActionSelectionMode::RemoveFromSelection: SetObjectsSelected(Objects, false); break; - - case lcModelActionSelectionMode::Set: - case lcModelActionSelectionMode::Save: - case lcModelActionSelectionMode::Restore: - ForceAdd = true; - break; } ModelActionSelection->SaveEndState(this); - if (ForceAdd || ModelActionSelection->StateChanged()) + if (ModelActionSelection->StateChanged()) mActionSequence.emplace_back(std::move(ModelActionSelection)); } @@ -1795,35 +1788,10 @@ void lcModel::RunSelectionAction(const lcModelActionSelection* ModelActionSelect if (!ModelActionSelection) return; - switch (ModelActionSelection->GetMode()) - { - case lcModelActionSelectionMode::ClearSelection: - case lcModelActionSelectionMode::SetSelectionAndFocus: - case lcModelActionSelectionMode::SetFocus: - case lcModelActionSelectionMode::SelectAllPieces: - case lcModelActionSelectionMode::InvertPieceSelection: - case lcModelActionSelectionMode::AddToSelection: - case lcModelActionSelectionMode::RemoveFromSelection: - if (Apply) - ModelActionSelection->LoadEndState(this); - else - ModelActionSelection->LoadStartState(this); - break; - - case lcModelActionSelectionMode::Set: + if (Apply) + ModelActionSelection->LoadEndState(this); + else ModelActionSelection->LoadStartState(this); - break; - - case lcModelActionSelectionMode::Save: - if (!Apply) - ModelActionSelection->LoadStartState(this); - break; - - case lcModelActionSelectionMode::Restore: - if (Apply) - ModelActionSelection->LoadStartState(this); - break; - } } void lcModel::BeginObjectEditAction(lcModelActionObjectEditMode ModelActionObjectEditMode, const lcCamera* Camera) @@ -2272,9 +2240,7 @@ void lcModel::GroupSelection() BeginActionSequence(); - RecordSelectionAction(lcModelActionSelectionMode::Restore, std::vector(), nullptr, 0, lcSelectionMode::Single); RecordGroupPiecesAction(lcModelActionGroupPiecesMode::Group, Dialog.mName); - RecordSelectionAction(lcModelActionSelectionMode::Save, std::vector(), nullptr, 0, lcSelectionMode::Single); EndActionSequence(tr("Group")); } @@ -2306,9 +2272,7 @@ void lcModel::UngroupSelection() BeginActionSequence(); - RecordSelectionAction(lcModelActionSelectionMode::Restore, std::vector(), nullptr, 0, lcSelectionMode::Single); RecordGroupPiecesAction(lcModelActionGroupPiecesMode::Ungroup, QString()); - RecordSelectionAction(lcModelActionSelectionMode::Save, std::vector(), nullptr, 0, lcSelectionMode::Single); EndActionSequence(tr("Ungroup")); } diff --git a/common/lc_modelaction.cpp b/common/lc_modelaction.cpp index db3e66d5..1cdf8627 100644 --- a/common/lc_modelaction.cpp +++ b/common/lc_modelaction.cpp @@ -182,11 +182,6 @@ bool lcModelAction::LoadHistoryBuffer(const QByteArray& Buffer, lcModel* Model, return true; } -lcModelActionSelection::lcModelActionSelection(lcModelActionSelectionMode Mode) - : mMode(Mode) -{ -} - void lcModelActionSelection::SaveStartState(const lcModel* Model) { SaveState(mStartState, Model); diff --git a/common/lc_modelaction.h b/common/lc_modelaction.h index 7266abcf..132ff7f2 100644 --- a/common/lc_modelaction.h +++ b/common/lc_modelaction.h @@ -27,10 +27,7 @@ enum class lcModelActionSelectionMode SelectAllPieces, InvertPieceSelection, AddToSelection, - RemoveFromSelection, - Set, - Save, - Restore + RemoveFromSelection }; struct lcModelActionSelectionState @@ -52,13 +49,8 @@ struct lcModelActionSelectionState class lcModelActionSelection : public lcModelAction { public: - lcModelActionSelection(lcModelActionSelectionMode Mode); + lcModelActionSelection() = default; virtual ~lcModelActionSelection() = default; - - lcModelActionSelectionMode GetMode() const - { - return mMode; - } void SaveStartState(const lcModel* Model); void SaveEndState(const lcModel* Model); @@ -73,7 +65,6 @@ protected: lcModelActionSelectionState mStartState; lcModelActionSelectionState mEndState; - lcModelActionSelectionMode mMode; }; enum class lcModelActionObjectEditMode