diff --git a/GUI/Model/Job/JobItem.cpp b/GUI/Model/Job/JobItem.cpp index d5a943ec452acd5fcf0e08c3f91d4b27b5b08481..3fd0ab259690ed30b41024cf9d93702e1cbaf11f 100644 --- a/GUI/Model/Job/JobItem.cpp +++ b/GUI/Model/Job/JobItem.cpp @@ -105,31 +105,6 @@ void JobItem::setStatus(JobStatus status) emit jobStatusChanged(status); } -bool JobItem::isRunning() const -{ - return status() == JobStatus::Running; -} - -bool JobItem::isCompleted() const -{ - return status() == JobStatus::Completed; -} - -bool JobItem::isCanceled() const -{ - return status() == JobStatus::Canceled; -} - -bool JobItem::isFailed() const -{ - return status() == JobStatus::Failed; -} - -bool JobItem::isFitting() const -{ - return status() == JobStatus::Fitting; -} - void JobItem::setBeginTime(const QDateTime& begin_time) { m_begin_time = begin_time; diff --git a/GUI/Model/Job/JobItem.h b/GUI/Model/Job/JobItem.h index c118e4de96a09dccf0ea708e75dd13de3cd5073e..2c0147dfbe21c48def1bdb40c013eeb3d00b80cc 100644 --- a/GUI/Model/Job/JobItem.h +++ b/GUI/Model/Job/JobItem.h @@ -52,11 +52,6 @@ public: JobStatus status() const { return m_status; } void setStatus(JobStatus status); - bool isRunning() const; - bool isCompleted() const; - bool isCanceled() const; - bool isFailed() const; - bool isFitting() const; bool isValidForFitting() const { return bool(m_real_item); } QDateTime beginTime() const { return m_begin_time; } diff --git a/GUI/Model/Tune/JobQueueData.cpp b/GUI/Model/Tune/JobQueueData.cpp index da73200355ed8233607f0134c659b19f36f31ece..174db02ecd9a455f3a96dda698adedeedf92abee 100644 --- a/GUI/Model/Tune/JobQueueData.cpp +++ b/GUI/Model/Tune/JobQueueData.cpp @@ -154,7 +154,7 @@ void JobQueueData::updateGlobalProgress() int global_progress(0); int nRunningJobs(0); for (auto* jobItem : m_job_model->jobItems()) - if (jobItem->isRunning()) { + if (isRunning(jobItem->status())) { global_progress += jobItem->progress(); nRunningJobs++; } @@ -230,7 +230,7 @@ void JobQueueData::processFinishedJob(JobWorker* worker, JobItem* jobItem) jobItem->setStatus(worker->status()); // fixing job progress (if job was successfull, but due to wrong estimation, progress not 100%) - if (jobItem->isCompleted()) + if (isCompleted(jobItem->status())) jobItem->setProgress(100); } diff --git a/GUI/Support/Data/JobStatus.cpp b/GUI/Support/Data/JobStatus.cpp index a8eaa1b2ef2bf21a85dca7c51ff666dc56af5565..f7c0d662fd977f3299cbf60b57247200db7b8916 100644 --- a/GUI/Support/Data/JobStatus.cpp +++ b/GUI/Support/Data/JobStatus.cpp @@ -28,6 +28,30 @@ const boost::bimap<JobStatus, QString> status2name(values.begin(), values.end()) } // namespace +bool isRunning(JobStatus status) +{ + return status == JobStatus::Running; +} + +bool isCompleted(JobStatus status) +{ + return status == JobStatus::Completed; +} + +bool isCanceled(JobStatus status) +{ + return status == JobStatus::Canceled; +} + +bool isFailed(JobStatus status) +{ + return status == JobStatus::Failed; +} + +bool isFitting(JobStatus status) +{ + return status == JobStatus::Fitting; +} QString jobStatusToString(JobStatus status) { diff --git a/GUI/Support/Data/JobStatus.h b/GUI/Support/Data/JobStatus.h index 39ac385756f039afd084554d2697bea93c6e0e02..2357c7fde0fab34613f66ac042dca13ecfdede67 100644 --- a/GUI/Support/Data/JobStatus.h +++ b/GUI/Support/Data/JobStatus.h @@ -28,6 +28,12 @@ enum class JobStatus { Failed //!< the job aborted because it hit an error }; +bool isRunning(JobStatus status); +bool isCompleted(JobStatus status); +bool isCanceled(JobStatus status); +bool isFailed(JobStatus status); +bool isFitting(JobStatus status); + //! Returns a string representation of the status QString jobStatusToString(JobStatus status); diff --git a/GUI/View/Fit/FitSessionController.cpp b/GUI/View/Fit/FitSessionController.cpp index 5caa37f6b4a454e5bd3cd697a21e82cb48174e0d..3d71e2ed69ae7d1622a71f92c2539f3c5160e62f 100644 --- a/GUI/View/Fit/FitSessionController.cpp +++ b/GUI/View/Fit/FitSessionController.cpp @@ -131,7 +131,7 @@ void FitSessionController::onFittingFinished() m_job_item->setEndTime(m_run_fit_manager->fitEnd()); m_job_item->setProgress(100); - if (m_job_item->isCompleted()) + if (isCompleted(m_job_item->status())) m_fitlog->append("Done", FitLogLevel::Success); // TODO: notify Fit2DFrame/Fit1DFrame in a proper way by fittingFinished(); diff --git a/GUI/View/JobControl/JobListing.cpp b/GUI/View/JobControl/JobListing.cpp index 6d0289293b3e7bd223b257ad8d678c43cbd75916..b394d71e051085c46015948de4de3e28dd3d15c6 100644 --- a/GUI/View/JobControl/JobListing.cpp +++ b/GUI/View/JobControl/JobListing.cpp @@ -16,6 +16,7 @@ #include "Base/Util/Assert.h" #include "GUI/Model/Data/Data2DItem.h" #include "GUI/Model/Project/ProjectDocument.h" +#include "GUI/Support/Data/JobStatus.h" #include "GUI/View/JobControl/JobListModel.h" #include "GUI/View/JobControl/JobProgressDelegate.h" #include "GUI/View/Widget/StyledToolbar.h" @@ -245,7 +246,7 @@ void JobListing::updateActions() { JobItem* job = m_model->jobItemForIndex(i); ASSERT(job); - return job->isRunning() || job->isFitting(); + return isRunning(job->status()) || isFitting(job->status()); } }; diff --git a/GUI/View/JobControl/JobProgressDelegate.cpp b/GUI/View/JobControl/JobProgressDelegate.cpp index 905938ed06afc96b1bd307448422acaa8578d8fd..7f1bc77329a05915f7e06f150c8582094e352275 100644 --- a/GUI/View/JobControl/JobProgressDelegate.cpp +++ b/GUI/View/JobControl/JobProgressDelegate.cpp @@ -53,7 +53,7 @@ void JobProgressDelegate::paint(QPainter* painter, const QStyleOptionViewItem& o drawCustomProjectBar(item, painter, option); - if (item->isRunning()) { + if (isRunning(item->status())) { QStyleOptionButton button; button.rect = getButtonRect(option.rect); button.state = m_button_state | QStyle::State_Enabled; @@ -81,7 +81,7 @@ bool JobProgressDelegate::editorEvent(QEvent* event, QAbstractItemModel* model, const JobItem* item = jqmodel->jobItemForIndex(index); ASSERT(item); - if (!item->isRunning()) + if (!isRunning(item->status())) return false; QRect buttonRect = getButtonRect(option.rect); diff --git a/GUI/View/JobControl/JobPropertiesWidget.cpp b/GUI/View/JobControl/JobPropertiesWidget.cpp index e59c09ca2f2a1ace49a660982ba2d7e37f952d0d..27d78c27f33875998ede18f9014bf2ebe88738ec 100644 --- a/GUI/View/JobControl/JobPropertiesWidget.cpp +++ b/GUI/View/JobControl/JobPropertiesWidget.cpp @@ -14,6 +14,7 @@ #include "GUI/View/JobControl/JobPropertiesWidget.h" #include "GUI/Model/Job/JobItem.h" +#include "GUI/Support/Data/JobStatus.h" #include "GUI/View/JobControl/JobPropertiesTableModel.h" #include "GUI/View/Layout/mainwindow_constants.h" #include <QHeaderView> @@ -81,7 +82,7 @@ void JobPropertiesWidget::setJobItem(JobItem* jobItem) m_job_item = jobItem; m_properties_model->setJobItem(m_job_item); if (m_job_item) { - if (m_job_item->isFailed()) + if (isFailed(m_job_item->status())) m_tab_widget->tabBar()->setTabTextColor(JOB_MESSAGES, Qt::red); else m_tab_widget->tabBar()->setTabTextColor(JOB_MESSAGES, Qt::black); diff --git a/GUI/View/Tuning/JobRealTimeWidget.cpp b/GUI/View/Tuning/JobRealTimeWidget.cpp index a54e0f8dbc4b3398d566b328d1682574406742a6..3e18113ab40fb09eca458721c8fb0689aedfbe2b 100644 --- a/GUI/View/Tuning/JobRealTimeWidget.cpp +++ b/GUI/View/Tuning/JobRealTimeWidget.cpp @@ -15,6 +15,7 @@ #include "GUI/View/Tuning/JobRealTimeWidget.h" #include "GUI/Model/Job/JobItem.h" #include "GUI/Model/Tune/JobModel.h" +#include "GUI/Support/Data/JobStatus.h" #include "GUI/View/Layout/mainwindow_constants.h" #include "GUI/View/Tuning/ParameterTuningStackPresenter.h" #include "GUI/View/Tuning/ParameterTuningWidget.h" @@ -65,7 +66,9 @@ void JobRealTimeWidget::setJobItem(JobItem* jobItem) bool JobRealTimeWidget::isValidJobItem(JobItem* item) { - return item && (item->isCompleted() || item->isCanceled() || item->isFailed()); + return item + && (isCompleted(item->status()) || isCanceled(item->status()) + || isFailed(item->status())); } void JobRealTimeWidget::applySettings() diff --git a/GUI/View/Tuning/ParameterTuningWidget.cpp b/GUI/View/Tuning/ParameterTuningWidget.cpp index b130cd6292d35411c9d960305462ddd1a5c7486d..94c2025aab9b139a5529e6d718f30fcd9d710fbf 100644 --- a/GUI/View/Tuning/ParameterTuningWidget.cpp +++ b/GUI/View/Tuning/ParameterTuningWidget.cpp @@ -156,7 +156,7 @@ void ParameterTuningWidget::onCurrentLinkChanged(ParameterItem* item) { ASSERT(m_job_item); - if (m_job_item->isRunning()) + if (isRunning(m_job_item->status())) return; if (item) @@ -215,7 +215,7 @@ void ParameterTuningWidget::restoreModelsOfCurrentJobItem(int index) ASSERT(m_job_model); ASSERT(m_job_item); - if (m_job_item->isRunning()) + if (isRunning(m_job_item->status())) return; closeActiveEditors(); @@ -286,7 +286,7 @@ void ParameterTuningWidget::updateJobStatus() { m_caution_sign->clear(); - if (m_job_item->isFailed()) { + if (isFailed(m_job_item->status())) { QString message; message.append("Current parameter values cause simulation failure.\n\n"); message.append(m_job_item->comments());