From 44d90f9b702b24ec5f8a16d5bd47c4d88c0b64cd Mon Sep 17 00:00:00 2001 From: scawful Date: Sun, 21 Jul 2024 11:39:43 -0400 Subject: [PATCH] cleanup graphics editor palette controls --- src/app/editor/graphics/graphics_editor.cc | 34 ++++++++++------------ 1 file changed, 16 insertions(+), 18 deletions(-) diff --git a/src/app/editor/graphics/graphics_editor.cc b/src/app/editor/graphics/graphics_editor.cc index 502774f8..4faad64a 100644 --- a/src/app/editor/graphics/graphics_editor.cc +++ b/src/app/editor/graphics/graphics_editor.cc @@ -354,12 +354,10 @@ absl::Status GraphicsEditor::UpdateGfxTabView() { } absl::Status GraphicsEditor::UpdatePaletteColumn() { - auto palette_group = *rom()->palette_group().get_group( - kPaletteGroupAddressesKeys[edit_palette_group_name_index_]); - - auto palette = palette_group.palette(edit_palette_index_); - if (rom()->is_loaded()) { + auto palette_group = *rom()->palette_group().get_group( + kPaletteGroupAddressesKeys[edit_palette_group_name_index_]); + auto palette = palette_group.palette(edit_palette_index_); gui::TextWithSeparators("ROM Palette"); ImGui::SetNextItemWidth(100.f); ImGui::Combo("Palette Group", (int*)&edit_palette_group_name_index_, @@ -367,20 +365,20 @@ absl::Status GraphicsEditor::UpdatePaletteColumn() { IM_ARRAYSIZE(kPaletteGroupAddressesKeys)); ImGui::SetNextItemWidth(100.f); gui::InputHex("Palette Group Index", &edit_palette_index_); + + gui::SelectablePalettePipeline(edit_palette_sub_index_, refresh_graphics_, + palette); + + if (refresh_graphics_ && !open_sheets_.empty()) { + RETURN_IF_ERROR( + rom()->bitmap_manager()[current_sheet_].ApplyPaletteWithTransparent( + palette, edit_palette_sub_index_)); + rom()->UpdateBitmap( + rom()->mutable_bitmap_manager()->mutable_bitmap(current_sheet_), + true); + refresh_graphics_ = false; + } } - - gui::SelectablePalettePipeline(edit_palette_sub_index_, refresh_graphics_, - palette); - - if (refresh_graphics_ && !open_sheets_.empty()) { - RETURN_IF_ERROR( - rom()->bitmap_manager()[current_sheet_].ApplyPaletteWithTransparent( - palette, edit_palette_sub_index_)); - rom()->UpdateBitmap( - rom()->mutable_bitmap_manager()->mutable_bitmap(current_sheet_), true); - refresh_graphics_ = false; - } - return absl::OkStatus(); }