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 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 OnShowEmulator ()
 
void OnShowPanelBrowser ()
 
void OnShowWelcomeScreen ()
 
void OnCreateNewSession ()
 
void OnDuplicateCurrentSession ()
 
void OnCloseCurrentSession ()
 
void OnSwitchToSession (size_t session_index)
 
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 OnShowKeyboardShortcuts ()
 
void OnShowUserGuide ()
 
void OnShowGettingStarted ()
 
void OnShowAsarIntegration ()
 
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 AddToolsMenuItems ()
 
void AddWindowMenuItems ()
 
void AddHelpMenuItems ()
 
void AddPanelsSubmenu ()
 
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 29 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 60 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 124 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 160 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:

◆ BuildToolsMenu()

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

Definition at line 295 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 401 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 516 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 547 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 551 of file menu_orchestrator.cc.

References menu_needs_refresh_.

◆ OnOpenRom()

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

Definition at line 556 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 582 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 586 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 598 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 624 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 636 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 643 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()

void yaze::editor::MenuOrchestrator::OnUndo ( )

Definition at line 651 of file menu_orchestrator.cc.

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

Referenced by AddEditMenuItems().

Here is the call graph for this function:

◆ OnRedo()

void yaze::editor::MenuOrchestrator::OnRedo ( )

Definition at line 665 of file menu_orchestrator.cc.

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

Referenced by AddEditMenuItems().

Here is the call graph for this function:

◆ OnCut()

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

Definition at line 679 of file menu_orchestrator.cc.

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

Referenced by AddEditMenuItems().

Here is the call graph for this function:

◆ OnCopy()

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

Definition at line 692 of file menu_orchestrator.cc.

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

Referenced by AddEditMenuItems().

Here is the call graph for this function:

◆ OnPaste()

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

Definition at line 706 of file menu_orchestrator.cc.

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

Referenced by AddEditMenuItems().

Here is the call graph for this function:

◆ OnFind()

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

Definition at line 720 of file menu_orchestrator.cc.

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

Referenced by AddEditMenuItems().

Here is the call graph for this function:

◆ OnSwitchToEditor()

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

Definition at line 735 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 742 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 751 of file menu_orchestrator.cc.

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

Referenced by AddViewMenuItems().

Here is the call graph for this function:

◆ OnShowHexEditor()

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

◆ OnShowEmulator()

void yaze::editor::MenuOrchestrator::OnShowEmulator ( )

Definition at line 763 of file menu_orchestrator.cc.

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

Here is the call graph for this function:

◆ OnShowPanelBrowser()

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

Definition at line 771 of file menu_orchestrator.cc.

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

Referenced by AddViewMenuItems(), and AddWindowMenuItems().

Here is the call graph for this function:

◆ OnShowWelcomeScreen()

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

Definition at line 779 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:

◆ OnCreateNewSession()

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

Definition at line 814 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 818 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 822 of file menu_orchestrator.cc.

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

Referenced by AddWindowMenuItems().

Here is the call graph for this function:

◆ OnSwitchToSession()

void yaze::editor::MenuOrchestrator::OnSwitchToSession ( size_t session_index)

Definition at line 826 of file menu_orchestrator.cc.

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

Here is the call graph for this function:

◆ OnShowSessionSwitcher()

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

Definition at line 830 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 839 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 844 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 853 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 870 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 877 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 884 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 888 of file menu_orchestrator.cc.

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

Here is the call graph for this function:

◆ OnLoadDesignerLayout()

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

Definition at line 894 of file menu_orchestrator.cc.

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

Here is the call graph for this function:

◆ OnLoadModderLayout()

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

Definition at line 900 of file menu_orchestrator.cc.

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

Here is the call graph for this function:

◆ OnShowGlobalSearch()

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

Definition at line 907 of file menu_orchestrator.cc.

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

Referenced by AddToolsMenuItems().

Here is the call graph for this function:

◆ OnShowCommandPalette()

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

Definition at line 915 of file menu_orchestrator.cc.

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

