diff --git a/assets/layouts/overworld.zeml b/assets/layouts/overworld.zeml index 4946cb5f..3e8af78a 100644 --- a/assets/layouts/overworld.zeml +++ b/assets/layouts/overworld.zeml @@ -13,6 +13,12 @@ BeginTabBar title="##OwEditorTabBar" { Function id="OverworldTileSelector", } } + BeginTabItem title="Tile16 Editor" { + Function id="OwTile16Editor" + } + BeginTabItem title "Graphics Group Editor" { + Function id="OwGfxGroupEditor" + } BeginTabItem title="Usage Statistics" { Function id="OwUsageStats" } diff --git a/src/app/editor/overworld_editor.cc b/src/app/editor/overworld_editor.cc index 2e5b5267..49cf6697 100644 --- a/src/app/editor/overworld_editor.cc +++ b/src/app/editor/overworld_editor.cc @@ -60,6 +60,16 @@ void OverworldEditor::InitializeZeml() { }); gui::zeml::Bind(&*layout_node_.GetNode("owToolset"), [this]() { status_ = DrawToolset(); }); + gui::zeml::Bind(&*layout_node_.GetNode("OwTile16Editor"), [this]() { + if (rom()->is_loaded()) { + status_ = tile16_editor_.Update(); + } + }); + gui::zeml::Bind(&*layout_node_.GetNode("OwGfxGroupEditor"), [this]() { + if (rom()->is_loaded()) { + status_ = gfx_group_editor_.Update(); + } + }); } absl::Status OverworldEditor::Update() { @@ -90,14 +100,13 @@ absl::Status OverworldEditor::UpdateFullscreenCanvas() { ImGui::SetNextWindowSize(use_work_area ? viewport->WorkSize : viewport->Size); - if (ImGui::Begin("Example: Fullscreen window", + if (ImGui::Begin("Fullscreen Overworld Editor", &overworld_canvas_fullscreen_, flags)) { // Draws the toolset for editing the Overworld. RETURN_IF_ERROR(DrawToolset()) DrawOverworldCanvas(); } ImGui::End(); - return absl::OkStatus(); } return absl::OkStatus(); }