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

Handles all UI drawing operations and state management. More...

#include <ui_coordinator.h>

Public Member Functions

 UICoordinator (EditorManager *editor_manager, RomFileManager &rom_manager, ProjectManager &project_manager, EditorRegistry &editor_registry, WorkspaceWindowManager &card_registry, SessionCoordinator &session_coordinator, WindowDelegate &window_delegate, ToastManager &toast_manager, PopupManager &popup_manager, ShortcutManager &shortcut_manager)
 
 ~UICoordinator ()=default
 
 UICoordinator (const UICoordinator &)=delete
 
UICoordinator & operator= (const UICoordinator &)=delete
 
void DrawBackground ()
 
void DrawAllUI ()
 
void DrawMenuBarExtras ()
 
bool DrawMenuBarIconButton (const char *icon, const char *tooltip, bool is_active=false)
 
void DrawNotificationBell (bool show_dirty, bool has_dirty_rom, bool show_session, bool has_multiple_sessions)
 
void DrawSessionButton ()
 
void DrawCommandPalette ()
 
void DrawPanelFinder ()
 
void DrawShortcutsBrowser ()
 
void DrawGlobalSearch ()
 
void DrawWorkspacePresetDialogs ()
 
void DrawSessionSwitcher ()
 
void DrawSessionManager ()
 
void DrawSessionRenameDialog ()
 
void DrawLayoutPresets ()
 
void DrawWelcomeScreen ()
 
void DrawProjectHelp ()
 
void OpenNewProjectDialog (const std::string &initial_template="Vanilla ROM Hack")
 
bool IsNewProjectDialogOpen () const
 
void DrawWindowManagementUI ()
 
void DrawAllPopups ()
 
void ShowPopup (const std::string &popup_name)
 
void HidePopup (const std::string &popup_name)
 
void ShowEditorSelection ()
 
void ShowDisplaySettings ()
 
void ShowSaveWorkspacePresetDialog ()
 
void ShowLoadWorkspacePresetDialog ()
 
void ShowSessionSwitcher ()
 
void TogglePanelSidebar ()
 
void ShowGlobalSearch ()
 
void ShowCommandPalette (const char *initial_query=nullptr)
 
void ShowPanelFinder ()
 
void ShowWindowBrowser ()
 
void ShowShortcutsBrowser ()
 Searchable shortcut map grouped by menu IA (File / View / Drawers / …).
 
void InitializeCommandPalette (size_t session_id)
 Initialize command palette with all discoverable commands.
 
void RefreshWorkflowActions ()
 
void RefreshCommandPalette (size_t session_id)
 Refresh command palette commands (call after session switch)
 
CommandPalette * command_palette ()
 
void ExecutePaletteCommand (const std::string &name, std::function< void()> callback)
 
bool IsMenuBarVisible () const
 
void SetMenuBarVisible (bool visible)
 
void ToggleMenuBar ()
 
void DrawMenuBarRestoreButton ()
 
void ShowAllWindows ()
 
void HideAllWindows ()
 
bool IsEditorSelectionVisible () const
 
bool IsDisplaySettingsVisible () const
 
bool IsSessionSwitcherVisible () const
 
bool IsWelcomeScreenVisible () const
 
bool IsWelcomeScreenManuallyClosed () const
 
bool IsGlobalSearchVisible () const
 
bool IsPerformanceDashboardVisible () const
 
bool IsWindowBrowserVisible () const
 
bool IsCommandPaletteVisible () const
 
bool IsPanelSidebarVisible () const
 
bool IsImGuiDemoVisible () const
 
bool IsImGuiMetricsVisible () const
 
bool IsEmulatorVisible () const
 
bool IsAsmEditorVisible () const
 
bool IsResourceLabelManagerVisible () const
 
bool IsAIAgentVisible () const
 
bool IsChatHistoryVisible () const
 
bool IsProposalDrawerVisible () const
 
void SetEditorSelectionVisible (bool visible)
 
void SetDisplaySettingsVisible (bool visible)
 
void SetSessionSwitcherVisible (bool visible)
 
void SetWelcomeScreenVisible (bool visible)
 
void SetWelcomeScreenManuallyClosed (bool closed)
 
void SetWelcomeScreenBehavior (StartupVisibility mode)
 
void SetGlobalSearchVisible (bool visible)
 
void SetPerformanceDashboardVisible (bool visible)
 
void SetWindowBrowserVisible (bool visible)
 
void SetCommandPaletteVisible (bool visible)
 
void SetPanelSidebarVisible (bool visible)
 
void SetImGuiDemoVisible (bool visible)
 
void SetImGuiMetricsVisible (bool visible)
 
void SetEmulatorVisible (bool visible)
 
void SetAsmEditorVisible (bool visible)
 
void SetResourceLabelManagerVisible (bool visible)
 
void SetDashboardBehavior (StartupVisibility mode)
 
void SetAIAgentVisible (bool visible)
 
StartupSurface GetCurrentStartupSurface () const
 
void SetStartupSurface (StartupSurface surface)
 
