From 724632e2a361143c85f809d6221f0cffc8f775bc Mon Sep 17 00:00:00 2001 From: tildearrow Date: Fri, 17 May 2024 12:45:31 -0500 Subject: [PATCH] prepare for config import/export/reset --- src/gui/gui.cpp | 10 ++++++++++ src/gui/gui.h | 1 + src/gui/settings.cpp | 15 +++++++++++++++ 3 files changed, 26 insertions(+) diff --git a/src/gui/gui.cpp b/src/gui/gui.cpp index 4cfc563ce..76cc6b758 100644 --- a/src/gui/gui.cpp +++ b/src/gui/gui.cpp @@ -6015,6 +6015,16 @@ bool FurnaceGUI::loop() { ImGui::CloseCurrentPopup(); } break; + case GUI_WARN_RESET_CONFIG: + if (ImGui::Button("Yes")) { + quit=true; + ImGui::CloseCurrentPopup(); + } + ImGui::SameLine(); + if (ImGui::Button("No")) { + ImGui::CloseCurrentPopup(); + } + break; case GUI_WARN_GENERIC: if (ImGui::Button("OK")) { ImGui::CloseCurrentPopup(); diff --git a/src/gui/gui.h b/src/gui/gui.h index e29c7e3b6..7159fefdf 100644 --- a/src/gui/gui.h +++ b/src/gui/gui.h @@ -632,6 +632,7 @@ enum FurnaceGUIWarnings { GUI_WARN_SYSTEM_DEL, GUI_WARN_CLEAR_HISTORY, GUI_WARN_CV, + GUI_WARN_RESET_CONFIG, GUI_WARN_GENERIC }; diff --git a/src/gui/settings.cpp b/src/gui/settings.cpp index 8f8cd1230..43aeb484f 100644 --- a/src/gui/settings.cpp +++ b/src/gui/settings.cpp @@ -980,6 +980,21 @@ void FurnaceGUI::drawSettings() { settingsChanged=true; } + // SUBSECTION CONFIGURATION + CONFIG_SUBSECTION("Configuration"); + if (ImGui::Button("Import")) { + openFileDialog(GUI_FILE_IMPORT_CONFIG); + } + ImGui::SameLine(); + if (ImGui::Button("Export")) { + openFileDialog(GUI_FILE_EXPORT_CONFIG); + } + pushDestColor(); + if (ImGui::Button("Factory Reset")) { + showWarning("Are you sure you want to reset all Furnace settings?\nYou must restart Furnace after doing so.",GUI_WARN_RESET_CONFIG); + } + popDestColor(); + END_SECTION; } CONFIG_SECTION("Audio") {