Mercurial > repos > blastem
diff nuklear_ui/blastem_nuklear.c @ 2018:193b804c9845
Add a UI button to reset config to defaults
author | Michael Pavone <pavone@retrodev.com> |
---|---|
date | Mon, 09 Nov 2020 00:29:47 -0800 |
parents | 8e7b06ade815 |
children | e42c45ff06d5 |
line wrap: on
line diff
--- a/nuklear_ui/blastem_nuklear.c Sat Nov 07 18:27:34 2020 -0800 +++ b/nuklear_ui/blastem_nuklear.c Mon Nov 09 00:29:47 2020 -0800 @@ -2023,6 +2023,29 @@ } } +void view_confirm_reset(struct nk_context *context) +{ + if (nk_begin(context, "Reset Confirm", nk_rect(0, 0, render_width(), render_height()), 0)) { + uint32_t desired_width = context->style.font->height * 20; + nk_layout_row_static(context, context->style.font->height, desired_width, 1); + nk_label(context, "This will reset all settings and controller", NK_TEXT_LEFT); + nk_label(context, "mappings back to the defaults.", NK_TEXT_LEFT); + nk_label(context, "Are you sure you want to proceed?", NK_TEXT_LEFT); + nk_layout_row_static(context, context->style.font->height * 1.5, desired_width / 2, 2); + if (nk_button_label(context, "Maybe not")) { + pop_view(); + } + if (nk_button_label(context, "Yep, delete it all")) { + delete_custom_config(); + config = load_config(); + delete_controller_info(); + config_dirty = 1; + pop_view(); + } + nk_end(context); + } +} + void view_back(struct nk_context *context) { pop_view(); @@ -2038,6 +2061,7 @@ {"Video", view_video_settings}, {"Audio", view_audio_settings}, {"System", view_system_settings}, + {"Reset to Defaults", view_confirm_reset}, {"Back", view_back} };