From ed770b925c885b8fcee6882b49161f8e3067d3fe Mon Sep 17 00:00:00 2001 From: scawful Date: Sat, 20 Jul 2024 09:20:24 -0400 Subject: [PATCH] add Find to Editor interface --- src/app/editor/code/assembly_editor.h | 1 + src/app/editor/dungeon_editor.h | 11 ++++++----- src/app/editor/graphics/graphics_editor.h | 12 ++++++------ src/app/editor/graphics/palette_editor.h | 1 + src/app/editor/graphics/screen_editor.h | 11 ++++++----- src/app/editor/music/music_editor.h | 11 ++++++----- src/app/editor/overworld_editor.h | 3 ++- src/app/editor/sprite/sprite_editor.h | 11 ++++++----- src/app/editor/utils/editor.h | 2 ++ 9 files changed, 36 insertions(+), 27 deletions(-) diff --git a/src/app/editor/code/assembly_editor.h b/src/app/editor/code/assembly_editor.h index c2d7790c..87a8bfc3 100644 --- a/src/app/editor/code/assembly_editor.h +++ b/src/app/editor/code/assembly_editor.h @@ -44,6 +44,7 @@ class AssemblyEditor : public Editor { absl::Status Undo() override; absl::Status Redo() override; + absl::Status Find() override { return absl::UnimplementedError("Find"); } absl::Status Update() override; diff --git a/src/app/editor/dungeon_editor.h b/src/app/editor/dungeon_editor.h index ef20b310..5584eb4f 100644 --- a/src/app/editor/dungeon_editor.h +++ b/src/app/editor/dungeon_editor.h @@ -49,11 +49,12 @@ class DungeonEditor : public Editor, DungeonEditor() { type_ = EditorType::kDungeon; } absl::Status Update() override; - absl::Status Cut() override { return absl::OkStatus(); } - absl::Status Copy() override { return absl::OkStatus(); } - absl::Status Paste() override { return absl::OkStatus(); } - absl::Status Undo() override { return absl::OkStatus(); } - absl::Status Redo() override { return absl::OkStatus(); } + absl::Status Undo() { return absl::UnimplementedError("Undo"); } + absl::Status Redo() { return absl::UnimplementedError("Redo"); } + absl::Status Cut() { return absl::UnimplementedError("Cut"); } + absl::Status Copy() { return absl::UnimplementedError("Copy"); } + absl::Status Paste() { return absl::UnimplementedError("Paste"); } + absl::Status Find() override { return absl::UnimplementedError("Find"); } void add_room(int i) { active_rooms_.push_back(i); } diff --git a/src/app/editor/graphics/graphics_editor.h b/src/app/editor/graphics/graphics_editor.h index ef200688..a4e60002 100644 --- a/src/app/editor/graphics/graphics_editor.h +++ b/src/app/editor/graphics/graphics_editor.h @@ -44,7 +44,6 @@ const std::string kSuperDonkeySprites[] = { "BE115", "BE5C2", "BEB63", "BF0CB", "BF607", "BFA55", "BFD71", "C017D", "C0567", "C0981", "C0BA7", "C116D", "C166A", "C1FE0", "C24CE", "C2B19"}; - /** * @class GraphicsEditor * @brief Allows the user to edit graphics sheets from the game or view @@ -65,11 +64,12 @@ class GraphicsEditor : public SharedRom, public Editor { absl::Status Update() override; - absl::Status Cut() override { return absl::OkStatus(); } - absl::Status Copy() override { return absl::OkStatus(); } - absl::Status Paste() override { return absl::OkStatus(); } - absl::Status Undo() override { return absl::OkStatus(); } - absl::Status Redo() override { return absl::OkStatus(); } + absl::Status Undo() override { return absl::UnimplementedError("Undo"); } + absl::Status Redo() override { return absl::UnimplementedError("Redo"); } + absl::Status Cut() override { return absl::UnimplementedError("Cut"); } + absl::Status Copy() override { return absl::UnimplementedError("Copy"); } + absl::Status Paste() override { return absl::UnimplementedError("Paste"); } + absl::Status Find() override { return absl::UnimplementedError("Find"); } private: enum class GfxEditMode { diff --git a/src/app/editor/graphics/palette_editor.h b/src/app/editor/graphics/palette_editor.h index 0e3c6bc3..8763a336 100644 --- a/src/app/editor/graphics/palette_editor.h +++ b/src/app/editor/graphics/palette_editor.h @@ -94,6 +94,7 @@ class PaletteEditor : public SharedRom, public Editor { absl::Status Paste() override { return absl::OkStatus(); } absl::Status Undo() override { return absl::OkStatus(); } absl::Status Redo() override { return absl::OkStatus(); } + absl::Status Find() override { return absl::OkStatus(); } void DisplayCategoryTable(); diff --git a/src/app/editor/graphics/screen_editor.h b/src/app/editor/graphics/screen_editor.h index de5ccc78..35fe8846 100644 --- a/src/app/editor/graphics/screen_editor.h +++ b/src/app/editor/graphics/screen_editor.h @@ -46,11 +46,12 @@ class ScreenEditor : public SharedRom, public Editor { absl::Status Update() override; - absl::Status Cut() override { return absl::OkStatus(); } - absl::Status Copy() override { return absl::OkStatus(); } - absl::Status Paste() override { return absl::OkStatus(); } - absl::Status Undo() override { return absl::OkStatus(); } - absl::Status Redo() override { return absl::OkStatus(); } + absl::Status Undo() override { return absl::UnimplementedError("Undo"); } + absl::Status Redo() override { return absl::UnimplementedError("Redo"); } + absl::Status Cut() override { return absl::UnimplementedError("Cut"); } + absl::Status Copy() override { return absl::UnimplementedError("Copy"); } + absl::Status Paste() override { return absl::UnimplementedError("Paste"); } + absl::Status Find() override { return absl::UnimplementedError("Find"); } absl::Status SaveDungeonMaps(); diff --git a/src/app/editor/music/music_editor.h b/src/app/editor/music/music_editor.h index d0bf9fc1..c95a2b63 100644 --- a/src/app/editor/music/music_editor.h +++ b/src/app/editor/music/music_editor.h @@ -65,11 +65,12 @@ class MusicEditor : public SharedRom, public Editor { absl::Status Update() override; - absl::Status Cut() override { return absl::OkStatus(); } - absl::Status Copy() override { return absl::OkStatus(); } - absl::Status Paste() override { return absl::OkStatus(); } - absl::Status Undo() override { return absl::OkStatus(); } - absl::Status Redo() override { return absl::OkStatus(); } + absl::Status Undo() override { return absl::UnimplementedError("Undo"); } + absl::Status Redo() override { return absl::UnimplementedError("Redo"); } + absl::Status Cut() override { return absl::UnimplementedError("Cut"); } + absl::Status Copy() override { return absl::UnimplementedError("Copy"); } + absl::Status Paste() override { return absl::UnimplementedError("Paste"); } + absl::Status Find() override { return absl::UnimplementedError("Find"); } private: void DrawChannels(); diff --git a/src/app/editor/overworld_editor.h b/src/app/editor/overworld_editor.h index 226b10e9..d9e48856 100644 --- a/src/app/editor/overworld_editor.h +++ b/src/app/editor/overworld_editor.h @@ -12,11 +12,11 @@ #include "absl/status/statusor.h" #include "absl/strings/str_format.h" #include "app/core/common.h" -#include "app/editor/utils/gfx_context.h" #include "app/editor/graphics/gfx_group_editor.h" #include "app/editor/graphics/palette_editor.h" #include "app/editor/graphics/tile16_editor.h" #include "app/editor/utils/editor.h" +#include "app/editor/utils/gfx_context.h" #include "app/gfx/bitmap.h" #include "app/gfx/snes_palette.h" #include "app/gfx/snes_tile.h" @@ -116,6 +116,7 @@ class OverworldEditor : public Editor, absl::Status Cut() { return absl::UnimplementedError("Cut"); } absl::Status Copy() { return absl::UnimplementedError("Copy"); } absl::Status Paste() { return absl::UnimplementedError("Paste"); } + absl::Status Find() { return absl::UnimplementedError("Find Unused Tiles"); } auto overworld() { return &overworld_; } diff --git a/src/app/editor/sprite/sprite_editor.h b/src/app/editor/sprite/sprite_editor.h index 0aac72a1..5fd656c8 100644 --- a/src/app/editor/sprite/sprite_editor.h +++ b/src/app/editor/sprite/sprite_editor.h @@ -42,11 +42,12 @@ class SpriteEditor : public SharedRom, public Editor { */ absl::Status Update() override; - absl::Status Cut() override { return absl::OkStatus(); } - absl::Status Copy() override { return absl::OkStatus(); } - absl::Status Paste() override { return absl::OkStatus(); } - absl::Status Undo() override { return absl::OkStatus(); } - absl::Status Redo() override { return absl::OkStatus(); } + absl::Status Undo() override { return absl::UnimplementedError("Undo"); } + absl::Status Redo() override { return absl::UnimplementedError("Redo"); } + absl::Status Cut() override { return absl::UnimplementedError("Cut"); } + absl::Status Copy() override { return absl::UnimplementedError("Copy"); } + absl::Status Paste() override { return absl::UnimplementedError("Paste"); } + absl::Status Find() override { return absl::UnimplementedError("Find"); } private: /** diff --git a/src/app/editor/utils/editor.h b/src/app/editor/utils/editor.h index abf71864..e3321289 100644 --- a/src/app/editor/utils/editor.h +++ b/src/app/editor/utils/editor.h @@ -48,6 +48,8 @@ class Editor { virtual absl::Status Update() = 0; + virtual absl::Status Find() = 0; + EditorType type() const { return type_; } protected: