From e953f3b407ac643ac41b0ab6d2394735557f3ef0 Mon Sep 17 00:00:00 2001 From: "Joachim Wuttke (o)" <j.wuttke@fz-juelich.de> Date: Tue, 23 Jan 2024 13:57:14 +0100 Subject: [PATCH] JobItem create fitsuiteitem in c'tor --- GUI/Model/Job/JobItem.cpp | 19 ++++--------------- GUI/Model/Job/JobItem.h | 1 - 2 files changed, 4 insertions(+), 16 deletions(-) diff --git a/GUI/Model/Job/JobItem.cpp b/GUI/Model/Job/JobItem.cpp index a539a9c1b1d..d4566455c69 100644 --- a/GUI/Model/Job/JobItem.cpp +++ b/GUI/Model/Job/JobItem.cpp @@ -79,6 +79,7 @@ JobItem::JobItem() , m_parameter_container(std::make_unique<ParameterContainerItem>()) , m_sample_item(std::make_unique<SampleItem>()) , m_status(JobStatus::Idle) + , m_fit_suite_item(std::make_unique<FitSuiteItem>()) { } @@ -226,21 +227,10 @@ void JobItem::setResults(const Datafield& result) updateFileName(); } -FitSuiteItem* JobItem::createFitSuiteItem() -{ - if (m_fit_suite_item) - throw std::runtime_error("Will not create a second FitSuiteItem."); - - m_fit_suite_item = std::make_unique<FitSuiteItem>(); - return m_fit_suite_item.get(); -} - void JobItem::createFitContainers() { - FitSuiteItem* fitSuiteItem = createFitSuiteItem(); - - fitSuiteItem->createFitParametersContainerItem(); - fitSuiteItem->createMinimizerContainerItem(); + m_fit_suite_item->createFitParametersContainerItem(); + m_fit_suite_item->createMinimizerContainerItem(); } ParameterContainerItem* JobItem::parameterContainerItem() @@ -252,7 +242,6 @@ FitParameterContainerItem* JobItem::fitParameterContainerItem() { if (FitSuiteItem* item = fitSuiteItem()) return item->fitParameterContainerItem(); - return nullptr; } @@ -589,7 +578,7 @@ void JobItem::readFrom(QXmlStreamReader* r) // fit suite } else if (tag == Tag::FitSuite) { - createFitSuiteItem()->readFrom(r); + m_fit_suite_item->readFrom(r); XML::gotoEndElementOfTag(r, tag); } else diff --git a/GUI/Model/Job/JobItem.h b/GUI/Model/Job/JobItem.h index 0b2a14f7222..c3fc0d1593f 100644 --- a/GUI/Model/Job/JobItem.h +++ b/GUI/Model/Job/JobItem.h @@ -109,7 +109,6 @@ public: FitSuiteItem* fitSuiteItem() { return m_fit_suite_item.get(); } const FitSuiteItem* fitSuiteItem() const { return m_fit_suite_item.get(); } - FitSuiteItem* createFitSuiteItem(); void createFitContainers(); ParameterContainerItem* parameterContainerItem(); -- GitLab