Add theme management and background rendering features
- Introduced a comprehensive theme management system, allowing users to load, save, and switch between multiple themes. - Added support for various built-in themes, enhancing the visual customization of the application. - Implemented a background renderer for improved visual effects in docking windows, including grid backgrounds and subtle animations. - Enhanced the EditorManager UI with themed elements, providing a more cohesive and engaging user experience. - Updated CMake configuration to include new theme and background renderer source files, ensuring proper integration into the build system.
This commit is contained in:
@@ -6,7 +6,9 @@
|
||||
#include "app/core/platform/sdl_deleter.h"
|
||||
#include "app/gfx/arena.h"
|
||||
#include "app/gui/style.h"
|
||||
#include "app/gui/theme_manager.h"
|
||||
#include "app/test/test_manager.h"
|
||||
#include "util/log.h"
|
||||
#include "imgui/backends/imgui_impl_sdl2.h"
|
||||
#include "imgui/backends/imgui_impl_sdlrenderer2.h"
|
||||
#include "imgui/imgui.h"
|
||||
@@ -49,7 +51,16 @@ absl::Status CreateWindow(Window& window, int flags) {
|
||||
|
||||
RETURN_IF_ERROR(LoadPackageFonts());
|
||||
|
||||
// Apply original YAZE colors as fallback, then try to load theme system
|
||||
gui::ColorsYaze();
|
||||
|
||||
// Try to initialize theme system (will fallback to ColorsYaze if files fail)
|
||||
auto& theme_manager = gui::ThemeManager::Get();
|
||||
auto status = theme_manager.LoadTheme("YAZE Classic");
|
||||
if (!status.ok()) {
|
||||
// Theme system failed, stick with original ColorsYaze()
|
||||
util::logf("Theme system failed, using original ColorsYaze(): %s", status.message().data());
|
||||
}
|
||||
|
||||
const int audio_frequency = 48000;
|
||||
SDL_AudioSpec want, have;
|
||||
|
||||
Reference in New Issue
Block a user