Make markers copy/paste-able

This commit is contained in:
Thomas Wilshaw
2021-10-22 22:15:52 +01:00
parent 6e77606c30
commit 76e55a857f
11 changed files with 254 additions and 35 deletions
+15 -10
View File
@@ -78,19 +78,24 @@ void TimelineMarker::set_active(bool active)
emit ActiveChanged(active_);
}
void TimelineMarker::Save(QXmlStreamWriter* writer) const
{
writer->writeStartElement(QStringLiteral("marker"));
writer->writeAttribute(QStringLiteral("name"), name_);
writer->writeAttribute(QStringLiteral("color"), QString::number(color_));
writer->writeAttribute(QStringLiteral("in"), time_.in().toString());
writer->writeAttribute(QStringLiteral("out"), time_.out().toString());
writer->writeEndElement(); // marker
}
void TimelineMarkerList::Save(QXmlStreamWriter *writer) const
{
foreach (TimelineMarker* marker, markers_) {
writer->writeStartElement(QStringLiteral("marker"));
writer->writeAttribute(QStringLiteral("name"), marker->name());
writer->writeAttribute(QStringLiteral("color"), QString::number(marker->color()));
writer->writeAttribute(QStringLiteral("in"), marker->time().in().toString());
writer->writeAttribute(QStringLiteral("out"), marker->time().out().toString());
writer->writeEndElement(); // marker
marker->Save(writer);
}
}
+3
View File
@@ -47,6 +47,9 @@ public:
bool active();
void set_active(bool active);
void Load(QXmlStreamReader* reader);
void Save(QXmlStreamWriter* writer) const;
signals:
void TimeChanged(const TimeRange& time);