From caa13fb69fbe8a3e1606f1e79894aa0de2115bcf Mon Sep 17 00:00:00 2001 From: MysterD Date: Sun, 1 Aug 2021 10:53:29 -0700 Subject: [PATCH] Made configfile save on quit button press, panel close, options menu close --- src/pc/djui/djui_panel.c | 1 + src/pc/djui/djui_panel_main.c | 3 ++- src/pc/djui/djui_panel_options.c | 7 ++++++- src/pc/djui/djui_panel_pause.c | 3 ++- 4 files changed, 11 insertions(+), 3 deletions(-) diff --git a/src/pc/djui/djui_panel.c b/src/pc/djui/djui_panel.c index 2660fc7a..b6ad1d70 100644 --- a/src/pc/djui/djui_panel.c +++ b/src/pc/djui/djui_panel.c @@ -149,4 +149,5 @@ void djui_panel_shutdown(void) { gDjuiPanelMainCreated = false; gDjuiPanelPauseCreated = false; djui_cursor_set_visible(false); + configfile_save(configfile_name()); } \ No newline at end of file diff --git a/src/pc/djui/djui_panel_main.c b/src/pc/djui/djui_panel_main.c index cfcd9496..8fc1e6dd 100644 --- a/src/pc/djui/djui_panel_main.c +++ b/src/pc/djui/djui_panel_main.c @@ -1,10 +1,11 @@ #include "djui.h" #include "src/pc/controller/controller_sdl.h" +#include "src/pc/pc_main.h" bool gDjuiPanelMainCreated = false; static void djui_panel_main_quit_yes(struct DjuiBase* caller) { - exit(0); + game_exit(); } static void djui_panel_main_quit(struct DjuiBase* caller) { diff --git a/src/pc/djui/djui_panel_options.c b/src/pc/djui/djui_panel_options.c index bdb8908b..653d2edd 100644 --- a/src/pc/djui/djui_panel_options.c +++ b/src/pc/djui/djui_panel_options.c @@ -1,6 +1,11 @@ #include "djui.h" #include "src/pc/utils/misc.h" +void djui_panel_options_back(struct DjuiBase* caller) { + configfile_save(configfile_name()); + djui_panel_menu_back(caller); +} + void djui_panel_options_create(struct DjuiBase* caller) { f32 bodyHeight = 64 * 5 + 16 * 4; @@ -38,7 +43,7 @@ void djui_panel_options_create(struct DjuiBase* caller) { djui_base_set_size_type(&button6->base, DJUI_SVT_RELATIVE, DJUI_SVT_ABSOLUTE); djui_base_set_size(&button6->base, 1.0f, 64); djui_button_set_style(button6, 1); - djui_interactable_hook_click(&button6->base, djui_panel_menu_back); + djui_interactable_hook_click(&button6->base, djui_panel_options_back); } djui_panel_add(caller, &panel->base, defaultBase); diff --git a/src/pc/djui/djui_panel_pause.c b/src/pc/djui/djui_panel_pause.c index 0df1813e..1270fb25 100644 --- a/src/pc/djui/djui_panel_pause.c +++ b/src/pc/djui/djui_panel_pause.c @@ -1,5 +1,6 @@ #include "djui.h" #include "pc/cheats.h" +#include "src/pc/pc_main.h" bool gDjuiPanelPauseCreated = false; @@ -8,7 +9,7 @@ static void djui_panel_pause_resume(struct DjuiBase* caller) { } static void djui_panel_pause_quit_yes(struct DjuiBase* caller) { - exit(0); + game_exit(); } static void djui_panel_pause_quit(struct DjuiBase* caller) {