From 1ac70326063c5dec75574a2a5b03f1f3f0f0f954 Mon Sep 17 00:00:00 2001 From: MysterD Date: Sun, 7 Aug 2022 20:51:34 -0700 Subject: [PATCH] Move menu options and debug options to 'misc' --- src/pc/djui/djui.h | 1 + src/pc/djui/djui_panel_menu_options.c | 1 + src/pc/djui/djui_panel_misc.c | 63 +++++++++++++++++++++++++++ src/pc/djui/djui_panel_misc.h | 4 ++ src/pc/djui/djui_panel_options.c | 40 +---------------- 5 files changed, 71 insertions(+), 38 deletions(-) create mode 100644 src/pc/djui/djui_panel_misc.c create mode 100644 src/pc/djui/djui_panel_misc.h diff --git a/src/pc/djui/djui.h b/src/pc/djui/djui.h index 278a82316..c168f28eb 100644 --- a/src/pc/djui/djui.h +++ b/src/pc/djui/djui.h @@ -49,6 +49,7 @@ #include "djui_panel_player.h" #include "djui_panel_playerlist.h" #include "djui_panel_modlist.h" +#include "djui_panel_misc.h" #include "djui_panel_camera.h" #include "djui_panel_controls.h" #include "djui_panel_controls_n64.h" diff --git a/src/pc/djui/djui_panel_menu_options.c b/src/pc/djui/djui_panel_menu_options.c index 4ef757fe3..131c6bcf2 100644 --- a/src/pc/djui/djui_panel_menu_options.c +++ b/src/pc/djui/djui_panel_menu_options.c @@ -34,6 +34,7 @@ void djui_panel_main_menu_create(struct DjuiBase* caller) { djui_base_set_size(&selectionbox1->base, 1.0f, 32); djui_base_set_enabled(&selectionbox1->base, !configMenuRandom); sLevelBox = selectionbox1; + defaultBase = &selectionbox1->base; struct DjuiCheckbox* checkbox1 = djui_checkbox_create(&body->base, "Use Stage Music", &configMenuSound); djui_base_set_size_type(&checkbox1->base, DJUI_SVT_RELATIVE, DJUI_SVT_ABSOLUTE); diff --git a/src/pc/djui/djui_panel_misc.c b/src/pc/djui/djui_panel_misc.c new file mode 100644 index 000000000..f4625c0df --- /dev/null +++ b/src/pc/djui/djui_panel_misc.c @@ -0,0 +1,63 @@ +#include "djui.h" +#include "src/pc/utils/misc.h" +#include "src/pc/configfile.h" + +#ifdef DEVELOPMENT +void djui_panel_options_debug_create(struct DjuiBase* caller) { + f32 bodyHeight = 32 * 4 + 64 * 1 + 16 * 1; + + struct DjuiBase* defaultBase = NULL; + struct DjuiThreePanel* panel = djui_panel_menu_create(bodyHeight, "\\#ff0800\\D\\#1be700\\E\\#00b3ff\\B\\#ffef00\\U\\#ff0800\\G"); + struct DjuiFlowLayout* body = (struct DjuiFlowLayout*)djui_three_panel_get_body(panel); + + { + struct DjuiCheckbox* checkbox1 = djui_checkbox_create(&body->base, "Disable Development Pause", &configDisableDevPause); + djui_base_set_size_type(&checkbox1->base, DJUI_SVT_RELATIVE, DJUI_SVT_ABSOLUTE); + djui_base_set_size(&checkbox1->base, 1.0f, 32); + defaultBase = &checkbox1->base; + + struct DjuiButton* button2 = djui_button_create(&body->base, "Back"); + djui_base_set_size_type(&button2->base, DJUI_SVT_RELATIVE, DJUI_SVT_ABSOLUTE); + djui_base_set_size(&button2->base, 1.0f, 64); + djui_button_set_style(button2, 1); + djui_interactable_hook_click(&button2->base, djui_panel_menu_back); + } + + djui_panel_add(caller, &panel->base, defaultBase); +} +#endif + +void djui_panel_misc_create(struct DjuiBase* caller) { +#ifdef DEVELOPMENT + f32 bodyHeight = 64 * 3 + 16 * 2; +#else + f32 bodyHeight = 64 * 2 + 16 * 1; +#endif + + struct DjuiBase* defaultBase = NULL; + struct DjuiThreePanel* panel = djui_panel_menu_create(bodyHeight, "\\#ff0800\\M\\#1be700\\I\\#00b3ff\\S\\#ffef00\\C"); + struct DjuiFlowLayout* body = (struct DjuiFlowLayout*)djui_three_panel_get_body(panel); + + { + struct DjuiButton* button1 = djui_button_create(&body->base, "Menu Options"); + djui_base_set_size_type(&button1->base, DJUI_SVT_RELATIVE, DJUI_SVT_ABSOLUTE); + djui_base_set_size(&button1->base, 1.0f, 64); + djui_interactable_hook_click(&button1->base, djui_panel_main_menu_create); + defaultBase = &button1->base; + +#ifdef DEVELOPMENT + struct DjuiButton* button2 = djui_button_create(&body->base, "Debug"); + djui_base_set_size_type(&button2->base, DJUI_SVT_RELATIVE, DJUI_SVT_ABSOLUTE); + djui_base_set_size(&button2->base, 1.0f, 64); + djui_interactable_hook_click(&button2->base, djui_panel_options_debug_create); +#endif + + struct DjuiButton* button3 = djui_button_create(&body->base, "Back"); + djui_base_set_size_type(&button3->base, DJUI_SVT_RELATIVE, DJUI_SVT_ABSOLUTE); + djui_base_set_size(&button3->base, 1.0f, 64); + djui_button_set_style(button3, 1); + djui_interactable_hook_click(&button3->base, djui_panel_menu_back); + } + + djui_panel_add(caller, &panel->base, defaultBase); +} diff --git a/src/pc/djui/djui_panel_misc.h b/src/pc/djui/djui_panel_misc.h new file mode 100644 index 000000000..cd3c1b2f5 --- /dev/null +++ b/src/pc/djui/djui_panel_misc.h @@ -0,0 +1,4 @@ +#pragma once +#include "djui.h" + +void djui_panel_misc_create(struct DjuiBase* caller); diff --git a/src/pc/djui/djui_panel_options.c b/src/pc/djui/djui_panel_options.c index 747f91d75..dbd6faac9 100644 --- a/src/pc/djui/djui_panel_options.c +++ b/src/pc/djui/djui_panel_options.c @@ -6,36 +6,9 @@ void djui_panel_options_back(struct DjuiBase* caller) { configfile_save(configfile_name()); djui_panel_menu_back(caller); } -#ifdef DEVELOPMENT -void djui_panel_options_debug_create(struct DjuiBase* caller) { - f32 bodyHeight = 32 * 4 + 64 * 1 + 16 * 1; - - struct DjuiBase* defaultBase = NULL; - struct DjuiThreePanel* panel = djui_panel_menu_create(bodyHeight, "\\#ff0800\\D\\#1be700\\E\\#00b3ff\\B\\#ffef00\\U\\#ff0800\\G"); - struct DjuiFlowLayout* body = (struct DjuiFlowLayout*)djui_three_panel_get_body(panel); - - { - struct DjuiCheckbox* checkbox1 = djui_checkbox_create(&body->base, "Disable Development Pause", &configDisableDevPause); - djui_base_set_size_type(&checkbox1->base, DJUI_SVT_RELATIVE, DJUI_SVT_ABSOLUTE); - djui_base_set_size(&checkbox1->base, 1.0f, 32); - - struct DjuiButton* button2 = djui_button_create(&body->base, "Back"); - djui_base_set_size_type(&button2->base, DJUI_SVT_RELATIVE, DJUI_SVT_ABSOLUTE); - djui_base_set_size(&button2->base, 1.0f, 64); - djui_button_set_style(button2, 1); - djui_interactable_hook_click(&button2->base, djui_panel_menu_back); - } - - djui_panel_add(caller, &panel->base, defaultBase); -} -#endif void djui_panel_options_create(struct DjuiBase* caller) { -#ifdef DEVELOPMENT - f32 bodyHeight = 64 * 8 + 16 * 7; -#else f32 bodyHeight = 64 * 7 + 16 * 6; -#endif struct DjuiBase* defaultBase = NULL; struct DjuiThreePanel* panel = djui_panel_menu_create(bodyHeight, "\\#ff0800\\O\\#1be700\\P\\#00b3ff\\T\\#ffef00\\I\\#ff0800\\O\\#1be700\\N\\#00b3ff\\S"); @@ -70,25 +43,16 @@ void djui_panel_options_create(struct DjuiBase* caller) { djui_base_set_size(&button5->base, 1.0f, 64); djui_interactable_hook_click(&button5->base, djui_panel_sound_create); -#ifdef DEVELOPMENT - struct DjuiButton* button6 = djui_button_create(&body->base, "Debug"); + struct DjuiButton* button6 = djui_button_create(&body->base, "Misc"); djui_base_set_size_type(&button6->base, DJUI_SVT_RELATIVE, DJUI_SVT_ABSOLUTE); djui_base_set_size(&button6->base, 1.0f, 64); - djui_interactable_hook_click(&button6->base, djui_panel_options_debug_create); -#endif - - struct DjuiButton* button8 = djui_button_create(&body->base, "Menu Options"); - djui_base_set_size_type(&button8->base, DJUI_SVT_RELATIVE, DJUI_SVT_ABSOLUTE); - djui_base_set_size(&button8->base, 1.0f, 64); - djui_interactable_hook_click(&button8->base, djui_panel_main_menu_create); + djui_interactable_hook_click(&button6->base, djui_panel_misc_create); struct DjuiButton* button7 = djui_button_create(&body->base, "Back"); djui_base_set_size_type(&button7->base, DJUI_SVT_RELATIVE, DJUI_SVT_ABSOLUTE); djui_base_set_size(&button7->base, 1.0f, 64); djui_button_set_style(button7, 1); djui_interactable_hook_click(&button7->base, djui_panel_options_back); - - } djui_panel_add(caller, &panel->base, defaultBase);