Referenced by AddToolsMenuItems().

Here is the call graph for this function:

◆ OnShowPerformanceDashboard()

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

Definition at line 923 of file menu_orchestrator.cc.

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

Referenced by AddToolsMenuItems().

Here is the call graph for this function:

◆ OnShowImGuiDemo()

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

Definition at line 931 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 937 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 950 of file menu_orchestrator.cc.

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

Referenced by AddToolsMenuItems().

Here is the call graph for this function:

◆ OnShowRomInfo()

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

Definition at line 1041 of file menu_orchestrator.cc.

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

Referenced by AddFileMenuItems(), and AddToolsMenuItems().

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 ( )

Definition at line 1208 of file menu_orchestrator.cc.

References editor_manager_, yaze::editor::EditorManager::GetCurrentRom(), yaze::editor::kInfo, yaze::editor::ToastManager::Show(), and toast_manager_.

Referenced by AddToolsMenuItems().

Here is the call graph for this function:

◆ OnToggleCustomLoading()

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

Definition at line 1219 of file menu_orchestrator.cc.

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

Referenced by AddToolsMenuItems().

Here is the call graph for this function:

◆ OnToggleAsarPatch()

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

◆ OnLoadAsmFile()

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

Definition at line 1248 of file menu_orchestrator.cc.

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

Referenced by AddToolsMenuItems().

Here is the call graph for this function:

◆ OnShowAssemblyEditor()

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

Definition at line 1253 of file menu_orchestrator.cc.

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

Referenced by AddToolsMenuItems().

Here is the call graph for this function:

◆ OnShowAbout()

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

Definition at line 1004 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:

◆ OnShowKeyboardShortcuts()

void yaze::editor::MenuOrchestrator::OnShowKeyboardShortcuts ( )

◆ OnShowUserGuide()

void yaze::editor::MenuOrchestrator::OnShowUserGuide ( )

◆ OnShowGettingStarted()

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

Definition at line 1008 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:

◆ OnShowAsarIntegration()

void yaze::editor::MenuOrchestrator::OnShowAsarIntegration ( )

Definition at line 1012 of file menu_orchestrator.cc.

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

Here is the call graph for this function:

◆ OnShowBuildInstructions()

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

Definition at line 1016 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 1020 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 1024 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 1028 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 1032 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 1036 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 1078 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 1085 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()

◆ AddToolsMenuItems()

◆ AddWindowMenuItems()

◆ AddHelpMenuItems()

◆ AddPanelsSubmenu()

◆ CanSaveRom()

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

Definition at line 1092 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 1097 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 1106 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 1110 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 1118 of file menu_orchestrator.cc.

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

Referenced by AddEditMenuItems(), and AddWindowMenuItems().

Here is the call graph for this function:

◆ HasMultipleSessions()

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

Definition at line 1122 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 1127 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 1132 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 1136 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 1142 of file menu_orchestrator.cc.

◆ RegisterGlobalShortcuts()

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

Definition at line 1148 of file menu_orchestrator.cc.

Member Data Documentation

◆ editor_manager_

◆ menu_builder_

◆ rom_manager_

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

Definition at line 190 of file menu_orchestrator.h.

Referenced by CanSaveRom(), GetRomFilename(), HasActiveRom(), and OnValidateRom().

◆ project_manager_

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

Definition at line 191 of file menu_orchestrator.h.

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

◆ editor_registry_

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

Definition at line 192 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

Definition at line 198 of file menu_orchestrator.h.

Referenced by AddPanelsSubmenu(), AddViewMenuItems(), and SetPanelManager().

◆ status_bar_

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

Definition at line 199 of file menu_orchestrator.h.

Referenced by AddViewMenuItems(), and SetStatusBar().

◆ user_settings_

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

Definition at line 200 of file menu_orchestrator.h.

Referenced by AddViewMenuItems(), and SetUserSettings().

◆ menu_needs_refresh_

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

Definition at line 203 of file menu_orchestrator.h.

Referenced by BuildMainMenu(), and RefreshMenu().


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