1#ifndef YAZE_APP_EDITOR_EDITOR_MANAGER_H
2#define YAZE_APP_EDITOR_EDITOR_MANAGER_H
4#define IMGUI_DEFINE_MATH_OPERATORS
6#include <unordered_map>
8#include "absl/status/status.h"
25#include "yaze_config.h"
48 ss << YAZE_VERSION_MAJOR <<
"." << YAZE_VERSION_MINOR <<
"."
49 << YAZE_VERSION_PATCH;
54 void Initialize(
const std::string& filename =
"");
95 std::vector<std::shared_ptr<Rom>>
roms_;
147 editor->CleanupUnusedTextures(current_time, timeout);
The Rom class is used to load, save, and modify Rom data.
Text editor for modifying assembly code.
DungeonEditor class for editing dungeons.
bool show_resource_label_manager
bool show_palette_editor_
absl::Status OpenProject()
std::unordered_map< Rom *, std::unique_ptr< EditorSet > > editor_sets_
EditorSet * current_editor_set_
auto GetCurrentRom() -> Rom *
bool show_workspace_layout
absl::Status SaveProject()
auto GetCurrentEditorSet() -> EditorSet *
void Initialize(const std::string &filename="")
auto emulator() -> emu::Emulator &
absl::Status DrawRomSelector()
absl::Status LoadAssets()
absl::Status OpenRomOrProject(const std::string &filename)
std::vector< std::shared_ptr< Rom > > roms_
std::unique_ptr< PopupManager > popup_manager_
absl::Status SetCurrentRom(Rom *rom)
Contains a complete set of editors for a single ROM instance.
DungeonEditor dungeon_editor_
SettingsEditor settings_editor_
MusicEditor music_editor_
ScreenEditor screen_editor_
void CleanupUnusedTextures(uint64_t current_time, uint64_t timeout)
EditorSet(Rom *rom=nullptr)
MemoryEditorWithDiffChecker memory_editor_
GraphicsEditor graphics_editor_
AssemblyEditor assembly_editor_
SpriteEditor sprite_editor_
OverworldEditor overworld_editor_
MessageEditor message_editor_
std::vector< Editor * > active_editors_
PaletteEditor palette_editor_
Interface for editor classes.
Allows the user to edit graphics sheets from the game or view prototype graphics.
A class for editing music data in a Rom.
Manipulates the Overworld and OverworldMap data in a Rom.
Allows the user to view and edit in game palettes.
The ScreenEditor class allows the user to edit a variety of screens in the game or create a custom me...
Allows the user to edit sprites.
A class for emulating and debugging SNES games.
Editors are the view controllers for the application.
Main namespace for the application.
Represents a project in the application.