1#ifndef YAZE_APP_EDITOR_UI_BACKGROUND_RENDERER_H
2#define YAZE_APP_EDITOR_UI_BACKGROUND_RENDERER_H
4#include "imgui/imgui.h"
39 const ImVec2& window_size,
const Color& theme_color);
41 const ImVec2& window_size,
const Color& grid_color);
43 float radius,
const Color& inner_color,
const Color& outer_color);
67 float CalculateRadialFade(
const ImVec2& pos,
const ImVec2& center,
float max_distance)
const;
69 void DrawGridLine(ImDrawList* draw_list,
const ImVec2& start,
const ImVec2& end,
70 ImU32 color,
float thickness)
const;
71 void DrawGridDot(ImDrawList* draw_list,
const ImVec2& pos, ImU32 color,
float size)
const;
81 ImGuiDockNodeFlags flags = 0);
Renders themed background effects for docking windows.
void SetGridSettings(const GridSettings &settings)
void RenderRadialGradient(ImDrawList *draw_list, const ImVec2 ¢er, float radius, const Color &inner_color, const Color &outer_color)
void RenderGridBackground(ImDrawList *draw_list, const ImVec2 &window_pos, const ImVec2 &window_size, const Color &grid_color)
BackgroundRenderer()=default
void DrawGridLine(ImDrawList *draw_list, const ImVec2 &start, const ImVec2 &end, ImU32 color, float thickness) const
static BackgroundRenderer & Get()
float CalculateRadialFade(const ImVec2 &pos, const ImVec2 ¢er, float max_distance) const
void UpdateAnimation(float delta_time)
const GridSettings & GetGridSettings() const
void SetAnimationEnabled(bool enabled)
void UpdateForTheme(const Color &primary_color, const Color &background_color)
void DrawGridDot(ImDrawList *draw_list, const ImVec2 &pos, ImU32 color, float size) const
ImU32 BlendColorWithFade(const Color &base_color, float fade_factor) const
GridSettings grid_settings_
void RenderDockingBackground(ImDrawList *draw_list, const ImVec2 &window_pos, const ImVec2 &window_size, const Color &theme_color)
Enhanced docking space with themed background effects.
static bool grid_enabled_
static void BeginEnhancedDockSpace(ImGuiID dockspace_id, const ImVec2 &size=ImVec2(0, 0), ImGuiDockNodeFlags flags=0)
static ImVec2 last_dockspace_size_
static void EndEnhancedDockSpace()
static bool background_enabled_
static bool effects_enabled_
static void SetEffectsEnabled(bool enabled)
static ImVec2 last_dockspace_pos_
static void SetGridEnabled(bool enabled)
static void SetBackgroundEnabled(bool enabled)
Main namespace for the application.
float breathing_intensity