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

Handles all menu building and UI coordination logic. More...

#include <menu_orchestrator.h>

Public Member Functions

 MenuOrchestrator (EditorManager *editor_manager, MenuBuilder &menu_builder, RomFileManager &rom_manager, ProjectManager &project_manager, EditorRegistry &editor_registry, SessionCoordinator &session_coordinator, ToastManager &toast_manager, PopupManager &popup_manager)
 
 ~MenuOrchestrator ()=default
 
void SetPanelManager (PanelManager *manager)
 
void SetStatusBar (StatusBar *bar)
 
void SetUserSettings (UserSettings *settings)
 
 MenuOrchestrator (const MenuOrchestrator &)=delete
 
MenuOrchestratoroperator= (const MenuOrchestrator &)=delete
 
void BuildMainMenu ()
 
void BuildFileMenu ()
 
void BuildEditMenu ()
 
void BuildViewMenu ()
 
void BuildPanelsMenu ()
 
void BuildToolsMenu ()
 
void BuildWindowMenu ()
 
void BuildHelpMenu ()
 
void ClearMenu ()
 
void RefreshMenu ()
 
void OnOpenRom ()
 
void OnSaveRom ()
 
void OnSaveRomAs ()
 
void OnCreateProject ()
 
void OnOpenProject ()
 
void OnSaveProject ()
 
void OnSaveProjectAs ()
 
void OnShowProjectManagement ()
 
void OnShowProjectFileEditor ()
 
void OnUndo ()
 
void OnRedo ()
 
void OnCut ()
 
void OnCopy ()
 
void OnPaste ()
 
void OnFind ()
 
void OnSwitchToEditor (EditorType editor_type)
 
void OnShowEditorSelection ()
 
void OnShowDisplaySettings ()
 
void OnShowHexEditor ()
 
void OnShowPanelBrowser ()
 
void OnShowPanelFinder ()
 
void OnShowWelcomeScreen ()
 
void OnCreateNewSession ()
 
void OnDuplicateCurrentSession ()
 
void OnCloseCurrentSession ()
 
void OnShowSessionSwitcher ()
 
void OnShowSessionManager ()
 
void OnShowAllWindows ()
 
void OnHideAllWindows ()
 
void OnResetWorkspaceLayout ()
 
void OnSaveWorkspaceLayout ()
 
void OnLoadWorkspaceLayout ()
 
void OnShowLayoutPresets ()
 
void OnLoadDeveloperLayout ()
 
void OnLoadDesignerLayout ()
 
void OnLoadModderLayout ()
 
void OnShowGlobalSearch ()
 
void OnShowCommandPalette ()
 
void OnShowPerformanceDashboard ()
 
void OnShowImGuiDemo ()
 
void OnShowImGuiMetrics ()
 
void OnShowMemoryEditor ()
 
void OnShowResourceLabelManager ()
 
void OnShowRomInfo ()
 
void OnCreateBackup ()
 
void OnValidateRom ()
 
void OnRunDataIntegrityCheck ()
 
void OnTestSaveLoad ()
 
void OnCheckRomVersion ()
 
void OnUpgradeRom ()
 
void OnToggleCustomLoading ()
 
void OnToggleAsarPatch ()
 
void OnLoadAsmFile ()
 
void OnShowAssemblyEditor ()
 
void OnShowAbout ()
 
void OnShowGettingStarted ()
 
void OnShowBuildInstructions ()
 
void OnShowCLIUsage ()
 
void OnShowTroubleshooting ()
 
void OnShowContributing ()
 
void OnShowWhatsNew ()
 
void OnShowSupportedFeatures ()
 
void OnShowSettings ()
 
void OnQuit ()
 

Private Member Functions

void AddFileMenuItems ()
 
void AddEditMenuItems ()
 
void AddViewMenuItems ()
 
void AddAppearanceMenuItems ()
 
void AddLayoutMenuItems ()
 
void AddPanelsMenuItems ()
 
void AddToolsMenuItems ()
 
void AddSearchMenuItems ()
 
void AddRomAnalysisMenuItems ()
 
void AddAsarIntegrationMenuItems ()
 
void AddDevelopmentMenuItems ()
 
void AddTestingMenuItems ()
 
void AddWindowMenuItems ()
 
void AddHelpMenuItems ()
 
bool CanSaveRom () const
 
bool CanSaveProject () const
 
bool HasActiveRom () const
 
bool HasActiveProject () const
 
bool HasProjectFile () const
 
bool HasCurrentEditor () const
 
bool HasMultipleSessions () const
 
std::string GetRomFilename () const
 
std::string GetProjectName () const
 
std::string GetCurrentEditorName () const
 
std::string GetShortcutForAction (const std::string &action) const
 
void RegisterGlobalShortcuts ()
 

Private Attributes

EditorManagereditor_manager_
 
MenuBuildermenu_builder_
 
RomFileManagerrom_manager_
 
ProjectManagerproject_manager_
 
EditorRegistryeditor_registry_
 
SessionCoordinatorsession_coordinator_
 
ToastManagertoast_manager_
 
PopupManagerpopup_manager_
 
PanelManagerpanel_manager_ = nullptr
 
StatusBarstatus_bar_ = nullptr
 
UserSettingsuser_settings_ = nullptr
 
bool menu_needs_refresh_ = false
 

Detailed Description

Handles all menu building and UI coordination logic.

Extracted from EditorManager to provide focused menu management:

  • Menu structure and organization
  • Menu item callbacks and shortcuts
  • Editor-specific menu items
  • Session-aware menu updates
  • Menu state management

This class follows the Single Responsibility Principle by focusing solely on menu construction and coordination, delegating actual operations to specialized managers.

Definition at line 42 of file menu_orchestrator.h.

Constructor & Destructor Documentation

◆ MenuOrchestrator() [1/2]

yaze::editor::MenuOrchestrator::MenuOrchestrator ( EditorManager * editor_manager,
MenuBuilder & menu_builder,
RomFileManager & rom_manager,
ProjectManager & project_manager,
EditorRegistry & editor_registry,
SessionCoordinator & session_coordinator,
ToastManager & toast_manager,
PopupManager & popup_manager )

Definition at line 30 of file menu_orchestrator.cc.

◆ ~MenuOrchestrator()

yaze::editor::MenuOrchestrator::~MenuOrchestrator ( )
default

◆ MenuOrchestrator() [2/2]

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

Member Function Documentation

◆ SetPanelManager()

void yaze::editor::MenuOrchestrator::SetPanelManager ( PanelManager * manager)
inline

Definition at line 53 of file menu_orchestrator.h.

References panel_manager_.

◆ SetStatusBar()

void yaze::editor::MenuOrchestrator::SetStatusBar ( StatusBar * bar)
inline

Definition at line 54 of file menu_orchestrator.h.

References status_bar_.

◆ SetUserSettings()

void yaze::editor::MenuOrchestrator::SetUserSettings ( UserSettings * settings)
inline

Definition at line 55 of file menu_orchestrator.h.

References user_settings_.

◆ operator=()

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

◆ BuildMainMenu()

◆ BuildFileMenu()

void yaze::editor::MenuOrchestrator::BuildFileMenu ( )

Definition at line 63 of file menu_orchestrator.cc.

References AddFileMenuItems(), yaze::editor::MenuBuilder::BeginMenu(), yaze::editor::MenuBuilder::EndMenu(), and menu_builder_.

Referenced by BuildMainMenu().

Here is the call graph for this function:

◆ BuildEditMenu()

void yaze::editor::MenuOrchestrator::BuildEditMenu ( )

Definition at line 134 of file menu_orchestrator.cc.

References AddEditMenuItems(), yaze::editor::MenuBuilder::BeginMenu(), yaze::editor::MenuBuilder::EndMenu(), and menu_builder_.

Referenced by BuildMainMenu().

Here is the call graph for this function:

◆ BuildViewMenu()

void yaze::editor::MenuOrchestrator::BuildViewMenu ( )

Definition at line 170 of file menu_orchestrator.cc.

References AddViewMenuItems(), yaze::editor::MenuBuilder::BeginMenu(), yaze::editor::MenuBuilder::EndMenu(), and menu_builder_.

Referenced by BuildMainMenu().

Here is the call graph for this function:

◆ BuildPanelsMenu()

void yaze::editor::MenuOrchestrator::BuildPanelsMenu ( )

Definition at line 287 of file menu_orchestrator.cc.

References AddPanelsMenuItems(), yaze::editor::MenuBuilder::CustomMenu(), and menu_builder_.

Referenced by BuildMainMenu().

Here is the call graph for this function:

◆ BuildToolsMenu()

void yaze::editor::MenuOrchestrator::BuildToolsMenu ( )

Definition at line 374 of file menu_orchestrator.cc.

