yaze 0.3.2
Link to the Past ROM Editor
 
Loading...
Searching...
No Matches
yaze::gui::ThemeManager Class Reference

Manages themes, loading, saving, and switching. More...

#include <theme_manager.h>

Collaboration diagram for yaze::gui::ThemeManager:

Public Member Functions

absl::Status LoadTheme (const std::string &theme_name)
 
absl::Status SaveTheme (const EnhancedTheme &theme, const std::string &filename)
 
absl::Status LoadThemeFromFile (const std::string &filepath)
 
absl::Status SaveThemeToFile (const EnhancedTheme &theme, const std::string &filepath) const
 
std::vector< std::string > DiscoverAvailableThemeFiles () const
 
absl::Status LoadAllAvailableThemes ()
 
absl::Status RefreshAvailableThemes ()
 
void InitializeBuiltInThemes ()
 
std::vector< std::string > GetAvailableThemes () const
 
const EnhancedThemeGetTheme (const std::string &name) const
 
const EnhancedThemeGetCurrentTheme () const
 
const std::string & GetCurrentThemeName () const
 
void ApplyTheme (const std::string &theme_name)
 
void ApplyTheme (const EnhancedTheme &theme)
 
void ApplyClassicYazeTheme ()
 
EnhancedTheme CreateCustomTheme (const std::string &name)
 
void ShowThemeEditor (bool *p_open)
 
void ShowThemeSelector (bool *p_open)
 
void ShowSimpleThemeEditor (bool *p_open)
 
Color GetWelcomeScreenBackground () const
 
Color GetWelcomeScreenBorder () const
 
Color GetWelcomeScreenAccent () const
 

Static Public Member Functions

static ThemeManagerGet ()
 

Private Member Functions

 ThemeManager ()
 
void CreateFallbackYazeClassic ()
 
absl::Status ParseThemeFile (const std::string &content, EnhancedTheme &theme)
 
Color ParseColorFromString (const std::string &color_str) const
 
std::string SerializeTheme (const EnhancedTheme &theme) const
 
std::vector< std::string > GetThemeSearchPaths () const
 
std::string GetThemesDirectory () const
 
std::string GetCurrentThemeFilePath () const
 

Private Attributes

std::map< std::string, EnhancedThemethemes_
 
EnhancedTheme current_theme_
 
std::string current_theme_name_ = "Classic YAZE"
 

Detailed Description

Manages themes, loading, saving, and switching.

Definition at line 167 of file theme_manager.h.

Constructor & Destructor Documentation

◆ ThemeManager()

yaze::gui::ThemeManager::ThemeManager ( )
inlineprivate

Definition at line 207 of file theme_manager.h.

References InitializeBuiltInThemes().

Here is the call graph for this function:

Member Function Documentation

◆ Get()

◆ LoadTheme()

absl::Status yaze::gui::ThemeManager::LoadTheme ( const std::string &  theme_name)

Definition at line 253 of file theme_manager.cc.

References yaze::gui::EnhancedTheme::ApplyToImGui(), current_theme_, current_theme_name_, and themes_.

Referenced by ApplyTheme(), ShowSimpleThemeEditor(), and ShowThemeSelector().

Here is the call graph for this function:

◆ SaveTheme()

absl::Status yaze::gui::ThemeManager::SaveTheme ( const EnhancedTheme theme,
const std::string &  filename 
)

◆ LoadThemeFromFile()

absl::Status yaze::gui::ThemeManager::LoadThemeFromFile ( const std::string &  filepath)

Definition at line 266 of file theme_manager.cc.

References yaze::util::GetResourcePath(), yaze::gui::EnhancedTheme::name, ParseThemeFile(), and themes_.

Referenced by LoadAllAvailableThemes(), ShowSimpleThemeEditor(), and ShowThemeSelector().

Here is the call graph for this function:

◆ SaveThemeToFile()

absl::Status yaze::gui::ThemeManager::SaveThemeToFile ( const EnhancedTheme theme,
const std::string &  filepath 
) const

Definition at line 829 of file theme_manager.cc.

References SerializeTheme().

Referenced by ShowSimpleThemeEditor().

Here is the call graph for this function:

◆ DiscoverAvailableThemeFiles()

std::vector< std::string > yaze::gui::ThemeManager::DiscoverAvailableThemeFiles ( ) const

Definition at line 1979 of file theme_manager.cc.

References yaze::util::GetFileName(), yaze::util::FileDialogWrapper::GetFilesInFolder(), GetThemeSearchPaths(), and LOG_ERROR.

Referenced by LoadAllAvailableThemes().

Here is the call graph for this function:

◆ LoadAllAvailableThemes()

absl::Status yaze::gui::ThemeManager::LoadAllAvailableThemes ( )

Definition at line 2031 of file theme_manager.cc.

References DiscoverAvailableThemeFiles(), and LoadThemeFromFile().

Referenced by InitializeBuiltInThemes(), and RefreshAvailableThemes().

Here is the call graph for this function:

◆ RefreshAvailableThemes()

absl::Status yaze::gui::ThemeManager::RefreshAvailableThemes ( )

Definition at line 2054 of file theme_manager.cc.

References LoadAllAvailableThemes().

Referenced by ShowThemeSelector().

Here is the call graph for this function:

◆ InitializeBuiltInThemes()

void yaze::gui::ThemeManager::InitializeBuiltInThemes ( )

Definition at line 121 of file theme_manager.cc.

References ApplyClassicYazeTheme(), CreateFallbackYazeClassic(), current_theme_, current_theme_name_, LoadAllAvailableThemes(), LOG_ERROR, and themes_.

Referenced by ThemeManager().

Here is the call graph for this function:

◆ GetAvailableThemes()

std::vector< std::string > yaze::gui::ThemeManager::GetAvailableThemes ( ) const

Definition at line 316 of file theme_manager.cc.

References themes_.

Referenced by ShowSimpleThemeEditor().

◆ GetTheme()

const EnhancedTheme * yaze::gui::ThemeManager::GetTheme ( const std::string &  name) const

Definition at line 324 of file theme_manager.cc.

References themes_.

◆ GetCurrentTheme()

◆ GetCurrentThemeName()

const std::string & yaze::gui::ThemeManager::GetCurrentThemeName ( ) const
inline

Definition at line 188 of file theme_manager.h.

References current_theme_name_.

◆ ApplyTheme() [1/2]

void yaze::gui::ThemeManager::ApplyTheme ( const std::string &  theme_name)

Definition at line 329 of file theme_manager.cc.

References LoadTheme(), and LOG_ERROR.

Referenced by ShowSimpleThemeEditor().

Here is the call graph for this function:

◆ ApplyTheme() [2/2]

void yaze::gui::ThemeManager::ApplyTheme ( const EnhancedTheme theme)

Definition at line 340 of file theme_manager.cc.

References yaze::gui::EnhancedTheme::ApplyToImGui(), current_theme_, current_theme_name_, and yaze::gui::EnhancedTheme::name.

Here is the call graph for this function:

◆ ApplyClassicYazeTheme()

void yaze::gui::ThemeManager::ApplyClassicYazeTheme ( )

Definition at line 847 of file theme_manager.cc.

References yaze::gui::EnhancedTheme::accent, yaze::gui::EnhancedTheme::active_selection, yaze::gui::EnhancedTheme::author, yaze::gui::EnhancedTheme::background, yaze::gui::EnhancedTheme::border, yaze::gui::EnhancedTheme::border_shadow, yaze::gui::EnhancedTheme::button, yaze::gui::EnhancedTheme::button_active, yaze::gui::EnhancedTheme::button_hovered, yaze::gui::EnhancedTheme::check_mark, yaze::gui::EnhancedTheme::child_bg, yaze::gui::EnhancedTheme::code_background, yaze::gui::ColorsYaze(), current_theme_, current_theme_name_, yaze::gui::EnhancedTheme::description, yaze::gui::EnhancedTheme::disabled_overlay, yaze::gui::EnhancedTheme::docking_empty_bg, yaze::gui::EnhancedTheme::docking_preview, yaze::gui::EnhancedTheme::drag_drop_target, yaze::gui::EnhancedTheme::editor_background, yaze::gui::EnhancedTheme::editor_cursor, yaze::gui::EnhancedTheme::editor_grid, yaze::gui::EnhancedTheme::editor_selection, yaze::gui::EnhancedTheme::enable_glow_effects, yaze::gui::EnhancedTheme::error_light, yaze::gui::EnhancedTheme::focus_border, yaze::gui::EnhancedTheme::frame_bg, yaze::gui::EnhancedTheme::frame_bg_active, yaze::gui::EnhancedTheme::frame_bg_hovered, yaze::gui::EnhancedTheme::frame_rounding, yaze::gui::EnhancedTheme::header, yaze::gui::EnhancedTheme::header_active, yaze::gui::EnhancedTheme::header_hovered, yaze::gui::EnhancedTheme::hover_highlight, yaze::gui::EnhancedTheme::info_light, yaze::gui::EnhancedTheme::input_text_cursor, yaze::gui::EnhancedTheme::link_hover, yaze::gui::EnhancedTheme::menu_bar_bg, yaze::gui::EnhancedTheme::modal_window_dim_bg, yaze::gui::EnhancedTheme::name, yaze::gui::EnhancedTheme::nav_cursor, yaze::gui::EnhancedTheme::nav_windowing_dim_bg, yaze::gui::EnhancedTheme::nav_windowing_highlight, yaze::gui::EnhancedTheme::plot_histogram, yaze::gui::EnhancedTheme::plot_histogram_hovered, yaze::gui::EnhancedTheme::plot_lines, yaze::gui::EnhancedTheme::plot_lines_hovered, yaze::gui::EnhancedTheme::popup_bg, yaze::gui::EnhancedTheme::primary, yaze::gui::EnhancedTheme::resize_grip, yaze::gui::EnhancedTheme::resize_grip_active, yaze::gui::EnhancedTheme::resize_grip_hovered, yaze::gui::RGBA(), yaze::gui::EnhancedTheme::scrollbar_bg, yaze::gui::EnhancedTheme::scrollbar_grab, yaze::gui::EnhancedTheme::scrollbar_grab_active, yaze::gui::EnhancedTheme::scrollbar_grab_hovered, yaze::gui::EnhancedTheme::scrollbar_rounding, yaze::gui::EnhancedTheme::secondary, yaze::gui::EnhancedTheme::separator, yaze::gui::EnhancedTheme::separator_active, yaze::gui::EnhancedTheme::separator_hovered, yaze::gui::EnhancedTheme::slider_grab, yaze::gui::EnhancedTheme::slider_grab_active, yaze::gui::EnhancedTheme::success_light, yaze::gui::EnhancedTheme::tab, yaze::gui::EnhancedTheme::tab_active, yaze::gui::EnhancedTheme::tab_dimmed, yaze::gui::EnhancedTheme::tab_dimmed_selected, yaze::gui::EnhancedTheme::tab_dimmed_selected_overline, yaze::gui::EnhancedTheme::tab_hovered, yaze::gui::EnhancedTheme::tab_rounding, yaze::gui::EnhancedTheme::tab_selected_overline, yaze::gui::EnhancedTheme::tab_unfocused, yaze::gui::EnhancedTheme::tab_unfocused_active, yaze::gui::EnhancedTheme::table_border_light, yaze::gui::EnhancedTheme::table_border_strong, yaze::gui::EnhancedTheme::table_header_bg, yaze::gui::EnhancedTheme::table_row_bg, yaze::gui::EnhancedTheme::table_row_bg_alt, yaze::gui::EnhancedTheme::text_disabled, yaze::gui::EnhancedTheme::text_highlight, yaze::gui::EnhancedTheme::text_link, yaze::gui::EnhancedTheme::text_primary, yaze::gui::EnhancedTheme::text_selected_bg, yaze::gui::EnhancedTheme::title_bg, yaze::gui::EnhancedTheme::title_bg_active, yaze::gui::EnhancedTheme::title_bg_collapsed, yaze::gui::EnhancedTheme::tree_lines, yaze::gui::EnhancedTheme::warning_light, yaze::gui::EnhancedTheme::window_bg, and yaze::gui::EnhancedTheme::window_rounding.

Referenced by InitializeBuiltInThemes(), ShowSimpleThemeEditor(), and ShowThemeSelector().

Here is the call graph for this function:

◆ CreateCustomTheme()

EnhancedTheme yaze::gui::ThemeManager::CreateCustomTheme ( const std::string &  name)

◆ ShowThemeEditor()

void yaze::gui::ThemeManager::ShowThemeEditor ( bool *  p_open)

◆ ShowThemeSelector()

◆ ShowSimpleThemeEditor()

void yaze::gui::ThemeManager::ShowSimpleThemeEditor ( bool *  p_open)

Definition at line 989 of file theme_manager.cc.

References yaze::gui::EnhancedTheme::accent, yaze::gui::EnhancedTheme::active_selection, yaze::gui::EnhancedTheme::animation_speed, ApplyClassicYazeTheme(), ApplyTheme(), yaze::gui::EnhancedTheme::ApplyToImGui(), yaze::gui::EnhancedTheme::author, yaze::gui::EnhancedTheme::background, yaze::gui::EnhancedTheme::border, yaze::gui::EnhancedTheme::border_shadow, yaze::gui::EnhancedTheme::button, yaze::gui::EnhancedTheme::button_active, yaze::gui::EnhancedTheme::button_hovered, yaze::gui::EnhancedTheme::check_mark, yaze::gui::EnhancedTheme::child_bg, yaze::gui::EnhancedTheme::code_background, yaze::gui::ConvertColorToImVec4(), current_theme_, yaze::gui::EnhancedTheme::description, yaze::gui::EnhancedTheme::disabled_overlay, yaze::gui::EnhancedTheme::docking_empty_bg, yaze::gui::EnhancedTheme::docking_preview, yaze::gui::EnhancedTheme::drag_drop_target, yaze::gui::EnhancedTheme::editor_background, yaze::gui::EnhancedTheme::editor_cursor, yaze::gui::EnhancedTheme::editor_grid, yaze::gui::EnhancedTheme::editor_selection, yaze::gui::EnhancedTheme::enable_animations, yaze::gui::EnhancedTheme::enable_glow_effects, yaze::gui::EnhancedTheme::error_light, yaze::gui::EnhancedTheme::focus_border, yaze::gui::EnhancedTheme::frame_bg, yaze::gui::EnhancedTheme::frame_bg_active, yaze::gui::EnhancedTheme::frame_bg_hovered, yaze::gui::EnhancedTheme::frame_border_size, yaze::gui::EnhancedTheme::frame_rounding, GetAvailableThemes(), GetCurrentTheme(), GetCurrentThemeFilePath(), yaze::gui::EnhancedTheme::grab_rounding, yaze::gui::EnhancedTheme::header, yaze::gui::EnhancedTheme::header_active, yaze::gui::EnhancedTheme::header_hovered, yaze::gui::EnhancedTheme::hover_highlight, ICON_MD_ADD, ICON_MD_AUTO_AWESOME, ICON_MD_BORDER_ALL, ICON_MD_COLOR_LENS, ICON_MD_FOLDER_OPEN, ICON_MD_NAVIGATION, ICON_MD_PALETTE, ICON_MD_SAVE, ICON_MD_SAVE_AS, ICON_MD_TABLE_CHART, ICON_MD_TEXT_FIELDS, ICON_MD_TOUCH_APP, ICON_MD_TUNE, yaze::gui::EnhancedTheme::info_light, yaze::gui::EnhancedTheme::input_text_cursor, yaze::gui::EnhancedTheme::link_hover, LoadTheme(), LoadThemeFromFile(), LOG_ERROR, yaze::gui::EnhancedTheme::menu_bar_bg, yaze::gui::EnhancedTheme::modal_bg, yaze::gui::EnhancedTheme::modal_window_dim_bg, yaze::gui::EnhancedTheme::name, yaze::gui::EnhancedTheme::nav_cursor, yaze::gui::EnhancedTheme::nav_windowing_dim_bg, yaze::gui::EnhancedTheme::nav_windowing_highlight, yaze::gui::EnhancedTheme::plot_histogram, yaze::gui::EnhancedTheme::plot_histogram_hovered, yaze::gui::EnhancedTheme::plot_lines, yaze::gui::EnhancedTheme::plot_lines_hovered, yaze::gui::EnhancedTheme::popup_bg, yaze::gui::EnhancedTheme::primary, yaze::gui::EnhancedTheme::resize_grip, yaze::gui::EnhancedTheme::resize_grip_active, yaze::gui::EnhancedTheme::resize_grip_hovered, SaveThemeToFile(), yaze::gui::EnhancedTheme::scrollbar_bg, yaze::gui::EnhancedTheme::scrollbar_grab, yaze::gui::EnhancedTheme::scrollbar_grab_active, yaze::gui::EnhancedTheme::scrollbar_grab_hovered, yaze::gui::EnhancedTheme::scrollbar_rounding, yaze::gui::EnhancedTheme::secondary, yaze::gui::EnhancedTheme::separator, yaze::gui::EnhancedTheme::separator_active, yaze::gui::EnhancedTheme::separator_hovered, yaze::util::FileDialogWrapper::ShowOpenFileDialog(), yaze::util::FileDialogWrapper::ShowSaveFileDialog(), yaze::gui::EnhancedTheme::slider_grab, yaze::gui::EnhancedTheme::slider_grab_active, yaze::gui::EnhancedTheme::success_light, yaze::gui::EnhancedTheme::tab, yaze::gui::EnhancedTheme::tab_active, yaze::gui::EnhancedTheme::tab_dimmed, yaze::gui::EnhancedTheme::tab_dimmed_selected, yaze::gui::EnhancedTheme::tab_hovered, yaze::gui::EnhancedTheme::tab_rounding, yaze::gui::EnhancedTheme::tab_unfocused, yaze::gui::EnhancedTheme::tab_unfocused_active, yaze::gui::EnhancedTheme::table_border_light, yaze::gui::EnhancedTheme::table_border_strong, yaze::gui::EnhancedTheme::table_header_bg, yaze::gui::EnhancedTheme::table_row_bg, yaze::gui::EnhancedTheme::table_row_bg_alt, yaze::gui::EnhancedTheme::text_disabled, yaze::gui::EnhancedTheme::text_highlight, yaze::gui::EnhancedTheme::text_link, yaze::gui::EnhancedTheme::text_primary, yaze::gui::EnhancedTheme::text_secondary, yaze::gui::EnhancedTheme::text_selected_bg, themes_, yaze::gui::EnhancedTheme::title_bg, yaze::gui::EnhancedTheme::title_bg_active, yaze::gui::EnhancedTheme::title_bg_collapsed, yaze::gui::EnhancedTheme::tree_lines, yaze::gui::EnhancedTheme::warning_light, yaze::gui::EnhancedTheme::window_bg, yaze::gui::EnhancedTheme::window_border_size, and yaze::gui::EnhancedTheme::window_rounding.

Referenced by ShowThemeSelector().

◆ GetWelcomeScreenBackground()

Color yaze::gui::ThemeManager::GetWelcomeScreenBackground ( ) const

◆ GetWelcomeScreenBorder()

Color yaze::gui::ThemeManager::GetWelcomeScreenBorder ( ) const

Definition at line 352 of file theme_manager.cc.

References yaze::gui::EnhancedTheme::accent, and current_theme_.

◆ GetWelcomeScreenAccent()

Color yaze::gui::ThemeManager::GetWelcomeScreenAccent ( ) const

Definition at line 356 of file theme_manager.cc.

References current_theme_, and yaze::gui::EnhancedTheme::primary.

◆ CreateFallbackYazeClassic()

void yaze::gui::ThemeManager::CreateFallbackYazeClassic ( )
private

Definition at line 144 of file theme_manager.cc.

References yaze::gui::EnhancedTheme::accent, yaze::gui::EnhancedTheme::author, yaze::gui::EnhancedTheme::background, yaze::gui::EnhancedTheme::border, yaze::gui::EnhancedTheme::border_shadow, yaze::gui::EnhancedTheme::button, yaze::gui::EnhancedTheme::button_active, yaze::gui::EnhancedTheme::button_hovered, yaze::gui::EnhancedTheme::check_mark, yaze::gui::EnhancedTheme::child_bg, current_theme_, current_theme_name_, yaze::gui::EnhancedTheme::description, yaze::gui::EnhancedTheme::docking_empty_bg, yaze::gui::EnhancedTheme::docking_preview, yaze::gui::EnhancedTheme::drag_drop_target, yaze::gui::EnhancedTheme::enable_glow_effects, yaze::gui::EnhancedTheme::error, yaze::gui::EnhancedTheme::frame_rounding, yaze::gui::EnhancedTheme::header, yaze::gui::EnhancedTheme::header_active, yaze::gui::EnhancedTheme::header_hovered, yaze::gui::EnhancedTheme::info, yaze::gui::EnhancedTheme::input_text_cursor, yaze::gui::EnhancedTheme::menu_bar_bg, yaze::gui::EnhancedTheme::modal_bg, yaze::gui::EnhancedTheme::modal_window_dim_bg, yaze::gui::EnhancedTheme::name, yaze::gui::EnhancedTheme::nav_cursor, yaze::gui::EnhancedTheme::nav_windowing_dim_bg, yaze::gui::EnhancedTheme::nav_windowing_highlight, yaze::gui::EnhancedTheme::plot_histogram, yaze::gui::EnhancedTheme::plot_histogram_hovered, yaze::gui::EnhancedTheme::plot_lines, yaze::gui::EnhancedTheme::plot_lines_hovered, yaze::gui::EnhancedTheme::popup_bg, yaze::gui::EnhancedTheme::primary, yaze::gui::EnhancedTheme::resize_grip, yaze::gui::EnhancedTheme::resize_grip_active, yaze::gui::EnhancedTheme::resize_grip_hovered, yaze::gui::RGBA(), yaze::gui::EnhancedTheme::scrollbar_bg, yaze::gui::EnhancedTheme::scrollbar_grab, yaze::gui::EnhancedTheme::scrollbar_grab_active, yaze::gui::EnhancedTheme::scrollbar_grab_hovered, yaze::gui::EnhancedTheme::scrollbar_rounding, yaze::gui::EnhancedTheme::secondary, yaze::gui::EnhancedTheme::separator, yaze::gui::EnhancedTheme::separator_active, yaze::gui::EnhancedTheme::separator_hovered, yaze::gui::EnhancedTheme::slider_grab, yaze::gui::EnhancedTheme::slider_grab_active, yaze::gui::EnhancedTheme::success, yaze::gui::EnhancedTheme::surface, yaze::gui::EnhancedTheme::tab, yaze::gui::EnhancedTheme::tab_active, yaze::gui::EnhancedTheme::tab_hovered, yaze::gui::EnhancedTheme::tab_rounding, yaze::gui::EnhancedTheme::tab_unfocused, yaze::gui::EnhancedTheme::tab_unfocused_active, yaze::gui::EnhancedTheme::table_border_light, yaze::gui::EnhancedTheme::table_border_strong, yaze::gui::EnhancedTheme::table_header_bg, yaze::gui::EnhancedTheme::table_row_bg, yaze::gui::EnhancedTheme::table_row_bg_alt, yaze::gui::EnhancedTheme::text_disabled, yaze::gui::EnhancedTheme::text_link, yaze::gui::EnhancedTheme::text_primary, yaze::gui::EnhancedTheme::text_secondary, yaze::gui::EnhancedTheme::text_selected_bg, themes_, yaze::gui::EnhancedTheme::title_bg, yaze::gui::EnhancedTheme::title_bg_active, yaze::gui::EnhancedTheme::title_bg_collapsed, yaze::gui::EnhancedTheme::warning, yaze::gui::EnhancedTheme::window_bg, and yaze::gui::EnhancedTheme::window_rounding.

Referenced by InitializeBuiltInThemes().

Here is the call graph for this function:

◆ ParseThemeFile()

absl::Status yaze::gui::ThemeManager::ParseThemeFile ( const std::string &  content,
EnhancedTheme theme 
)
private

Definition at line 504 of file theme_manager.cc.

References yaze::gui::EnhancedTheme::accent, yaze::gui::EnhancedTheme::animation_speed, yaze::gui::EnhancedTheme::author, yaze::gui::EnhancedTheme::background, yaze::gui::EnhancedTheme::border, yaze::gui::EnhancedTheme::border_shadow, yaze::gui::EnhancedTheme::button, yaze::gui::EnhancedTheme::button_active, yaze::gui::EnhancedTheme::button_hovered, yaze::gui::EnhancedTheme::check_mark, yaze::gui::EnhancedTheme::child_bg, yaze::gui::EnhancedTheme::description, yaze::gui::EnhancedTheme::docking_empty_bg, yaze::gui::EnhancedTheme::docking_preview, yaze::gui::EnhancedTheme::drag_drop_target, yaze::gui::EnhancedTheme::enable_animations, yaze::gui::EnhancedTheme::enable_glow_effects, yaze::gui::EnhancedTheme::error, yaze::gui::EnhancedTheme::frame_bg, yaze::gui::EnhancedTheme::frame_bg_active, yaze::gui::EnhancedTheme::frame_bg_hovered, yaze::gui::EnhancedTheme::frame_border_size, yaze::gui::EnhancedTheme::frame_rounding, yaze::gui::EnhancedTheme::grab_rounding, yaze::gui::EnhancedTheme::header, yaze::gui::EnhancedTheme::header_active, yaze::gui::EnhancedTheme::header_hovered, yaze::gui::EnhancedTheme::info, yaze::gui::EnhancedTheme::input_text_cursor, yaze::gui::EnhancedTheme::menu_bar_bg, yaze::gui::EnhancedTheme::modal_window_dim_bg, yaze::gui::EnhancedTheme::name, yaze::gui::EnhancedTheme::nav_cursor, yaze::gui::EnhancedTheme::nav_windowing_dim_bg, yaze::gui::EnhancedTheme::nav_windowing_highlight, ParseColorFromString(), yaze::gui::EnhancedTheme::plot_histogram, yaze::gui::EnhancedTheme::plot_histogram_hovered, yaze::gui::EnhancedTheme::plot_lines, yaze::gui::EnhancedTheme::plot_lines_hovered, yaze::gui::EnhancedTheme::popup_bg, yaze::gui::EnhancedTheme::primary, yaze::gui::EnhancedTheme::resize_grip, yaze::gui::EnhancedTheme::resize_grip_active, yaze::gui::EnhancedTheme::resize_grip_hovered, yaze::gui::EnhancedTheme::scrollbar_bg, yaze::gui::EnhancedTheme::scrollbar_grab, yaze::gui::EnhancedTheme::scrollbar_grab_active, yaze::gui::EnhancedTheme::scrollbar_grab_hovered, yaze::gui::EnhancedTheme::scrollbar_rounding, yaze::gui::EnhancedTheme::secondary, yaze::gui::EnhancedTheme::separator, yaze::gui::EnhancedTheme::separator_active, yaze::gui::EnhancedTheme::separator_hovered, yaze::gui::EnhancedTheme::slider_grab, yaze::gui::EnhancedTheme::slider_grab_active, yaze::gui::EnhancedTheme::success, yaze::gui::EnhancedTheme::surface, yaze::gui::EnhancedTheme::tab, yaze::gui::EnhancedTheme::tab_active, yaze::gui::EnhancedTheme::tab_dimmed, yaze::gui::EnhancedTheme::tab_dimmed_selected, yaze::gui::EnhancedTheme::tab_dimmed_selected_overline, yaze::gui::EnhancedTheme::tab_hovered, yaze::gui::EnhancedTheme::tab_rounding, yaze::gui::EnhancedTheme::tab_selected_overline, yaze::gui::EnhancedTheme::table_border_light, yaze::gui::EnhancedTheme::table_border_strong, yaze::gui::EnhancedTheme::table_header_bg, yaze::gui::EnhancedTheme::table_row_bg, yaze::gui::EnhancedTheme::table_row_bg_alt, yaze::gui::EnhancedTheme::text_disabled, yaze::gui::EnhancedTheme::text_link, yaze::gui::EnhancedTheme::text_primary, yaze::gui::EnhancedTheme::text_secondary, yaze::gui::EnhancedTheme::text_selected_bg, yaze::gui::EnhancedTheme::title_bg, yaze::gui::EnhancedTheme::title_bg_active, yaze::gui::EnhancedTheme::title_bg_collapsed, yaze::gui::EnhancedTheme::tree_lines, yaze::gui::EnhancedTheme::warning, yaze::gui::EnhancedTheme::window_bg, yaze::gui::EnhancedTheme::window_border_size, and yaze::gui::EnhancedTheme::window_rounding.

Referenced by LoadThemeFromFile().

Here is the call graph for this function:

◆ ParseColorFromString()

Color yaze::gui::ThemeManager::ParseColorFromString ( const std::string &  color_str) const
private

Definition at line 635 of file theme_manager.cc.

References yaze::gui::RGBA().

Referenced by ParseThemeFile().

Here is the call graph for this function:

◆ SerializeTheme()

std::string yaze::gui::ThemeManager::SerializeTheme ( const EnhancedTheme theme) const
private

Definition at line 652 of file theme_manager.cc.

References yaze::gui::EnhancedTheme::accent, yaze::gui::EnhancedTheme::active_selection, yaze::gui::EnhancedTheme::author, yaze::gui::EnhancedTheme::background, yaze::gui::EnhancedTheme::border, yaze::gui::EnhancedTheme::border_shadow, yaze::gui::EnhancedTheme::button, yaze::gui::EnhancedTheme::button_active, yaze::gui::EnhancedTheme::button_hovered, yaze::gui::EnhancedTheme::check_mark, yaze::gui::EnhancedTheme::child_bg, yaze::gui::EnhancedTheme::code_background, yaze::gui::EnhancedTheme::description, yaze::gui::EnhancedTheme::disabled_overlay, yaze::gui::EnhancedTheme::docking_empty_bg, yaze::gui::EnhancedTheme::docking_preview, yaze::gui::EnhancedTheme::drag_drop_target, yaze::gui::EnhancedTheme::editor_background, yaze::gui::EnhancedTheme::editor_cursor, yaze::gui::EnhancedTheme::editor_grid, yaze::gui::EnhancedTheme::editor_selection, yaze::gui::EnhancedTheme::enable_animations, yaze::gui::EnhancedTheme::enable_glow_effects, yaze::gui::EnhancedTheme::error, yaze::gui::EnhancedTheme::error_light, yaze::gui::EnhancedTheme::focus_border, yaze::gui::EnhancedTheme::frame_bg, yaze::gui::EnhancedTheme::frame_bg_active, yaze::gui::EnhancedTheme::frame_bg_hovered, yaze::gui::EnhancedTheme::frame_rounding, yaze::gui::EnhancedTheme::header, yaze::gui::EnhancedTheme::header_active, yaze::gui::EnhancedTheme::header_hovered, yaze::gui::EnhancedTheme::hover_highlight, yaze::gui::EnhancedTheme::info, yaze::gui::EnhancedTheme::info_light, yaze::gui::EnhancedTheme::input_text_cursor, yaze::gui::EnhancedTheme::link_hover, yaze::gui::EnhancedTheme::menu_bar_bg, yaze::gui::EnhancedTheme::modal_window_dim_bg, yaze::gui::EnhancedTheme::name, yaze::gui::EnhancedTheme::nav_cursor, yaze::gui::EnhancedTheme::nav_windowing_dim_bg, yaze::gui::EnhancedTheme::nav_windowing_highlight, yaze::gui::EnhancedTheme::plot_histogram, yaze::gui::EnhancedTheme::plot_histogram_hovered, yaze::gui::EnhancedTheme::plot_lines, yaze::gui::EnhancedTheme::plot_lines_hovered, yaze::gui::EnhancedTheme::popup_bg, yaze::gui::EnhancedTheme::primary, yaze::gui::EnhancedTheme::resize_grip, yaze::gui::EnhancedTheme::resize_grip_active, yaze::gui::EnhancedTheme::resize_grip_hovered, yaze::gui::EnhancedTheme::scrollbar_bg, yaze::gui::EnhancedTheme::scrollbar_grab, yaze::gui::EnhancedTheme::scrollbar_grab_active, yaze::gui::EnhancedTheme::scrollbar_grab_hovered, yaze::gui::EnhancedTheme::scrollbar_rounding, yaze::gui::EnhancedTheme::secondary, yaze::gui::EnhancedTheme::separator, yaze::gui::EnhancedTheme::separator_active, yaze::gui::EnhancedTheme::separator_hovered, yaze::gui::EnhancedTheme::slider_grab, yaze::gui::EnhancedTheme::slider_grab_active, yaze::gui::EnhancedTheme::success, yaze::gui::EnhancedTheme::success_light, yaze::gui::EnhancedTheme::surface, yaze::gui::EnhancedTheme::tab, yaze::gui::EnhancedTheme::tab_active, yaze::gui::EnhancedTheme::tab_dimmed, yaze::gui::EnhancedTheme::tab_dimmed_selected, yaze::gui::EnhancedTheme::tab_dimmed_selected_overline, yaze::gui::EnhancedTheme::tab_hovered, yaze::gui::EnhancedTheme::tab_rounding, yaze::gui::EnhancedTheme::tab_selected_overline, yaze::gui::EnhancedTheme::table_border_light, yaze::gui::EnhancedTheme::table_border_strong, yaze::gui::EnhancedTheme::table_header_bg, yaze::gui::EnhancedTheme::table_row_bg, yaze::gui::EnhancedTheme::table_row_bg_alt, yaze::gui::EnhancedTheme::text_disabled, yaze::gui::EnhancedTheme::text_highlight, yaze::gui::EnhancedTheme::text_link, yaze::gui::EnhancedTheme::text_primary, yaze::gui::EnhancedTheme::text_secondary, yaze::gui::EnhancedTheme::text_selected_bg, yaze::gui::EnhancedTheme::title_bg, yaze::gui::EnhancedTheme::title_bg_active, yaze::gui::EnhancedTheme::title_bg_collapsed, yaze::gui::EnhancedTheme::tree_lines, yaze::gui::EnhancedTheme::warning, yaze::gui::EnhancedTheme::warning_light, yaze::gui::EnhancedTheme::window_bg, and yaze::gui::EnhancedTheme::window_rounding.

Referenced by SaveThemeToFile().

◆ GetThemeSearchPaths()

std::vector< std::string > yaze::gui::ThemeManager::GetThemeSearchPaths ( ) const
private

◆ GetThemesDirectory()

std::string yaze::gui::ThemeManager::GetThemesDirectory ( ) const
private

Definition at line 1954 of file theme_manager.cc.

References GetThemeSearchPaths().

Here is the call graph for this function:

◆ GetCurrentThemeFilePath()

std::string yaze::gui::ThemeManager::GetCurrentThemeFilePath ( ) const
private

Definition at line 2058 of file theme_manager.cc.

References current_theme_name_, and GetThemeSearchPaths().

Referenced by ShowSimpleThemeEditor().

Here is the call graph for this function:

Member Data Documentation

◆ themes_

std::map<std::string, EnhancedTheme> yaze::gui::ThemeManager::themes_
private

◆ current_theme_

◆ current_theme_name_

std::string yaze::gui::ThemeManager::current_theme_name_ = "Classic YAZE"
private

The documentation for this class was generated from the following files: