From: <sv...@op...> - 2025-01-01 01:32:44
|
Author: sagamusix Date: Wed Jan 1 02:32:31 2025 New Revision: 22676 URL: https://source.openmpt.org/browse/openmpt/?op=revision&rev=22676 Log: Merged revision(s) 22630-22631 from trunk/OpenMPT: [Fix] Config Dialog: Browsing for a template file used the wrong base path. ........ [Ref] Add CTrackApp::GetUserTemplatesPath and CTrackApp::GetExampleSongsPath. ........ Modified: branches/OpenMPT-1.31/ (props changed) branches/OpenMPT-1.31/mptrack/GeneralConfigDlg.cpp branches/OpenMPT-1.31/mptrack/MainFrm.cpp branches/OpenMPT-1.31/mptrack/Moddoc.cpp branches/OpenMPT-1.31/mptrack/Mptrack.cpp branches/OpenMPT-1.31/mptrack/Mptrack.h branches/OpenMPT-1.31/mptrack/TrackerSettings.cpp branches/OpenMPT-1.31/mptrack/TrackerSettings.h Modified: branches/OpenMPT-1.31/mptrack/GeneralConfigDlg.cpp ============================================================================== --- branches/OpenMPT-1.31/mptrack/GeneralConfigDlg.cpp Wed Jan 1 02:18:59 2025 (r22675) +++ branches/OpenMPT-1.31/mptrack/GeneralConfigDlg.cpp Wed Jan 1 02:32:31 2025 (r22676) @@ -112,7 +112,7 @@ } } - const mpt::PathString basePath = theApp.GetConfigPath() + P_("TemplateModules\\"); + const mpt::PathString basePath = theApp.GetUserTemplatesPath(); FolderScanner scanner(basePath, FolderScanner::kOnlyFiles | FolderScanner::kFindInSubDirectories); mpt::PathString file; while(scanner.Next(file)) @@ -196,7 +196,7 @@ void COptionsGeneral::OnBrowseTemplate() { - mpt::PathString basePath = theApp.GetInstallPath() + P_("TemplateModules\\"); + mpt::PathString basePath = theApp.GetUserTemplatesPath(); mpt::PathString defaultFile = mpt::PathString::FromCString(GetWindowTextString(m_defaultTemplate)); if(defaultFile.empty()) defaultFile = TrackerSettings::Instance().defaultTemplateFile; Modified: branches/OpenMPT-1.31/mptrack/MainFrm.cpp ============================================================================== --- branches/OpenMPT-1.31/mptrack/MainFrm.cpp Wed Jan 1 02:18:59 2025 (r22675) +++ branches/OpenMPT-1.31/mptrack/MainFrm.cpp Wed Jan 1 02:32:31 2025 (r22676) @@ -2245,7 +2245,7 @@ { MPT_ASSERT(nId == UINT(isTemplateFile ? ID_FILE_OPENTEMPLATE_LASTINRANGE : ID_EXAMPLE_MODULES_LASTINRANGE)); FileDialog::PathList files; - theApp.OpenModulesDialog(files, isTemplateFile ? theApp.GetConfigPath() + P_("TemplateModules") : theApp.GetInstallPath() + P_("ExampleSongs")); + theApp.OpenModulesDialog(files, isTemplateFile ? theApp.GetUserTemplatesPath() : theApp.GetExampleSongsPath()); for(const auto &file : files) { theApp.OpenDocumentFile(file.ToCString()); Modified: branches/OpenMPT-1.31/mptrack/Moddoc.cpp ============================================================================== --- branches/OpenMPT-1.31/mptrack/Moddoc.cpp Wed Jan 1 02:18:59 2025 (r22675) +++ branches/OpenMPT-1.31/mptrack/Moddoc.cpp Wed Jan 1 02:32:31 2025 (r22676) @@ -3114,7 +3114,7 @@ void CModDoc::OnSaveTemplateModule() { // Create template folder if doesn't exist already. - const mpt::PathString templateFolder = TrackerSettings::Instance().PathUserTemplates.GetDefaultDir(); + const mpt::PathString templateFolder = theApp.GetUserTemplatesPath(); if (!mpt::native_fs{}.is_directory(templateFolder)) { if (!CreateDirectory(templateFolder.AsNative().c_str(), nullptr)) Modified: branches/OpenMPT-1.31/mptrack/Mptrack.cpp ============================================================================== --- branches/OpenMPT-1.31/mptrack/Mptrack.cpp Wed Jan 1 02:18:59 2025 (r22675) +++ branches/OpenMPT-1.31/mptrack/Mptrack.cpp Wed Jan 1 02:32:31 2025 (r22676) @@ -983,7 +983,7 @@ void CTrackApp::CreatePaths() { - // Create missing diretories + // Create missing directories if(!IsPortableMode()) { if(!mpt::native_fs{}.is_directory(m_ConfigPath)) @@ -1028,7 +1028,18 @@ RemoveDirectory(oldTunings.AsNative().c_str()); } } +} + +mpt::PathString CTrackApp::GetUserTemplatesPath() const +{ + return GetConfigPath() + P_("TemplateModules\\"); +} + + +mpt::PathString CTrackApp::GetExampleSongsPath() const +{ + return GetInstallPath() + P_("ExampleSongs\\"); } @@ -1687,7 +1698,7 @@ if(TrackerSettings::Instance().defaultNewFileAction == nfDefaultTemplate && !templateFile.empty()) { // Template file can be either a filename inside one of the preset and user TemplateModules folders, or a full path. - const mpt::PathString dirs[] = { GetConfigPath() + P_("TemplateModules\\"), GetInstallPath() + P_("TemplateModules\\"), mpt::PathString() }; + const mpt::PathString dirs[] = { GetUserTemplatesPath(), GetInstallPath() + P_("TemplateModules\\"), mpt::PathString() }; for(const auto &dir : dirs) { if(mpt::native_fs{}.is_file(dir + templateFile)) Modified: branches/OpenMPT-1.31/mptrack/Mptrack.h ============================================================================== --- branches/OpenMPT-1.31/mptrack/Mptrack.h Wed Jan 1 02:18:59 2025 (r22675) +++ branches/OpenMPT-1.31/mptrack/Mptrack.h Wed Jan 1 02:32:31 2025 (r22676) @@ -302,6 +302,8 @@ /// Returns path to config folder including trailing '\'. mpt::PathString GetConfigPath() const { return m_ConfigPath; } + mpt::PathString GetUserTemplatesPath() const; + mpt::PathString GetExampleSongsPath() const; void SetupPaths(bool overridePortable); void CreatePaths(); Modified: branches/OpenMPT-1.31/mptrack/TrackerSettings.cpp ============================================================================== --- branches/OpenMPT-1.31/mptrack/TrackerSettings.cpp Wed Jan 1 02:18:59 2025 (r22675) +++ branches/OpenMPT-1.31/mptrack/TrackerSettings.cpp Wed Jan 1 02:32:31 2025 (r22676) @@ -313,7 +313,6 @@ , PathPluginPresets(conf, U_("Paths"), U_("Plugin_Presets_Directory"), mpt::PathString()) , PathExport(conf, U_("Paths"), U_("Export_Directory"), mpt::PathString()) , PathTunings(theApp.GetConfigPath() + P_("tunings\\")) - , PathUserTemplates(theApp.GetConfigPath() + P_("TemplateModules\\")) // Default template , defaultTemplateFile(conf, U_("Paths"), U_("DefaultTemplate"), mpt::PathString()) , defaultArtist(conf, U_("Misc"), U_("DefaultArtist"), mpt::getenv(U_("USERNAME")).value_or(U_(""))) Modified: branches/OpenMPT-1.31/mptrack/TrackerSettings.h ============================================================================== --- branches/OpenMPT-1.31/mptrack/TrackerSettings.h Wed Jan 1 02:18:59 2025 (r22675) +++ branches/OpenMPT-1.31/mptrack/TrackerSettings.h Wed Jan 1 02:32:31 2025 (r22676) @@ -865,7 +865,6 @@ ConfigurableDirectory PathPluginPresets; ConfigurableDirectory PathExport; DefaultAndWorkingDirectory PathTunings; - DefaultAndWorkingDirectory PathUserTemplates; mpt::PathString m_szKbdFile; // Default template |