refactor(app): reorganize application structure and update includes

- Moved core components such as `Controller` and `Window` from `src/app/core/` to `src/app/` and `src/app/platform/`, respectively, to improve modularity and clarity.
- Updated include paths across the codebase to reflect the new locations of these components.
- Introduced a new foundational core library in `src/core/` for project management and ROM patching logic, enhancing the separation of concerns.
- Adjusted CMake configurations to ensure proper compilation of the new core library and updated dependencies in various modules.

Benefits:
- Streamlines the application structure, making it easier to navigate and maintain.
- Enhances code organization by clearly delineating core functionalities from application-specific logic.
- Improves overall architecture by promoting a clearer separation of concerns between different components.
This commit is contained in:
scawful
2025-10-15 20:10:04 -04:00
parent 066ffa46e2
commit d45f7819e1
88 changed files with 393 additions and 290 deletions

View File

@@ -19,7 +19,7 @@
#include "absl/status/statusor.h"
#include "absl/strings/str_format.h"
#include "absl/strings/string_view.h"
#include "app/core/project.h"
#include "core/project.h"
#include "app/gfx/core/bitmap.h"
#include "app/gfx/types/snes_color.h"
#include "app/gfx/types/snes_palette.h"
@@ -220,7 +220,7 @@ class Rom {
return palette_groups_.dungeon_main.mutable_palette(i);
}
core::ResourceLabelManager* resource_label() { return &resource_label_manager_; }
project::ResourceLabelManager* resource_label() { return &resource_label_manager_; }
zelda3_version_pointers version_constants() const {
return kVersionConstantsMap.at(version_);
}
@@ -250,7 +250,7 @@ class Rom {
std::vector<uint8_t> graphics_buffer_;
// Label manager for unique resource names.
core::ResourceLabelManager resource_label_manager_;
project::ResourceLabelManager resource_label_manager_;
// All palette groups in the game
gfx::PaletteGroupMap palette_groups_;