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

#include <dungeon_workbench_content.h>

Inheritance diagram for yaze::editor::DungeonWorkbenchContent:

Public Types

enum class  RoomInspectorSubTab : uint8_t { Mechanics , Warps , TagsAndChests }
 
using RoomLabelEditCallback
 

Public Member Functions

 DungeonWorkbenchContent (DungeonRoomSelector *room_selector, int *current_room_id, std::function< void(int)> on_room_selected, std::function< void(int, RoomSelectionIntent)> on_room_selected_with_intent, std::function< void(int)> on_save_room, std::function< void()> on_save_all_rooms, std::function< DungeonCanvasViewer *()> get_viewer, std::function< DungeonCanvasViewer *(int)> get_compare_viewer, std::function< const std::deque< int > &()> get_recent_rooms, std::function< void(int)> forget_recent_room, std::function< void(bool)> set_workflow_mode, Rom *rom=nullptr)
 
 ~DungeonWorkbenchContent () override
 
std::string GetId () const override
 Unique identifier for this panel.
 
std::string GetDisplayName () const override
 Human-readable name shown in menus and title bars.
 
std::string GetIcon () const override
 Material Design icon for this panel.
 
std::string GetEditorCategory () const override
 Editor category this panel belongs to.
 
int GetPriority () const override
 Get display priority for menu ordering.
 
std::string GetWorkflowGroup () const override
 Optional workflow group for hack-centric actions.
 
void SetRom (Rom *rom)
 
void SetEmbeddedToolPanels (RoomTagEditorPanel *room_tags, CustomCollisionPanel *custom_collision, WaterFillPanel *water_fill, MinecartTrackEditorPanel *minecart_tracks)
 
void SetObjectCoverageContent (WindowContent *object_coverage)
 
void SetEmbeddedEditorPanels (WindowContent *object_selector, WindowContent *door_editor, WindowContent *sprite_editor, WindowContent *item_editor, WindowContent *room_graphics, WindowContent *palette_editor)
 
void SetNavigationPanels (RoomMatrixContent *room_matrix, DungeonEntrancesPanel *entrances)
 
void SetRoomRenderContextCallback (std::function< void(int)> callback)
 
void SetRoomLabelEditCallback (RoomLabelEditCallback callback)
 
void SetStandaloneToolCallbacks (std::function< bool(const std::string &)> is_window_open, std::function< bool(const std::string &)> open_and_focus_window)
 
void SetOpenKeyboardShortcutsCallback (std::function< void()> callback)
 
void SetPitDamageTableProvider (std::function< zelda3::PitDamageTable *()> provider, std::function< void()> on_change={})
 
void FocusRoomInspector ()
 
void FocusSelectionInspector ()
 
void FocusRoomMatrix ()
 
void FocusEntranceBrowser ()
 
void ShowConnectedGraph ()
 
void RequestDungeonMapPopup ()
 
void RequestProposalPreview ()
 
bool LoadProposalOverlay (const std::string &path)
 
const std::string & loaded_proposal_path () const
 
const std::optional< DungeonProposalOverlay > & proposal_overlay () const
 
const std::string & proposal_error () const
 
void OpenObjectSelectorTool ()
 
void OpenDoorTool ()
 
void OpenSpriteTool ()
 
void OpenItemTool ()
 
void OpenRoomGraphicsTool ()
 
void OpenPaletteTool ()
 
void OpenRoomTagsTool ()
 
void OpenCustomCollisionTool ()
 
void OpenWaterFillTool ()
 
void OpenMinecartTool ()
 
void OpenObjectCoverageTool ()
 
bool PopOutActiveTool ()
 
void SetPrimaryCanvasDrawnCallback (std::function< void(DungeonCanvasViewer &)> cb)
 
void SetRoomInspectorSubTab (RoomInspectorSubTab tab)
 
RoomInspectorSubTab room_inspector_sub_tab () const
 
bool IsToolInspectorActiveForTesting () const
 
const char * GetInspectorModeIdForTesting () const
 
const char * GetActiveToolIdForTesting () const
 
const char * GetSidebarModeIdForTesting () const
 
void DrawPitDamageControlsForTesting (int room_id)
 
const DungeonWorkbenchPitDamageControlRects & GetPitDamageControlRectsForTesting () const
 
void SetAllSaveFlagsForTesting (bool value)
 
void NotifyRoomChanged (int previous_room_id)
 Called by the editor when the current room changes.
 
void SetUndoRedoProvider (std::function< bool()> can_undo, std::function< bool()> can_redo, std::function< void()> on_undo, std::function< void()> on_redo, std::function< std::string()> undo_desc, std::function< std::string()> redo_desc, std::function< int()> undo_depth)
 
void Draw (bool *p_open) override
 Draw the panel content.
 
- Public Member Functions inherited from yaze::editor::WindowContent
virtual ~WindowContent ()=default
 
virtual void OnFirstDraw ()
 Called once before the first Draw() in a session.
 
virtual bool RequiresLazyInit () const
 Whether this panel uses lazy initialization.
 
void InvalidateLazyInit ()
 Reset lazy init state so OnFirstDraw() runs again.
 
virtual void OnOpen ()
 Called when panel becomes visible.
 
virtual void OnClose ()
 Called when panel is hidden.
 
virtual void OnFocus ()
 Called when panel receives focus.
 
virtual WindowLifecycle GetWindowLifecycle () const
 Get the lifecycle category for this window.
 
virtual WindowContextScope GetContextScope () const
 Optional context binding for this window (room/selection/etc)
 
virtual WindowScope GetScope () const
 Get the registration scope for this window.
 
virtual WindowPresentationPolicy GetPresentationPolicy () const
 How this content is hosted and advertised by workspace chrome.
 
virtual bool IsEnabled () const
 Check if this panel is currently enabled.
 
virtual std::string GetDisabledTooltip () const
 Get tooltip text when panel is disabled.
 
virtual std::string GetShortcutHint () const
 Get keyboard shortcut hint for display.
 
virtual std::string GetWorkflowLabel () const
 Optional workflow label for menus/command palette.
 
virtual std::string GetWorkflowDescription () const
 Optional workflow description for menus/command palette.
 
virtual int GetWorkflowPriority () const
 Optional workflow ordering priority (lower sorts first).
 
virtual float GetPreferredWidth () const
 Get preferred width for this panel (optional)
 
virtual bool HasExactPreferredWidth () const
 Whether GetPreferredWidth() is an exact content width.
 
virtual float GetPreferredHeight () const
 Get preferred height for this panel (optional)
 
virtual bool PrefersFloating () const
 
virtual bool PreferAutoHideTabBar () const
 Whether the dock node hosting this panel should auto-hide its tab bar.
 
virtual bool IsVisibleByDefault () const
 Whether this panel should be visible by default.
 
virtual std::string GetParentPanelId () const
 Get parent panel ID for cascade behavior.
 
virtual bool CascadeCloseChildren () const
 Whether closing this panel should close child panels.
 
void DrawWithLazyInit (bool *p_open)
 Execute lazy initialization if needed, then call Draw()
 

Private Types

enum class  WorkbenchTool : uint8_t {
  None , RoomTags , CustomCollision , WaterFill ,
  MinecartTracks , ObjectCoverage , ObjectSelector , DoorEditor ,
  SpriteEditor , ItemEditor , RoomGraphics , Palette
}
 
enum class  SidebarMode : uint8_t {
  Room , Objects , Sprites , Doors ,
  Items , Entrance , Tools
}
 
enum class  InspectorMode : uint8_t { Inspect , Tools }
 

Private Member Functions

void DrawSidebarPane (float width, float height, float button_size, bool compact)
 
void DrawSidebarHeader (float button_size, bool compact)
 
void DrawSidebarModeTabs ()
 
void DrawSidebarContent ()
 
void DrawCanvasPane (float width, float height, DungeonCanvasViewer *primary_viewer)
 
void DrawSplitView (DungeonCanvasViewer &primary_viewer)
 
void DrawInspectorPane (float width, float height, float button_size, bool compact, DungeonCanvasViewer *viewer)
 
void DrawInspectorHeader (float button_size, bool compact)
 
void DrawInspector (DungeonCanvasViewer &viewer, bool compact)
 
void DrawInspectorShelf (DungeonCanvasViewer &viewer, bool compact)
 
void DrawInspectorShelfRoom (DungeonCanvasViewer &viewer)
 
void DrawRoomContextHeader (DungeonCanvasViewer &viewer)
 
void DrawRoomContextRow (DungeonCanvasViewer &viewer)
 
void DrawLayoutOptions ()
 
void DrawInspectorShelfSelection (DungeonCanvasViewer &viewer)
 
bool DrawObjectPlacementInspector (DungeonCanvasViewer &viewer)
 
void DrawSelectedObjectActions (DungeonCanvasViewer &viewer, size_t index)
 
void DrawInspectorToolPanel (DungeonCanvasViewer &viewer)
 
void DrawInspectorToolPicker ()
 
void DrawWorkbenchTool (DungeonCanvasViewer &viewer, WorkbenchTool tool)
 
void OpenTool (WorkbenchTool tool)
 
void CloseToolInspector ()
 
WindowContent * GetWorkbenchToolContent (WorkbenchTool tool) const
 
bool IsStandaloneToolOpen (WorkbenchTool tool) const
 
bool IsWorkbenchToolAvailable (WorkbenchTool tool) const
 
const char * GetWorkbenchToolId (WorkbenchTool tool) const
 
const char * GetWorkbenchToolShortLabel (WorkbenchTool tool) const
 
const char * GetWorkbenchToolUnavailableMessage (WorkbenchTool tool) const
 
void DrawApplyScopeControls (int room_id)
 
void DrawPitDamageControls (int room_id, bool compact=false)
 
void DrawDungeonMapPopup (DungeonCanvasViewer &viewer)
 
void DrawProposalPreviewWindow (DungeonCanvasViewer &viewer)
 
DungeonMapPanel * GetEmbeddedDungeonMap (DungeonCanvasViewer &viewer)
 
void SetAllSaveFlags (bool value)
 
void BuildRoomDungeonCache ()
 

Private Attributes

DungeonRoomSelector * room_selector_ = nullptr
 
int * current_room_id_ = nullptr
 
int previous_room_id_ = -1
 
bool split_view_enabled_ = false
 
int compare_room_id_ = -1
 
DungeonWorkbenchLayoutState layout_state_ {}
 
std::function< void(int)> on_room_selected_
 
std::function< void(int, RoomSelectionIntent)> on_room_selected_with_intent_
 
std::function< void(int)> on_save_room_
 
std::function< void()> on_save_all_rooms_
 
std::function< DungeonCanvasViewer *()> get_viewer_
 
std::function< DungeonCanvasViewer *(int)> get_compare_viewer_
 
std::function< const std::deque< int > &()> get_recent_rooms_
 
std::function< void(int)> forget_recent_room_
 
std::function< void(bool)> set_workflow_mode_
 
std::function< bool(const std::string &) is_standalone_tool_open_ )
 
std::function< bool(const std::string &) open_and_focus_standalone_tool_ )
 
std::function< void()> open_keyboard_shortcuts_
 
std::function< void(DungeonCanvasViewer &) on_primary_canvas_drawn_ )
 
std::function< void(int)> prepare_room_render_context_
 
RoomLabelEditCallback room_label_edit_callback_
 
char room_rename_buffer_ [128] = {}
 
std::string room_rename_error_
 
std::function< zelda3::PitDamageTable *()> get_pit_damage_table_
 
std::function< void()> on_pit_damage_changed_
 
Rom * rom_ = nullptr
 
SidebarMode sidebar_mode_ = SidebarMode::Room
 
float navigator_tools_fraction_ = 0.30f
 
bool show_room_matrix_ = true
 
RoomInspectorSubTab room_inspector_sub_tab_ = RoomInspectorSubTab::Mechanics
 
InspectorMode inspector_mode_ = InspectorMode::Inspect
 
WorkbenchTool active_tool_ = WorkbenchTool::ObjectSelector
 
char compare_search_buf_ [64] = {}
 
std::unordered_map< int, std::string > room_dungeon_cache_
 
bool room_dungeon_cache_built_ = false
 
std::function< bool()> can_undo_
 
std::function< bool()> can_redo_
 
std::function< void()> on_undo_
 
std::function< void()> on_redo_
 
std::function< std::string()> undo_desc_
 
std::function< std::string()> redo_desc_
 
std::function< int()> undo_depth_
 
bool open_dungeon_map_popup_ = false
 
bool show_proposal_preview_ = false
 
char proposal_path_ [1024] = {}
 
std::optional< DungeonProposalOverlay > proposal_overlay_
 
std::string proposal_error_
 
std::string loaded_proposal_path_
 
std::vector< char > proposal_layer_visible_
 
bool proposal_show_overlay_ = true
 
float proposal_scale_ = 1.0f
 
uint16_t pit_damage_replacement_room_id_ = 0
 
uint16_t pit_damage_victim_room_id_ = 0
 
int pit_damage_chooser_room_id_ = -1
 
std::string pit_damage_status_message_
 
bool pit_damage_status_error_ = false
 
DungeonWorkbenchPitDamageControlRects pit_damage_control_rects_ {}
 
std::unique_ptr< DungeonMapPanel > embedded_dungeon_map_
 
RoomTagEditorPanel * room_tag_panel_ = nullptr
 
CustomCollisionPanel * custom_collision_panel_ = nullptr
 
WaterFillPanel * water_fill_panel_ = nullptr
 
MinecartTrackEditorPanel * minecart_track_panel_ = nullptr
 
WindowContent * object_coverage_content_ = nullptr
 
WindowContent * object_selector_content_ = nullptr
 
WindowContent * door_editor_content_ = nullptr
 
WindowContent * sprite_editor_content_ = nullptr
 
WindowContent * item_editor_content_ = nullptr
 
WindowContent * room_graphics_content_ = nullptr
 
WindowContent * palette_editor_content_ = nullptr
 
RoomMatrixContent * room_matrix_content_ = nullptr
 
DungeonEntrancesPanel * entrance_navigator_content_ = nullptr
 

Friends

class DungeonWorkbenchContentTestPeer
 

Additional Inherited Members

- Protected Member Functions inherited from yaze::editor::WindowContent
void InvalidateCache ()
 Invalidate all cached computations.
 
template<typename T >
T & GetCached (const std::string &key, std::function< T()> compute)
 Get or compute a cached value.
 
bool IsCacheValid () const
 Check if cache has been invalidated.
 
void ClearCache ()
 Clear all cached values (more aggressive than InvalidateCache)
 

Detailed Description

Definition at line 90 of file dungeon_workbench_content.h.

Member Typedef Documentation

◆ RoomLabelEditCallback

Initial value:
std::function<absl::Status(int, std::optional<std::string>)>

Definition at line 138 of file dungeon_workbench_content.h.

Member Enumeration Documentation

◆ RoomInspectorSubTab

Enumerator
Mechanics 
Warps 
TagsAndChests 

Definition at line 193 of file dungeon_workbench_content.h.

◆ WorkbenchTool

enum class yaze::editor::DungeonWorkbenchContent::WorkbenchTool : uint8_t
strongprivate
Enumerator
None 
RoomTags 
CustomCollision 
WaterFill 
MinecartTracks 
ObjectCoverage 
ObjectSelector 
DoorEditor 
SpriteEditor 
ItemEditor 
RoomGraphics 
Palette 

Definition at line 242 of file dungeon_workbench_content.h.

◆ SidebarMode

enum class yaze::editor::DungeonWorkbenchContent::SidebarMode : uint8_t
strongprivate
Enumerator
Room 
Objects 
Sprites 
Doors 
Items 
Entrance 
Tools 

Definition at line 328 of file dungeon_workbench_content.h.

◆ InspectorMode

enum class yaze::editor::DungeonWorkbenchContent::InspectorMode : uint8_t
strongprivate
Enumerator
Inspect 
Tools 

Definition at line 343 of file dungeon_workbench_content.h.

Constructor & Destructor Documentation

◆ DungeonWorkbenchContent()

yaze::editor::DungeonWorkbenchContent::DungeonWorkbenchContent ( DungeonRoomSelector * room_selector,
int * current_room_id,
std::function< void(int)> on_room_selected,
std::function< void(int, RoomSelectionIntent)> on_room_selected_with_intent,
std::function< void(int)> on_save_room,
std::function< void()> on_save_all_rooms,
std::function< DungeonCanvasViewer *()> get_viewer,
std::function< DungeonCanvasViewer *(int)> get_compare_viewer,
std::function< const std::deque< int > &()> get_recent_rooms,
std::function< void(int)> forget_recent_room,
std::function< void(bool)> set_workflow_mode,
Rom * rom = nullptr )

Definition at line 244 of file dungeon_workbench_content.cc.

◆ ~DungeonWorkbenchContent()

yaze::editor::DungeonWorkbenchContent::~DungeonWorkbenchContent ( )
overridedefault

Member Function Documentation

◆ GetId()

std::string yaze::editor::DungeonWorkbenchContent::GetId ( ) const
overridevirtual

Unique identifier for this panel.

Returns
Panel ID in format "{category}.{name}" (e.g., "dungeon.room_selector")

IDs should be:

  • Lowercase with underscores
  • Prefixed with editor category
  • Unique across all panels

Implements yaze::editor::WindowContent.

Definition at line 270 of file dungeon_workbench_content.cc.

◆ GetDisplayName()

std::string yaze::editor::DungeonWorkbenchContent::GetDisplayName ( ) const
overridevirtual

Human-readable name shown in menus and title bars.

Returns
Display name (e.g., "Room Selector")

Implements yaze::editor::WindowContent.

Definition at line 273 of file dungeon_workbench_content.cc.

◆ GetIcon()

std::string yaze::editor::DungeonWorkbenchContent::GetIcon ( ) const
overridevirtual

Material Design icon for this panel.

Returns
Icon constant (e.g., ICON_MD_LIST)

Implements yaze::editor::WindowContent.

Definition at line 276 of file dungeon_workbench_content.cc.

References ICON_MD_WORKSPACES.

◆ GetEditorCategory()

std::string yaze::editor::DungeonWorkbenchContent::GetEditorCategory ( ) const
overridevirtual

Editor category this panel belongs to.

Returns
Category name matching EditorType (e.g., "Dungeon", "Overworld")

Implements yaze::editor::WindowContent.

Definition at line 279 of file dungeon_workbench_content.cc.

◆ GetPriority()

int yaze::editor::DungeonWorkbenchContent::GetPriority ( ) const
overridevirtual

Get display priority for menu ordering.

Returns
Priority value (lower = higher in list, default 50)

Reimplemented from yaze::editor::WindowContent.

Definition at line 282 of file dungeon_workbench_content.cc.

◆ GetWorkflowGroup()

std::string yaze::editor::DungeonWorkbenchContent::GetWorkflowGroup ( ) const
inlineoverridevirtual

Optional workflow group for hack-centric actions.

Returns
Non-empty group name to surface this panel in hack workflows.

Reimplemented from yaze::editor::WindowContent.

Definition at line 111 of file dungeon_workbench_content.h.

◆ SetRom()

void yaze::editor::DungeonWorkbenchContent::SetRom ( Rom * rom)

◆ SetEmbeddedToolPanels()

void yaze::editor::DungeonWorkbenchContent::SetEmbeddedToolPanels ( RoomTagEditorPanel * room_tags,
CustomCollisionPanel * custom_collision,
WaterFillPanel * water_fill,
MinecartTrackEditorPanel * minecart_tracks )

◆ SetObjectCoverageContent()

void yaze::editor::DungeonWorkbenchContent::SetObjectCoverageContent ( WindowContent * object_coverage)
inline

◆ SetEmbeddedEditorPanels()

void yaze::editor::DungeonWorkbenchContent::SetEmbeddedEditorPanels ( WindowContent * object_selector,
WindowContent * door_editor,
WindowContent * sprite_editor,
WindowContent * item_editor,
WindowContent * room_graphics,
WindowContent * palette_editor )

◆ SetNavigationPanels()

void yaze::editor::DungeonWorkbenchContent::SetNavigationPanels ( RoomMatrixContent * room_matrix,
DungeonEntrancesPanel * entrances )
inline

◆ SetRoomRenderContextCallback()

void yaze::editor::DungeonWorkbenchContent::SetRoomRenderContextCallback ( std::function< void(int)> callback)
inline

◆ SetRoomLabelEditCallback()

void yaze::editor::DungeonWorkbenchContent::SetRoomLabelEditCallback ( RoomLabelEditCallback callback)
inline

◆ SetStandaloneToolCallbacks()

