From 049e7e2aa15debb1ed112494681d7b3e28765679 Mon Sep 17 00:00:00 2001 From: hachem Date: Sat, 20 Sep 2025 03:49:18 +0200 Subject: feat: add preferences panel --- src/ui/preferences.h | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 src/ui/preferences.h (limited to 'src/ui/preferences.h') diff --git a/src/ui/preferences.h b/src/ui/preferences.h new file mode 100644 index 0000000..2d14a4b --- /dev/null +++ b/src/ui/preferences.h @@ -0,0 +1,34 @@ +#pragma once + +#include + +namespace Hsdbg +{ + struct Preferences + { + float ui_scale = 1.0f; + float accent[3] = { 0.30f, 0.72f, 0.78f }; + float rounding = 4.0f; + bool show_mascot = true; + float mascot_scale = 1.6f; + + bool syntax_highlighting = true; + bool show_line_numbers = true; + bool highlight_current_line = true; + float color_keyword[3] = { 0.337f, 0.612f, 0.839f }; + float color_type[3] = { 0.306f, 0.788f, 0.690f }; + float color_string[3] = { 0.808f, 0.569f, 0.471f }; + float color_number[3] = { 0.710f, 0.808f, 0.659f }; + float color_comment[3] = { 0.416f, 0.600f, 0.333f }; + float color_preprocessor[3] = { 0.773f, 0.525f, 0.753f }; + float color_current_line[3] = { 0.227f, 0.282f, 0.180f }; + + bool stop_at_entry = false; + bool step_by_instruction = false; + + bool show_fps = true; + }; + + auto load_preferences(const std::filesystem::path& path) -> Preferences; + auto save_preferences(const std::filesystem::path& path, const Preferences& preferences) -> void; +} -- cgit v1.3