1#ifndef YAZE_APP_EDITOR_LAYOUT_LAYOUT_ORCHESTRATOR_H_
2#define YAZE_APP_EDITOR_LAYOUT_LAYOUT_ORCHESTRATOR_H_
58 size_t session_id = 0);
74 size_t session_id = 0)
const;
131 size_t session_id)
const;
Manages ImGui DockBuilder layouts for each editor type.
Coordinates between LayoutManager, PanelManager, and LayoutPresets.
std::vector< std::string > GetVisiblePanels(size_t session_id) const
Get all visible panels for a session.
void ResetToDefault(EditorType type, size_t session_id=0)
Reset to default layout for an editor type.
bool IsInitialized() const
Check if orchestrator is properly initialized.
PanelManager * panel_manager()
Get the card registry.
void ApplyDockLayout(EditorType type)
Apply DockBuilder layout for an editor type.
void RequestLayoutRebuild()
Request layout rebuild on next frame.
LayoutOrchestrator()=default
PanelManager * panel_manager_
std::string GetPrefixedPanelId(const std::string &card_id, size_t session_id) const
Get prefixed card ID for a session.
LayoutManager * layout_manager_
void ApplyPreset(EditorType type, size_t session_id=0)
Apply the default layout preset for an editor type.
void HideOptionalPanels(EditorType type, size_t session_id=0)
Hide all optional panels for an editor type.
void ApplyNamedPreset(const std::string &preset_name, size_t session_id=0)
Apply a named workspace preset (Developer, Designer, Modder)
LayoutManager * layout_manager()
Get the layout manager.
void Initialize(LayoutManager *layout_manager, PanelManager *panel_manager)
Initialize with dependencies.
std::string GetWindowTitle(const std::string &card_id, size_t session_id=0) const
Get window title for a card from the registry.
void ShowPresetPanels(const PanelLayoutPreset &preset, size_t session_id, EditorType editor_type)
Show panels specified in a preset.
Central registry for all editor cards with session awareness and dependency injection.
Defines default panel visibility for an editor type.