/** * @file rex/ui/overlay/settings_overlay.h * * @brief ImGui settings overlay dialog for cvar editing with save-to-config. * * @copyright Copyright (c) 2026 Tom Clay * All rights reserved. * * @license BSD 3-Clause License * See LICENSE file in the project root for full license text. */ #pragma once #include #include #include namespace rex::ui { class SettingsDialog : public ImGuiDialog { public: // config_path: where "Save to config" writes (e.g. exe_dir / "app.toml") SettingsDialog(ImGuiDrawer* imgui_drawer, std::filesystem::path config_path); ~SettingsDialog(); protected: void OnDraw(ImGuiIO& io) override; private: std::filesystem::path config_path_; char search_buf_[128] = {}; std::string selected_category_; std::string capturing_bind_name_; }; } // namespace rex::ui