Commit Graph

82 Commits

Author SHA1 Message Date
scawful
d6551f84d2 Refactor graphics handling to utilize Arena for graphics sheets management
Update various editors to replace instances of GraphicsSheetManager with gfx::Arena for accessing graphics sheets. This change enhances memory management and performance by centralizing graphics data handling within the Arena class. Clean up related code for improved clarity and maintainability.
2025-05-02 12:06:46 -04:00
scawful
d77aa2ab61 Remove CleanupUnusedTextures method from Editor and OverworldEditor classes; eliminate unused texture cleanup logic from EditorManager to streamline performance. 2025-04-29 08:21:11 -04:00
scawful
718a14ca62 Refactor OverworldEditor and Tile16Editor to use Tilemap instead of array of Bitmap 2025-04-29 00:26:16 -04:00
scawful
68eb3a657c Refactor OverworldEditor to improve map index calculation; streamline current_map_ assignment and maintain clarity in highlighted map logic. 2025-04-27 14:01:06 -04:00
scawful
9d2cb918b9 Update Tile16Editor to accept a pointer for tile16_individual; adjust OverworldEditor initialization accordingly for improved memory management. 2025-04-20 17:44:51 -04:00
scawful
44e13cf4bb Refactor bitmap palette management across various components to streamline palette setting and improve error handling; remove unnecessary status checks and enhance consistency in palette application methods. 2025-04-17 21:49:47 -04:00
scawful
c60c392264 Refactor EditorManager to handle status from ROM operations; improve error handling in ROM selector. Update overworld loading logic for consistency. 2025-04-12 13:25:40 -04:00
scawful
1d64846a37 initialize blank editor set in EditorManager; update overworld initialization to use Rom pointers; add Clear and CleanupUnusedTextures methods in OverworldEditor. 2025-04-12 11:33:03 -04:00
scawful
42cfb3bcb2 Refactor overworld constructors to accept Rom pointers 2025-04-12 11:27:23 -04:00
scawful
95df0b5d8b Refactor Bitmap class: remove deprecated constructor and update Initialize method signature 2025-03-20 18:17:45 -04:00
scawful
1a674e731a Refactor OverworldEditor Load method to ensure graphics are loaded before initialization 2025-03-13 09:27:27 -04:00
scawful
e7720019fd Implement Save method in various editor classes with unimplemented error 2025-03-12 15:16:32 -04:00
scawful
806885824a Refactor loading methods in EditorManager and OverworldEditor for improved clarity and consistency; add checks for loaded ROM in GfxGroupEditor and MessageEditor 2025-03-12 14:28:53 -04:00
scawful
412e617ce7 Add Load method to editor classes and update corresponding headers 2025-03-08 10:07:18 -05:00
scawful
6714f77514 Implement Initialize method in Editor class and override in derived editors 2025-03-08 00:31:30 -05:00
scawful
c99a4b0bc4 rename ApplyPalette with SetPalette 2025-03-02 17:06:46 -05:00
scawful
de53ccae21 Refactor ExperimentFlags to FeatureFlags for consistency across the codebase 2025-01-22 13:41:28 -05:00
scawful
b245b10963 Refactor logging to use util::logf and add log utility header 2025-01-22 13:36:37 -05:00
scawful
50c9223a53 Add hex utility functions and refactor usage in editors 2025-01-22 13:28:21 -05:00
scawful
809282edad remove nonstandard type aliases 2025-01-19 20:16:40 -05:00
scawful
c8883a1e54 Remove unused includes and clean up header files 2025-01-16 03:44:37 -05:00
scawful
7ad0672e74 Wrap overworld sprite graphics draw in experiment flag 2025-01-06 21:38:42 -05:00
scawful
6bf8b62d64 Merge remote-tracking branch 'refs/remotes/origin/master'
Merge changes made on visual studio repo.
2025-01-06 11:13:29 -05:00
Justin Scofield
02a86c41da Refactored EditorManager to consolidate popup drawing methods into a single DrawPopups method and added a DrawMenuBar method. Replaced DrawYazeMenu with DrawHomepage for displaying a welcome message and options for opening a ROM. Introduced a LoadRom method to handle ROM loading and updated related methods to set the current_rom_ pointer. Added settings_editor_ to the list of active editors. 2025-01-05 20:54:02 -05:00
Justin Scofield
fe0dbd3642 Refactor graphics sheet management with singleton class
Refactor the handling of graphics sheets by introducing a singleton class `GraphicsSheetManager`. This centralizes the management of graphics sheets, replacing direct access through the `Rom` object. Key changes include:

- Updated various methods across multiple classes to use `GraphicsSheetManager::GetInstance()` for accessing and manipulating graphics sheets.
- Introduced standalone functions `LoadLinkGraphics`, `LoadAllGraphicsData`, and `SaveAllGraphicsData` for loading and saving graphics data.
- Refactored the `Rom` class to remove methods and member variables related to graphics sheet management.
- Updated `OverworldEditor` to use `std::array` for `maps_bmp_` and added error handling for `std::bad_alloc` exceptions.
- Improved code modularity and error handling throughout the application.
2025-01-04 20:04:00 -05:00
scawful
698b5a43fa update editors based on namespace changes 2025-01-02 10:16:50 -05:00
scawful
9164fec53f refactor OverworldEditor: replace ConvertSurfaceToPNG with GetPngData for clipboard image copying 2025-01-01 15:53:59 -05:00
scawful
d3eca0f950 Make ExperimentFlags a singleton, remove inheritance relationships 2024-12-31 18:13:53 -05:00
scawful
50e4117230 Add entrance names to common header and update usage in OverworldEditor 2024-12-31 16:40:44 -05:00
scawful
6d2de44b94 Refactor Overworld blockset types and update related function signatures 2024-12-31 16:40:01 -05:00
scawful
33dc1983bc Add Rom dependency injection to OverworldEditor 2024-12-31 11:43:33 -05:00
scawful
19deca88ab Add OverworldEntranceTileTypes and remove EntranceContext boiler plate 2024-12-30 19:04:51 -05:00
scawful
59e59f8a38 Refactor hex string handling: replace UppercaseHex functions with Hex equivalents 2024-12-30 09:48:19 -05:00
scawful
c0bce7fd1c Fix formatting and clean up namespace declarations in editor and GUI files 2024-12-29 16:45:48 -05:00
scawful
8cf16906e6 remove overworld namespace 2024-12-29 16:12:53 -05:00
scawful
3fc3e2af43 Refactor OverworldEditor toolset to use gui::AddTableColumn 2024-12-29 16:03:40 -05:00
scawful
e05e7c35db remove app namespace 2024-12-28 21:28:51 -05:00
scawful
f752fc0d4a Cleanup OverworldEditor 2024-12-28 17:17:50 -05:00
scawful
21314702e8 Add EditorContext, refactor utils, add system managers 2024-11-19 23:10:23 -05:00
scawful
731eb456ab Refactor editor includes and update source files for improved organization 2024-11-18 14:05:08 -05:00
scawful
e0db021e7c Add input field size constant and improve sprite preview handling; adjust depth and add checks for empty graphics 2024-11-13 08:52:55 -05:00
scawful
5677b62b32 Update blockset canvas size for improved layout; adjust height to accommodate additional elements 2024-11-13 08:52:48 -05:00
scawful
0035176f86 Add CopyTile8bpp16 function and refactor usage in OverworldMap 2024-11-10 17:16:46 -05:00
scawful
6c0bc9877e Refactor sprite dimension retrieval to use lowercase methods for consistency 2024-11-08 00:14:11 -05:00
scawful
665d58aa97 General cleanup 2024-11-02 00:10:24 -05:00
scawful
e8e6ab00bf Refactor ImTextureID casting for SDL_Texture rendering 2024-10-09 01:59:15 -04:00
scawful
c31f3b81be Refactor code to remove unused headers and unnecessary includes 2024-09-25 00:37:23 -04:00
scawful
374eebfac4 header include cleanup 2024-09-07 09:55:01 -04:00
scawful
028879aefd Refactor palette_editor.cc and palette_editor.h for improved code organization and readability 2024-09-02 14:12:22 -04:00
scawful
7650c56e8d update usage stats grids 2024-09-01 14:31:54 -04:00