void yaze::editor::DungeonWorkbenchContent::SetStandaloneToolCallbacks ( std::function< bool(const std::string &)> is_window_open,
std::function< bool(const std::string &)> open_and_focus_window )
inline

◆ SetOpenKeyboardShortcutsCallback()

void yaze::editor::DungeonWorkbenchContent::SetOpenKeyboardShortcutsCallback ( std::function< void()> callback)
inline

◆ SetPitDamageTableProvider()

void yaze::editor::DungeonWorkbenchContent::SetPitDamageTableProvider ( std::function< zelda3::PitDamageTable *()> provider,
std::function< void()> on_change = {} )
inline

◆ FocusRoomInspector()

void yaze::editor::DungeonWorkbenchContent::FocusRoomInspector ( )

◆ FocusSelectionInspector()

void yaze::editor::DungeonWorkbenchContent::FocusSelectionInspector ( )

◆ FocusRoomMatrix()

void yaze::editor::DungeonWorkbenchContent::FocusRoomMatrix ( )

◆ FocusEntranceBrowser()

void yaze::editor::DungeonWorkbenchContent::FocusEntranceBrowser ( )

◆ ShowConnectedGraph()

void yaze::editor::DungeonWorkbenchContent::ShowConnectedGraph ( )

◆ RequestDungeonMapPopup()

void yaze::editor::DungeonWorkbenchContent::RequestDungeonMapPopup ( )

Definition at line 339 of file dungeon_workbench_content.cc.

References open_dungeon_map_popup_.

Referenced by Draw(), and DrawSidebarHeader().

◆ RequestProposalPreview()

void yaze::editor::DungeonWorkbenchContent::RequestProposalPreview ( )

◆ LoadProposalOverlay()

bool yaze::editor::DungeonWorkbenchContent::LoadProposalOverlay ( const std::string & path)

◆ loaded_proposal_path()

const std::string & yaze::editor::DungeonWorkbenchContent::loaded_proposal_path ( ) const
inline

◆ proposal_overlay()

const std::optional< DungeonProposalOverlay > & yaze::editor::DungeonWorkbenchContent::proposal_overlay ( ) const
inline

Definition at line 171 of file dungeon_workbench_content.h.

References proposal_overlay_.

◆ proposal_error()

const std::string & yaze::editor::DungeonWorkbenchContent::proposal_error ( ) const
inline

◆ OpenObjectSelectorTool()

void yaze::editor::DungeonWorkbenchContent::OpenObjectSelectorTool ( )

◆ OpenDoorTool()

void yaze::editor::DungeonWorkbenchContent::OpenDoorTool ( )

Definition at line 502 of file dungeon_workbench_content.cc.

References DoorEditor, and OpenTool().

Referenced by yaze::editor::DungeonEditorV2::WireViewerPanelCallbacks().

Here is the call graph for this function:

◆ OpenSpriteTool()

void yaze::editor::DungeonWorkbenchContent::OpenSpriteTool ( )

Definition at line 506 of file dungeon_workbench_content.cc.

References OpenTool(), and SpriteEditor.

Referenced by yaze::editor::DungeonEditorV2::WireViewerPanelCallbacks().

Here is the call graph for this function:

◆ OpenItemTool()

void yaze::editor::DungeonWorkbenchContent::OpenItemTool ( )

Definition at line 510 of file dungeon_workbench_content.cc.

References ItemEditor, and OpenTool().

Referenced by yaze::editor::DungeonEditorV2::WireViewerPanelCallbacks().

Here is the call graph for this function:

◆ OpenRoomGraphicsTool()

void yaze::editor::DungeonWorkbenchContent::OpenRoomGraphicsTool ( )

Definition at line 514 of file dungeon_workbench_content.cc.

References OpenTool(), and RoomGraphics.

Referenced by yaze::editor::DungeonEditorV2::WireViewerPanelCallbacks().

Here is the call graph for this function:

◆ OpenPaletteTool()

void yaze::editor::DungeonWorkbenchContent::OpenPaletteTool ( )

Definition at line 518 of file dungeon_workbench_content.cc.

References OpenTool(), and Palette.

Here is the call graph for this function:

◆ OpenRoomTagsTool()

void yaze::editor::DungeonWorkbenchContent::OpenRoomTagsTool ( )

Definition at line 522 of file dungeon_workbench_content.cc.

References OpenTool(), and RoomTags.

Here is the call graph for this function:

◆ OpenCustomCollisionTool()

void yaze::editor::DungeonWorkbenchContent::OpenCustomCollisionTool ( )

Definition at line 526 of file dungeon_workbench_content.cc.

References CustomCollision, and OpenTool().

Here is the call graph for this function:

◆ OpenWaterFillTool()

void yaze::editor::DungeonWorkbenchContent::OpenWaterFillTool ( )

Definition at line 530 of file dungeon_workbench_content.cc.

References OpenTool(), and WaterFill.

Here is the call graph for this function:

◆ OpenMinecartTool()

void yaze::editor::DungeonWorkbenchContent::OpenMinecartTool ( )

Definition at line 534 of file dungeon_workbench_content.cc.

References MinecartTracks, and OpenTool().

Here is the call graph for this function:

◆ OpenObjectCoverageTool()

void yaze::editor::DungeonWorkbenchContent::OpenObjectCoverageTool ( )

Definition at line 538 of file dungeon_workbench_content.cc.

References ObjectCoverage, and OpenTool().

Referenced by yaze::editor::DungeonEditorV2::FocusObjectCoverage().

Here is the call graph for this function:

◆ PopOutActiveTool()

bool yaze::editor::DungeonWorkbenchContent::PopOutActiveTool ( )

◆ SetPrimaryCanvasDrawnCallback()

void yaze::editor::DungeonWorkbenchContent::SetPrimaryCanvasDrawnCallback ( std::function< void(DungeonCanvasViewer &)> cb)
inline

◆ SetRoomInspectorSubTab()

void yaze::editor::DungeonWorkbenchContent::SetRoomInspectorSubTab ( RoomInspectorSubTab tab)
inline

Definition at line 194 of file dungeon_workbench_content.h.

References room_inspector_sub_tab_.

◆ room_inspector_sub_tab()

RoomInspectorSubTab yaze::editor::DungeonWorkbenchContent::room_inspector_sub_tab ( ) const
inline

Definition at line 197 of file dungeon_workbench_content.h.

References room_inspector_sub_tab_.

◆ IsToolInspectorActiveForTesting()

bool yaze::editor::DungeonWorkbenchContent::IsToolInspectorActiveForTesting ( ) const

Definition at line 542 of file dungeon_workbench_content.cc.

References inspector_mode_, and Tools.

◆ GetInspectorModeIdForTesting()

const char * yaze::editor::DungeonWorkbenchContent::GetInspectorModeIdForTesting ( ) const

Definition at line 546 of file dungeon_workbench_content.cc.

References Inspect, inspector_mode_, and Tools.

◆ GetActiveToolIdForTesting()

const char * yaze::editor::DungeonWorkbenchContent::GetActiveToolIdForTesting ( ) const

Definition at line 556 of file dungeon_workbench_content.cc.

