From 9430ea9ee549f1f5d76b60eda96074603f8dd2ca Mon Sep 17 00:00:00 2001 From: Farley Runkel Date: Mon, 22 Apr 2024 18:21:49 +0800 Subject: [PATCH] TechDraw: Refractor tracker action with proper enum --- src/Mod/TechDraw/Gui/QGTracker.h | 16 ++++++++------- src/Mod/TechDraw/Gui/TaskCosVertex.cpp | 10 +++++----- src/Mod/TechDraw/Gui/TaskDetail.h | 7 ------- src/Mod/TechDraw/Gui/TaskLeaderLine.cpp | 26 ++++++++++++------------- 4 files changed, 27 insertions(+), 32 deletions(-) diff --git a/src/Mod/TechDraw/Gui/QGTracker.h b/src/Mod/TechDraw/Gui/QGTracker.h index a543828e19..1a63caa983 100644 --- a/src/Mod/TechDraw/Gui/QGTracker.h +++ b/src/Mod/TechDraw/Gui/QGTracker.h @@ -44,13 +44,15 @@ namespace TechDrawGui class QGSPage; class QGIView; -//TODO: make this a proper enum -static constexpr int TRACKERPICK(0); -static constexpr int TRACKEREDIT(1); -static constexpr int TRACKERCANCEL(2); -static constexpr int TRACKERCANCELEDIT(3); -static constexpr int TRACKERFINISHED(4); -static constexpr int TRACKERSAVE(5); +enum TrackerAction +{ + PICK = 0, + EDIT = 1, + CANCEL = 2, + CANCELEDIT = 3, + FINISHED = 4, + SAVE = 5 +}; class TechDrawGuiExport QGTracker : public QObject, public QGIPrimPath { diff --git a/src/Mod/TechDraw/Gui/TaskCosVertex.cpp b/src/Mod/TechDraw/Gui/TaskCosVertex.cpp index cb74a46f5e..ecdcf2c0bd 100644 --- a/src/Mod/TechDraw/Gui/TaskCosVertex.cpp +++ b/src/Mod/TechDraw/Gui/TaskCosVertex.cpp @@ -70,7 +70,7 @@ TaskCosVertex::TaskCosVertex(TechDraw::DrawViewPart* baseFeat, m_inProgressLock(false), m_btnOK(nullptr), m_btnCancel(nullptr), - m_pbTrackerState(TRACKERPICK), + m_pbTrackerState(TrackerAction::PICK), m_savePoint(QPointF(0.0, 0.0)) { //baseFeat and page existence checked in cosmetic vertex command (CommandAnnotate.cpp) @@ -155,8 +155,8 @@ void TaskCosVertex::onTrackerClicked(bool clicked) removeTracker(); - if (m_pbTrackerState == TRACKERCANCEL) { - m_pbTrackerState = TRACKERPICK; + if (m_pbTrackerState == TrackerAction::CANCEL) { + m_pbTrackerState = TrackerAction::PICK; ui->pbTracker->setText(tr("Pick Points")); enableTaskButtons(true); @@ -176,7 +176,7 @@ void TaskCosVertex::onTrackerClicked(bool clicked) Gui::getMainWindow()->showMessage(msg, 3000); ui->pbTracker->setText(tr("Escape picking")); ui->pbTracker->setEnabled(true); - m_pbTrackerState = TRACKERCANCEL; + m_pbTrackerState = TrackerAction::CANCEL; enableTaskButtons(false); } @@ -250,7 +250,7 @@ void TaskCosVertex::onTrackerFinished(std::vector pts, QGIView* qgParen m_tracker->sleep(true); m_inProgressLock = false; - m_pbTrackerState = TRACKERPICK; + m_pbTrackerState = TrackerAction::PICK; ui->pbTracker->setText(tr("Pick Points")); ui->pbTracker->setEnabled(true); enableTaskButtons(true); diff --git a/src/Mod/TechDraw/Gui/TaskDetail.h b/src/Mod/TechDraw/Gui/TaskDetail.h index ab91f04646..8a9cbd71b5 100644 --- a/src/Mod/TechDraw/Gui/TaskDetail.h +++ b/src/Mod/TechDraw/Gui/TaskDetail.h @@ -29,13 +29,6 @@ #include -//TODO: make this a proper enum -static constexpr int TRACKERPICK(0); -static constexpr int TRACKEREDIT(1); -static constexpr int TRACKERCANCEL(2); -static constexpr int TRACKERCANCELEDIT(3); - - namespace TechDraw { class DrawPage; diff --git a/src/Mod/TechDraw/Gui/TaskLeaderLine.cpp b/src/Mod/TechDraw/Gui/TaskLeaderLine.cpp index 22bb0416d5..92f2b286aa 100644 --- a/src/Mod/TechDraw/Gui/TaskLeaderLine.cpp +++ b/src/Mod/TechDraw/Gui/TaskLeaderLine.cpp @@ -75,7 +75,7 @@ TaskLeaderLine::TaskLeaderLine(TechDrawGui::ViewProviderLeader* leadVP) : m_qgLine(nullptr), m_btnOK(nullptr), m_btnCancel(nullptr), - m_pbTrackerState(TRACKEREDIT), + m_pbTrackerState(TrackerAction::EDIT), m_saveX(0.0), m_saveY(0.0) { @@ -148,7 +148,7 @@ TaskLeaderLine::TaskLeaderLine(TechDraw::DrawView* baseFeat, m_qgLine(nullptr), m_btnOK(nullptr), m_btnCancel(nullptr), - m_pbTrackerState(TRACKERPICK), + m_pbTrackerState(TrackerAction::PICK), m_saveX(0.0), m_saveY(0.0) { @@ -462,24 +462,24 @@ void TaskLeaderLine::onTrackerClicked(bool clicked) return; } - if ( (m_pbTrackerState == TRACKERSAVE) && + if ( (m_pbTrackerState == TrackerAction::SAVE) && (getCreateMode()) ){ if (m_tracker) { m_tracker->terminateDrawing(); } - m_pbTrackerState = TRACKERPICK; + m_pbTrackerState = TrackerAction::PICK; ui->pbTracker->setText(tr("Pick Points")); ui->pbCancelEdit->setEnabled(false); enableTaskButtons(true); setEditCursor(Qt::ArrowCursor); return; - } else if ( (m_pbTrackerState == TRACKERSAVE) && + } else if ( (m_pbTrackerState == TrackerAction::SAVE) && (!getCreateMode()) ) { //edit mode if (m_qgLine) { m_qgLine->closeEdit(); } - m_pbTrackerState = TRACKERPICK; + m_pbTrackerState = TrackerAction::PICK; ui->pbTracker->setText(tr("Edit Points")); ui->pbCancelEdit->setEnabled(false); enableTaskButtons(true); @@ -488,7 +488,7 @@ void TaskLeaderLine::onTrackerClicked(bool clicked) return; } - //TRACKERPICK or TRACKEREDIT + //TrackerAction::PICK or TrackerAction::EDIT if (getCreateMode()) { m_inProgressLock = true; m_saveContextPolicy = m_vpp->getMDIViewPage()->contextMenuPolicy(); @@ -503,7 +503,7 @@ void TaskLeaderLine::onTrackerClicked(bool clicked) ui->pbTracker->setText(tr("Save Points")); ui->pbTracker->setEnabled(true); ui->pbCancelEdit->setEnabled(true); - m_pbTrackerState = TRACKERSAVE; + m_pbTrackerState = TrackerAction::SAVE; enableTaskButtons(false); } else { //edit mode m_trackerPoints = m_lineFeat->WayPoints.getValues(); @@ -529,7 +529,7 @@ void TaskLeaderLine::onTrackerClicked(bool clicked) ui->pbTracker->setText(tr("Save changes")); ui->pbTracker->setEnabled(true); ui->pbCancelEdit->setEnabled(true); - m_pbTrackerState = TRACKERSAVE; + m_pbTrackerState = TrackerAction::SAVE; enableTaskButtons(false); } } else { // need to recreate leaderline @@ -546,7 +546,7 @@ void TaskLeaderLine::onTrackerClicked(bool clicked) ui->pbTracker->setText(tr("Save changes")); ui->pbTracker->setEnabled(true); ui->pbCancelEdit->setEnabled(true); - m_pbTrackerState = TRACKERSAVE; + m_pbTrackerState = TrackerAction::SAVE; enableTaskButtons(false); } } @@ -632,7 +632,7 @@ void TaskLeaderLine::onCancelEditClicked(bool clicked) m_lineFeat->requestPaint(); } - m_pbTrackerState = TRACKEREDIT; + m_pbTrackerState = TrackerAction::EDIT; ui->pbTracker->setText(tr("Edit points")); ui->pbCancelEdit->setEnabled(false); enableTaskButtons(true); @@ -684,7 +684,7 @@ void TaskLeaderLine::onPointEditComplete() // Base::Console().Message("TTL::onPointEditComplete()\n"); m_inProgressLock = false; - m_pbTrackerState = TRACKEREDIT; + m_pbTrackerState = TrackerAction::EDIT; ui->pbTracker->setText(tr("Edit points")); ui->pbTracker->setEnabled(true); ui->pbCancelEdit->setEnabled(true); @@ -701,7 +701,7 @@ void TaskLeaderLine::abandonEditSession() getMainWindow()->statusBar()->show(); Gui::getMainWindow()->showMessage(msg, 4000); - m_pbTrackerState = TRACKEREDIT; + m_pbTrackerState = TrackerAction::EDIT; ui->pbTracker->setText(tr("Edit points")); enableTaskButtons(true); ui->pbTracker->setEnabled(true);