1#ifndef YAZE_APP_EDITOR_GRAPHICS_GRAPHICS_EDIT_CONTEXT_H_
2#define YAZE_APP_EDITOR_GRAPHICS_GRAPHICS_EDIT_CONTEXT_H_
11#include "absl/status/statusor.h"
30 std::array<std::optional<zelda3::PaletteColorAddress>, 8>
colors{};
45 "No loader-owned palette address mapping.";
Represents a palette of colors for the Super Nintendo Entertainment System (SNES).
Editors are the view controllers for the application.
absl::Status UpdateGraphicsContextPalettes(GraphicsEditContext &context, GraphicsEditContext refreshed)
void ResolveGraphicsPaletteAddressing(GraphicsEditTarget &target, const zelda3::GameData *owner, const zelda3::PaletteAddressMap &addresses, int row, int half_offset)
absl::StatusOr< GraphicsEditContext > MakeDungeonGraphicsEditContext(const zelda3::Room &room, const zelda3::RoomObject &object, const zelda3::GameData *owner)
absl::Status ValidateGraphicsPaletteAddressing(const GraphicsEditTarget &target, const zelda3::GameData *owner)
Zelda 3 specific classes and functions.
std::array< std::optional< PaletteColorAddress >, 128 > PaletteAddressMap
std::string drawing_description
zelda3::ResolvedGraphicsContext resolved
std::string palette_error
std::vector< GraphicsEditTarget > targets
std::function< absl::StatusOr< usage_preview::PreviewImage >()> render_preview
std::function< absl::Status(GraphicsEditContext &) resolve_live_source)
std::optional< uint64_t > palette_revision
const zelda3::GameData * owner
std::function< void()> return_to_source
std::function< absl::Status(GraphicsEditContext &) refresh_palettes)
std::string SourceOrientationLabel() const
std::optional< GraphicsPaletteAddressing > writable_palette
uint8_t source_orientation_mask
std::string palette_address_limitation
std::array< std::optional< zelda3::PaletteColorAddress >, 8 > colors
const zelda3::GameData * owner