References active_tool_, and GetWorkbenchToolId().

Here is the call graph for this function:

◆ GetSidebarModeIdForTesting()

const char * yaze::editor::DungeonWorkbenchContent::GetSidebarModeIdForTesting ( ) const

Definition at line 560 of file dungeon_workbench_content.cc.

References active_tool_, Doors, Entrance, GetWorkbenchToolId(), Items, Objects, Room, sidebar_mode_, Sprites, and Tools.

Here is the call graph for this function:

◆ DrawPitDamageControlsForTesting()

void yaze::editor::DungeonWorkbenchContent::DrawPitDamageControlsForTesting ( int room_id)
inline

Definition at line 207 of file dungeon_workbench_content.h.

References DrawPitDamageControls().

Here is the call graph for this function:

◆ GetPitDamageControlRectsForTesting()

const DungeonWorkbenchPitDamageControlRects & yaze::editor::DungeonWorkbenchContent::GetPitDamageControlRectsForTesting ( ) const
inline

Definition at line 211 of file dungeon_workbench_content.h.

References pit_damage_control_rects_.

◆ SetAllSaveFlagsForTesting()

void yaze::editor::DungeonWorkbenchContent::SetAllSaveFlagsForTesting ( bool value)
inline

Definition at line 214 of file dungeon_workbench_content.h.

References SetAllSaveFlags().

Here is the call graph for this function:

◆ NotifyRoomChanged()

void yaze::editor::DungeonWorkbenchContent::NotifyRoomChanged ( int previous_room_id)
inline

Called by the editor when the current room changes.

Definition at line 217 of file dungeon_workbench_content.h.

References previous_room_id_.

Referenced by yaze::editor::DungeonEditorV2::OnRoomSelected().

◆ SetUndoRedoProvider()

void yaze::editor::DungeonWorkbenchContent::SetUndoRedoProvider ( std::function< bool()> can_undo,
std::function< bool()> can_redo,
std::function< void()> on_undo,
std::function< void()> on_redo,
std::function< std::string()> undo_desc,
std::function< std::string()> redo_desc,
std::function< int()> undo_depth )
inline

◆ Draw()

void yaze::editor::DungeonWorkbenchContent::Draw ( bool * p_open)
overridevirtual

Draw the panel content.

Parameters
p_openPointer to visibility flag (nullptr if not closable)

Called by WorkspaceWindowManager when the panel is visible. Do NOT call ImGui::Begin/End - the PanelWindow wrapper handles that. Just draw your content directly.

Implements yaze::editor::WindowContent.

Definition at line 789 of file dungeon_workbench_content.cc.

References yaze::editor::DungeonWorkbenchPaneLayout::center_width, yaze::editor::DungeonWorkbenchResponsiveLayout::compact_left, yaze::editor::DungeonWorkbenchResponsiveLayout::compact_right, yaze::editor::DungeonWorkbenchToolbarParams::compare_room_id, compare_room_id_, yaze::editor::DungeonWorkbenchToolbarParams::compare_search_buf, compare_search_buf_, yaze::editor::DungeonWorkbenchToolbarParams::compare_search_buf_size, yaze::editor::DungeonWorkbenchToolbarParams::compare_viewer, yaze::editor::DungeonWorkbenchToolbarParams::current_room_id, current_room_id_, yaze::editor::DungeonWorkbenchToolbar::Draw(), yaze::editor::DungeonWorkbenchToolbarParams::draw_entrance_context, yaze::editor::DungeonWorkbenchToolbarParams::draw_layout_options, yaze::editor::DungeonWorkbenchToolbarParams::draw_save_content, yaze::editor::DungeonWorkbenchToolbarParams::draw_tools, DrawApplyScopeControls(), DrawCanvasPane(), yaze::editor::DungeonCanvasViewer::DrawChestEditorPopup(), DrawDungeonMapPopup(), yaze::editor::DrawDungeonWorkbenchVerticalSplitter(), yaze::editor::DungeonEntrancesPanel::DrawGraphicsContext(), DrawInspectorPane(), DrawInspectorToolPicker(), DrawLayoutOptions(), DrawRoomContextRow(), DrawSidebarPane(), entrance_navigator_content_, yaze::editor::DungeonWorkbenchToolbarParams::forget_recent_room, forget_recent_room_, get_compare_viewer_, yaze::editor::DungeonWorkbenchToolbarParams::get_recent_rooms, get_recent_rooms_, get_viewer_, yaze::editor::AgentUI::GetTheme(), yaze::gui::LayoutHelpers::GetTouchSafeWidgetHeight(), ICON_MD_INFO, yaze::Rom::is_loaded(), yaze::gui::UIConfig::kContentMinWidthSidebar, yaze::editor::kOpenStandalone, yaze::gui::UIConfig::kSplitterWidth, yaze::editor::DungeonWorkbenchToolbarParams::layout, layout_state_, yaze::editor::DungeonWorkbenchLayoutState::left_width, yaze::editor::DungeonWorkbenchPaneLayout::left_width, yaze::editor::DungeonWorkbenchPaneLayout::min_left_width, yaze::editor::DungeonWorkbenchPaneLayout::min_right_width, yaze::editor::DungeonWorkbenchToolbarParams::on_open_room_panel, yaze::editor::DungeonWorkbenchToolbarParams::on_request_dungeon_map, yaze::editor::DungeonWorkbenchToolbarParams::on_room_selected, on_room_selected_, on_room_selected_with_intent_, yaze::editor::DungeonWorkbenchToolbarParams::on_save_room, on_save_room_, yaze::editor::DungeonWorkbenchToolbarParams::previous_room_id, previous_room_id_, yaze::editor::DungeonWorkbenchToolbarParams::primary_viewer, RequestDungeonMapPopup(), yaze::editor::ResolveDungeonWorkbenchPaneLayout(), yaze::editor::DungeonWorkbenchPaneLayout::responsive, yaze::editor::DungeonWorkbenchLayoutState::right_width, yaze::editor::DungeonWorkbenchPaneLayout::right_width, rom_, room_selector_, yaze::editor::DungeonWorkbenchToolbarParams::set_workflow_mode, set_workflow_mode_, yaze::editor::DungeonWorkbenchResponsiveLayout::show_left, yaze::editor::DungeonWorkbenchLayoutState::show_left_sidebar, yaze::editor::DungeonWorkbenchResponsiveLayout::show_right, yaze::editor::DungeonWorkbenchLayoutState::show_right_inspector, yaze::editor::DungeonWorkbenchLayoutState::show_room_context_row, yaze::editor::DungeonWorkbenchToolbarParams::split_view_enabled, and split_view_enabled_.

◆ DrawSidebarPane()

void yaze::editor::DungeonWorkbenchContent::DrawSidebarPane ( float width,
float height,
float button_size,
bool compact )
private

Definition at line 580 of file dungeon_workbench_content.cc.

References DrawSidebarContent(), DrawSidebarHeader(), and DrawSidebarModeTabs().

Referenced by Draw().

Here is the call graph for this function:

◆ DrawSidebarHeader()

◆ DrawSidebarModeTabs()

◆ DrawSidebarContent()

◆ DrawCanvasPane()

◆ DrawSplitView()

◆ DrawInspectorPane()

void yaze::editor::DungeonWorkbenchContent::DrawInspectorPane ( float width,
float height,
float button_size,
bool compact,
DungeonCanvasViewer * viewer )
private

◆ DrawInspectorHeader()

void yaze::editor::DungeonWorkbenchContent::DrawInspectorHeader ( float button_size,
bool compact )
private

◆ DrawInspector()

void yaze::editor::DungeonWorkbenchContent::DrawInspector ( DungeonCanvasViewer & viewer,
bool compact )
private

Definition at line 1293 of file dungeon_workbench_content.cc.

References DrawInspectorShelf().

Referenced by DrawInspectorPane().

Here is the call graph for this function:

◆ DrawInspectorShelf()

void yaze::editor::DungeonWorkbenchContent::DrawInspectorShelf ( DungeonCanvasViewer & viewer,
bool compact )
private

◆ DrawInspectorShelfRoom()

◆ DrawRoomContextHeader()

◆ DrawRoomContextRow()

◆ DrawLayoutOptions()

◆ DrawInspectorShelfSelection()

void yaze::editor::DungeonWorkbenchContent::DrawInspectorShelfSelection ( DungeonCanvasViewer & viewer)
private

Definition at line 260 of file dungeon_workbench_room_inspector.cc.

References yaze::gui::AutoRegisterLastItem(), yaze::editor::DungeonCanvasViewer::chest_editor_state(), yaze::zelda3::ChestIndexForObject(), yaze::editor::DungeonCanvasViewer::current_room_id(), yaze::editor::workbench::DescribeObjectSize(), yaze::editor::DrawDungeonEntityInspector(), yaze::editor::workbench::DrawInspectorSectionHeader(), yaze::editor::workbench::DrawObjectSizeControls(), DrawSelectedObjectActions(), yaze::editor::DungeonChestEditorState::error, yaze::editor::GetDungeonChestItemLabel(), yaze::zelda3::GetObjectName(), yaze::zelda3::GetObjectSubtype(), yaze::editor::AgentUI::GetTheme(), yaze::editor::workbench::HasEditableRoomObjectSize(), yaze::editor::DungeonCanvasViewer::header_read_only(), ICON_MD_ADD, ICON_MD_ARROW_BACK, ICON_MD_ARROW_DOWNWARD, ICON_MD_ARROW_FORWARD, ICON_MD_ARROW_UPWARD, ICON_MD_CONTENT_COPY, ICON_MD_DELETE, ICON_MD_FLIP_TO_BACK, ICON_MD_FLIP_TO_FRONT, ICON_MD_INFO, ICON_MD_KEYBOARD_ARROW_DOWN, ICON_MD_KEYBOARD_ARROW_UP, ICON_MD_OPEN_WITH, ICON_MD_REMOVE, ICON_MD_SELECT_ALL, ICON_MD_SUMMARIZE, ICON_MD_WARNING, yaze::gui::InputHexWordEx(), yaze::editor::DungeonCanvasViewer::IsObjectInteractionEnabled(), yaze::editor::DungeonCanvasViewer::object_interaction(), yaze::editor::DungeonCanvasViewer::OpenChestEditor(), yaze::editor::DungeonCanvasViewer::project(), yaze::gui::LayoutHelpers::PropertyRow(), yaze::editor::DungeonCanvasViewer::rooms(), yaze::gui::InputHexResult::ShouldApply(), and yaze::zelda3::UsesRoomObjectStream().

Referenced by DrawInspectorShelf().

◆ DrawObjectPlacementInspector()

◆ DrawSelectedObjectActions()

◆ DrawInspectorToolPanel()

◆ DrawInspectorToolPicker()

◆ DrawWorkbenchTool()

◆ OpenTool()

◆ CloseToolInspector()

◆ GetWorkbenchToolContent()

◆ IsStandaloneToolOpen()

bool yaze::editor::DungeonWorkbenchContent::IsStandaloneToolOpen ( WorkbenchTool tool) const
private

Definition at line 1707 of file dungeon_workbench_content.cc.

References yaze::editor::WindowContent::GetId(), GetWorkbenchToolContent(), and is_standalone_tool_open_.

Referenced by DrawInspectorToolPanel(), and OpenTool().

Here is the call graph for this function:

◆ IsWorkbenchToolAvailable()

bool yaze::editor::DungeonWorkbenchContent::IsWorkbenchToolAvailable ( WorkbenchTool tool) const
private

Definition at line 1702 of file dungeon_workbench_content.cc.

References GetWorkbenchToolContent().

Referenced by DrawInspectorToolPanel(), and DrawInspectorToolPicker().

Here is the call graph for this function:

◆ GetWorkbenchToolId()

const char * yaze::editor::DungeonWorkbenchContent::GetWorkbenchToolId ( WorkbenchTool tool) const
private

◆ GetWorkbenchToolShortLabel()

const char * yaze::editor::DungeonWorkbenchContent::GetWorkbenchToolShortLabel ( WorkbenchTool tool) const
private

◆ GetWorkbenchToolUnavailableMessage()

const char * yaze::editor::DungeonWorkbenchContent::GetWorkbenchToolUnavailableMessage ( WorkbenchTool tool) const
private

◆ DrawApplyScopeControls()

void yaze::editor::DungeonWorkbenchContent::DrawApplyScopeControls ( int room_id)
private

◆ DrawPitDamageControls()

◆ DrawDungeonMapPopup()

void yaze::editor::DungeonWorkbenchContent::DrawDungeonMapPopup ( DungeonCanvasViewer & viewer)
private

Definition at line 1589 of file dungeon_workbench_content.cc.

References yaze::editor::workbench::DrawActionButton(), GetEmbeddedDungeonMap(), ICON_MD_CLOSE, and open_dungeon_map_popup_.

Referenced by Draw().

Here is the call graph for this function:

◆ DrawProposalPreviewWindow()

◆ GetEmbeddedDungeonMap()

◆ SetAllSaveFlags()

void yaze::editor::DungeonWorkbenchContent::SetAllSaveFlags ( bool value)
private

◆ BuildRoomDungeonCache()

Friends And Related Symbol Documentation

◆ DungeonWorkbenchContentTestPeer

friend class DungeonWorkbenchContentTestPeer
friend

Definition at line 241 of file dungeon_workbench_content.h.

Member Data Documentation

◆ room_selector_

DungeonRoomSelector* yaze::editor::DungeonWorkbenchContent::room_selector_ = nullptr
private

Definition at line 299 of file dungeon_workbench_content.h.

Referenced by Draw(), and GetEmbeddedDungeonMap().

◆ current_room_id_

int* yaze::editor::DungeonWorkbenchContent::current_room_id_ = nullptr
private

◆ previous_room_id_

int yaze::editor::DungeonWorkbenchContent::previous_room_id_ = -1
private

Definition at line 303 of file dungeon_workbench_content.h.

Referenced by Draw(), and NotifyRoomChanged().

◆ split_view_enabled_

bool yaze::editor::DungeonWorkbenchContent::split_view_enabled_ = false
private

◆ compare_room_id_

int yaze::editor::DungeonWorkbenchContent::compare_room_id_ = -1
private

Definition at line 305 of file dungeon_workbench_content.h.

Referenced by Draw(), and DrawSplitView().

◆ layout_state_

◆ on_room_selected_

std::function<void(int)> yaze::editor::DungeonWorkbenchContent::on_room_selected_
private

◆ on_room_selected_with_intent_

std::function<void(int, RoomSelectionIntent)> yaze::editor::DungeonWorkbenchContent::on_room_selected_with_intent_
private

Definition at line 308 of file dungeon_workbench_content.h.

Referenced by Draw(), and GetEmbeddedDungeonMap().

◆ on_save_room_

std::function<void(int)> yaze::editor::DungeonWorkbenchContent::on_save_room_
private

Definition at line 309 of file dungeon_workbench_content.h.

Referenced by Draw(), and DrawApplyScopeControls().

◆ on_save_all_rooms_

std::function<void()> yaze::editor::DungeonWorkbenchContent::on_save_all_rooms_
private

Definition at line 310 of file dungeon_workbench_content.h.

Referenced by DrawApplyScopeControls().

◆ get_viewer_

std::function<DungeonCanvasViewer*()> yaze::editor::DungeonWorkbenchContent::get_viewer_
private

Definition at line 311 of file dungeon_workbench_content.h.

Referenced by CloseToolInspector(), Draw(), and DrawSidebarContent().

◆ get_compare_viewer_

std::function<DungeonCanvasViewer*(int)> yaze::editor::DungeonWorkbenchContent::get_compare_viewer_
private

Definition at line 312 of file dungeon_workbench_content.h.

Referenced by Draw(), and DrawSplitView().

◆ get_recent_rooms_

std::function<const std::deque<int>&()> yaze::editor::DungeonWorkbenchContent::get_recent_rooms_
private

Definition at line 313 of file dungeon_workbench_content.h.

Referenced by Draw(), and DrawSplitView().

◆ forget_recent_room_

std::function<void(int)> yaze::editor::DungeonWorkbenchContent::forget_recent_room_
private

Definition at line 314 of file dungeon_workbench_content.h.

Referenced by Draw().

◆ set_workflow_mode_

std::function<void(bool)> yaze::editor::DungeonWorkbenchContent::set_workflow_mode_
private

Definition at line 315 of file dungeon_workbench_content.h.

Referenced by Draw().

◆ is_standalone_tool_open_

std::function<bool(const std::string&) yaze::editor::DungeonWorkbenchContent::is_standalone_tool_open_)
private

◆ open_and_focus_standalone_tool_

std::function<bool(const std::string&) yaze::editor::DungeonWorkbenchContent::open_and_focus_standalone_tool_)
private

◆ open_keyboard_shortcuts_

std::function<void()> yaze::editor::DungeonWorkbenchContent::open_keyboard_shortcuts_
private

◆ on_primary_canvas_drawn_

std::function<void(DungeonCanvasViewer&) yaze::editor::DungeonWorkbenchContent::on_primary_canvas_drawn_)
private

Definition at line 319 of file dungeon_workbench_content.h.

Referenced by DrawCanvasPane(), and SetPrimaryCanvasDrawnCallback().

◆ prepare_room_render_context_

std::function<void(int)> yaze::editor::DungeonWorkbenchContent::prepare_room_render_context_
private

◆ room_label_edit_callback_

RoomLabelEditCallback yaze::editor::DungeonWorkbenchContent::room_label_edit_callback_
private

Definition at line 321 of file dungeon_workbench_content.h.

Referenced by DrawRoomContextHeader(), and SetRoomLabelEditCallback().

◆ room_rename_buffer_

char yaze::editor::DungeonWorkbenchContent::room_rename_buffer_[128] = {}
private

Definition at line 322 of file dungeon_workbench_content.h.

Referenced by DrawRoomContextHeader().

◆ room_rename_error_

std::string yaze::editor::DungeonWorkbenchContent::room_rename_error_
private

Definition at line 323 of file dungeon_workbench_content.h.

Referenced by DrawRoomContextHeader().

◆ get_pit_damage_table_

std::function<zelda3::PitDamageTable*()> yaze::editor::DungeonWorkbenchContent::get_pit_damage_table_
private

Definition at line 324 of file dungeon_workbench_content.h.

Referenced by DrawPitDamageControls().

◆ on_pit_damage_changed_

std::function<void()> yaze::editor::DungeonWorkbenchContent::on_pit_damage_changed_
private

Definition at line 325 of file dungeon_workbench_content.h.

Referenced by DrawPitDamageControls().

◆ rom_

Rom* yaze::editor::DungeonWorkbenchContent::rom_ = nullptr
private

◆ sidebar_mode_

◆ navigator_tools_fraction_

float yaze::editor::DungeonWorkbenchContent::navigator_tools_fraction_ = 0.30f
private

Definition at line 338 of file dungeon_workbench_content.h.

Referenced by DrawInspectorPane(), and DrawLayoutOptions().

◆ show_room_matrix_

bool yaze::editor::DungeonWorkbenchContent::show_room_matrix_ = true
private

Definition at line 339 of file dungeon_workbench_content.h.

Referenced by DrawInspectorPane(), and FocusRoomMatrix().

◆ room_inspector_sub_tab_

RoomInspectorSubTab yaze::editor::DungeonWorkbenchContent::room_inspector_sub_tab_ = RoomInspectorSubTab::Mechanics
private

Definition at line 341 of file dungeon_workbench_content.h.

Referenced by room_inspector_sub_tab(), and SetRoomInspectorSubTab().

◆ inspector_mode_

InspectorMode yaze::editor::DungeonWorkbenchContent::inspector_mode_ = InspectorMode::Inspect
private

◆ active_tool_

◆ compare_search_buf_

char yaze::editor::DungeonWorkbenchContent::compare_search_buf_[64] = {}
private

Definition at line 347 of file dungeon_workbench_content.h.

Referenced by Draw().

◆ room_dungeon_cache_

std::unordered_map<int, std::string> yaze::editor::DungeonWorkbenchContent::room_dungeon_cache_
private

◆ room_dungeon_cache_built_

bool yaze::editor::DungeonWorkbenchContent::room_dungeon_cache_built_ = false
private

◆ can_undo_

std::function<bool()> yaze::editor::DungeonWorkbenchContent::can_undo_
private

Definition at line 354 of file dungeon_workbench_content.h.

Referenced by DrawCanvasPane(), and SetUndoRedoProvider().

◆ can_redo_

std::function<bool()> yaze::editor::DungeonWorkbenchContent::can_redo_
private

Definition at line 355 of file dungeon_workbench_content.h.

Referenced by DrawCanvasPane(), and SetUndoRedoProvider().

