Skip to content
Snippets Groups Projects
Commit ed4e6baa authored by Mikhail Svechnikov's avatar Mikhail Svechnikov
Browse files

FitParameterItem: rm rwVectorClass

parent 53c4785a
No related branches found
No related tags found
1 merge request!1125GUI: simplify read/write
......@@ -30,7 +30,6 @@ const QString TypeItem("TypeItem");
const QString StartValue("StartValue");
const QString MinValue("MinValue");
const QString MaxValue("MaxValue");
const QString FitLinkItems("FitLinkItems");
const QString FitLinkItem("FitLinkItem");
} // namespace Tag
......@@ -38,6 +37,7 @@ const QString FitLinkItem("FitLinkItem");
namespace Attrib {
const QString value("value");
const QString name("name");
} // namespace Attrib
......@@ -351,13 +351,14 @@ QObject* FitParameterItem::maximumItem() const
return m_maxItem.get();
}
void FitParameterItem::addLink(const QString& title, const QString& link)
FitParameterLinkItem* FitParameterItem::addLink(const QString& title, const QString& link)
{
FitParameterLinkItem* newLink = new FitParameterLinkItem(this);
m_links.emplace_back(newLink);
newLink->setTitle(title);
newLink->setLink(link);
return newLink;
}
void FitParameterItem::removeLink(const QString& link)
......@@ -424,9 +425,12 @@ void FitParameterItem::writeTo(QXmlStreamWriter* writer) const
writer->writeEndElement();
// parameter links
writer->writeStartElement(Tag::FitLinkItems);
GUI::Session::XML::writeVectorClass(writer, Tag::FitLinkItem, m_links);
writer->writeEndElement();
for (const auto* fitLink : linkItems()) {
writer->writeStartElement(Tag::FitLinkItem);
writer->writeAttribute(Attrib::name, fitLink->title());
fitLink->writeTo(writer);
writer->writeEndElement();
}
}
void FitParameterItem::readFrom(QXmlStreamReader* reader)
......@@ -459,9 +463,9 @@ void FitParameterItem::readFrom(QXmlStreamReader* reader)
GUI::Session::XML::gotoEndElementOfTag(reader, Tag::MaxValue);
// parameter links
} else if (reader->name() == Tag::FitLinkItems) {
GUI::Session::XML::readVectorClass(reader, Tag::FitLinkItem, m_links, this);
GUI::Session::XML::gotoEndElementOfTag(reader, Tag::FitLinkItems);
} else if (reader->name() == Tag::FitLinkItem) {
addLink("","")->readFrom(reader);
GUI::Session::XML::gotoEndElementOfTag(reader, Tag::FitLinkItem);
} else
reader->skipCurrentElement();
......
......@@ -103,7 +103,7 @@ public:
void setMaximum(double maximum);
QObject* maximumItem() const;
void addLink(const QString& title, const QString& link);
FitParameterLinkItem *addLink(const QString& title, const QString& link);
void removeLink(const QString& link);
QVector<FitParameterLinkItem*> linkItems() const;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment