Add Recent Projects to Export Scene Popup (#494)
* Add recent projects to export scene * Add new project to recent projects
This commit is contained in:
parent
51daab8588
commit
43d0e5e1a8
3 changed files with 19 additions and 20 deletions
|
@ -14,6 +14,7 @@
|
|||
#include "toonz/tproject.h"
|
||||
#include "toonz/toonzscene.h"
|
||||
#include "toonz/sceneresources.h"
|
||||
#include "mainwindow.h"
|
||||
|
||||
// TnzCore includes
|
||||
#include "tsystem.h"
|
||||
|
@ -173,29 +174,24 @@ void ExportSceneDvDirModelRootNode::add(std::wstring name,
|
|||
void ExportSceneDvDirModelRootNode::refreshChildren() {
|
||||
m_childrenValid = true;
|
||||
m_children.clear();
|
||||
// if(m_children.empty())
|
||||
//{
|
||||
|
||||
|
||||
TProjectManager *pm = TProjectManager::instance();
|
||||
std::vector<TFilePath> projectRoots;
|
||||
// pm->getProjectRoots(projectRoots);
|
||||
|
||||
int i;
|
||||
for (i = 0; i < (int)projectRoots.size(); i++) {
|
||||
TFilePath projectRoot = projectRoots[i];
|
||||
ExportSceneDvDirModelSpecialFileFolderNode *projectRootNode =
|
||||
new ExportSceneDvDirModelSpecialFileFolderNode(this, L"Project root",
|
||||
projectRoot);
|
||||
projectRootNode->setPixmap(QPixmap(recolorPixmap(
|
||||
svgToPixmap(getIconThemePath("actions/18/folder_project_root.svg")))));
|
||||
m_projectRootNodes.push_back(projectRootNode);
|
||||
addChild(projectRootNode);
|
||||
}
|
||||
|
||||
TFilePath sandboxProjectPath = pm->getSandboxProjectFolder();
|
||||
m_sandboxProjectNode =
|
||||
new ExportSceneDvDirModelProjectNode(this, sandboxProjectPath);
|
||||
addChild(m_sandboxProjectNode);
|
||||
|
||||
QList<QString> projects = RecentFiles::instance()->getFilesNameList(RecentFiles::Project);
|
||||
int i;
|
||||
for (auto project : projects) {
|
||||
TFilePath projectRoot(project);
|
||||
if (projectRoot == sandboxProjectPath) continue;
|
||||
ExportSceneDvDirModelProjectNode*projectNode =
|
||||
new ExportSceneDvDirModelProjectNode(this, projectRoot);
|
||||
addChild(projectNode);
|
||||
}
|
||||
|
||||
// SVN Repository
|
||||
QList<SVNRepository> repositories =
|
||||
VersionControl::instance()->getRepositories();
|
||||
|
@ -210,7 +206,6 @@ void ExportSceneDvDirModelRootNode::refreshChildren() {
|
|||
node->setPixmap(QPixmap(svgToPixmap(":Resources/vcroot.svg")));
|
||||
addChild(node);
|
||||
}
|
||||
//}
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
|
@ -684,7 +679,9 @@ TFilePath ExportScenePopup::createNewProject() {
|
|||
currentProject->getFolder(i));
|
||||
project->save(projectPath);
|
||||
DvDirModel::instance()->refreshFolder(projectPath.getParentDir());
|
||||
|
||||
std::string newProj = project->getProjectFolder().getQString().toStdString();
|
||||
RecentFiles::instance()->addFilePath(project->getProjectFolder().getQString(), RecentFiles::Project);
|
||||
DvDirModel::instance()->forceRefresh();
|
||||
return projectPath;
|
||||
}
|
||||
|
||||
|
|
|
@ -1341,6 +1341,8 @@ void DvDirModel::refreshFolderChild(const QModelIndex &i) {
|
|||
for (r = 0; r < count; r++) refreshFolderChild(index(r, 0, i));
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
void DvDirModel::forceRefresh() { onSceneSwitched(); }
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
|
|
|
@ -360,10 +360,10 @@ public:
|
|||
void saveRecentFiles();
|
||||
|
||||
void updateStuffPath(QString oldPath, QString newPath);
|
||||
QList<QString> getFilesNameList(FileType fileType);
|
||||
|
||||
protected:
|
||||
void refreshRecentFilesMenu(FileType fileType);
|
||||
QList<QString> getFilesNameList(FileType fileType);
|
||||
};
|
||||
|
||||
#endif // TESTCUSTOMTAB_H
|
||||
|
|
Loading…
Reference in a new issue