From a364261c79f8214aa61787192c0e2e95cced5eef Mon Sep 17 00:00:00 2001 From: Mikhail Svechnikov <m.svechnikov@fz-juelich.de> Date: Wed, 23 Nov 2022 10:04:42 +0100 Subject: [PATCH] AxisProperty: rm uint property --- GUI/Model/Descriptor/AxisProperty.cpp | 17 +++++------------ GUI/Model/Descriptor/AxisProperty.h | 10 +++------- GUI/Model/Device/InstrumentItems.cpp | 2 -- GUI/Model/Device/SphericalDetectorItem.cpp | 2 -- GUI/Support/XML/Serialize.cpp | 15 +++++++++++++++ GUI/Support/XML/Serialize.h | 1 + GUI/View/Instrument/AxisPropertyEditor.cpp | 4 ++-- 7 files changed, 26 insertions(+), 25 deletions(-) diff --git a/GUI/Model/Descriptor/AxisProperty.cpp b/GUI/Model/Descriptor/AxisProperty.cpp index 594d48733b9..d9b40293233 100644 --- a/GUI/Model/Descriptor/AxisProperty.cpp +++ b/GUI/Model/Descriptor/AxisProperty.cpp @@ -18,13 +18,6 @@ using std::variant; -void AxisProperty::initNbins(const QString& label, const QString& tooltip, uint n, - const variant<QString, Unit>& unit) -{ - m_nbins.init(label, tooltip, n, unit, "nbins"); -} - - void AxisProperty::initMin(const QString& label, const QString& tooltip, double value, const variant<QString, Unit>& unit, const RealLimits& limits, uint decimals) @@ -49,18 +42,18 @@ void AxisProperty::rwAxisProperty(Streamer& s, const QString& tag) { s.start(tag); s.assertVersion(0); - Serialize::rwProperty(s, m_nbins); + Serialize::rwValue(s, "nbins", m_nbins); Serialize::rwProperty(s, m_min); Serialize::rwProperty(s, m_max); s.finish(tag); } -uint AxisProperty::NEW_nbins() const +uint AxisProperty::nbins() const { - return m_nbins_NEW; + return m_nbins; } -void AxisProperty::NEW_setNbins(uint value) +void AxisProperty::setNbins(uint value) { - m_nbins_NEW = value; + m_nbins = value; } diff --git a/GUI/Model/Descriptor/AxisProperty.h b/GUI/Model/Descriptor/AxisProperty.h index 8318c963d9c..7da1919ccbf 100644 --- a/GUI/Model/Descriptor/AxisProperty.h +++ b/GUI/Model/Descriptor/AxisProperty.h @@ -37,13 +37,9 @@ class Streamer; class AxisProperty { public: - UINT_PROPERTY(nbins, Nbins); DOUBLE_PROPERTY(min, Min); DOUBLE_PROPERTY(max, Max); - void initNbins(const QString& label, const QString& tooltip, uint n = 100, - const std::variant<QString, Unit>& unit = "nbins"); - void initMin(const QString& label, const QString& tooltip, double value, const std::variant<QString, Unit>& unit, const RealLimits& limits = RealLimits::nonnegative(), uint decimals = 3); @@ -58,11 +54,11 @@ public: void rwAxisProperty(Streamer& s, const QString& tag); - uint NEW_nbins() const; - void NEW_setNbins(uint value); + uint nbins() const; + void setNbins(uint value); private: - uint m_nbins_NEW = 100; + uint m_nbins = 100; }; // clang-format off diff --git a/GUI/Model/Device/InstrumentItems.cpp b/GUI/Model/Device/InstrumentItems.cpp index 3e5e077a943..6ac7170ea7e 100644 --- a/GUI/Model/Device/InstrumentItems.cpp +++ b/GUI/Model/Device/InstrumentItems.cpp @@ -264,7 +264,6 @@ DepthProbeInstrumentItem::DepthProbeInstrumentItem() axisItem->setMax(1.0); axisItem->setBinCount(500); - m_zAxis.initNbins("Nbins", "Number of points in scan across sample bulk"); m_zAxis.initMin("Min", "Starting value below sample horizon", -100.0, Unit::nanometer, RealLimits::limitless()); m_zAxis.initMax("Max", "Ending value above sample horizon", 100.0, Unit::nanometer, @@ -440,7 +439,6 @@ const ICoordSystem* GISASInstrumentItem::createCoordSystem() const OffspecInstrumentItem::OffspecInstrumentItem() { - m_alphaAxis.initNbins("Nbins", "Number of points in scan"); m_alphaAxis.initMin("Min", "Starting value", 0.0, Unit::degree, RealLimits::limited(-90, 90)); m_alphaAxis.initMax("Max", "Ending value", 10.0, Unit::degree, RealLimits::limited(-90, 90)); diff --git a/GUI/Model/Device/SphericalDetectorItem.cpp b/GUI/Model/Device/SphericalDetectorItem.cpp index 023362f9dd6..fecd05526f3 100644 --- a/GUI/Model/Device/SphericalDetectorItem.cpp +++ b/GUI/Model/Device/SphericalDetectorItem.cpp @@ -32,13 +32,11 @@ SphericalDetectorItem::SphericalDetectorItem() "Resolution function", "Detector resolution function", "resolutionFunction", initResolutionFunction); - m_phiAxis.initNbins("Nbins", "Number of phi-axis bins"); m_phiAxis.initMin("Min", "Lower edge of first phi-bin", -1.0, Unit::degree, RealLimits::limited(-90, 90)); m_phiAxis.initMax("Max", "Upper edge of last phi-bin", 1.0, Unit::degree, RealLimits::limited(-90, 90)); - m_alphaAxis.initNbins("Nbins", "Number of alpha-axis bins"); m_alphaAxis.initMin("Min", "Lower edge of first alpha-bin", 0.0, Unit::degree, RealLimits::limited(-90, 90)); m_alphaAxis.initMax("Max", "Upper edge of last alpha-bin", 2.0, Unit::degree, diff --git a/GUI/Support/XML/Serialize.cpp b/GUI/Support/XML/Serialize.cpp index 1ae690c48b7..5becffb421b 100644 --- a/GUI/Support/XML/Serialize.cpp +++ b/GUI/Support/XML/Serialize.cpp @@ -46,6 +46,21 @@ void Serialize::rwValue(Streamer& s, const QString& tag, int& val) ASSERT(0); } +void Serialize::rwValue(Streamer& s, const QString& tag, uint& val) +{ + if (QXmlStreamWriter* w = s.xmlWriter()) { + w->writeStartElement(tag); + w->writeAttribute(XML::Tags::Value, QString::number(val)); + w->writeEndElement(); + } else if (QXmlStreamReader* r = s.xmlReader()) { + r->readNextStartElement(); + s.assertCurrentTag(tag); + val = r->attributes().value(XML::Tags::Value).toInt(); + s.gotoEndElementOfTag(tag); + } else + ASSERT(0); +} + void Serialize::rwValue(Streamer& s, const QString& tag, double& val) { if (QXmlStreamWriter* w = s.xmlWriter()) { diff --git a/GUI/Support/XML/Serialize.h b/GUI/Support/XML/Serialize.h index 3108657b292..969fa772611 100644 --- a/GUI/Support/XML/Serialize.h +++ b/GUI/Support/XML/Serialize.h @@ -29,6 +29,7 @@ namespace Serialize { void rwValue(Streamer& s, const QString& tag, bool& val); void rwValue(Streamer& s, const QString& tag, int& val); +void rwValue(Streamer& s, const QString& tag, uint& val); void rwValue(Streamer& s, const QString& tag, double& val); void rwValue(Streamer& s, const QString& tag, QString& val); void rwValue(Streamer& s, const QString& tag, QColor& col); diff --git a/GUI/View/Instrument/AxisPropertyEditor.cpp b/GUI/View/Instrument/AxisPropertyEditor.cpp index 6daf4d7f8c6..48a4516c3cc 100644 --- a/GUI/View/Instrument/AxisPropertyEditor.cpp +++ b/GUI/View/Instrument/AxisPropertyEditor.cpp @@ -31,8 +31,8 @@ AxisPropertyEditor::AxisPropertyEditor(QWidget* parent, const QString& groupTitl auto* formLayout = new QFormLayout(this); formLayout->setFieldGrowthPolicy(QFormLayout::FieldsStayAtSizeHint); - m_nbinsSpinBox = GUI::Util::createIntSpinbox([=] { return axisProperty->NEW_nbins(); }, - [=](int v) { axisProperty->NEW_setNbins(v); }, + m_nbinsSpinBox = GUI::Util::createIntSpinbox([=] { return axisProperty->nbins(); }, + [=](int v) { axisProperty->setNbins(v); }, RealLimits::nonnegative(), nbinsTooltip); formLayout->addRow(GUI::Util::labelWithUnit("Nbins", "nbins") + ":", m_nbinsSpinBox); -- GitLab