merged video and audio nodes into a single media node

They performed exactly the same function so I don't think we need the clutter.

Also bumped the project version, but old projects are automatically converted.
This commit is contained in:
itsmattkc
2020-11-18 13:48:14 +11:00
parent aeb7bc02b6
commit b3c3fe0fc8
28 changed files with 62 additions and 306 deletions
+2 -2
View File
@@ -42,7 +42,7 @@ QIcon Folder::icon()
return icon::Folder;
}
void Folder::Load(QXmlStreamReader *reader, XMLNodeData& xml_node_data, const QAtomicInt *cancelled)
void Folder::Load(QXmlStreamReader *reader, XMLNodeData& xml_node_data, uint version, const QAtomicInt *cancelled)
{
XMLAttributeLoop(reader, attr) {
if (cancelled && *cancelled) {
@@ -75,7 +75,7 @@ void Folder::Load(QXmlStreamReader *reader, XMLNodeData& xml_node_data, const QA
}
add_child(child);
child->Load(reader, xml_node_data, cancelled);
child->Load(reader, xml_node_data, version, cancelled);
}
}
+1 -1
View File
@@ -44,7 +44,7 @@ public:
virtual QIcon icon() override;
virtual void Load(QXmlStreamReader* reader, XMLNodeData &xml_node_data, const QAtomicInt *cancelled) override;
virtual void Load(QXmlStreamReader* reader, XMLNodeData &xml_node_data, uint version, const QAtomicInt *cancelled) override;
virtual void Save(QXmlStreamWriter* writer) const override;
+1 -1
View File
@@ -42,7 +42,7 @@ Footage::~Footage()
ClearStreams();
}
void Footage::Load(QXmlStreamReader *reader, XMLNodeData &xml_node_data, const QAtomicInt* cancelled)
void Footage::Load(QXmlStreamReader *reader, XMLNodeData &xml_node_data, uint version, const QAtomicInt* cancelled)
{
while (XMLReadNextStartElement(reader)) {
if (cancelled && *cancelled) {
+1 -1
View File
@@ -60,7 +60,7 @@ public:
/**
* @brief Load function
*/
virtual void Load(QXmlStreamReader* reader, XMLNodeData &xml_node_data, const QAtomicInt *cancelled) override;
virtual void Load(QXmlStreamReader* reader, XMLNodeData &xml_node_data, uint version, const QAtomicInt *cancelled) override;
/**
* @brief Save function
+1 -1
View File
@@ -67,7 +67,7 @@ public:
DISABLE_COPY_MOVE(Item)
virtual void Load(QXmlStreamReader* reader, XMLNodeData &xml_node_data, const QAtomicInt *cancelled) = 0;
virtual void Load(QXmlStreamReader* reader, XMLNodeData &xml_node_data, uint version, const QAtomicInt *cancelled) = 0;
virtual void Save(QXmlStreamWriter* writer) const = 0;
+11 -2
View File
@@ -45,7 +45,7 @@ Sequence::Sequence()
AddNode(viewer_output_);
}
void Sequence::Load(QXmlStreamReader *reader, XMLNodeData& xml_node_data, const QAtomicInt *cancelled)
void Sequence::Load(QXmlStreamReader *reader, XMLNodeData& xml_node_data, uint version, const QAtomicInt *cancelled)
{
{
XMLAttributeLoop(reader, attr) {
@@ -130,7 +130,16 @@ void Sequence::Load(QXmlStreamReader *reader, XMLNodeData& xml_node_data, const
{
XMLAttributeLoop(reader, attr) {
if (attr.name() == QStringLiteral("id")) {
node = NodeFactory::CreateFromID(attr.value().toString());
QString id = attr.value().toString();
if (version <= 201003) {
// After version 201003, the video and audio nodes were merged into one media node
if (id == QStringLiteral("org.olivevideoeditor.Olive.audioinput")
|| id == QStringLiteral("org.olivevideoeditor.Olive.videoinput")) {
id = QStringLiteral("org.olivevideoeditor.Olive.mediainput");
}
}
node = NodeFactory::CreateFromID(id);
break;
}
}
+1 -1
View File
@@ -45,7 +45,7 @@ public:
/**
* @brief Load function
*/
virtual void Load(QXmlStreamReader* reader, XMLNodeData &xml_node_data, const QAtomicInt* cancelled) override;
virtual void Load(QXmlStreamReader* reader, XMLNodeData &xml_node_data, uint version, const QAtomicInt* cancelled) override;
/**
* @brief Save function
+2 -2
View File
@@ -43,14 +43,14 @@ Project::Project() :
this, &Project::DefaultColorSpaceChanged);
}
void Project::Load(QXmlStreamReader *reader, MainWindowLayoutInfo* layout, const QAtomicInt* cancelled)
void Project::Load(QXmlStreamReader *reader, MainWindowLayoutInfo* layout, uint version, const QAtomicInt* cancelled)
{
XMLNodeData xml_node_data;
while (XMLReadNextStartElement(reader)) {
if (reader->name() == QStringLiteral("root")) {
root_.Load(reader, xml_node_data, cancelled);
root_.Load(reader, xml_node_data, version, cancelled);
} else if (reader->name() == QStringLiteral("colormanagement")) {
+1 -1
View File
@@ -47,7 +47,7 @@ class Project : public QObject
public:
Project();
void Load(QXmlStreamReader* reader, MainWindowLayoutInfo *layout, const QAtomicInt* cancelled);
void Load(QXmlStreamReader* reader, MainWindowLayoutInfo *layout, uint version, const QAtomicInt* cancelled);
void Save(QXmlStreamWriter* writer) const;