References AddToolsMenuItems(), yaze::editor::MenuBuilder::BeginMenu(), yaze::editor::MenuBuilder::EndMenu(), and menu_builder_.

Referenced by BuildMainMenu().

Here is the call graph for this function:

◆ BuildWindowMenu()

void yaze::editor::MenuOrchestrator::BuildWindowMenu ( )

Definition at line 517 of file menu_orchestrator.cc.

References AddWindowMenuItems(), yaze::editor::MenuBuilder::BeginMenu(), yaze::editor::MenuBuilder::EndMenu(), and menu_builder_.

Referenced by BuildMainMenu().

Here is the call graph for this function:

◆ BuildHelpMenu()

void yaze::editor::MenuOrchestrator::BuildHelpMenu ( )

Definition at line 703 of file menu_orchestrator.cc.

References AddHelpMenuItems(), yaze::editor::MenuBuilder::BeginMenu(), yaze::editor::MenuBuilder::EndMenu(), and menu_builder_.

Referenced by BuildMainMenu().

Here is the call graph for this function:

◆ ClearMenu()

void yaze::editor::MenuOrchestrator::ClearMenu ( )

Definition at line 733 of file menu_orchestrator.cc.

References yaze::editor::MenuBuilder::Clear(), and menu_builder_.

Referenced by BuildMainMenu().

Here is the call graph for this function:

◆ RefreshMenu()

void yaze::editor::MenuOrchestrator::RefreshMenu ( )

Definition at line 737 of file menu_orchestrator.cc.

References menu_needs_refresh_.

◆ OnOpenRom()

void yaze::editor::MenuOrchestrator::OnOpenRom ( )

Definition at line 742 of file menu_orchestrator.cc.

References editor_manager_, yaze::editor::kError, yaze::editor::EditorManager::LoadRom(), yaze::editor::ToastManager::Show(), and toast_manager_.

Referenced by AddFileMenuItems().

Here is the call graph for this function:

◆ OnSaveRom()

void yaze::editor::MenuOrchestrator::OnSaveRom ( )

◆ OnSaveRomAs()

void yaze::editor::MenuOrchestrator::OnSaveRomAs ( )

Definition at line 771 of file menu_orchestrator.cc.

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

Referenced by AddFileMenuItems().

Here is the call graph for this function:

◆ OnCreateProject()

void yaze::editor::MenuOrchestrator::OnCreateProject ( )

Definition at line 775 of file menu_orchestrator.cc.

References yaze::editor::EditorManager::CreateNewProject(), editor_manager_, yaze::editor::kError, yaze::editor::ToastManager::Show(), and toast_manager_.

Referenced by AddFileMenuItems().

Here is the call graph for this function:

◆ OnOpenProject()

void yaze::editor::MenuOrchestrator::OnOpenProject ( )

Definition at line 787 of file menu_orchestrator.cc.

References editor_manager_, yaze::editor::kError, yaze::editor::EditorManager::OpenProject(), yaze::editor::ToastManager::Show(), and toast_manager_.

Referenced by AddFileMenuItems().

Here is the call graph for this function:

◆ OnSaveProject()

void yaze::editor::MenuOrchestrator::OnSaveProject ( )

◆ OnSaveProjectAs()

void yaze::editor::MenuOrchestrator::OnSaveProjectAs ( )

Definition at line 813 of file menu_orchestrator.cc.

References editor_manager_, yaze::editor::kError, yaze::editor::EditorManager::SaveProjectAs(), yaze::editor::ToastManager::Show(), and toast_manager_.

Referenced by AddFileMenuItems().

Here is the call graph for this function:

◆ OnShowProjectManagement()

void yaze::editor::MenuOrchestrator::OnShowProjectManagement ( )

Definition at line 825 of file menu_orchestrator.cc.

References editor_manager_, and yaze::editor::EditorManager::ShowProjectManagement().

Referenced by AddFileMenuItems().

Here is the call graph for this function:

◆ OnShowProjectFileEditor()

void yaze::editor::MenuOrchestrator::OnShowProjectFileEditor ( )

Definition at line 832 of file menu_orchestrator.cc.

References editor_manager_, and yaze::editor::EditorManager::ShowProjectFileEditor().

Referenced by AddFileMenuItems().

Here is the call graph for this function:

◆ OnUndo()

◆ OnRedo()

◆ OnCut()

void yaze::editor::MenuOrchestrator::OnCut ( )

