Creating new scene works now (numbers not generated properly yet)
This commit is contained in:
parent
66c611daa2
commit
6ecfeda917
1 changed files with 34 additions and 1 deletions
|
@ -2062,12 +2062,45 @@ void SceneBrowser::refresh() {
|
||||||
|
|
||||||
void SceneBrowser::newScene() {
|
void SceneBrowser::newScene() {
|
||||||
TFilePath parentFolder = getFolder();
|
TFilePath parentFolder = getFolder();
|
||||||
|
std::wstring sceneName;
|
||||||
|
TFilePath scenePath;
|
||||||
|
ToonzScene *scene = TApp::instance()->getCurrentScene()->getScene();
|
||||||
|
if (scene->isUntitled()) {
|
||||||
|
bool ok;
|
||||||
|
QString sceneNameQstring =
|
||||||
|
QInputDialog::getText(this, tr("Save Scene"), tr("Scene name:"),
|
||||||
|
QLineEdit::Normal, QString(), &ok);
|
||||||
|
if (!ok || sceneNameQstring == "") return;
|
||||||
|
sceneName = sceneNameQstring.toStdWString();
|
||||||
|
} else
|
||||||
|
sceneName = scene->getSceneName();
|
||||||
|
|
||||||
|
int i = 0;
|
||||||
|
do {
|
||||||
|
QString number = QStringLiteral("%1").arg(++i, 3, 10, QLatin1Char('0'));
|
||||||
|
scenePath = parentFolder + (sceneName+L"-"+number.toStdWString()+L".tnz");
|
||||||
|
} while (TFileStatus(scenePath).doesExist());
|
||||||
|
|
||||||
|
//TProjectManager *pm = TProjectManager::instance();
|
||||||
|
//TFilePath projectPath = pm->projectFolderToProjectPath(getFolder());
|
||||||
|
if (!IoCmd::saveSceneIfNeeded(QObject::tr("Change project"))) return;
|
||||||
|
IoCmd::newScene();
|
||||||
|
//TProjectManager *pm = TProjectManager::instance();
|
||||||
|
//TProject *projectP =
|
||||||
|
// TProjectManager::instance()->getCurrentProject().getPointer();
|
||||||
|
//pm->setCurrentProjectPath(projectP->getProjectPath());
|
||||||
|
//printf(projectP->getProjectPath().getQString().toStdString().c_str());
|
||||||
|
printf(scenePath.getQString().toStdString().c_str());
|
||||||
|
printf("\n");
|
||||||
|
IoCmd::saveScene(scenePath, false);
|
||||||
|
return;
|
||||||
|
|
||||||
if (parentFolder == TFilePath() || !TFileStatus(parentFolder).isDirectory())
|
if (parentFolder == TFilePath() || !TFileStatus(parentFolder).isDirectory())
|
||||||
return;
|
return;
|
||||||
QString tempName(tr("New Folder"));
|
QString tempName(tr("New Folder"));
|
||||||
std::wstring folderName = tempName.toStdWString();
|
std::wstring folderName = tempName.toStdWString();
|
||||||
TFilePath folderPath = parentFolder + folderName;
|
TFilePath folderPath = parentFolder + folderName;
|
||||||
int i = 1;
|
//int i = 1;
|
||||||
while (TFileStatus(folderPath).doesExist())
|
while (TFileStatus(folderPath).doesExist())
|
||||||
folderPath = parentFolder + (folderName + L" " + std::to_wstring(++i));
|
folderPath = parentFolder + (folderName + L" " + std::to_wstring(++i));
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue