mirror of
https://github.com/HarbourMasters/Shipwright.git
synced 2025-08-20 13:23:45 -07:00
Merge 5bf813d706
into 7b4df9bdb2
This commit is contained in:
commit
241dcdaefa
1 changed files with 50 additions and 0 deletions
|
@ -5,6 +5,7 @@
|
|||
#include "soh/OTRGlobals.h"
|
||||
#include <soh/GameVersions.h>
|
||||
#include "soh/ResourceManagerHelpers.h"
|
||||
#include "soh/SaveManager.h"
|
||||
#include "UIWidgets.hpp"
|
||||
#include <spdlog/fmt/fmt.h>
|
||||
|
||||
|
@ -191,6 +192,55 @@ void SohMenu::AddMenuSettings() {
|
|||
})
|
||||
.Options(ButtonOptions().Tooltip("Opens the folder that contains the save and mods folders, etc."));
|
||||
|
||||
AddWidget(path, "Saves", WIDGET_SEPARATOR_TEXT);
|
||||
auto deleteSaveFilesDisabledFunc = [](WidgetInfo& info) {
|
||||
info.options->disabled = !CVarGetInteger(CVAR_SETTING("EnableSaveDeletionOptions"), 0);
|
||||
info.options->disabledTooltip = "This is disabled because \"Enable Save Deletion Options\" is turned off.";
|
||||
};
|
||||
AddWidget(path, "Enable Save Deletion Options", WIDGET_CVAR_CHECKBOX)
|
||||
.CVar(CVAR_SETTING("EnableSaveDeletionOptions"))
|
||||
.RaceDisable(false)
|
||||
.Options(CheckboxOptions()
|
||||
.Tooltip("Turn on to enable the save deletion options below.Turns off automatically "
|
||||
"when \"Delete All/Selected Saves\" button is pressed")
|
||||
.DefaultValue(false));
|
||||
AddWidget(path, "Delete All Saves", WIDGET_BUTTON)
|
||||
.RaceDisable(false)
|
||||
.PreFunc(deleteSaveFilesDisabledFunc)
|
||||
.Callback([](WidgetInfo& info) {
|
||||
for (int fileNum = 0; fileNum < SaveManager::MaxFiles; fileNum++) {
|
||||
SaveManager::Instance->DeleteZeldaFile(fileNum);
|
||||
}
|
||||
|
||||
CVarSetInteger(CVAR_SETTING("EnableSaveDeletionOptions"), 0);
|
||||
std::reinterpret_pointer_cast<Ship::ConsoleWindow>(
|
||||
Ship::Context::GetInstance()->GetWindow()->GetGui()->GetGuiWindow("Console"))
|
||||
->Dispatch("reset");
|
||||
})
|
||||
.Options(ButtonOptions().Tooltip("Warning deletes all save files"));
|
||||
AddWidget(path, "Select Save File To Delete: ", WIDGET_CVAR_SLIDER_INT)
|
||||
.CVar(CVAR_SETTING("DeleteSelectedSaveFileNum"))
|
||||
.PreFunc(deleteSaveFilesDisabledFunc)
|
||||
.Options(IntSliderOptions()
|
||||
.Min(1)
|
||||
.Max(3)
|
||||
.DefaultValue(1)
|
||||
.Format("File %d ")
|
||||
.Tooltip("Select which save file to delete.Then press \"Delete Selected Save File\" to delete."));
|
||||
AddWidget(path, "Delete Selected Save File", WIDGET_BUTTON)
|
||||
.RaceDisable(false)
|
||||
.PreFunc(deleteSaveFilesDisabledFunc)
|
||||
.Callback([](WidgetInfo& info) {
|
||||
int selectedFileNum = CVarGetInteger(CVAR_SETTING("DeleteSelectedSaveFileNum"), 0);
|
||||
SaveManager::Instance->DeleteZeldaFile(selectedFileNum - 1);
|
||||
|
||||
CVarSetInteger(CVAR_SETTING("EnableSaveDeletionOptions"), 0);
|
||||
std::reinterpret_pointer_cast<Ship::ConsoleWindow>(
|
||||
Ship::Context::GetInstance()->GetWindow()->GetGui()->GetGuiWindow("Console"))
|
||||
->Dispatch("reset");
|
||||
})
|
||||
.Options(ButtonOptions().Tooltip("Warning deletes selected save file"));
|
||||
|
||||
AddWidget(path, "Boot", WIDGET_SEPARATOR_TEXT);
|
||||
AddWidget(path, "Boot Sequence", WIDGET_CVAR_COMBOBOX)
|
||||
.CVar(CVAR_SETTING("BootSequence"))
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue