diff --git a/GUI/Model/Job/JobsSet.cpp b/GUI/Model/Job/JobsSet.cpp index 3b37c65155972583cbf3edf54e06c75bea9447f9..bd4e08fcea7d607f1a26965a65a3160a6cad5c00 100644 --- a/GUI/Model/Job/JobsSet.cpp +++ b/GUI/Model/Job/JobsSet.cpp @@ -95,7 +95,7 @@ void JobsSet::addJobItem(JobItem* job_item) { job_item->batchInfo()->setJobName(generateJobName()); push_back(job_item); - emit jobAdded(); + emit jobAdded(job_item); } //! restore instrument and sample model from backup for given JobItem diff --git a/GUI/Model/Job/JobsSet.h b/GUI/Model/Job/JobsSet.h index 11aceb8693859573d834bd16750c6d7db3973ea9..7f0661f429db174511b0fc6343bfc9088d1d8f24 100644 --- a/GUI/Model/Job/JobsSet.h +++ b/GUI/Model/Job/JobsSet.h @@ -52,7 +52,7 @@ public: signals: void jobMeritsAttention(JobItem* item); void globalProgress(int); - void jobAdded(); + void jobAdded(JobItem* job_item); void setChanged(); private slots: diff --git a/GUI/View/Job/JobsQModel.cpp b/GUI/View/Job/JobsQModel.cpp index 4c355186399ec16827e60625fcf9adc8d5c4cbda..fa91fd811da157e01a21ddbd6943522c8a9e52f3 100644 --- a/GUI/View/Job/JobsQModel.cpp +++ b/GUI/View/Job/JobsQModel.cpp @@ -26,7 +26,7 @@ JobsQModel::JobsQModel(QObject* parent) : QAbstractListModel(parent) { connect(gDoc->jobsRW(), &JobsSet::jobAdded, this, &JobsQModel::onJobAdded); - onJobAdded(); +// onJobAdded(); } JobsQModel::~JobsQModel() = default; @@ -91,14 +91,12 @@ void JobsQModel::emitJobsQModelChanged(JobItem* job) gDoc->setModified(); } -void JobsQModel::onJobAdded() +void JobsQModel::onJobAdded(JobItem* job) { - for (JobItem* job : *gDoc->jobsRW()) { - connect(job->batchInfo(), &BatchInfo::jobStatusChanged, - [this, job] { emitJobsQModelChanged(job); }); - connect(job->batchInfo(), &BatchInfo::jobNameChanged, - [this, job] { emitJobsQModelChanged(job); }); - connect(job->batchInfo(), &BatchInfo::jobProgressChanged, - [this, job] { emitJobsQModelChanged(job); }); - } + connect(job->batchInfo(), &BatchInfo::jobStatusChanged, + [this, job] { emitJobsQModelChanged(job); }); + connect(job->batchInfo(), &BatchInfo::jobNameChanged, + [this, job] { emitJobsQModelChanged(job); }); + connect(job->batchInfo(), &BatchInfo::jobProgressChanged, + [this, job] { emitJobsQModelChanged(job); }); } diff --git a/GUI/View/Job/JobsQModel.h b/GUI/View/Job/JobsQModel.h index 8d5047a7184dc9ad31b1c07fb05327628dc3d3ea..a6669f1805ba78d6a7234536bb2eb77a5f51c015 100644 --- a/GUI/View/Job/JobsQModel.h +++ b/GUI/View/Job/JobsQModel.h @@ -36,7 +36,7 @@ public: private slots: void emitJobsQModelChanged(JobItem* job); - void onJobAdded(); + void onJobAdded(JobItem *job); }; #endif // BORNAGAIN_GUI_VIEW_JOB_JOBSQMODEL_H