diff --git a/include/ConfigManager.h b/include/ConfigManager.h index 1e53e97a7..a6fabd00e 100644 --- a/include/ConfigManager.h +++ b/include/ConfigManager.h @@ -77,6 +77,11 @@ public: return workingDir() + PROJECTS_PATH; } + QString userTemplateDir() const + { + return workingDir() + TEMPLATE_PATH; + } + QString userPresetsDir() const { return workingDir() + PRESETS_PATH; diff --git a/src/core/ConfigManager.cpp b/src/core/ConfigManager.cpp index 8c4aa2974..81b7d0527 100644 --- a/src/core/ConfigManager.cpp +++ b/src/core/ConfigManager.cpp @@ -423,7 +423,7 @@ void ConfigManager::loadConfigFile() if( QDir( m_workingDir ).exists() ) { QDir().mkpath( userProjectsDir() ); - QDir().mkpath( userProjectsDir() + TEMPLATE_PATH ); + QDir().mkpath( userTemplateDir() ); QDir().mkpath( userSamplesDir() ); QDir().mkpath( userPresetsDir() ); } diff --git a/src/core/Song.cpp b/src/core/Song.cpp index 0f688a1b1..c97c577a4 100644 --- a/src/core/Song.cpp +++ b/src/core/Song.cpp @@ -847,8 +847,10 @@ void Song::clearProject() // create new file void Song::createNewProject() { - QString defaultTemplate = ConfigManager::inst()->userProjectsDir() - + "templates/default.mpt"; + + QString defaultTemplate = ConfigManager::inst()->userTemplateDir() + + "default.mpt"; + if( QFile::exists( defaultTemplate ) ) { diff --git a/src/gui/MainWindow.cpp b/src/gui/MainWindow.cpp index a52d5d80d..78df3798b 100644 --- a/src/gui/MainWindow.cpp +++ b/src/gui/MainWindow.cpp @@ -738,14 +738,13 @@ void MainWindow::createNewProject() { Engine::getSong()->createNewProject(); } - QString default_template = ConfigManager::inst()->userProjectsDir() - + "templates/default.mpt"; + QString default_template = ConfigManager::inst()->userTemplateDir() + + "default.mpt"; //if we dont have a user default template, make one if( !QFile::exists( default_template ) ) { - Engine::getSong()->saveProjectFile( ConfigManager::inst()->userProjectsDir() - + "templates/default.mpt" ); + Engine::getSong()->saveProjectFile( default_template ); } }