Unified dependency container for all editor types. More...
#include <editor.h>
Public Member Functions | |
| CoreDependencies | GetCoreDeps () const |
| UIDependencies | GetUIDeps () const |
| EditorContext | context () const |
| bool | HasContext () const |
Public Attributes | |
| Rom * | rom = nullptr |
| zelda3::GameData * | game_data = nullptr |
| project::YazeProject * | project = nullptr |
| core::VersionManager * | version_manager = nullptr |
| GlobalEditorContext * | global_context = nullptr |
| size_t | session_id = 0 |
| PanelManager * | panel_manager = nullptr |
| ToastManager * | toast_manager = nullptr |
| UndoManager * | undo_manager = nullptr |
| PopupManager * | popup_manager = nullptr |
| ShortcutManager * | shortcut_manager = nullptr |
| SharedClipboard * | shared_clipboard = nullptr |
| UserSettings * | user_settings = nullptr |
| StatusBar * | status_bar = nullptr |
| gfx::IRenderer * | renderer = nullptr |
| emu::Emulator * | emulator = nullptr |
| void * | custom_data = nullptr |
Unified dependency container for all editor types.
This struct encapsulates all dependencies that editors might need, providing a clean interface for dependency injection. It supports both standard editors and specialized ones (emulator, dungeon) that need additional dependencies like renderers.
Design Philosophy:
Usage:
Composes CoreDependencies (data layer) and UIDependencies (UI layer) with optional renderer/emulator pointers for specialized editors.
All members are accessible directly for backward compatibility.
|
inline |
Definition at line 188 of file editor.h.
References game_data, global_context, project, rom, session_id, and version_manager.
|
inline |
Definition at line 191 of file editor.h.
References panel_manager, popup_manager, shared_clipboard, shortcut_manager, status_bar, toast_manager, undo_manager, and user_settings.
|
inline |
Definition at line 196 of file editor.h.
References game_data, and rom.
Referenced by yaze::editor::Editor::context().
|
inline |
Definition at line 197 of file editor.h.
References game_data, and rom.
Referenced by yaze::editor::Editor::HasContext().
| Rom* yaze::editor::EditorDependencies::rom = nullptr |
Definition at line 165 of file editor.h.
Referenced by yaze::editor::EditorManager::ConfigureEditorDependencies(), context(), GetCoreDeps(), HasContext(), yaze::editor::DungeonEditorV2::Initialize(), yaze::editor::Editor::rom(), yaze::editor::MemoryEditor::SetDependencies(), yaze::editor::MusicEditor::SetDependencies(), and yaze::editor::SettingsPanel::SetDependencies().
| zelda3::GameData* yaze::editor::EditorDependencies::game_data = nullptr |
Definition at line 166 of file editor.h.
Referenced by context(), yaze::editor::Editor::game_data(), GetCoreDeps(), HasContext(), yaze::editor::Editor::SetGameData(), and yaze::editor::DungeonEditorV2::SetGameData().
| project::YazeProject* yaze::editor::EditorDependencies::project = nullptr |
Definition at line 167 of file editor.h.
Referenced by yaze::editor::EditorManager::ConfigureEditorDependencies(), yaze::editor::AssemblyEditor::DrawAssembleMenu(), yaze::editor::AssemblyEditor::DrawCurrentFolder(), yaze::editor::AgentEditor::DrawFeatureFlagPanel(), yaze::editor::AssemblyEditor::DrawFileBrowser(), yaze::editor::AgentEditor::DrawManifestPanel(), yaze::editor::AgentEditor::DrawSramViewerPanel(), GetCoreDeps(), yaze::editor::DungeonEditorV2::Initialize(), yaze::editor::AssemblyEditor::JumpToReference(), yaze::editor::AssemblyEditor::JumpToSymbolDefinition(), yaze::editor::DungeonEditorV2::Load(), yaze::editor::MessageEditor::ResolveExpandedMessageBaseId(), yaze::editor::OverworldEditor::Save(), yaze::editor::DungeonEditorV2::SaveRoomData(), yaze::editor::MusicEditor::SetDependencies(), and yaze::editor::SettingsPanel::SetDependencies().
| core::VersionManager* yaze::editor::EditorDependencies::version_manager = nullptr |
Definition at line 168 of file editor.h.
Referenced by yaze::editor::EditorManager::ConfigureEditorDependencies(), yaze::editor::AssemblyEditor::DrawAssembleMenu(), and GetCoreDeps().
| GlobalEditorContext* yaze::editor::EditorDependencies::global_context = nullptr |
Definition at line 169 of file editor.h.
Referenced by yaze::editor::EditorManager::ConfigureEditorDependencies(), and GetCoreDeps().
| size_t yaze::editor::EditorDependencies::session_id = 0 |
Definition at line 170 of file editor.h.
Referenced by yaze::editor::EditorManager::ConfigureEditorDependencies(), GetCoreDeps(), yaze::editor::MessageEditor::Initialize(), yaze::editor::PaletteEditor::Initialize(), yaze::editor::PaletteEditor::JumpToPalette(), yaze::editor::Editor::MakePanelId(), yaze::editor::Editor::MakePanelTitle(), and yaze::editor::MessageEditor::OpenMessageById().
| PanelManager* yaze::editor::EditorDependencies::panel_manager = nullptr |
Definition at line 173 of file editor.h.
Referenced by yaze::editor::EditorManager::ConfigureEditorDependencies(), yaze::editor::OverworldCanvasRenderer::DrawOverworldCanvas(), yaze::editor::DungeonEditorV2::DrawRoomPanels(), yaze::editor::OverworldCanvasRenderer::DrawTile16Selector(), GetUIDeps(), yaze::editor::DungeonEditorV2::GetViewerForRoom(), yaze::editor::OverworldEditor::HandleKeyboardShortcuts(), yaze::editor::OverworldEditor::HandleTile16Edit(), yaze::editor::AgentEditor::Initialize(), yaze::editor::AssemblyEditor::Initialize(), yaze::editor::DungeonEditorV2::Initialize(), yaze::editor::GraphicsEditor::Initialize(), yaze::editor::ScreenEditor::Initialize(), yaze::editor::MessageEditor::Initialize(), yaze::editor::MusicEditor::Initialize(), yaze::editor::OverworldEditor::Initialize(), yaze::editor::PaletteEditor::Initialize(), yaze::editor::SpriteEditor::Initialize(), yaze::editor::DungeonEditorV2::IsWorkbenchWorkflowEnabled(), yaze::editor::PaletteEditor::JumpToPalette(), yaze::editor::DungeonEditorV2::Load(), yaze::editor::PaletteEditor::Load(), yaze::editor::DungeonEditorV2::OnRoomSelected(), yaze::editor::DungeonEditorV2::OpenGraphicsEditorForObject(), yaze::editor::MessageEditor::OpenMessageById(), yaze::editor::MusicEditor::OpenSong(), yaze::editor::MusicEditor::OpenSongPianoRoll(), yaze::editor::DungeonEditorV2::ProcessPendingSwap(), yaze::editor::DungeonEditorV2::SetAgentMode(), yaze::editor::SettingsPanel::SetDependencies(), yaze::editor::DungeonEditorV2::SetWorkbenchWorkflowMode(), yaze::editor::DungeonEditorV2::ShowPanel(), yaze::editor::OverworldEditor::Update(), and yaze::editor::MusicEditor::Update().
| ToastManager* yaze::editor::EditorDependencies::toast_manager = nullptr |
Definition at line 174 of file editor.h.
Referenced by yaze::editor::EditorManager::ConfigureEditorDependencies(), yaze::editor::AssemblyEditor::DrawAssembleMenu(), yaze::editor::AssemblyEditor::DrawBuildOutput(), yaze::editor::PaletteEditor::DrawControlPanel(), yaze::editor::DungeonEditorV2::DrawRoomTab(), GetUIDeps(), yaze::editor::DungeonEditorV2::HandleObjectPlaced(), yaze::editor::DungeonEditorV2::Initialize(), yaze::editor::DungeonEditorV2::Load(), yaze::editor::PaletteEditor::Load(), yaze::editor::OverworldEditor::Save(), yaze::editor::DungeonEditorV2::SaveAllRooms(), yaze::editor::DungeonEditorV2::SaveRoomData(), and yaze::editor::DungeonEditorV2::SetWorkbenchWorkflowMode().
| UndoManager* yaze::editor::EditorDependencies::undo_manager = nullptr |
Definition at line 175 of file editor.h.
Referenced by GetUIDeps().
| PopupManager* yaze::editor::EditorDependencies::popup_manager = nullptr |
Definition at line 176 of file editor.h.
Referenced by yaze::editor::EditorManager::ConfigureEditorDependencies(), yaze::editor::MessageEditor::DrawExpandedMessageSettings(), and GetUIDeps().
| ShortcutManager* yaze::editor::EditorDependencies::shortcut_manager = nullptr |
Definition at line 177 of file editor.h.
Referenced by yaze::editor::EditorManager::ConfigureEditorDependencies(), GetUIDeps(), and yaze::editor::SettingsPanel::SetDependencies().
| SharedClipboard* yaze::editor::EditorDependencies::shared_clipboard = nullptr |
Definition at line 178 of file editor.h.
Referenced by yaze::editor::EditorManager::ConfigureEditorDependencies(), yaze::editor::OverworldEditor::Copy(), yaze::editor::OverworldEditor::DrawScratchSpacePattern(), GetUIDeps(), and yaze::editor::OverworldEditor::Paste().
| UserSettings* yaze::editor::EditorDependencies::user_settings = nullptr |
Definition at line 179 of file editor.h.
Referenced by yaze::editor::AgentEditor::ApplyUserSettingsDefaults(), yaze::editor::EditorManager::ConfigureEditorDependencies(), yaze::editor::AgentEditor::DrawConfigurationPanel(), GetUIDeps(), yaze::editor::AgentEditor::MaybeAutoDetectLocalProviders(), yaze::editor::AgentEditor::RefreshModelCache(), and yaze::editor::SettingsPanel::SetDependencies().
| StatusBar* yaze::editor::EditorDependencies::status_bar = nullptr |
Definition at line 180 of file editor.h.
Referenced by yaze::editor::EditorManager::ConfigureEditorDependencies(), GetUIDeps(), and yaze::editor::SettingsPanel::SetDependencies().
| gfx::IRenderer* yaze::editor::EditorDependencies::renderer = nullptr |
Definition at line 183 of file editor.h.
Referenced by yaze::editor::EditorManager::ConfigureEditorDependencies(), yaze::editor::DungeonEditorV2::Initialize(), and yaze::editor::OverworldEditor::Initialize().
| emu::Emulator* yaze::editor::EditorDependencies::emulator = nullptr |
Definition at line 184 of file editor.h.
Referenced by yaze::editor::EditorManager::ConfigureEditorDependencies(), and yaze::editor::MusicEditor::SetDependencies().
| void* yaze::editor::EditorDependencies::custom_data = nullptr |
Definition at line 185 of file editor.h.
Referenced by yaze::editor::EditorManager::ConfigureEditorDependencies(), and yaze::editor::DungeonEditorV2::OpenGraphicsEditorForObject().