diff --git a/src/gui/gui.cpp b/src/gui/gui.cpp index 401916f33..1ece8e4b2 100644 --- a/src/gui/gui.cpp +++ b/src/gui/gui.cpp @@ -1649,7 +1649,7 @@ void FurnaceGUI::openFileDialog(FurnaceGUIFileDialogs type) { "Open File", {"compatible files", "*.fur *.dmf *.mod *.fc13 *.fc14 *.smod *.fc *.ftm *.0cc *.dnm *.eft *.fub *.tfe", "all files", "*"}, - workingDirSong, + workingDirSong+"/CRAP", dpiScale ); break; diff --git a/src/gui/gui.h b/src/gui/gui.h index a7bcea50c..288cabc1f 100644 --- a/src/gui/gui.h +++ b/src/gui/gui.h @@ -1932,6 +1932,7 @@ class FurnaceGUI { int backupEnable; int backupInterval; int backupMaxCopies; + int autoFillSave; unsigned int maxUndoSteps; float vibrationStrength; int vibrationLength; @@ -2186,6 +2187,7 @@ class FurnaceGUI { backupEnable(1), backupInterval(30), backupMaxCopies(5), + autoFillSave(0), maxUndoSteps(100), vibrationStrength(0.5f), vibrationLength(20), diff --git a/src/gui/settings.cpp b/src/gui/settings.cpp index af4d44c5a..e09f15a11 100644 --- a/src/gui/settings.cpp +++ b/src/gui/settings.cpp @@ -908,6 +908,15 @@ void FurnaceGUI::drawSettings() { ImGui::SetTooltip("when enabled, loading an instrument will use the stored name (if present).\notherwise, it will use the file name."); } + bool autoFillSaveB=settings.autoFillSave; + if (ImGui::Checkbox("Auto-fill file name when saving",&autoFillSaveB)) { + settings.autoFillSave=autoFillSaveB; + settingsChanged=true; + } + if (ImGui::IsItemHovered()) { + ImGui::SetTooltip("fill the file name field with an appropriate file name when saving or exporting."); + } + // SUBSECTION NEW SONG CONFIG_SUBSECTION("New Song"); ImGui::AlignTextToFramePadding(); @@ -4653,6 +4662,8 @@ void FurnaceGUI::readConfig(DivConfig& conf, FurnaceGUISettingGroups groups) { settings.backupEnable=conf.getInt("backupEnable",1); settings.backupInterval=conf.getInt("backupInterval",30); settings.backupMaxCopies=conf.getInt("backupMaxCopies",5); + + settings.autoFillSave=conf.getInt("autoFillSave",0); } if (groups&GUI_SETTINGS_AUDIO) { @@ -5155,6 +5166,7 @@ void FurnaceGUI::readConfig(DivConfig& conf, FurnaceGUISettingGroups groups) { clampSetting(settings.backupEnable,0,1); clampSetting(settings.backupInterval,10,86400); clampSetting(settings.backupMaxCopies,1,100); + clampSetting(settings.autoFillSave,0,1); if (settings.exportLoops<0.0) settings.exportLoops=0.0; if (settings.exportFadeOut<0.0) settings.exportFadeOut=0.0; @@ -5232,6 +5244,8 @@ void FurnaceGUI::writeConfig(DivConfig& conf, FurnaceGUISettingGroups groups) { conf.set("backupEnable",settings.backupEnable); conf.set("backupInterval",settings.backupInterval); conf.set("backupMaxCopies",settings.backupMaxCopies); + + conf.set("autoFillSave",settings.autoFillSave); } // audio