1#ifndef YAZE_APP_EDITOR_MENU_RIGHT_PANEL_MANAGER_H_
2#define YAZE_APP_EDITOR_MENU_RIGHT_PANEL_MANAGER_H_
8#include "imgui/imgui.h"
29class SelectionPropertiesPanel;
30class ProjectManagementPanel;
200 bool default_open =
true);
The Rom class is used to load, save, and modify Rom data. This is a generic SNES ROM container and do...
Unified Agent Chat Component.
Panel for managing project settings, ROM versions, and snapshots.
ImGui drawer for displaying and managing agent proposals.
Manages right-side sliding panels for agent chat, proposals, settings.
void SetSettingsPanel(SettingsPanel *panel)
void Draw()
Draw the panel and its contents.
void SetPropertiesPanel(SelectionPropertiesPanel *panel)
void DrawEditorSpecificShortcuts()
float notifications_width_
float GetPanelWidth() const
Get the width of the panel when expanded.
void DrawPropertiesPanel()
ProposalDrawer * proposal_drawer() const
void SetAgentChat(AgentChat *chat)
void ClosePanel()
Close the currently active panel.
void SetActiveEditor(EditorType type)
Set the active editor for context-aware help content.
AgentChat * agent_chat() const
void DrawPanelValue(const char *label, const char *value)
void SetPanelWidth(PanelType type, float width)
Set panel width for a specific panel type.
SelectionPropertiesPanel * properties_panel() const
static constexpr float GetCollapsedWidth()
Get the width of the collapsed panel strip (toggle buttons)
void DrawEditorSpecificHelp()
ToastManager * toast_manager_
~RightPanelManager()=default
RightPanelManager()=default
EditorType active_editor_type_
void TogglePanel(PanelType type)
Toggle a specific panel on/off.
bool BeginPanelSection(const char *label, const char *icon=nullptr, bool default_open=true)
PanelType GetActivePanel() const
Get the currently active panel type.
ProposalDrawer * proposal_drawer_
SettingsPanel * settings_panel() const
void DrawGlobalShortcuts()
void SetProposalDrawer(ProposalDrawer *drawer)
bool IsPanelExpanded() const
Check if any panel is currently expanded.
bool DrawPanelToggleButtons()
Draw toggle buttons for the status cluster.
bool IsPanelActive(PanelType type) const
Check if a specific panel is active.
RightPanelManager & operator=(const RightPanelManager &)=delete
void DrawNotificationsPanel()
void OpenPanel(PanelType type)
Open a specific panel.
void DrawPanelLabel(const char *label)
void DrawProposalsPanel()
SelectionPropertiesPanel * properties_panel_
ProjectManagementPanel * project_panel() const
void SetProjectManagementPanel(ProjectManagementPanel *panel)
void DrawPanelDescription(const char *text)
void DrawEditorContextHeader()
RightPanelManager(const RightPanelManager &)=delete
void DrawPanelHeader(const char *title, const char *icon)
void DrawAgentChatPanel()
ProjectManagementPanel * project_panel_
void DrawQuickActionButtons()
void SetToastManager(ToastManager *manager)
SettingsPanel * settings_panel_
Full-editing properties panel for selected entities.
Manages the settings UI displayed in the right sidebar.
const char * GetPanelTypeName(RightPanelManager::PanelType type)
Get the name of a panel type.
const char * GetPanelTypeIcon(RightPanelManager::PanelType type)
Get the icon for a panel type.