- Updated file paths for performance-related headers to reflect new directory structure under `app/gfx/performance/`.
- Introduced new `PerformanceDashboard` and `PerformanceProfiler` classes for comprehensive performance monitoring and reporting.
- Enhanced performance metrics collection and visualization capabilities, including real-time updates and detailed reports.
- Improved memory usage tracking and optimization status analysis within the graphics system.
- Ensured compatibility with existing components by updating include directives across multiple files.
- Replaced direct calls to GetConfigDirectory with PlatformPaths::GetConfigDirectory across multiple files to standardize configuration directory access.
- Updated RecentFilesManager, EditorManager, and various agent components to handle potential errors when retrieving the configuration directory.
- Enhanced file loading functions to utilize the new LoadFileFromConfigDir method for improved clarity and error handling.
- Introduced new methods in file_util.h for better file management practices, leveraging std::filesystem for cross-platform consistency.
- Replaced `SDL_Deleter` with `util::SDL_Deleter` in window creation for better utility usage.
- Updated file dialog methods to consistently reference `core::FeatureFlags` for feature flag checks.
- Refactored file extension retrieval in `EditorManager` to use `util::GetFileExtension` for consistency.
- Adjusted `MusicEditor` constructor to accept a ROM pointer, enhancing initialization clarity.
- Commented out unused code in `MusicEditor` to improve readability and maintainability.
- Updated include paths in `overworld_editor.cc` for better organization.
- Cleaned up commented-out code in `editor_selection_dialog.cc` and `welcome_screen.cc` for clarity.
- Added binary directory paths to CMake presets for better build organization.
- Enhanced the macOS AI preset description to include networking capabilities.
- Refactored MusicEditor constructor to remove ROM dependency, simplifying initialization.
- Cleaned up unused ROM pointer methods in MusicEditor for improved clarity.
- Updated the `MusicEditor` class to integrate a new playback engine (`emu::Apu`) for real-time music playback.
- Refactored UI components to improve the music editing experience, including dynamic song selection and enhanced visualization of music data.
- Introduced methods for starting and stopping playback, along with a new tracker view for displaying song patterns and commands.
- Removed obsolete methods and streamlined the drawing functions for better maintainability and clarity.
- Added detailed implementation plans as comments to guide future development and feature integration.
- Deleted the PerformanceMonitor implementation and header files as functionality has been fully integrated into gfx::PerformanceProfiler.
- Updated all relevant source files to replace PerformanceMonitor and ScopedTimer with their gfx counterparts, ensuring consistent performance monitoring across the application.
- Added performance monitoring capabilities using ScopedTimer in the DungeonEditor, PaletteEditor, ScreenEditor, MessageEditor, MusicEditor, SpriteEditor, and SettingsEditor classes to track loading times.
- Enhanced the Load methods in each editor to include timing for critical operations, improving performance analysis and optimization.
- Removed unnecessary debug output in the Sprite class to clean up the codebase.