From edb46d11dbd0d342234cafcb8e8b743cc2e04e39 Mon Sep 17 00:00:00 2001 From: Tobias Knopff <t.knopff@fz-juelich.de> Date: Mon, 31 May 2021 11:21:27 +0200 Subject: [PATCH] Make RectangularDetectorItem::P_DBEAM_(U|V)0 private --- GUI/Models/RectangularDetectorItem.cpp | 20 +++++++++++++++++++ GUI/Models/RectangularDetectorItem.h | 10 ++++++++-- GUI/Models/TransformFromDomain.cpp | 10 ++++------ .../RectangularDetectorEditor.cpp | 4 ++-- 4 files changed, 34 insertions(+), 10 deletions(-) diff --git a/GUI/Models/RectangularDetectorItem.cpp b/GUI/Models/RectangularDetectorItem.cpp index e4cddea3b2b..f665db74434 100644 --- a/GUI/Models/RectangularDetectorItem.cpp +++ b/GUI/Models/RectangularDetectorItem.cpp @@ -239,6 +239,26 @@ void RectangularDetectorItem::setV0(const double v0) setItemValue(P_V0, v0); } +SessionItem* RectangularDetectorItem::directBeamU0Item() const +{ + return getItem(P_DBEAM_U0); +} + +void RectangularDetectorItem::setDirectBeamU0(const double u0) +{ + setItemValue(P_DBEAM_U0, u0); +} + +SessionItem* RectangularDetectorItem::directBeamV0Item() const +{ + return getItem(P_DBEAM_V0); +} + +void RectangularDetectorItem::setDirectBeamV0(const double v0) +{ + setItemValue(P_DBEAM_V0, v0); +} + std::unique_ptr<IDetector2D> RectangularDetectorItem::createDomainDetector() const { // basic axes parameters diff --git a/GUI/Models/RectangularDetectorItem.h b/GUI/Models/RectangularDetectorItem.h index aa7455e275e..955cbf3f1b8 100644 --- a/GUI/Models/RectangularDetectorItem.h +++ b/GUI/Models/RectangularDetectorItem.h @@ -30,10 +30,10 @@ private: static const QString P_DIRECTION; static const QString P_U0; static const QString P_V0; - -public: static const QString P_DBEAM_U0; static const QString P_DBEAM_V0; + +public: static const QString P_DISTANCE; RectangularDetectorItem(); @@ -67,6 +67,12 @@ public: SessionItem* v0Item() const; void setV0(double v0); + SessionItem* directBeamU0Item() const; + void setDirectBeamU0(double dbeam_u0); + + SessionItem* directBeamV0Item() const; + void setDirectBeamV0(double dbeam_v0); + private: std::unique_ptr<IDetector2D> createDomainDetector() const override; void update_properties_appearance(); diff --git a/GUI/Models/TransformFromDomain.cpp b/GUI/Models/TransformFromDomain.cpp index 15ae9495954..69e12eb6d12 100644 --- a/GUI/Models/TransformFromDomain.cpp +++ b/GUI/Models/TransformFromDomain.cpp @@ -408,8 +408,8 @@ void TransformFromDomain::setRectangularDetector(RectangularDetectorItem* detect == RectangularDetector::PERPENDICULAR_TO_DIRECT_BEAM) { detector_item->setDetectorAlignment("Perpendicular to direct beam"); detector_item->setItemValue(RectangularDetectorItem::P_DISTANCE, detector.getDistance()); - detector_item->setItemValue(RectangularDetectorItem::P_DBEAM_U0, detector.getU0()); - detector_item->setItemValue(RectangularDetectorItem::P_DBEAM_V0, detector.getV0()); + detector_item->setDirectBeamU0(detector.getU0()); + detector_item->setDirectBeamV0(detector.getV0()); } else if (detector.getDetectorArrangment() == RectangularDetector::PERPENDICULAR_TO_REFLECTED_BEAM) { @@ -422,10 +422,8 @@ void TransformFromDomain::setRectangularDetector(RectangularDetectorItem* detect == RectangularDetector::PERPENDICULAR_TO_REFLECTED_BEAM_DPOS) { detector_item->setDetectorAlignment("Perpendicular to reflected beam (dpos)"); detector_item->setItemValue(RectangularDetectorItem::P_DISTANCE, detector.getDistance()); - detector_item->setItemValue(RectangularDetectorItem::P_DBEAM_U0, - detector.getDirectBeamU0()); - detector_item->setItemValue(RectangularDetectorItem::P_DBEAM_V0, - detector.getDirectBeamV0()); + detector_item->setDirectBeamU0(detector.getDirectBeamU0()); + detector_item->setDirectBeamV0(detector.getDirectBeamV0()); } else { throw Error( diff --git a/GUI/Views/InstrumentWidgets/RectangularDetectorEditor.cpp b/GUI/Views/InstrumentWidgets/RectangularDetectorEditor.cpp index 1102c02a682..41360726e60 100644 --- a/GUI/Views/InstrumentWidgets/RectangularDetectorEditor.cpp +++ b/GUI/Views/InstrumentWidgets/RectangularDetectorEditor.cpp @@ -147,8 +147,8 @@ void RectangularDetectorEditor::init_alignment_editors() } else if (alignment.getValue() == "Perpendicular to direct beam" || alignment.getValue() == "Perpendicular to reflected beam (dpos)") { m_positionsEditor->show(); - m_positionsEditor->addItem(detectorItem()->getItem(RectangularDetectorItem::P_DBEAM_U0)); - m_positionsEditor->addItem(detectorItem()->getItem(RectangularDetectorItem::P_DBEAM_V0)); + m_positionsEditor->addItem(detectorItem()->directBeamU0Item()); + m_positionsEditor->addItem(detectorItem()->directBeamV0Item()); m_positionsEditor->addItem(detectorItem()->getItem(RectangularDetectorItem::P_DISTANCE)); } else if (alignment.getValue() == "Perpendicular to sample x-axis" -- GitLab