1#ifndef YAZE_APP_GUI_THEME_MANAGER_H
2#define YAZE_APP_GUI_THEME_MANAGER_H
8#include "absl/status/status.h"
9#include "absl/status/statusor.h"
11#include "imgui/imgui.h"
236 absl::Status
LoadTheme(
const std::string& theme_name);
238 const std::string& filename);
241 const std::string& filepath)
const;
258 void ApplyTheme(
const std::string& theme_name);
Manages themes, loading, saving, and switching.
Color GetSurfaceContainerHigh() const
void CreateFallbackYazeClassic()
Color ParseColorFromString(const std::string &color_str) const
Color GetOnPrimary() const
Color GetSurfaceVariant() const
Color GetTextSecondary() const
void ShowThemeEditor(bool *p_open)
Color GetWelcomeScreenBackground() const
ImVec4 GetThemeColorVec4(const std::string &color_name) const
absl::Status SaveTheme(const Theme &theme, const std::string &filename)
std::string GetCurrentThemeFilePath() const
std::map< std::string, Theme > themes_
absl::Status LoadTheme(const std::string &theme_name)
const Theme & GetCurrentTheme() const
Color GetPrimaryHover() const
absl::Status LoadThemeFromFile(const std::string &filepath)
void ApplyTheme(const std::string &theme_name)
std::string GetThemesDirectory() const
std::string current_theme_name_
Color GetWelcomeScreenAccent() const
std::vector< std::string > DiscoverAvailableThemeFiles() const
Theme CreateCustomTheme(const std::string &name)
absl::Status LoadAllAvailableThemes()
Color GetSurfaceContainer() const
Color GetOnSurfaceVariant() const
absl::Status SaveThemeToFile(const Theme &theme, const std::string &filepath) const
std::vector< std::string > GetThemeSearchPaths() const
absl::Status ParseThemeFile(const std::string &content, Theme &theme)
static ThemeManager & Get()
Color GetThemeColor(const std::string &color_name) const
Color GetOnSurface() const
const std::string & GetCurrentThemeName() const
void ShowThemeSelector(bool *p_open)
const Theme * GetTheme(const std::string &name) const
std::string SerializeTheme(const Theme &theme) const
void InitializeBuiltInThemes()
absl::Status RefreshAvailableThemes()
Color GetTextDisabled() const
std::string ExportCurrentThemeJson() const
Color GetSecondary() const
Color GetSurfaceContainerHighest() const
Color GetWelcomeScreenBorder() const
void ShowSimpleThemeEditor(bool *p_open)
void ApplyClassicYazeTheme()
Color GetPrimaryActive() const
std::vector< std::string > GetAvailableThemes() const
ImVec4 ConvertColorToImVec4(const Color &color)
ImVec4 GetSurfaceContainerHighestVec4()
ImVec4 GetThemeColorVec4(const std::string &color_name)
Color GetOnSurfaceVariant()
ImVec4 GetOnPrimaryVec4()
ImVec4 GetPrimaryActiveVec4()
Color GetSurfaceContainerHighest()
Color GetSurfaceContainer()
ImVec4 GetSurfaceVariantVec4()
ImVec4 GetTextDisabledVec4()
ImVec4 GetTextSecondaryVec4()
ImVec4 GetSurfaceContainerHighVec4()
ImVec4 GetPrimaryHoverVec4()
Color GetThemeColor(const std::string &color_name)
Color GetSurfaceContainerHigh()
ImVec4 GetOnSurfaceVariantVec4()
ImVec4 GetOnSurfaceVec4()
ImVec4 GetSurfaceContainerVec4()
Color GetSurfaceVariant()
Color grid_cell_highlight
Color selection_secondary
Color drag_preview_outline
Comprehensive theme structure for YAZE.
Color tab_dimmed_selected_overline
Color table_border_strong
Color tab_selected_overline
Color scrollbar_grab_hovered
Color scrollbar_grab_active
Color modal_window_dim_bg
Color nav_windowing_highlight
float panel_padding_multiplier
float widget_height_multiplier
struct yaze::gui::Theme::DungeonColors dungeon
struct yaze::gui::Theme::ChatColors chat
Color tab_unfocused_active
Color plot_histogram_hovered
Color tab_dimmed_selected
Color nav_windowing_dim_bg
void ApplyToImGui() const
float button_padding_multiplier
float table_row_height_multiplier
float toolbar_height_multiplier
Color resize_grip_hovered
float canvas_toolbar_multiplier
float input_width_multiplier