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
 
 MenuOrchestrator (const MenuOrchestrator &)=delete
 
MenuOrchestratoroperator= (const MenuOrchestrator &)=delete
 
void BuildMainMenu ()
 
void BuildFileMenu ()
 
void BuildEditMenu ()
 
void BuildViewMenu ()
 
void BuildToolsMenu ()
 
void BuildDebugMenu ()
 
void BuildWindowMenu ()
 
void BuildHelpMenu ()
 
void ClearMenu ()
 
void RefreshMenu ()
 
void OnOpenRom ()
 
void OnSaveRom ()
 
void OnSaveRomAs ()
 
void OnCreateProject ()
 
void OnOpenProject ()
 
void OnSaveProject ()
 
void OnSaveProjectAs ()
 
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 OnShowCardBrowser ()
 
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 AddDebugMenuItems ()
 
void AddWindowMenuItems ()
 
void AddHelpMenuItems ()
 
bool CanSaveRom () const
 
bool CanSaveProject () const
 
bool HasActiveRom () const
 
bool HasActiveProject () 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_
 
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 39 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 21 of file menu_orchestrator.cc.

◆ ~MenuOrchestrator()

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

◆ MenuOrchestrator() [2/2]

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

Member Function Documentation

◆ operator=()

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

◆ BuildMainMenu()

◆ BuildFileMenu()

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

Definition at line 58 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 113 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 152 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 219 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:

◆ BuildDebugMenu()

void yaze::editor::MenuOrchestrator::BuildDebugMenu ( )

Definition at line 254 of file menu_orchestrator.cc.

References AddDebugMenuItems(), 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 348 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 405 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 437 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 441 of file menu_orchestrator.cc.

References menu_needs_refresh_.

◆ OnOpenRom()

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

Definition at line 446 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 472 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 476 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 488 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 514 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:

◆ OnUndo()

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

Definition at line 527 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 540 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 553 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 566 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 579 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 592 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 606 of file menu_orchestrator.cc.

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

Referenced by AddViewMenuItems().

Here is the call graph for this function:

◆ OnShowEditorSelection()

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

Definition at line 613 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 622 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 ( )

Definition at line 626 of file menu_orchestrator.cc.

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

Referenced by AddViewMenuItems().

Here is the call graph for this function:

◆ OnShowEmulator()

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

Definition at line 633 of file menu_orchestrator.cc.

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

Referenced by AddViewMenuItems().

Here is the call graph for this function:

◆ OnShowCardBrowser()

void yaze::editor::MenuOrchestrator::OnShowCardBrowser ( )

Definition at line 639 of file menu_orchestrator.cc.

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

Referenced by AddViewMenuItems().

Here is the call graph for this function:

◆ OnShowWelcomeScreen()

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

Definition at line 645 of file menu_orchestrator.cc.

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

Referenced by AddViewMenuItems().

Here is the call graph for this function:

◆ OnCreateNewSession()

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

Definition at line 672 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 676 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 680 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 684 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 688 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 ( )
Todo:
Show session manager dialog

Definition at line 697 of file menu_orchestrator.cc.

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

Referenced by AddWindowMenuItems().

Here is the call graph for this function:

◆ OnShowAllWindows()

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

Definition at line 703 of file menu_orchestrator.cc.

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

Referenced by AddWindowMenuItems().

Here is the call graph for this function:

◆ OnHideAllWindows()

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

Definition at line 710 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 ( )

Definition at line 717 of file menu_orchestrator.cc.

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

Referenced by AddWindowMenuItems().

Here is the call graph for this function:

◆ OnSaveWorkspaceLayout()

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

Definition at line 724 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 731 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 ( )
Todo:
Show layout presets dialog

Definition at line 738 of file menu_orchestrator.cc.

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

Referenced by AddWindowMenuItems().

Here is the call graph for this function:

◆ OnLoadDeveloperLayout()

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

Definition at line 743 of file menu_orchestrator.cc.

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

Referenced by AddWindowMenuItems().

Here is the call graph for this function:

◆ OnLoadDesignerLayout()

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

Definition at line 749 of file menu_orchestrator.cc.

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

Referenced by AddWindowMenuItems().

Here is the call graph for this function:

◆ OnLoadModderLayout()

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

Definition at line 755 of file menu_orchestrator.cc.

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

Referenced by AddWindowMenuItems().

Here is the call graph for this function:

◆ OnShowGlobalSearch()

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

Definition at line 762 of file menu_orchestrator.cc.

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

Referenced by AddEditMenuItems(), and AddToolsMenuItems().

Here is the call graph for this function:

◆ OnShowCommandPalette()

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

Definition at line 768 of file menu_orchestrator.cc.

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

Referenced by AddToolsMenuItems().

Here is the call graph for this function:

◆ OnShowPerformanceDashboard()

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

Definition at line 774 of file menu_orchestrator.cc.

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

Referenced by AddDebugMenuItems().

Here is the call graph for this function:

◆ OnShowImGuiDemo()

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

Definition at line 780 of file menu_orchestrator.cc.

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

Referenced by AddDebugMenuItems().

Here is the call graph for this function:

◆ OnShowImGuiMetrics()

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

Definition at line 786 of file menu_orchestrator.cc.

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

Referenced by AddDebugMenuItems().

Here is the call graph for this function:

◆ OnShowMemoryEditor()

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

Definition at line 792 of file menu_orchestrator.cc.

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

Referenced by AddDebugMenuItems().

Here is the call graph for this function:

◆ OnShowResourceLabelManager()

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

Definition at line 798 of file menu_orchestrator.cc.

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

Referenced by AddToolsMenuItems().

Here is the call graph for this function:

◆ OnShowRomInfo()

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

Definition at line 887 of file menu_orchestrator.cc.

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

Referenced by AddDebugMenuItems(), and AddFileMenuItems().

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 1039 of file menu_orchestrator.cc.

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

Referenced by AddDebugMenuItems().

Here is the call graph for this function:

◆ OnToggleCustomLoading()

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

Definition at line 1049 of file menu_orchestrator.cc.

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

Referenced by AddDebugMenuItems().

Here is the call graph for this function:

◆ OnToggleAsarPatch()

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

◆ OnLoadAsmFile()

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

Definition at line 1073 of file menu_orchestrator.cc.

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

Referenced by AddDebugMenuItems().

Here is the call graph for this function:

◆ OnShowAssemblyEditor()

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

Definition at line 1077 of file menu_orchestrator.cc.

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

Referenced by AddDebugMenuItems().

Here is the call graph for this function:

◆ OnShowAbout()

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

Definition at line 850 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 854 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 858 of file menu_orchestrator.cc.

References yaze::editor::PopupID::kAsarIntegration, 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 862 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 866 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 870 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 874 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 878 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 882 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 924 of file menu_orchestrator.cc.

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

Referenced by AddFileMenuItems().

Here is the call graph for this function:

◆ OnQuit()

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

Definition at line 931 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()

◆ AddDebugMenuItems()

◆ AddWindowMenuItems()

◆ AddHelpMenuItems()

◆ CanSaveRom()

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

Definition at line 938 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 943 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 952 of file menu_orchestrator.cc.

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

Here is the call graph for this function:

◆ HasCurrentEditor()

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

Definition at line 956 of file menu_orchestrator.cc.

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

Referenced by AddEditMenuItems().

Here is the call graph for this function:

◆ HasMultipleSessions()

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

Definition at line 960 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 965 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 970 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 974 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 980 of file menu_orchestrator.cc.

◆ RegisterGlobalShortcuts()

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

Definition at line 985 of file menu_orchestrator.cc.

Member Data Documentation

◆ editor_manager_

◆ menu_builder_

◆ rom_manager_

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

Definition at line 184 of file menu_orchestrator.h.

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

◆ project_manager_

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

Definition at line 185 of file menu_orchestrator.h.

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

◆ editor_registry_

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

Definition at line 186 of file menu_orchestrator.h.

◆ session_coordinator_

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

◆ toast_manager_

◆ popup_manager_

◆ menu_needs_refresh_

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

Definition at line 192 of file menu_orchestrator.h.

Referenced by BuildMainMenu(), and RefreshMenu().


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