bool ShouldShowWelcome () const
 
bool ShouldShowDashboard () const
 
bool ShouldShowActivityBar () const
 
void SetChatHistoryVisible (bool visible)
 
void SetProposalDrawerVisible (bool visible)
 

Private Member Functions

void SaveCommandPaletteHistory ()
 
void DrawMaterialButton (const std::string &text, const std::string &icon, const ImVec4 &color, std::function< void()> callback, bool enabled=true)
 
bool IsCompactLayout () const
 
void CenterWindow (const std::string &window_name)
 
void PositionWindow (const std::string &window_name, float x, float y)
 
void SetWindowSize (const std::string &window_name, float width, float height)
 

Static Private Member Functions

static float GetMenuBarIconButtonWidth ()
 

Private Attributes

EditorManager * editor_manager_
 
RomFileManager & rom_manager_
 
ProjectManager & project_manager_
 
EditorRegistry & editor_registry_
 
WorkspaceWindowManager & window_manager_
 
SessionCoordinator & session_coordinator_
 
WindowDelegate & window_delegate_
 
ToastManager & toast_manager_
 
PopupManager & popup_manager_
 
ShortcutManager & shortcut_manager_
 
bool show_editor_selection_ = false
 
bool show_display_settings_ = false
 
bool show_welcome_screen_ = true
 
bool welcome_screen_manually_closed_ = false
 
bool show_global_search_ = false
 
bool show_performance_dashboard_ = false
 
bool show_imgui_demo_ = false
 
bool show_imgui_metrics_ = false
 
bool show_test_dashboard_ = false
 
bool show_panel_browser_ = false
 
bool show_panel_finder_ = false
 
bool show_command_palette_ = false
 
bool show_shortcuts_browser_ = false
 
bool show_resource_label_manager_ = false
 
bool show_ai_agent_ = false
 
bool show_chat_history_ = false
 
bool show_proposal_drawer_ = false
 
bool show_save_workspace_preset_ = false
 
bool show_load_workspace_preset_ = false
 
bool show_menu_bar_ = true
 
StartupVisibility welcome_behavior_override_ = StartupVisibility::kAuto
 
StartupVisibility dashboard_behavior_override_ = StartupVisibility::kAuto
 
StartupSurface current_startup_surface_ = StartupSurface::kWelcome
 
CommandPalette command_palette_
 
bool command_palette_initialized_ = false
 
bool command_history_loaded_ = false
 
char command_palette_query_ [256] = {}
 
int command_palette_selected_idx_ = 0
 
bool command_palette_scroll_to_selected_ = false
 
bool command_palette_refocus_input_ = false
 
std::string command_palette_cached_query_
 
uint64_t command_palette_cached_generation_ = ~uint64_t{0}
 
std::vector< CommandMatch > command_palette_cached_matches_
 
char panel_finder_query_ [256] = {}
 
int panel_finder_selected_idx_ = 0
 
char shortcuts_browser_query_ [256] = {}
 
char global_search_query_ [256] = {}
 
std::unique_ptr< WelcomeScreen > welcome_screen_
 
NewProjectDialog new_project_dialog_
 

Detailed Description

Handles all UI drawing operations and state management.

Extracted from EditorManager to provide focused UI coordination:

  • Drawing operations (menus, dialogs, screens)
  • UI state management (visibility, focus, layout)
  • Popup and dialog coordination
  • Welcome screen and session UI
  • Material Design theming and icons

This class follows the Single Responsibility Principle by focusing solely on UI presentation and user interaction, delegating business logic to specialized managers.

Definition at line 62 of file ui_coordinator.h.

Constructor & Destructor Documentation

◆ UICoordinator() [1/2]

◆ ~UICoordinator()

yaze::editor::UICoordinator::~UICoordinator ( )
default

◆ UICoordinator() [2/2]

yaze::editor::UICoordinator::UICoordinator ( const UICoordinator & )
delete

Member Function Documentation

◆ operator=()

UICoordinator & yaze::editor::UICoordinator::operator= ( const UICoordinator & )
delete

◆ DrawBackground()

void yaze::editor::UICoordinator::DrawBackground ( )

Definition at line 215 of file ui_coordinator.cc.

References yaze::gui::BackgroundRenderer::Get(), and yaze::gui::ThemeManager::Get().

Here is the call graph for this function:

◆ DrawAllUI()

◆ DrawMenuBarExtras()

◆ DrawMenuBarIconButton()

bool yaze::editor::UICoordinator::DrawMenuBarIconButton ( const char * icon,
const char * tooltip,
bool is_active = false )

◆ DrawNotificationBell()

◆ DrawSessionButton()

◆ DrawCommandPalette()

void yaze::editor::UICoordinator::DrawCommandPalette ( )

◆ DrawPanelFinder()

◆ DrawShortcutsBrowser()

◆ DrawGlobalSearch()

◆ DrawWorkspacePresetDialogs()

◆ DrawSessionSwitcher()

void yaze::editor::UICoordinator::DrawSessionSwitcher ( )

◆ DrawSessionManager()

void yaze::editor::UICoordinator::DrawSessionManager ( )

◆ DrawSessionRenameDialog()

void yaze::editor::UICoordinator::DrawSessionRenameDialog ( )

◆ DrawLayoutPresets()

void yaze::editor::UICoordinator::DrawLayoutPresets ( )
Todo
[EditorManagerRefactor] Implement full layout preset UI with

Definition at line 753 of file ui_coordinator.cc.

Referenced by DrawAllUI().

◆ DrawWelcomeScreen()

◆ DrawProjectHelp()

void yaze::editor::UICoordinator::DrawProjectHelp ( )
Todo
[EditorManagerRefactor] Implement project help dialog

Definition at line 837 of file ui_coordinator.cc.

Referenced by DrawAllUI().

◆ OpenNewProjectDialog()

void yaze::editor::UICoordinator::OpenNewProjectDialog ( const std::string & initial_template = "Vanilla ROM Hack")
inline

Definition at line 105 of file ui_coordinator.h.

References new_project_dialog_, and yaze::editor::NewProjectDialog::Open().

Here is the call graph for this function:

◆ IsNewProjectDialogOpen()

bool yaze::editor::UICoordinator::IsNewProjectDialogOpen ( ) const
inline

Definition at line 109 of file ui_coordinator.h.

References yaze::editor::NewProjectDialog::IsOpen(), and new_project_dialog_.

Here is the call graph for this function:

◆ DrawWindowManagementUI()

void yaze::editor::UICoordinator::DrawWindowManagementUI ( )
Todo
[EditorManagerRefactor] Implement window management dialog

Definition at line 886 of file ui_coordinator.cc.

Referenced by DrawAllUI().

◆ DrawAllPopups()

void yaze::editor::UICoordinator::DrawAllPopups ( )

Definition at line 891 of file ui_coordinator.cc.

References yaze::editor::PopupManager::DrawPopups(), and popup_manager_.

Referenced by DrawAllUI().

Here is the call graph for this function:

◆ ShowPopup()

void yaze::editor::UICoordinator::ShowPopup ( const std::string & popup_name)

Definition at line 896 of file ui_coordinator.cc.

References popup_manager_, and yaze::editor::PopupManager::Show().

Here is the call graph for this function:

◆ HidePopup()

void yaze::editor::UICoordinator::HidePopup ( const std::string & popup_name)

Definition at line 900 of file ui_coordinator.cc.

References yaze::editor::PopupManager::Hide(), and popup_manager_.

Here is the call graph for this function:

◆ ShowEditorSelection()

void yaze::editor::UICoordinator::ShowEditorSelection ( )
inline

Definition at line 120 of file ui_coordinator.h.

References show_editor_selection_.

◆ ShowDisplaySettings()

void yaze::editor::UICoordinator::ShowDisplaySettings ( )

Definition at line 904 of file ui_coordinator.cc.

References yaze::editor::PopupID::kDisplaySettings, popup_manager_, and yaze::editor::PopupManager::Show().

Here is the call graph for this function:

◆ ShowSaveWorkspacePresetDialog()

void yaze::editor::UICoordinator::ShowSaveWorkspacePresetDialog ( )
inline

Definition at line 122 of file ui_coordinator.h.

References show_save_workspace_preset_.

◆ ShowLoadWorkspacePresetDialog()

void yaze::editor::UICoordinator::ShowLoadWorkspacePresetDialog ( )
inline

Definition at line 123 of file ui_coordinator.h.

References show_load_workspace_preset_.

◆ ShowSessionSwitcher()

void yaze::editor::UICoordinator::ShowSessionSwitcher ( )

Definition at line 651 of file ui_coordinator.cc.

References session_coordinator_, and yaze::editor::SessionCoordinator::ShowSessionSwitcher().

Here is the call graph for this function:

◆ TogglePanelSidebar()

void yaze::editor::UICoordinator::TogglePanelSidebar ( )

Definition at line 914 of file ui_coordinator.cc.

References yaze::editor::WorkspaceWindowManager::ToggleSidebarVisibility(), and window_manager_.

Here is the call graph for this function:

◆ ShowGlobalSearch()

void yaze::editor::UICoordinator::ShowGlobalSearch ( )
inline

Definition at line 128 of file ui_coordinator.h.

References show_global_search_.

◆ ShowCommandPalette()

void yaze::editor::UICoordinator::ShowCommandPalette ( const char * initial_query = nullptr)

◆ ShowPanelFinder()

void yaze::editor::UICoordinator::ShowPanelFinder ( )

Opens the command palette prefilled with window: (replaces the old standalone Window Finder modal).

Definition at line 682 of file ui_coordinator.cc.

References ShowCommandPalette().

Here is the call graph for this function:

◆ ShowWindowBrowser()

void yaze::editor::UICoordinator::ShowWindowBrowser ( )
inline

Definition at line 133 of file ui_coordinator.h.

References show_panel_browser_.

◆ ShowShortcutsBrowser()

void yaze::editor::UICoordinator::ShowShortcutsBrowser ( )
inline

Searchable shortcut map grouped by menu IA (File / View / Drawers / …).

Definition at line 135 of file ui_coordinator.h.

References show_shortcuts_browser_.

◆ InitializeCommandPalette()

void yaze::editor::UICoordinator::InitializeCommandPalette ( size_t session_id)

Initialize command palette with all discoverable commands.

Parameters
session_idCurrent session ID for panel commands

Definition at line 1553 of file ui_coordinator.cc.

References yaze::editor::EditorManager::ApplyLayoutPreset(), yaze::editor::EditorManager::ApplyLayoutProfile(), yaze::editor::EditorManager::CaptureTemporaryLayoutSnapshot(), yaze::editor::CommandPalette::Clear(), yaze::editor::WelcomeCommandsProvider::Callbacks::clear_recents, yaze::editor::EditorManager::ClearTemporaryLayoutSnapshot(), command_history_loaded_, command_palette_, command_palette_initialized_, yaze::editor::WelcomeCommandsProvider::Callbacks::create_from_template, current_startup_surface_, yaze::editor::WelcomeCommandsProvider::Callbacks::dismiss_welcome, editor_manager_, yaze::util::PlatformPaths::GetConfigDirectory(), yaze::editor::EditorRegistry::GetEditorTypeFromCategory(), yaze::editor::kDashboard, yaze::editor::kError, yaze::editor::kInfo, yaze::editor::kSettings, yaze::editor::kWarning, yaze::editor::kWelcome, yaze::editor::CommandPalette::LoadHistory(), yaze::editor::WelcomeCommandsProvider::Callbacks::model, new_project_dialog_, yaze::editor::NewProjectDialog::Open(), yaze::editor::EditorManager::OpenRomOrProject(), RefreshWorkflowActions(), yaze::editor::CommandPalette::RegisterProvider(), yaze::editor::WelcomeCommandsProvider::Callbacks::remove, yaze::editor::EditorManager::RestoreTemporaryLayoutSnapshot(), yaze::editor::EditorManager::right_drawer_manager(), SetStartupSurface(), shortcut_manager_, yaze::editor::ToastManager::Show(), yaze::editor::WelcomeCommandsProvider::Callbacks::show_welcome, yaze::editor::EditorManager::SwitchToEditor(), yaze::editor::WelcomeCommandsProvider::Callbacks::template_names, toast_manager_, yaze::editor::WelcomeCommandsProvider::Callbacks::toggle_pin, yaze::editor::WelcomeCommandsProvider::Callbacks::undo_remove, yaze::editor::EditorManager::user_settings(), welcome_screen_, welcome_screen_manually_closed_, and window_manager_.

Referenced by DrawCommandPalette(), RefreshCommandPalette(), and ShowCommandPalette().

◆ RefreshWorkflowActions()

◆ RefreshCommandPalette()

void yaze::editor::UICoordinator::RefreshCommandPalette ( size_t session_id)

Refresh command palette commands (call after session switch)

Parameters
session_idNew session ID

Definition at line 1807 of file ui_coordinator.cc.

References InitializeCommandPalette().

Referenced by ShowCommandPalette().

Here is the call graph for this function:

◆ command_palette()

CommandPalette * yaze::editor::UICoordinator::command_palette ( )
inline

Definition at line 149 of file ui_coordinator.h.

References command_palette_.

◆ ExecutePaletteCommand()

void yaze::editor::UICoordinator::ExecutePaletteCommand ( const std::string & name,
std::function< void()> callback )

Close the palette, run callback, count usage for name and persist the history file. Every palette execution path goes through here.

Definition at line 980 of file ui_coordinator.cc.

References command_palette_, yaze::editor::CommandPalette::RecordUsage(), SaveCommandPaletteHistory(), and show_command_palette_.

Referenced by DrawCommandPalette().

Here is the call graph for this function:

◆ IsMenuBarVisible()

bool yaze::editor::UICoordinator::IsMenuBarVisible ( ) const
inline

Definition at line 157 of file ui_coordinator.h.

References show_menu_bar_.

Referenced by yaze::Controller::OnLoad().

◆ SetMenuBarVisible()

void yaze::editor::UICoordinator::SetMenuBarVisible ( bool visible)
inline

Definition at line 158 of file ui_coordinator.h.

References show_menu_bar_.

◆ ToggleMenuBar()

void yaze::editor::UICoordinator::ToggleMenuBar ( )
inline

Definition at line 159 of file ui_coordinator.h.

References show_menu_bar_.

◆ DrawMenuBarRestoreButton()

void yaze::editor::UICoordinator::DrawMenuBarRestoreButton ( )

◆ ShowAllWindows()

void yaze::editor::UICoordinator::ShowAllWindows ( )

Definition at line 926 of file ui_coordinator.cc.

References yaze::editor::WindowDelegate::ShowAllWindows(), and window_delegate_.

Here is the call graph for this function:

◆ HideAllWindows()

void yaze::editor::UICoordinator::HideAllWindows ( )

Definition at line 930 of file ui_coordinator.cc.

References yaze::editor::WindowDelegate::HideAllWindows(), and window_delegate_.

Here is the call graph for this function:

◆ IsEditorSelectionVisible()

bool yaze::editor::UICoordinator::IsEditorSelectionVisible ( ) const
inline

Definition at line 169 of file ui_coordinator.h.

References show_editor_selection_.

◆ IsDisplaySettingsVisible()

bool yaze::editor::UICoordinator::IsDisplaySettingsVisible ( ) const
inline

Definition at line 170 of file ui_coordinator.h.

References show_display_settings_.

◆ IsSessionSwitcherVisible()

bool yaze::editor::UICoordinator::IsSessionSwitcherVisible ( ) const

Definition at line 655 of file ui_coordinator.cc.

References yaze::editor::SessionCoordinator::IsSessionSwitcherVisible(), and session_coordinator_.

Here is the call graph for this function:

◆ IsWelcomeScreenVisible()

bool yaze::editor::UICoordinator::IsWelcomeScreenVisible ( ) const
inline

Definition at line 173 of file ui_coordinator.h.

References show_welcome_screen_.

◆ IsWelcomeScreenManuallyClosed()

bool yaze::editor::UICoordinator::IsWelcomeScreenManuallyClosed ( ) const
inline

Definition at line 174 of file ui_coordinator.h.

References welcome_screen_manually_closed_.

◆ IsGlobalSearchVisible()

bool yaze::editor::UICoordinator::IsGlobalSearchVisible ( ) const
inline

Definition at line 177 of file ui_coordinator.h.

References show_global_search_.

◆ IsPerformanceDashboardVisible()

bool yaze::editor::UICoordinator::IsPerformanceDashboardVisible ( ) const
inline

Definition at line 178 of file ui_coordinator.h.

References show_performance_dashboard_.

◆ IsWindowBrowserVisible()

bool yaze::editor::UICoordinator::IsWindowBrowserVisible ( ) const
inline

Definition at line 181 of file ui_coordinator.h.

References show_panel_browser_.

◆ IsCommandPaletteVisible()

bool yaze::editor::UICoordinator::IsCommandPaletteVisible ( ) const
inline

Definition at line 182 of file ui_coordinator.h.

References show_command_palette_.

◆ IsPanelSidebarVisible()

bool yaze::editor::UICoordinator::IsPanelSidebarVisible ( ) const

Definition at line 918 of file ui_coordinator.cc.

References yaze::editor::WorkspaceWindowManager::IsSidebarVisible(), and window_manager_.

Referenced by yaze::editor::LayoutCoordinator::GetWorkspaceChromeBudget().

Here is the call graph for this function:

◆ IsImGuiDemoVisible()

bool yaze::editor::UICoordinator::IsImGuiDemoVisible ( ) const
inline

Definition at line 185 of file ui_coordinator.h.

References show_imgui_demo_.

◆ IsImGuiMetricsVisible()

bool yaze::editor::UICoordinator::IsImGuiMetricsVisible ( ) const
inline

Definition at line 186 of file ui_coordinator.h.

References show_imgui_metrics_.

◆ IsEmulatorVisible()

◆ IsAsmEditorVisible()

bool yaze::editor::UICoordinator::IsAsmEditorVisible ( ) const

◆ IsResourceLabelManagerVisible()

bool yaze::editor::UICoordinator::IsResourceLabelManagerVisible ( ) const
inline

Definition at line 192 of file ui_coordinator.h.

References show_resource_label_manager_.

◆ IsAIAgentVisible()

bool yaze::editor::UICoordinator::IsAIAgentVisible ( ) const
inline

Definition at line 195 of file ui_coordinator.h.

References show_ai_agent_.

◆ IsChatHistoryVisible()

bool yaze::editor::UICoordinator::IsChatHistoryVisible ( ) const
inline

Definition at line 196 of file ui_coordinator.h.

References show_chat_history_.

◆ IsProposalDrawerVisible()

bool yaze::editor::UICoordinator::IsProposalDrawerVisible ( ) const
inline

Definition at line 197 of file ui_coordinator.h.

References show_proposal_drawer_.

◆ SetEditorSelectionVisible()

void yaze::editor::UICoordinator::SetEditorSelectionVisible ( bool visible)
inline

Definition at line 204 of file ui_coordinator.h.

References ShouldShowDashboard(), and show_editor_selection_.

Referenced by yaze::editor::EditorActivator::SwitchToEditor().

Here is the call graph for this function:

◆ SetDisplaySettingsVisible()

void yaze::editor::UICoordinator::SetDisplaySettingsVisible ( bool visible)
inline

Definition at line 210 of file ui_coordinator.h.

References show_display_settings_.

◆ SetSessionSwitcherVisible()

void yaze::editor::UICoordinator::SetSessionSwitcherVisible ( bool visible)

◆ SetWelcomeScreenVisible()

void yaze::editor::UICoordinator::SetWelcomeScreenVisible ( bool visible)
inline

Definition at line 215 of file ui_coordinator.h.

References show_welcome_screen_.

Referenced by UICoordinator().

◆ SetWelcomeScreenManuallyClosed()

void yaze::editor::UICoordinator::SetWelcomeScreenManuallyClosed ( bool closed)
inline

Definition at line 216 of file ui_coordinator.h.

References welcome_screen_manually_closed_.

Referenced by UICoordinator().

◆ SetWelcomeScreenBehavior()

void yaze::editor::UICoordinator::SetWelcomeScreenBehavior ( StartupVisibility mode)

◆ SetGlobalSearchVisible()

void yaze::editor::UICoordinator::SetGlobalSearchVisible ( bool visible)
inline

Definition at line 220 of file ui_coordinator.h.

References show_global_search_.

Referenced by DrawGlobalSearch().

◆ SetPerformanceDashboardVisible()

void yaze::editor::UICoordinator::SetPerformanceDashboardVisible ( bool visible)
inline

Definition at line 221 of file ui_coordinator.h.

References show_performance_dashboard_.

◆ SetWindowBrowserVisible()

void yaze::editor::UICoordinator::SetWindowBrowserVisible ( bool visible)
inline

Definition at line 224 of file ui_coordinator.h.

References show_panel_browser_.

◆ SetCommandPaletteVisible()

void yaze::editor::UICoordinator::SetCommandPaletteVisible ( bool visible)

Definition at line 687 of file ui_coordinator.cc.

References show_command_palette_, and ShowCommandPalette().

Here is the call graph for this function:

◆ SetPanelSidebarVisible()

void yaze::editor::UICoordinator::SetPanelSidebarVisible ( bool visible)

Definition at line 922 of file ui_coordinator.cc.

References yaze::editor::WorkspaceWindowManager::SetSidebarVisible(), and window_manager_.

Here is the call graph for this function:

◆ SetImGuiDemoVisible()

void yaze::editor::UICoordinator::SetImGuiDemoVisible ( bool visible)
inline

Definition at line 228 of file ui_coordinator.h.

References show_imgui_demo_.

◆ SetImGuiMetricsVisible()

void yaze::editor::UICoordinator::SetImGuiMetricsVisible ( bool visible)
inline

Definition at line 229 of file ui_coordinator.h.

References show_imgui_metrics_.

◆ SetEmulatorVisible()

◆ SetAsmEditorVisible()

◆ SetResourceLabelManagerVisible()

void yaze::editor::UICoordinator::SetResourceLabelManagerVisible ( bool visible)
inline

Definition at line 233 of file ui_coordinator.h.

References show_resource_label_manager_.

◆ SetDashboardBehavior()

void yaze::editor::UICoordinator::SetDashboardBehavior ( StartupVisibility mode)

◆ SetAIAgentVisible()

void yaze::editor::UICoordinator::SetAIAgentVisible ( bool visible)
inline

Definition at line 237 of file ui_coordinator.h.

References show_ai_agent_.

◆ GetCurrentStartupSurface()

StartupSurface yaze::editor::UICoordinator::GetCurrentStartupSurface ( ) const
inline

Definition at line 240 of file ui_coordinator.h.

References current_startup_surface_.

◆ SetStartupSurface()

◆ ShouldShowWelcome()

bool yaze::editor::UICoordinator::ShouldShowWelcome ( ) const

◆ ShouldShowDashboard()

bool yaze::editor::UICoordinator::ShouldShowDashboard ( ) const

Definition at line 2055 of file ui_coordinator.cc.

References dashboard_behavior_override_, editor_manager_, yaze::editor::EditorManager::HasOpenEditor(), yaze::kHide, and yaze::kShow.

Referenced by SetEditorSelectionVisible(), and SetStartupSurface().

Here is the call graph for this function:

◆ ShouldShowActivityBar()

bool yaze::editor::UICoordinator::ShouldShowActivityBar ( ) const

◆ SetChatHistoryVisible()

void yaze::editor::UICoordinator::SetChatHistoryVisible ( bool visible)
inline

Definition at line 247 of file ui_coordinator.h.

References show_chat_history_.

◆ SetProposalDrawerVisible()

void yaze::editor::UICoordinator::SetProposalDrawerVisible ( bool visible)
inline

Definition at line 248 of file ui_coordinator.h.

References show_proposal_drawer_.

◆ SaveCommandPaletteHistory()

void yaze::editor::UICoordinator::SaveCommandPaletteHistory ( )
private

Definition at line 972 of file ui_coordinator.cc.

References command_palette_, yaze::util::PlatformPaths::GetConfigDirectory(), and yaze::editor::CommandPalette::SaveHistory().

Referenced by ExecutePaletteCommand().

Here is the call graph for this function:

◆ GetMenuBarIconButtonWidth()

float yaze::editor::UICoordinator::GetMenuBarIconButtonWidth ( )
staticprivate

Definition at line 330 of file ui_coordinator.cc.

References ICON_MD_SETTINGS.

◆ DrawMaterialButton()

void yaze::editor::UICoordinator::DrawMaterialButton ( const std::string & text,
const std::string & icon,
const ImVec4 & color,
std::function< void()> callback,
bool enabled = true )
private

Definition at line 935 of file ui_coordinator.cc.

References yaze::gui::GetOnSurfaceVariantVec4(), and yaze::gui::GetSurfaceContainerHighestVec4().

Here is the call graph for this function:

◆ IsCompactLayout()

bool yaze::editor::UICoordinator::IsCompactLayout ( ) const
private

Definition at line 287 of file ui_coordinator.cc.

Referenced by DrawPanelFinder(), DrawShortcutsBrowser(), and ShouldShowActivityBar().

◆ CenterWindow()

void yaze::editor::UICoordinator::CenterWindow ( const std::string & window_name)
private

Definition at line 957 of file ui_coordinator.cc.

◆ PositionWindow()

void yaze::editor::UICoordinator::PositionWindow ( const std::string & window_name,
float x,
float y )
private

Definition at line 962 of file ui_coordinator.cc.

◆ SetWindowSize()

void yaze::editor::UICoordinator::SetWindowSize ( const std::string & window_name,
float width,
float height )
private

Definition at line 967 of file ui_coordinator.cc.

Member Data Documentation

◆ editor_manager_

◆ rom_manager_

RomFileManager& yaze::editor::UICoordinator::rom_manager_
private

Definition at line 257 of file ui_coordinator.h.

◆ project_manager_

ProjectManager& yaze::editor::UICoordinator::project_manager_
private

Definition at line 258 of file ui_coordinator.h.

◆ editor_registry_

EditorRegistry& yaze::editor::UICoordinator::editor_registry_
private

Definition at line 259 of file ui_coordinator.h.

◆ window_manager_

◆ session_coordinator_

◆ window_delegate_

WindowDelegate& yaze::editor::UICoordinator::window_delegate_
private

Definition at line 262 of file ui_coordinator.h.

Referenced by HideAllWindows(), and ShowAllWindows().

◆ toast_manager_

◆ popup_manager_

PopupManager& yaze::editor::UICoordinator::popup_manager_
private

◆ shortcut_manager_

ShortcutManager& yaze::editor::UICoordinator::shortcut_manager_
private

Definition at line 265 of file ui_coordinator.h.

Referenced by DrawShortcutsBrowser(), and InitializeCommandPalette().

◆ show_editor_selection_

bool yaze::editor::UICoordinator::show_editor_selection_ = false
private

◆ show_display_settings_

bool yaze::editor::UICoordinator::show_display_settings_ = false
private

Definition at line 269 of file ui_coordinator.h.

Referenced by IsDisplaySettingsVisible(), and SetDisplaySettingsVisible().

◆ show_welcome_screen_

bool yaze::editor::UICoordinator::show_welcome_screen_ = true
private

◆ welcome_screen_manually_closed_

bool yaze::editor::UICoordinator::welcome_screen_manually_closed_ = false
private

◆ show_global_search_

bool yaze::editor::UICoordinator::show_global_search_ = false
private

◆ show_performance_dashboard_

bool yaze::editor::UICoordinator::show_performance_dashboard_ = false
private

◆ show_imgui_demo_

bool yaze::editor::UICoordinator::show_imgui_demo_ = false
private

Definition at line 275 of file ui_coordinator.h.

Referenced by IsImGuiDemoVisible(), and SetImGuiDemoVisible().

◆ show_imgui_metrics_

bool yaze::editor::UICoordinator::show_imgui_metrics_ = false
private

Definition at line 276 of file ui_coordinator.h.

Referenced by IsImGuiMetricsVisible(), and SetImGuiMetricsVisible().

◆ show_test_dashboard_

bool yaze::editor::UICoordinator::show_test_dashboard_ = false
private

Definition at line 277 of file ui_coordinator.h.

◆ show_panel_browser_

bool yaze::editor::UICoordinator::show_panel_browser_ = false
private

◆ show_panel_finder_

bool yaze::editor::UICoordinator::show_panel_finder_ = false
private

Definition at line 279 of file ui_coordinator.h.

Referenced by DrawPanelFinder().

◆ show_command_palette_

bool yaze::editor::UICoordinator::show_command_palette_ = false
private

◆ show_shortcuts_browser_

bool yaze::editor::UICoordinator::show_shortcuts_browser_ = false
private

Definition at line 281 of file ui_coordinator.h.

Referenced by DrawShortcutsBrowser(), and ShowShortcutsBrowser().

◆ show_resource_label_manager_

bool yaze::editor::UICoordinator::show_resource_label_manager_ = false
private

◆ show_ai_agent_

bool yaze::editor::UICoordinator::show_ai_agent_ = false
private

Definition at line 288 of file ui_coordinator.h.

Referenced by DrawAllUI(), IsAIAgentVisible(), and SetAIAgentVisible().

◆ show_chat_history_

bool yaze::editor::UICoordinator::show_chat_history_ = false
private

Definition at line 289 of file ui_coordinator.h.

Referenced by DrawAllUI(), IsChatHistoryVisible(), and SetChatHistoryVisible().

◆ show_proposal_drawer_

bool yaze::editor::UICoordinator::show_proposal_drawer_ = false
private

Definition at line 290 of file ui_coordinator.h.

Referenced by DrawAllUI(), IsProposalDrawerVisible(), and SetProposalDrawerVisible().

◆ show_save_workspace_preset_

bool yaze::editor::UICoordinator::show_save_workspace_preset_ = false
private

Definition at line 291 of file ui_coordinator.h.

Referenced by DrawWorkspacePresetDialogs(), and ShowSaveWorkspacePresetDialog().

◆ show_load_workspace_preset_

bool yaze::editor::UICoordinator::show_load_workspace_preset_ = false
private

Definition at line 292 of file ui_coordinator.h.

Referenced by DrawWorkspacePresetDialogs(), and ShowLoadWorkspacePresetDialog().

◆ show_menu_bar_

bool yaze::editor::UICoordinator::show_menu_bar_ = true
private

◆ welcome_behavior_override_

StartupVisibility yaze::editor::UICoordinator::welcome_behavior_override_ = StartupVisibility::kAuto
private

Definition at line 294 of file ui_coordinator.h.

Referenced by SetWelcomeScreenBehavior(), and ShouldShowWelcome().

◆ dashboard_behavior_override_

StartupVisibility yaze::editor::UICoordinator::dashboard_behavior_override_ = StartupVisibility::kAuto
private

Definition at line 295 of file ui_coordinator.h.

Referenced by SetDashboardBehavior(), and ShouldShowDashboard().

◆ current_startup_surface_

◆ command_palette_

CommandPalette yaze::editor::UICoordinator::command_palette_
private

◆ command_palette_initialized_

bool yaze::editor::UICoordinator::command_palette_initialized_ = false
private

◆ command_history_loaded_

bool yaze::editor::UICoordinator::command_history_loaded_ = false
private

Definition at line 303 of file ui_coordinator.h.

Referenced by InitializeCommandPalette().

◆ command_palette_query_

char yaze::editor::UICoordinator::command_palette_query_[256] = {}
private

Definition at line 304 of file ui_coordinator.h.

Referenced by DrawCommandPalette(), and ShowCommandPalette().

◆ command_palette_selected_idx_

int yaze::editor::UICoordinator::command_palette_selected_idx_ = 0
private

Definition at line 305 of file ui_coordinator.h.

Referenced by DrawCommandPalette(), and ShowCommandPalette().

◆ command_palette_scroll_to_selected_

bool yaze::editor::UICoordinator::command_palette_scroll_to_selected_ = false
private

Definition at line 306 of file ui_coordinator.h.

Referenced by DrawCommandPalette().

◆ command_palette_refocus_input_

bool yaze::editor::UICoordinator::command_palette_refocus_input_ = false
private

Definition at line 307 of file ui_coordinator.h.

Referenced by DrawCommandPalette().

◆ command_palette_cached_query_

std::string yaze::editor::UICoordinator::command_palette_cached_query_
private

Definition at line 309 of file ui_coordinator.h.

Referenced by DrawCommandPalette().

◆ command_palette_cached_generation_

uint64_t yaze::editor::UICoordinator::command_palette_cached_generation_ = ~uint64_t{0}
private

Definition at line 310 of file ui_coordinator.h.

Referenced by DrawCommandPalette().

◆ command_palette_cached_matches_

std::vector<CommandMatch> yaze::editor::UICoordinator::command_palette_cached_matches_
private

Definition at line 311 of file ui_coordinator.h.

Referenced by DrawCommandPalette().

◆ panel_finder_query_

char yaze::editor::UICoordinator::panel_finder_query_[256] = {}
private

Definition at line 316 of file ui_coordinator.h.

Referenced by DrawPanelFinder().

◆ panel_finder_selected_idx_

int yaze::editor::UICoordinator::panel_finder_selected_idx_ = 0
private

Definition at line 317 of file ui_coordinator.h.

Referenced by DrawPanelFinder().

◆ shortcuts_browser_query_

char yaze::editor::UICoordinator::shortcuts_browser_query_[256] = {}
private

Definition at line 320 of file ui_coordinator.h.

Referenced by DrawShortcutsBrowser().

◆ global_search_query_

char yaze::editor::UICoordinator::global_search_query_[256] = {}
private

Definition at line 323 of file ui_coordinator.h.

Referenced by DrawGlobalSearch().

◆ welcome_screen_

std::unique_ptr<WelcomeScreen> yaze::editor::UICoordinator::welcome_screen_
private

Definition at line 326 of file ui_coordinator.h.

Referenced by DrawWelcomeScreen(), InitializeCommandPalette(), and UICoordinator().

◆ new_project_dialog_

NewProjectDialog yaze::editor::UICoordinator::new_project_dialog_
private

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