◆ on_undo_

std::function<void()> yaze::editor::DungeonWorkbenchContent::on_undo_
private

Definition at line 356 of file dungeon_workbench_content.h.

Referenced by DrawCanvasPane(), and SetUndoRedoProvider().

◆ on_redo_

std::function<void()> yaze::editor::DungeonWorkbenchContent::on_redo_
private

Definition at line 357 of file dungeon_workbench_content.h.

Referenced by DrawCanvasPane(), and SetUndoRedoProvider().

◆ undo_desc_

std::function<std::string()> yaze::editor::DungeonWorkbenchContent::undo_desc_
private

Definition at line 358 of file dungeon_workbench_content.h.

Referenced by DrawCanvasPane(), and SetUndoRedoProvider().

◆ redo_desc_

std::function<std::string()> yaze::editor::DungeonWorkbenchContent::redo_desc_
private

Definition at line 359 of file dungeon_workbench_content.h.

Referenced by DrawCanvasPane(), and SetUndoRedoProvider().

◆ undo_depth_

std::function<int()> yaze::editor::DungeonWorkbenchContent::undo_depth_
private

Definition at line 360 of file dungeon_workbench_content.h.

Referenced by DrawCanvasPane(), and SetUndoRedoProvider().

◆ open_dungeon_map_popup_

bool yaze::editor::DungeonWorkbenchContent::open_dungeon_map_popup_ = false
private

Definition at line 362 of file dungeon_workbench_content.h.

Referenced by DrawDungeonMapPopup(), and RequestDungeonMapPopup().

◆ show_proposal_preview_

bool yaze::editor::DungeonWorkbenchContent::show_proposal_preview_ = false
private

◆ proposal_path_

char yaze::editor::DungeonWorkbenchContent::proposal_path_[1024] = {}
private

Definition at line 366 of file dungeon_workbench_content.h.

Referenced by DrawProposalPreviewWindow(), and LoadProposalOverlay().

◆ proposal_overlay_

std::optional<DungeonProposalOverlay> yaze::editor::DungeonWorkbenchContent::proposal_overlay_
private

◆ proposal_error_

std::string yaze::editor::DungeonWorkbenchContent::proposal_error_
private

◆ loaded_proposal_path_

std::string yaze::editor::DungeonWorkbenchContent::loaded_proposal_path_
private

Definition at line 369 of file dungeon_workbench_content.h.

Referenced by loaded_proposal_path(), and LoadProposalOverlay().

◆ proposal_layer_visible_

std::vector<char> yaze::editor::DungeonWorkbenchContent::proposal_layer_visible_
private

Definition at line 370 of file dungeon_workbench_content.h.

Referenced by DrawProposalPreviewWindow(), and LoadProposalOverlay().

◆ proposal_show_overlay_

bool yaze::editor::DungeonWorkbenchContent::proposal_show_overlay_ = true
private

Definition at line 371 of file dungeon_workbench_content.h.

Referenced by DrawProposalPreviewWindow().

◆ proposal_scale_

float yaze::editor::DungeonWorkbenchContent::proposal_scale_ = 1.0f
private

Definition at line 372 of file dungeon_workbench_content.h.

Referenced by DrawProposalPreviewWindow().

◆ pit_damage_replacement_room_id_

uint16_t yaze::editor::DungeonWorkbenchContent::pit_damage_replacement_room_id_ = 0
private

Definition at line 373 of file dungeon_workbench_content.h.

Referenced by DrawPitDamageControls().

◆ pit_damage_victim_room_id_

uint16_t yaze::editor::DungeonWorkbenchContent::pit_damage_victim_room_id_ = 0
private

Definition at line 374 of file dungeon_workbench_content.h.

Referenced by DrawPitDamageControls().

◆ pit_damage_chooser_room_id_

int yaze::editor::DungeonWorkbenchContent::pit_damage_chooser_room_id_ = -1
private

Definition at line 375 of file dungeon_workbench_content.h.

Referenced by DrawPitDamageControls().

◆ pit_damage_status_message_

std::string yaze::editor::DungeonWorkbenchContent::pit_damage_status_message_
private

Definition at line 376 of file dungeon_workbench_content.h.

Referenced by DrawPitDamageControls().

◆ pit_damage_status_error_

bool yaze::editor::DungeonWorkbenchContent::pit_damage_status_error_ = false
private

Definition at line 377 of file dungeon_workbench_content.h.

Referenced by DrawPitDamageControls().

◆ pit_damage_control_rects_

DungeonWorkbenchPitDamageControlRects yaze::editor::DungeonWorkbenchContent::pit_damage_control_rects_ {}
private

◆ embedded_dungeon_map_

std::unique_ptr<DungeonMapPanel> yaze::editor::DungeonWorkbenchContent::embedded_dungeon_map_
private

Definition at line 379 of file dungeon_workbench_content.h.

Referenced by GetEmbeddedDungeonMap().

◆ room_tag_panel_

RoomTagEditorPanel* yaze::editor::DungeonWorkbenchContent::room_tag_panel_ = nullptr
private

◆ custom_collision_panel_

CustomCollisionPanel* yaze::editor::DungeonWorkbenchContent::custom_collision_panel_ = nullptr
private

◆ water_fill_panel_

WaterFillPanel* yaze::editor::DungeonWorkbenchContent::water_fill_panel_ = nullptr
private

◆ minecart_track_panel_

MinecartTrackEditorPanel* yaze::editor::DungeonWorkbenchContent::minecart_track_panel_ = nullptr
private

◆ object_coverage_content_

WindowContent* yaze::editor::DungeonWorkbenchContent::object_coverage_content_ = nullptr
private

◆ object_selector_content_

WindowContent* yaze::editor::DungeonWorkbenchContent::object_selector_content_ = nullptr
private

◆ door_editor_content_

WindowContent* yaze::editor::DungeonWorkbenchContent::door_editor_content_ = nullptr
private

◆ sprite_editor_content_

WindowContent* yaze::editor::DungeonWorkbenchContent::sprite_editor_content_ = nullptr
private

◆ item_editor_content_

WindowContent* yaze::editor::DungeonWorkbenchContent::item_editor_content_ = nullptr
private

◆ room_graphics_content_

WindowContent* yaze::editor::DungeonWorkbenchContent::room_graphics_content_ = nullptr
private

◆ palette_editor_content_

WindowContent* yaze::editor::DungeonWorkbenchContent::palette_editor_content_ = nullptr
private

◆ room_matrix_content_

RoomMatrixContent* yaze::editor::DungeonWorkbenchContent::room_matrix_content_ = nullptr
private

Definition at line 391 of file dungeon_workbench_content.h.

Referenced by DrawInspectorPane(), and SetNavigationPanels().

◆ entrance_navigator_content_

DungeonEntrancesPanel* yaze::editor::DungeonWorkbenchContent::entrance_navigator_content_ = nullptr
private

Definition at line 392 of file dungeon_workbench_content.h.

Referenced by Draw(), DrawSidebarContent(), and SetNavigationPanels().


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