Overworld Animated palette group panel. More...
#include <palette_group_panel.h>


Public Member Functions | |
| OverworldAnimatedPalettePanel (Rom *rom, zelda3::GameData *game_data=nullptr) | |
| ~OverworldAnimatedPalettePanel () override=default | |
Public Member Functions inherited from yaze::editor::PaletteGroupPanel | |
| PaletteGroupPanel (const std::string &group_name, const std::string &display_name, Rom *rom, zelda3::GameData *game_data=nullptr) | |
| Construct a new Palette Group Panel. | |
| void | SetGameData (zelda3::GameData *game_data) |
| virtual | ~PaletteGroupPanel ()=default |
| void | Draw (bool *p_open) override |
| Draw the card's ImGui UI. | |
| 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. | |
| void | Show () |
| void | Hide () |
| bool | IsVisible () const |
| bool * | visibility_flag () |
| absl::Status | SaveToRom () |
| Save all modified palettes to ROM. | |
| void | DiscardChanges () |
| Discard all unsaved changes. | |
| void | ResetPalette (int palette_index) |
| Reset a specific palette to original ROM values. | |
| void | ResetColor (int palette_index, int color_index) |
| Reset a specific color to original ROM value. | |
| void | SetColor (int palette_index, int color_index, const gfx::SnesColor &new_color) |
| Set a color value (records change for undo) | |
| void | Undo () |
| void | Redo () |
| bool | CanUndo () const |
| bool | CanRedo () const |
| void | ClearHistory () |
| bool | HasUnsavedChanges () const |
| bool | IsPaletteModified (int palette_index) const |
| bool | IsColorModified (int palette_index, int color_index) const |
| int | GetSelectedPaletteIndex () const |
| void | SetSelectedPaletteIndex (int index) |
| int | GetSelectedColorIndex () const |
| void | SetSelectedColorIndex (int index) |
| std::string | ExportToJson () const |
| absl::Status | ImportFromJson (const std::string &json) |
| std::string | ExportToClipboard () const |
| absl::Status | ImportFromClipboard () |
Public Member Functions inherited from yaze::editor::EditorPanel | |
| virtual | ~EditorPanel ()=default |
| 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 PanelCategory | GetPanelCategory () const |
| Get the lifecycle category for this panel. | |
| 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 float | GetPreferredWidth () const |
| Get preferred width for this panel (optional) | |
| 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. | |
Protected Member Functions | |
| gfx::PaletteGroup * | GetPaletteGroup () override |
| Get the palette group for this card. | |
| const gfx::PaletteGroup * | GetPaletteGroup () const override |
| const PaletteGroupMetadata & | GetMetadata () const override |
| Get metadata for this palette group. | |
| void | DrawPaletteGrid () override |
| Draw the palette grid specific to this palette type. | |
| int | GetColorsPerRow () const override |
| Get the number of colors per row for grid layout. | |
| std::string | GetIcon () const override |
| Material Design icon for this panel. | |
| int | GetPriority () const override |
| Get display priority for menu ordering. | |
Protected Member Functions inherited from yaze::editor::PaletteGroupPanel | |
| virtual void | DrawCustomToolbarButtons () |
| Draw additional toolbar buttons (called after standard buttons) | |
| virtual void | DrawCustomPanels () |
| Draw additional panels (called after main content) | |
| void | DrawToolbar () |
| Draw standard toolbar with save/discard/undo/redo. | |
| void | DrawPaletteSelector () |
| Draw palette selector dropdown. | |
| void | DrawColorPicker () |
| Draw color picker for selected color. | |
| void | DrawColorInfo () |
| Draw color info panel with RGB/SNES/Hex values. | |
| void | DrawMetadataInfo () |
| Draw palette metadata info panel. | |
| void | DrawBatchOperationsPopup () |
| Draw batch operations popup. | |
| gfx::SnesPalette * | GetMutablePalette (int index) |
| Get mutable palette by index. | |
| gfx::SnesColor | GetOriginalColor (int palette_index, int color_index) const |
| Get original color from ROM (for reset/comparison) | |
| absl::Status | WriteColorToRom (int palette_index, int color_index, const gfx::SnesColor &color) |
| Write a single color to ROM. | |
| void | MarkModified (int palette_index, int color_index) |
| Mark palette as modified. | |
| void | ClearModified (int palette_index) |
| Clear modified flags for palette. | |
Static Private Member Functions | |
| static PaletteGroupMetadata | InitializeMetadata () |
Static Private Attributes | |
| static const PaletteGroupMetadata | metadata_ |
Additional Inherited Members | |
Protected Attributes inherited from yaze::editor::PaletteGroupPanel | |
| std::string | group_name_ |
| std::string | display_name_ |
| Rom * | rom_ |
| zelda3::GameData * | game_data_ = nullptr |
| bool | show_ = false |
| int | selected_palette_ = 0 |
| int | selected_color_ = -1 |
| gfx::SnesColor | editing_color_ |
| bool | auto_save_enabled_ = false |
| bool | show_snes_format_ = true |
| bool | show_hex_format_ = true |
Overworld Animated palette group panel.
Manages animated palettes for water, lava, and other effects
Definition at line 321 of file palette_group_panel.h.
|
explicit |
Definition at line 656 of file palette_group_panel.cc.
|
overridedefault |
|
overrideprotectedvirtual |
Get the palette group for this card.
Implements yaze::editor::PaletteGroupPanel.
Definition at line 684 of file palette_group_panel.cc.
References yaze::editor::PaletteGroupPanel::game_data_, yaze::gfx::PaletteGroupMap::get_group(), and yaze::zelda3::GameData::palette_groups.