◆ OnCopy()

void yaze::editor::MenuOrchestrator::OnCopy ( )

◆ OnPaste()

void yaze::editor::MenuOrchestrator::OnPaste ( )

◆ OnFind()

void yaze::editor::MenuOrchestrator::OnFind ( )

◆ OnSwitchToEditor()

void yaze::editor::MenuOrchestrator::OnSwitchToEditor ( EditorType editor_type)

Definition at line 938 of file menu_orchestrator.cc.

References editor_manager_, and yaze::editor::EditorManager::SwitchToEditor().

Here is the call graph for this function:

◆ OnShowEditorSelection()

void yaze::editor::MenuOrchestrator::OnShowEditorSelection ( )

Definition at line 945 of file menu_orchestrator.cc.

References editor_manager_, and yaze::editor::EditorManager::ui_coordinator().

Referenced by AddViewMenuItems().

Here is the call graph for this function:

◆ OnShowDisplaySettings()

void yaze::editor::MenuOrchestrator::OnShowDisplaySettings ( )

Definition at line 954 of file menu_orchestrator.cc.

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

Referenced by AddAppearanceMenuItems().

Here is the call graph for this function:

◆ OnShowHexEditor()

void yaze::editor::MenuOrchestrator::OnShowHexEditor ( )

◆ OnShowPanelBrowser()

void yaze::editor::MenuOrchestrator::OnShowPanelBrowser ( )

Definition at line 966 of file menu_orchestrator.cc.

References editor_manager_, and yaze::editor::EditorManager::ui_coordinator().

Referenced by AddPanelsMenuItems(), and AddWindowMenuItems().

Here is the call graph for this function:

◆ OnShowPanelFinder()

void yaze::editor::MenuOrchestrator::OnShowPanelFinder ( )

Definition at line 974 of file menu_orchestrator.cc.

References editor_manager_, and yaze::editor::EditorManager::ui_coordinator().

Referenced by AddSearchMenuItems().

Here is the call graph for this function:

◆ OnShowWelcomeScreen()

void yaze::editor::MenuOrchestrator::OnShowWelcomeScreen ( )

Definition at line 982 of file menu_orchestrator.cc.

References editor_manager_, and yaze::editor::EditorManager::ui_coordinator().

Referenced by AddAppearanceMenuItems().

Here is the call graph for this function:

◆ OnCreateNewSession()

void yaze::editor::MenuOrchestrator::OnCreateNewSession ( )

Definition at line 1009 of file menu_orchestrator.cc.

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

Referenced by AddWindowMenuItems().

Here is the call graph for this function:

◆ OnDuplicateCurrentSession()

void yaze::editor::MenuOrchestrator::OnDuplicateCurrentSession ( )

Definition at line 1013 of file menu_orchestrator.cc.

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

Referenced by AddWindowMenuItems().

Here is the call graph for this function:

◆ OnCloseCurrentSession()

void yaze::editor::MenuOrchestrator::OnCloseCurrentSession ( )

Definition at line 1017 of file menu_orchestrator.cc.

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

Referenced by AddWindowMenuItems().

Here is the call graph for this function:

◆ OnShowSessionSwitcher()

void yaze::editor::MenuOrchestrator::OnShowSessionSwitcher ( )

Definition at line 1021 of file menu_orchestrator.cc.

References editor_manager_, and yaze::editor::EditorManager::ui_coordinator().

Referenced by AddWindowMenuItems().

Here is the call graph for this function:

◆ OnShowSessionManager()

void yaze::editor::MenuOrchestrator::OnShowSessionManager ( )

Definition at line 1030 of file menu_orchestrator.cc.

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

Referenced by AddWindowMenuItems().

Here is the call graph for this function:

◆ OnShowAllWindows()

void yaze::editor::MenuOrchestrator::OnShowAllWindows ( )

Definition at line 1035 of file menu_orchestrator.cc.

References editor_manager_, and yaze::editor::EditorManager::ui_coordinator().

Referenced by AddWindowMenuItems().

Here is the call graph for this function:

◆ OnHideAllWindows()

void yaze::editor::MenuOrchestrator::OnHideAllWindows ( )

Definition at line 1044 of file menu_orchestrator.cc.

References editor_manager_, and yaze::editor::EditorManager::HideAllWindows().

Referenced by AddWindowMenuItems().

Here is the call graph for this function:

◆ OnResetWorkspaceLayout()

