1#ifndef YAZE_APP_EDITOR_DUNGEON_WORKSPACE_ROOM_GRAPHICS_CONTENT_H_
2#define YAZE_APP_EDITOR_DUNGEON_WORKSPACE_ROOM_GRAPHICS_CONTENT_H_
16#include "imgui/imgui.h"
62 std::string
GetId()
const override {
return "dungeon.room_graphics"; }
74 void Draw(
bool* p_open)
override;
WindowContent for displaying room graphics blocks.
float GetPreferredWidth() const override
Get preferred width for this panel (optional)
std::array< uint8_t, 16 > preview_block_ids_
void RefreshSheetPreviews(const zelda3::Room &room)
std::string GetEditorCategory() const override
Editor category this panel belongs to.
std::string GetIcon() const override
Material Design icon for this panel.
std::string GetId() const override
Unique identifier for this panel.
void Draw(bool *p_open) override
Draw the panel content.
gfx::IRenderer * renderer_
gfx::PaletteGroup current_palette_group_
int GetPriority() const override
Get display priority for menu ordering.
RoomGraphicsContent(int *current_room_id, DungeonRoomStore *rooms, gfx::IRenderer *renderer=nullptr)
bool preview_cache_valid_
~RoomGraphicsContent() override
void SetCurrentPaletteGroup(const gfx::PaletteGroup &group)
Set the current palette group for graphics rendering.
std::string GetDisplayName() const override
Human-readable name shown in menus and title bars.
std::array< gfx::Bitmap, 16 > sheet_previews_
uint64_t preview_graphics_revision_
std::string GetWorkflowGroup() const override
Optional workflow group for hack-centric actions.
std::array< SheetPreviewMetadata, 16 > sheet_preview_metadata_
DungeonRoomStore * rooms_
friend struct RoomGraphicsContentTestAccess
gui::Canvas room_gfx_canvas_
Base interface for all logical window content components.
Defines an abstract interface for all rendering operations.
Modern, robust canvas for drawing and manipulating graphics.
Represents a group of palettes.