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

Unified dependency container for all editor types. More...

#include <editor.h>

Classes

struct  SharedClipboard
 

Public Attributes

Romrom = nullptr
 
EditorCardRegistrycard_registry = nullptr
 
ToastManagertoast_manager = nullptr
 
PopupManagerpopup_manager = nullptr
 
ShortcutManagershortcut_manager = nullptr
 
SharedClipboardshared_clipboard = nullptr
 
UserSettingsuser_settings = nullptr
 
size_t session_id = 0
 
gfx::IRendererrenderer = nullptr
 
void * custom_data = nullptr
 

Detailed Description

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:

  • Single point of dependency management
  • Type-safe for common dependencies
  • Extensible via custom_data for editor-specific needs
  • Session-aware for multi-session support

Usage:

deps.rom = current_rom;
deps.card_registry = &card_registry_;
deps.session_id = session_index;
// Standard editor
OverworldEditor editor(deps);
// Specialized editor with renderer
deps.renderer = renderer_;
DungeonEditor dungeon_editor(deps);
Manipulates the Overworld and OverworldMap data in a Rom.
Unified dependency container for all editor types.
Definition editor.h:64
gfx::IRenderer * renderer
Definition editor.h:88
EditorCardRegistry * card_registry
Definition editor.h:80

Definition at line 64 of file editor.h.

Member Data Documentation

◆ rom

Rom* yaze::editor::EditorDependencies::rom = nullptr

◆ card_registry

◆ toast_manager

ToastManager* yaze::editor::EditorDependencies::toast_manager = nullptr

Definition at line 81 of file editor.h.

Referenced by yaze::editor::EditorManager::ConfigureEditorDependencies().

◆ popup_manager

PopupManager* yaze::editor::EditorDependencies::popup_manager = nullptr

◆ shortcut_manager

ShortcutManager* yaze::editor::EditorDependencies::shortcut_manager = nullptr

Definition at line 83 of file editor.h.

Referenced by yaze::editor::EditorManager::ConfigureEditorDependencies().

◆ shared_clipboard

◆ user_settings

UserSettings* yaze::editor::EditorDependencies::user_settings = nullptr

Definition at line 85 of file editor.h.

Referenced by yaze::editor::EditorManager::ConfigureEditorDependencies().

◆ session_id

size_t yaze::editor::EditorDependencies::session_id = 0

◆ renderer

gfx::IRenderer* yaze::editor::EditorDependencies::renderer = nullptr

Definition at line 88 of file editor.h.

Referenced by yaze::editor::EditorManager::ConfigureEditorDependencies().

◆ custom_data

void* yaze::editor::EditorDependencies::custom_data = nullptr

Definition at line 90 of file editor.h.


The documentation for this struct was generated from the following file: