cleanup and included closing footage viewer if footage is in use

This commit is contained in:
itsmattkc
2020-10-05 01:04:45 +11:00
parent fa8e7ab5ee
commit d552e71845
7 changed files with 206 additions and 200 deletions
-37
View File
@@ -604,41 +604,4 @@ void ProjectViewModel::RemoveItemCommand::undo_internal()
model_->AddChild(parent_, item_);
}
ProjectViewModel::OfflineFootageCommand::OfflineFootageCommand(ProjectViewModel* model, ItemPtr item,
QMap<Node*, StreamPtr> nodes, QUndoCommand* parent) :
UndoCommand(parent),
model_(model),
item_(item),
nodes_(nodes)
{
}
Project *ProjectViewModel::OfflineFootageCommand::GetRelevantProject() const
{
return model_->project();
}
void ProjectViewModel::OfflineFootageCommand::redo_internal()
{
QMap<Node *, StreamPtr>::const_iterator it = nodes_.constBegin();
while (it != nodes_.constEnd()) {
static_cast<MediaInput *>(it.key())->SetFootage(nullptr);
++it;
}
parent_ = item_->parent();
model_->RemoveChild(parent_, item_.get());
}
void ProjectViewModel::OfflineFootageCommand::undo_internal()
{
model_->AddChild(parent_, item_);
QMap<Node *, StreamPtr>::const_iterator it = nodes_.constBegin();
while (it != nodes_.constEnd()) {
static_cast<MediaInput *>(it.key())->SetFootage(it.value());
++it;
}
}
OLIVE_NAMESPACE_EXIT