1#ifndef YAZE_APP_EDITOR_GRAPHICS_EDITOR_H
2#define YAZE_APP_EDITOR_GRAPHICS_EDITOR_H
6#include "absl/status/status.h"
15#include "imgui/imgui.h"
16#include "imgui_memory_editor.h"
25 "97C05",
"98219",
"9871E",
"98C00",
"99084",
"995AF",
"99DE0",
"9A27E",
26 "9A741",
"9AC31",
"9B07E",
"9B55C",
"9B963",
"9BB99",
"9C009",
"9C4B4",
27 "9C92B",
"9CDD6",
"9D2C2",
"9E037",
"9E527",
"9EA56",
"9EF65",
"9FCD1",
28 "A0193",
"A059E",
"A0B17",
"A0FB6",
"A14A5",
"A1988",
"A1E66",
"A232B",
29 "A27F0",
"A2B6E",
"A302C",
"A3453",
"A38CA",
"A42BB",
"A470C",
"A4BA9",
30 "A5089",
"A5385",
"A5742",
"A5BCC",
"A6017",
"A6361",
"A66F8"};
33 "A8E5D",
"A9435",
"A9934",
"A9D83",
"AA2F1",
"AA6D4",
"AABE4",
"AB127",
34 "AB65A",
"ABBDD",
"AC38D",
"AC797",
"ACCC8",
"AD0AE",
"AD245",
"AD554",
35 "ADAAC",
"ADECC",
"AE453",
"AE9D2",
"AEF40",
"AF3C9",
"AF92E",
"AFE9D",
36 "B03D2",
"B09AC",
"B0F0C",
"B1430",
"B1859",
"B1E01",
"B229A",
"B2854",
37 "B2D27",
"B31D7",
"B3B58",
"B40B5",
"B45A5",
"B4D64",
"B5031",
"B555F",
38 "B5F30",
"B6858",
"B70DD",
"B7526",
"B79EC",
"B7C83",
"B80F7",
"B85CC",
39 "B8A3F",
"B8F97",
"B94F2",
"B9A20",
"B9E9A",
"BA3A2",
"BA8F6",
"BACDC",
40 "BB1F9",
"BB781",
"BBCCA",
"BC26D",
"BC7D4",
"BCBB0",
"BD082",
"BD5FC",
41 "BE115",
"BE5C2",
"BEB63",
"BF0CB",
"BF607",
"BFA55",
"BFD71",
"C017D",
42 "C0567",
"C0981",
"C0BA7",
"C116D",
"C166A",
"C1FE0",
"C24CE",
"C2B19"};
62 absl::Status
Update()
override;
64 absl::Status
Undo()
override {
return absl::UnimplementedError(
"Undo"); }
65 absl::Status
Redo()
override {
return absl::UnimplementedError(
"Redo"); }
66 absl::Status
Cut()
override {
return absl::UnimplementedError(
"Cut"); }
67 absl::Status
Copy()
override {
return absl::UnimplementedError(
"Copy"); }
68 absl::Status
Paste()
override {
return absl::UnimplementedError(
"Paste"); }
69 absl::Status
Find()
override {
return absl::UnimplementedError(
"Find"); }
The Rom class is used to load, save, and modify Rom data.
A class to hold a shared pointer to a Rom object.
Interface for editor classes.
Allows the user to edit graphics sheets from the game or view prototype graphics.
absl::Status DecompressSuperDonkey()
absl::Status DrawClipboardImport()
uint64_t edit_palette_sub_index_
absl::Status DrawTilemapImport()
uint64_t num_sheets_to_load_
absl::Status DrawToolset()
std::vector< uint8_t > cgx_data_
MemoryEditor cgx_memory_editor_
PaletteEditor palette_editor_
absl::Status DecompressImportData(int size)
std::set< uint16_t > child_window_sheets_
absl::Status Copy() override
std::array< gfx::Bitmap, kNumGfxSheets > gfx_sheets_
absl::Status Find() override
absl::Status UpdateGfxSheetList()
uint64_t edit_palette_group_index_
uint64_t edit_palette_index_
gfx::Bitmap link_full_sheet_
char tilemap_file_name_[256]
absl::Status Update() override
absl::Status DrawFileImport()
gui::Canvas import_canvas_
gfx::PaletteGroup col_file_palette_group_
absl::Status Cut() override
absl::Status Redo() override
absl::Status UpdateLinkGfxView()
absl::Status DrawObjImport()
std::vector< uint8_t > graphics_buffer_
gui::GfxSheetAssetBrowser asset_browser_
absl::Status DrawPaletteControls()
std::vector< SDL_Color > decoded_col_
absl::Status UpdateGfxEdit()
std::vector< uint8_t > extra_cgx_data_
std::vector< uint8_t > decoded_scr_data_
std::vector< uint8_t > decoded_cgx_
std::vector< uint8_t > import_data_
absl::Status Paste() override
absl::Status DrawCgxImport()
absl::Status UpdateGfxTabView()
gui::Canvas current_sheet_canvas_
absl::Status DrawScrImport()
absl::Status Undo() override
std::stack< uint16_t > release_queue_
gfx::SnesPalette col_file_palette_
uint64_t current_palette_index_
uint64_t clipboard_offset_
absl::Status UpdateScadView()
gfx::SnesPalette z3_rom_palette_
char tilemap_file_path_[256]
zelda3::overworld::Overworld overworld_
GfxEditMode gfx_edit_mode_
absl::Status DrawExperimentalFeatures()
void DrawGfxEditToolset()
gui::Canvas super_donkey_canvas_
absl::Status DrawMemoryEditor()
std::vector< uint8_t > scr_data_
gfx::SnesPalette link_palette_
uint64_t edit_palette_group_name_index_
gui::Canvas graphics_bin_canvas_
std::set< uint16_t > open_sheets_
MemoryEditor col_memory_editor_
absl::Status UpdatePaletteColumn()
Allows the user to view and edit in game palettes.
Represents a bitmap image.
Represents a palette of colors for the Super Nintendo Entertainment System (SNES).
Represents a canvas for drawing and manipulating graphics.
Represents the full Overworld data, light and dark world.
const std::string kSuperDonkeyTiles[]
const std::string kSuperDonkeySprites[]
constexpr int kTilesheetWidth
constexpr int kTilesheetHeight
Represents a group of palettes.