refactor Tile16Editor: improve LoadTile8 method with asynchronous tile data loading

This commit is contained in:
scawful
2025-01-01 15:53:42 -05:00
parent d711a84ed3
commit 4a250a35cb
2 changed files with 46 additions and 44 deletions

View File

@@ -20,10 +20,10 @@ namespace editor {
*/
class Tile16Editor : public gfx::GfxContext, public SharedRom {
public:
absl::Status InitBlockset(const gfx::Bitmap& tile16_blockset_bmp,
const gfx::Bitmap& current_gfx_bmp,
const std::vector<gfx::Bitmap>& tile16_individual,
std::array<uint8_t, 0x200>& all_tiles_types);
absl::Status InitBlockset(const gfx::Bitmap &tile16_blockset_bmp,
const gfx::Bitmap &current_gfx_bmp,
const std::vector<gfx::Bitmap> &tile16_individual,
std::array<uint8_t, 0x200> &all_tiles_types);
absl::Status Update();
absl::Status DrawMenu();
@@ -48,7 +48,11 @@ class Tile16Editor : public gfx::GfxContext, public SharedRom {
bool map_blockset_loaded_ = false;
bool transfer_started_ = false;
bool transfer_blockset_loaded_ = false;
bool x_flip = false;
bool y_flip = false;
bool priority_tile = false;
int tile_size;
int current_tile16_ = 0;
int current_tile8_ = 0;
uint8_t current_palette_ = 0;
@@ -56,12 +60,6 @@ class Tile16Editor : public gfx::GfxContext, public SharedRom {
core::NotifyValue<uint32_t> notify_tile16;
core::NotifyValue<uint8_t> notify_palette;
// Various options for the Tile16 Editor
bool x_flip;
bool y_flip;
bool priority_tile;
int tile_size;
std::array<uint8_t, 0x200> all_tiles_types_;
// Tile16 blockset for selecting the tile to edit
@@ -100,4 +98,5 @@ class Tile16Editor : public gfx::GfxContext, public SharedRom {
} // namespace editor
} // namespace yaze
#endif // YAZE_APP_EDITOR_TILE16EDITOR_H