core/mainmenu: implemented save/close all/current actions for multiple projects
Expands on UI from multiple project support implemented earlier.
This commit is contained in:
@@ -656,6 +656,38 @@ bool Core::SaveActiveProjectAs()
|
||||
return false;
|
||||
}
|
||||
|
||||
bool Core::SaveAllProjects()
|
||||
{
|
||||
foreach (ProjectPtr p, open_projects_) {
|
||||
if (!SaveProject(p.get())) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool Core::CloseActiveProject()
|
||||
{
|
||||
return CloseProject(GetActiveProject(), true);
|
||||
}
|
||||
|
||||
bool Core::CloseAllExceptActiveProject()
|
||||
{
|
||||
Project* active_proj = GetActiveProject();
|
||||
QList<ProjectPtr> copy = open_projects_;
|
||||
|
||||
foreach (ProjectPtr p, copy) {
|
||||
if (p.get() != active_proj) {
|
||||
if (!CloseProject(p.get(), true)) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
QList<rational> Core::SupportedFrameRates()
|
||||
{
|
||||
QList<rational> frame_rates;
|
||||
@@ -930,6 +962,11 @@ bool Core::CloseAllProjects(bool auto_open_new)
|
||||
return true;
|
||||
}
|
||||
|
||||
bool Core::CloseAllProjects()
|
||||
{
|
||||
return CloseAllProjects(true);
|
||||
}
|
||||
|
||||
void Core::OpenProject()
|
||||
{
|
||||
QString file = QFileDialog::getOpenFileName(main_window_,
|
||||
|
||||
Reference in New Issue
Block a user