loadProject asTemplate

master
zetaPRIME 2022-03-10 19:26:43 -05:00
parent 98f157fb01
commit 93c5fc0611
3 changed files with 7 additions and 3 deletions

4
notes
View File

@ -40,11 +40,15 @@ TODO {
probably an "update all relevant windows" thing for recents
}
add i/o nodes to default project
distortion effect
add ,XX support to global tempo
}
> add template loading
eventually swap over to actually using ffmpeg as a library >_>
buffer helper akin to what quicklevel does {

View File

@ -168,7 +168,7 @@ bool FileOps::saveProject(std::shared_ptr<Project> project, QString fileName) {
return true;
}
std::shared_ptr<Project> FileOps::loadProject(QString fileName) {
std::shared_ptr<Project> FileOps::loadProject(QString fileName, bool asTemplate) {
QCborArray root;
{
QFile file(fileName);
@ -187,7 +187,7 @@ std::shared_ptr<Project> FileOps::loadProject(QString fileName) {
// intentionally allocate project and control block separately
std::shared_ptr<Project> project(new Project());
project->fileName = fileName;
if (!asTemplate) project->fileName = fileName;
QCborMap main = root.at(2).toMap();
{ /* Project metadata */ } {

View File

@ -24,7 +24,7 @@ namespace Xybrid::FileOps {
QString showSaveAsDialog(QWidget* parent = nullptr, const QString& caption = QString(), const QString& directory = QString(), const QString& filter = QString(), const QString& suffix = QString());
bool saveProject(std::shared_ptr<Data::Project> project, QString fileName = QString());
std::shared_ptr<Data::Project> loadProject(QString fileName);
std::shared_ptr<Data::Project> loadProject(QString fileName, bool asTemplate = false);
bool saveNode(std::shared_ptr<Data::Node> node, QString fileName);
std::shared_ptr<Data::Node> loadNode(QString fileName, std::shared_ptr<Data::Graph> parent = nullptr);