void yaze::editor::MenuOrchestrator::OnResetWorkspaceLayout ( )

◆ OnSaveWorkspaceLayout()

void yaze::editor::MenuOrchestrator::OnSaveWorkspaceLayout ( )

Definition at line 1061 of file menu_orchestrator.cc.

References editor_manager_, and yaze::editor::EditorManager::SaveWorkspaceLayout().

Referenced by AddWindowMenuItems().

Here is the call graph for this function:

◆ OnLoadWorkspaceLayout()

void yaze::editor::MenuOrchestrator::OnLoadWorkspaceLayout ( )

Definition at line 1068 of file menu_orchestrator.cc.

References editor_manager_, and yaze::editor::EditorManager::LoadWorkspaceLayout().

Referenced by AddWindowMenuItems().

Here is the call graph for this function:

◆ OnShowLayoutPresets()

void yaze::editor::MenuOrchestrator::OnShowLayoutPresets ( )

Definition at line 1075 of file menu_orchestrator.cc.

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

Referenced by AddWindowMenuItems().

Here is the call graph for this function:

◆ OnLoadDeveloperLayout()

void yaze::editor::MenuOrchestrator::OnLoadDeveloperLayout ( )

Definition at line 1079 of file menu_orchestrator.cc.

References yaze::editor::EditorManager::ApplyLayoutPreset(), and editor_manager_.

Referenced by AddLayoutMenuItems(), and AddWindowMenuItems().

Here is the call graph for this function:

◆ OnLoadDesignerLayout()

void yaze::editor::MenuOrchestrator::OnLoadDesignerLayout ( )

Definition at line 1085 of file menu_orchestrator.cc.

References yaze::editor::EditorManager::ApplyLayoutPreset(), and editor_manager_.

Referenced by AddLayoutMenuItems(), and AddWindowMenuItems().

Here is the call graph for this function:

◆ OnLoadModderLayout()

void yaze::editor::MenuOrchestrator::OnLoadModderLayout ( )

Definition at line 1091 of file menu_orchestrator.cc.

References yaze::editor::EditorManager::ApplyLayoutPreset(), and editor_manager_.

Referenced by AddLayoutMenuItems(), and AddWindowMenuItems().

Here is the call graph for this function:

◆ OnShowGlobalSearch()

void yaze::editor::MenuOrchestrator::OnShowGlobalSearch ( )

Definition at line 1098 of file menu_orchestrator.cc.

References editor_manager_, and yaze::editor::EditorManager::ui_coordinator().

Referenced by AddSearchMenuItems().

Here is the call graph for this function:

◆ OnShowCommandPalette()

void yaze::editor::MenuOrchestrator::OnShowCommandPalette ( )

Definition at line 1106 of file menu_orchestrator.cc.

References editor_manager_, and yaze::editor::EditorManager::ui_coordinator().

Referenced by AddSearchMenuItems().

Here is the call graph for this function:

◆ OnShowPerformanceDashboard()

void yaze::editor::MenuOrchestrator::OnShowPerformanceDashboard ( )

Definition at line 1114 of file menu_orchestrator.cc.

References editor_manager_, and yaze::editor::EditorManager::ui_coordinator().

Referenced by AddDevelopmentMenuItems().

Here is the call graph for this function:

◆ OnShowImGuiDemo()

void yaze::editor::MenuOrchestrator::OnShowImGuiDemo ( )

Definition at line 1122 of file menu_orchestrator.cc.

References editor_manager_, and yaze::editor::EditorManager::ShowImGuiDemo().

Referenced by AddToolsMenuItems().

Here is the call graph for this function:

◆ OnShowImGuiMetrics()

void yaze::editor::MenuOrchestrator::OnShowImGuiMetrics ( )

Definition at line 1128 of file menu_orchestrator.cc.

References editor_manager_, and yaze::editor::EditorManager::ShowImGuiMetrics().

Referenced by AddToolsMenuItems().

Here is the call graph for this function:

◆ OnShowMemoryEditor()

void yaze::editor::MenuOrchestrator::OnShowMemoryEditor ( )

◆ OnShowResourceLabelManager()

void yaze::editor::MenuOrchestrator::OnShowResourceLabelManager ( )

Definition at line 1141 of file menu_orchestrator.cc.

References editor_manager_, and yaze::editor::EditorManager::ui_coordinator().

Referenced by AddSearchMenuItems().

Here is the call graph for this function:

◆ OnShowRomInfo()

void yaze::editor::MenuOrchestrator::OnShowRomInfo ( )

Definition at line 1233 of file menu_orchestrator.cc.

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

Referenced by AddFileMenuItems(), and AddRomAnalysisMenuItems().

Here is the call graph for this function:

◆ OnCreateBackup()

void yaze::editor::MenuOrchestrator::OnCreateBackup ( )

◆ OnValidateRom()

void yaze::editor::MenuOrchestrator::OnValidateRom ( )

◆ OnRunDataIntegrityCheck()

void yaze::editor::MenuOrchestrator::OnRunDataIntegrityCheck ( )

◆ OnTestSaveLoad()

void yaze::editor::MenuOrchestrator::OnTestSaveLoad ( )

◆ OnCheckRomVersion()

void yaze::editor::MenuOrchestrator::OnCheckRomVersion ( )

◆ OnUpgradeRom()

void yaze::editor::MenuOrchestrator::OnUpgradeRom ( )

◆ OnToggleCustomLoading()

void yaze::editor::MenuOrchestrator::OnToggleCustomLoading ( )

Definition at line 1404 of file menu_orchestrator.cc.

References yaze::core::FeatureFlags::get(), yaze::editor::kInfo, yaze::editor::ToastManager::Show(), and toast_manager_.

Referenced by AddRomAnalysisMenuItems().

Here is the call graph for this function:

◆ OnToggleAsarPatch()

void yaze::editor::MenuOrchestrator::OnToggleAsarPatch ( )

◆ OnLoadAsmFile()

void yaze::editor::MenuOrchestrator::OnLoadAsmFile ( )

Definition at line 1433 of file menu_orchestrator.cc.

References yaze::editor::kWarning, yaze::editor::ToastManager::Show(), and toast_manager_.

Referenced by AddAsarIntegrationMenuItems().

Here is the call graph for this function:

◆ OnShowAssemblyEditor()

void yaze::editor::MenuOrchestrator::OnShowAssemblyEditor ( )

Definition at line 1438 of file menu_orchestrator.cc.

References editor_manager_, yaze::editor::kAssembly, and yaze::editor::EditorManager::SwitchToEditor().

Referenced by AddDevelopmentMenuItems().

Here is the call graph for this function:

◆ OnShowAbout()

void yaze::editor::MenuOrchestrator::OnShowAbout ( )

Definition at line 1200 of file menu_orchestrator.cc.

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

Referenced by AddHelpMenuItems().

Here is the call graph for this function:

◆ OnShowGettingStarted()

void yaze::editor::MenuOrchestrator::OnShowGettingStarted ( )

Definition at line 1204 of file menu_orchestrator.cc.

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

Referenced by AddHelpMenuItems().

Here is the call graph for this function:

◆ OnShowBuildInstructions()

void yaze::editor::MenuOrchestrator::OnShowBuildInstructions ( )

Definition at line 1208 of file menu_orchestrator.cc.

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

Referenced by AddHelpMenuItems().

Here is the call graph for this function:

◆ OnShowCLIUsage()

void yaze::editor::MenuOrchestrator::OnShowCLIUsage ( )

Definition at line 1212 of file menu_orchestrator.cc.

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

Referenced by AddHelpMenuItems().

Here is the call graph for this function:

◆ OnShowTroubleshooting()

void yaze::editor::MenuOrchestrator::OnShowTroubleshooting ( )

Definition at line 1216 of file menu_orchestrator.cc.

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

Referenced by AddHelpMenuItems().

Here is the call graph for this function:

◆ OnShowContributing()

void yaze::editor::MenuOrchestrator::OnShowContributing ( )

Definition at line 1220 of file menu_orchestrator.cc.

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

Referenced by AddHelpMenuItems().

Here is the call graph for this function:

◆ OnShowWhatsNew()

void yaze::editor::MenuOrchestrator::OnShowWhatsNew ( )

Definition at line 1224 of file menu_orchestrator.cc.

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

Referenced by AddHelpMenuItems().

Here is the call graph for this function:

◆ OnShowSupportedFeatures()

void yaze::editor::MenuOrchestrator::OnShowSupportedFeatures ( )

Definition at line 1228 of file menu_orchestrator.cc.

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

Referenced by AddHelpMenuItems().

Here is the call graph for this function:

◆ OnShowSettings()

void yaze::editor::MenuOrchestrator::OnShowSettings ( )

Definition at line 1263 of file menu_orchestrator.cc.

References editor_manager_, yaze::editor::kSettings, and yaze::editor::EditorManager::SwitchToEditor().

Referenced by AddFileMenuItems(), and AddHelpMenuItems().

Here is the call graph for this function:

◆ OnQuit()

void yaze::editor::MenuOrchestrator::OnQuit ( )

Definition at line 1270 of file menu_orchestrator.cc.

References editor_manager_, and yaze::editor::EditorManager::Quit().

Referenced by AddFileMenuItems().

Here is the call graph for this function:

◆ AddFileMenuItems()

◆ AddEditMenuItems()

◆ AddViewMenuItems()

◆ AddAppearanceMenuItems()

◆ AddLayoutMenuItems()

◆ AddPanelsMenuItems()

◆ AddToolsMenuItems()

◆ AddSearchMenuItems()

◆ AddRomAnalysisMenuItems()

◆ AddAsarIntegrationMenuItems()

◆ AddDevelopmentMenuItems()

◆ AddTestingMenuItems()

◆ AddWindowMenuItems()

void yaze::editor::MenuOrchestrator::AddWindowMenuItems ( )
private

Definition at line 523 of file menu_orchestrator.cc.

References yaze::editor::EditorManager::ApplyLayoutPreset(), yaze::editor::EditorManager::ApplyLayoutProfile(), yaze::editor::MenuBuilder::BeginSubMenu(), yaze::editor::EditorManager::CaptureTemporaryLayoutSnapshot(), yaze::editor::EditorManager::ClearTemporaryLayoutSnapshot(), editor_manager_, HasActiveRom(), HasCurrentEditor(), HasMultipleSessions(), ICON_MD_ADD, ICON_MD_BOOKMARK_ADD, ICON_MD_BOOKMARK_REMOVE, ICON_MD_BUG_REPORT, ICON_MD_BUILD, ICON_MD_CASTLE, ICON_MD_CLOSE, ICON_MD_CODE, ICON_MD_CONTENT_COPY, ICON_MD_DASHBOARD, ICON_MD_DESIGN_SERVICES, ICON_MD_DEVELOPER_MODE, ICON_MD_FOLDER_OPEN, ICON_MD_MAP, ICON_MD_MUSIC_NOTE, ICON_MD_REFRESH, ICON_MD_RESET_TV, ICON_MD_RESTORE, ICON_MD_SAVE, ICON_MD_SCIENCE, ICON_MD_SMART_TOY, ICON_MD_SWITCH_ACCOUNT, ICON_MD_TAB, ICON_MD_TUNE, ICON_MD_VIEW_COMPACT, ICON_MD_VIEW_LIST, ICON_MD_VIEW_QUILT, ICON_MD_VISIBILITY, ICON_MD_VISIBILITY_OFF, yaze::editor::Item, yaze::editor::MenuBuilder::Item(), menu_builder_, OnCloseCurrentSession(), OnCreateNewSession(), OnDuplicateCurrentSession(), OnHideAllWindows(), OnLoadDesignerLayout(), OnLoadDeveloperLayout(), OnLoadModderLayout(), OnLoadWorkspaceLayout(), OnResetWorkspaceLayout(), OnSaveWorkspaceLayout(), OnShowAllWindows(), OnShowLayoutPresets(), OnShowPanelBrowser(), OnShowSessionManager(), OnShowSessionSwitcher(), yaze::editor::EditorManager::ResetCurrentEditorLayout(), yaze::editor::EditorManager::RestoreTemporaryLayoutSnapshot(), yaze::editor::MenuBuilder::Separator(), SHORTCUT_CTRL, and SHORTCUT_CTRL_SHIFT.

Referenced by BuildWindowMenu().

◆ AddHelpMenuItems()

◆ CanSaveRom()

bool yaze::editor::MenuOrchestrator::CanSaveRom ( ) const
private

Definition at line 1277 of file menu_orchestrator.cc.

References editor_manager_, yaze::editor::EditorManager::GetCurrentRom(), yaze::editor::RomFileManager::IsRomLoaded(), and rom_manager_.

Referenced by AddFileMenuItems().

Here is the call graph for this function:

◆ CanSaveProject()

bool yaze::editor::MenuOrchestrator::CanSaveProject ( ) const
private

Definition at line 1282 of file menu_orchestrator.cc.

References yaze::editor::ProjectManager::HasActiveProject(), and project_manager_.

Referenced by AddFileMenuItems().

Here is the call graph for this function:

◆ HasActiveRom()

bool yaze::editor::MenuOrchestrator::HasActiveRom ( ) const
private

◆ HasActiveProject()

bool yaze::editor::MenuOrchestrator::HasActiveProject ( ) const
private

Definition at line 1291 of file menu_orchestrator.cc.

References yaze::editor::ProjectManager::HasActiveProject(), and project_manager_.

Here is the call graph for this function:

◆ HasProjectFile()

bool yaze::editor::MenuOrchestrator::HasProjectFile ( ) const
private

Definition at line 1295 of file menu_orchestrator.cc.

References editor_manager_, yaze::project::YazeProject::filepath, and yaze::editor::EditorManager::GetCurrentProject().

Referenced by AddFileMenuItems().

Here is the call graph for this function:

◆ HasCurrentEditor()

bool yaze::editor::MenuOrchestrator::HasCurrentEditor ( ) const
private

Definition at line 1303 of file menu_orchestrator.cc.

References editor_manager_, and yaze::editor::EditorManager::GetCurrentEditor().

Referenced by AddEditMenuItems(), AddLayoutMenuItems(), and AddWindowMenuItems().

Here is the call graph for this function:

◆ HasMultipleSessions()

bool yaze::editor::MenuOrchestrator::HasMultipleSessions ( ) const
private

Definition at line 1307 of file menu_orchestrator.cc.

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

Referenced by AddWindowMenuItems().

Here is the call graph for this function:

◆ GetRomFilename()

std::string yaze::editor::MenuOrchestrator::GetRomFilename ( ) const
private

Definition at line 1312 of file menu_orchestrator.cc.

References editor_manager_, yaze::editor::EditorManager::GetCurrentRom(), yaze::editor::RomFileManager::GetRomFilename(), and rom_manager_.

Here is the call graph for this function:

◆ GetProjectName()

std::string yaze::editor::MenuOrchestrator::GetProjectName ( ) const
private

Definition at line 1317 of file menu_orchestrator.cc.

References yaze::editor::ProjectManager::GetProjectName(), and project_manager_.

Here is the call graph for this function:

◆ GetCurrentEditorName()

std::string yaze::editor::MenuOrchestrator::GetCurrentEditorName ( ) const
private
Todo
Get current editor name

Definition at line 1321 of file menu_orchestrator.cc.

◆ GetShortcutForAction()

std::string yaze::editor::MenuOrchestrator::GetShortcutForAction ( const std::string & action) const
private
Todo
Implement shortcut mapping

Definition at line 1327 of file menu_orchestrator.cc.

◆ RegisterGlobalShortcuts()

void yaze::editor::MenuOrchestrator::RegisterGlobalShortcuts ( )
private
Todo
Register global keyboard shortcuts

Definition at line 1333 of file menu_orchestrator.cc.

Member Data Documentation

◆ editor_manager_

◆ menu_builder_

◆ rom_manager_

RomFileManager& yaze::editor::MenuOrchestrator::rom_manager_
private

◆ project_manager_

ProjectManager& yaze::editor::MenuOrchestrator::project_manager_
private

Definition at line 187 of file menu_orchestrator.h.

Referenced by CanSaveProject(), GetProjectName(), and HasActiveProject().

◆ editor_registry_

EditorRegistry& yaze::editor::MenuOrchestrator::editor_registry_
private

Definition at line 188 of file menu_orchestrator.h.

◆ session_coordinator_

SessionCoordinator& yaze::editor::MenuOrchestrator::session_coordinator_
private

◆ toast_manager_

◆ popup_manager_

◆ panel_manager_

PanelManager* yaze::editor::MenuOrchestrator::panel_manager_ = nullptr
private

◆ status_bar_

StatusBar* yaze::editor::MenuOrchestrator::status_bar_ = nullptr
private

Definition at line 195 of file menu_orchestrator.h.

Referenced by AddAppearanceMenuItems(), and SetStatusBar().

◆ user_settings_

UserSettings* yaze::editor::MenuOrchestrator::user_settings_ = nullptr
private

Definition at line 196 of file menu_orchestrator.h.

Referenced by AddAppearanceMenuItems(), and SetUserSettings().

◆ menu_needs_refresh_

bool yaze::editor::MenuOrchestrator::menu_needs_refresh_ = false
private

Definition at line 199 of file menu_orchestrator.h.

Referenced by BuildMainMenu(), and RefreshMenu().


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