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 OnShowLayoutDesigner ()
 
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 28 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 59 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 120 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 156 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 272 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 380 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 484 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 514 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 518 of file menu_orchestrator.cc.

References menu_needs_refresh_.

◆ OnOpenRom()

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

Definition at line 523 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 549 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 553 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 565 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 591 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 603 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 610 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 618 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 632 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 646 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 659 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 673 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 687 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 702 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 709 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 718 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 729 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 737 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 745 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:

◆ OnShowLayoutDesigner()

void yaze::editor::MenuOrchestrator::OnShowLayoutDesigner ( )

Definition at line 753 of file menu_orchestrator.cc.

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

Referenced by AddToolsMenuItems().

Here is the call graph for this function:

◆ OnCreateNewSession()

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

Definition at line 787 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 791 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 795 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 799 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 803 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 812 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 817 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 826 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 843 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 850 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 857 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 861 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 867 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 873 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 880 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 888 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 896 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 904 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 910 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 922 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 1013 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 1179 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 1190 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 1219 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 1224 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 976 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 980 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 984 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 988 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 992 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 996 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 1000 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 1004 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 1008 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 1050 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 1057 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 1064 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 1069 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 1078 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 1082 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 1089 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 1093 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 1098 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 1103 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 1107 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 1113 of file menu_orchestrator.cc.

◆ RegisterGlobalShortcuts()

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

Definition at line 1119 of file menu_orchestrator.cc.

Member Data Documentation

◆ editor_manager_

◆ menu_builder_

◆ rom_manager_

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

Definition at line 191 of file menu_orchestrator.h.

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

◆ project_manager_

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

Definition at line 192 of file menu_orchestrator.h.

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

◆ editor_registry_

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

Definition at line 193 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 199 of file menu_orchestrator.h.

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

◆ status_bar_

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

Definition at line 200 of file menu_orchestrator.h.

Referenced by AddViewMenuItems(), and SetStatusBar().

◆ user_settings_

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

Definition at line 201 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 204 of file menu_orchestrator.h.

Referenced by BuildMainMenu(), and RefreshMenu().


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