|
overrideprotectedvirtual |
Implements yaze::editor::PaletteGroupPanel.
Definition at line 689 of file palette_group_panel.cc.
References yaze::editor::PaletteGroupPanel::game_data_.
|
inlineoverrideprotectedvirtual |
Get metadata for this palette group.
Implements yaze::editor::PaletteGroupPanel.
Definition at line 329 of file palette_group_panel.h.
References metadata_.
|
overrideprotectedvirtual |
Draw the palette grid specific to this palette type.
Implements yaze::editor::PaletteGroupPanel.
Definition at line 695 of file palette_group_panel.cc.
References yaze::editor::PaletteGroupPanel::editing_color_, GetColorsPerRow(), yaze::editor::PaletteGroupPanel::GetMutablePalette(), yaze::editor::PaletteGroupPanel::IsColorModified(), yaze::gui::PaletteColorButton(), yaze::editor::PaletteGroupPanel::selected_color_, and yaze::editor::PaletteGroupPanel::selected_palette_.

|
inlineoverrideprotectedvirtual |
Get the number of colors per row for grid layout.
Implements yaze::editor::PaletteGroupPanel.
Definition at line 331 of file palette_group_panel.h.
Referenced by DrawPaletteGrid().
|
inlineoverrideprotectedvirtual |
Material Design icon for this panel.
Implements yaze::editor::EditorPanel.
Definition at line 334 of file palette_group_panel.h.
References ICON_MD_WATER.
|
inlineoverrideprotectedvirtual |
Get display priority for menu ordering.
Reimplemented from yaze::editor::EditorPanel.
Definition at line 335 of file palette_group_panel.h.
|
staticprivate |
Definition at line 659 of file palette_group_panel.cc.
References yaze::editor::PaletteGroupMetadata::colors_per_palette, yaze::editor::PaletteGroupMetadata::colors_per_row, yaze::editor::PaletteMetadata::description, yaze::editor::PaletteGroupMetadata::display_name, yaze::editor::PaletteGroupMetadata::group_name, yaze::editor::PaletteMetadata::name, yaze::editor::PaletteMetadata::palette_id, yaze::editor::PaletteGroupMetadata::palettes, yaze::editor::PaletteMetadata::rom_address, yaze::editor::PaletteMetadata::usage_notes, and yaze::editor::PaletteMetadata::vram_address.
|
staticprivate |
Definition at line 339 of file palette_group_panel.h.
Referenced by GetMetadata().