Commit Graph

684 Commits

Author SHA1 Message Date
scawful
fdda77c172 Refactor ROM handling and remove SharedRom singleton for improved architecture
- Eliminated the SharedRom class to enhance modularity and reduce global state management.
- Updated various classes to directly manage ROM instances, improving clarity and encapsulation.
- Added new functions for loading messages and colors from ROM, enhancing functionality.
- Refactored Canvas and Editor classes to utilize direct ROM references, streamlining interactions.
- Improved documentation and comments for better code understanding and maintainability.
2025-08-03 17:52:02 -04:00
scawful
b5f6930d38 Refactor window management and renderer integration for improved structure
- Replaced platform backend references with a dedicated Window class for better encapsulation of window and audio device management.
- Updated various files to include the new window header, enhancing clarity and reducing dependencies on the platform backend.
- Removed obsolete platform backend code to streamline the codebase and improve maintainability.
- Refactored controller and editor classes to utilize the new window management system, ensuring consistent handling of window creation and rendering.
2025-08-03 16:09:51 -04:00
scawful
006624c0d8 Refactor assembly and overworld editor code for improved readability and performance
- Updated namespace usage to yaze::editor for consistency.
- Replaced string search methods with contains and ranges::find for better clarity and performance.
- Simplified Load function in AssemblyEditor for conciseness.
- Enhanced OverworldEditor by consolidating GUI element bindings and improving input handling.
- Refactored toolset drawing logic to streamline the editor interface and improve user experience.
2025-05-26 13:54:58 -04:00
scawful
095b3df27e Refactor graphics loading and decompression for consistency
- Updated various graphics loading functions to ensure consistent use of semicolons in ASSIGN_OR_RETURN statements.
- Changed set_filename method in Rom class to accept std::string_view for improved efficiency.
- Enhanced code readability and maintainability across multiple files by standardizing syntax.
2025-05-19 17:15:15 -04:00
scawful
a682ea9553 Port ScreenEditor to use Tilemap, remove Tilesheet class 2025-05-18 16:46:04 -04:00
scawful
86d72fe0ca Refactor shortcut key constants to use static storage duration 2025-05-15 22:50:27 -04:00
scawful
8d34ebf534 Refactor ROM save functionality to use structured settings
- Introduced a new SaveSettings struct to encapsulate parameters for the SaveToFile method, improving clarity and maintainability.
- Updated SaveToFile method signature to accept SaveSettings instead of individual parameters.
- Adjusted SaveRom method in EditorManager to utilize the new SaveSettings struct for better parameter management.
- Removed redundant label loading from LoadFromFile when z3_load is true, streamlining the loading process.
2025-05-13 21:00:53 -04:00
scawful
0863b7c606 Refactor graphics editor and screen editor tab handling
- Updated tab item handling in GraphicsEditor and ScreenEditor to ensure proper opening and closing of tab items.
- Improved layout management by replacing deprecated macros with ImGui table functions for better readability and maintainability.
- Adjusted palette display function signature in color handling to return a boolean for success status instead of absl::Status.
- Enhanced tile rendering functions for consistency and clarity in the graphics editing workflow.
2025-05-13 17:30:18 -04:00
scawful
951fc6a8a2 Enhance message data handling and editor functionality
- Updated ReadAllTextData to return a vector of MessageData instead of modifying an external list, improving data management.
- Added support for special elements in ParseMessageData to enhance message parsing capabilities.
- Introduced DisplayTextOverflowError function for better error handling in message saving.
- Refactored MessageEditor to utilize the new ReadAllTextData signature and improved expanded message handling.
- Cleaned up unused functions and variables in MessageEditor for better code organization.
2025-05-12 11:46:00 -04:00
scawful
ce6cde438c Refactor message handling and improve message editor functionality
- Combined TextCommands and SpecialChars into a single vector for streamlined matching in FindMatchingElement.
- Removed unnecessary logging in ParseMessageToData for cleaner error handling.
- Updated FindRealDictionaryEntry function signature for improved readability.
- Enhanced DrawCurrentMessage to strip newline characters from input before parsing.
- Added command parameter input in DrawTextCommands for better user interaction.
- Cleaned up unused ToString methods in MessageData and TextElement structures.
2025-05-10 12:52:34 -04:00
scawful
b872fd9672 Add message preview functionality and refactor MessageEditor
- Introduced MessagePreview class to handle message rendering and preview logic.
- Updated MessageEditor to utilize MessagePreview for drawing messages and managing font graphics.
- Refactored drawing methods to improve organization and clarity, including the addition of DrawFontAtlas and DrawExpandedMessageSettings.
- Enhanced message handling by integrating new dictionary entry lookup and improved bitmap updates for message previews.
- Cleaned up unused functions and variables to streamline the codebase.
2025-05-10 10:59:55 -04:00
scawful
179ab5bc40 Refactor dungeon entrance loading and clean up unused renderer object 2025-05-08 22:35:10 -04:00
scawful
2901c9a486 Refactor message handling and improve graphics rendering in MessageEditor
- Added SNES header include to message_data.cc for better integration.
- Simplified dictionary token formatting in ReadAllTextData function.
- Removed unused ImportMessageData function from message_data.h.
- Streamlined bitmap updates and rendering in MessageEditor, replacing instances of Renderer::GetInstance() with Renderer::Get().
- Enhanced message preview functionality with improved scrolling and drawing logic.
- Adjusted canvas sizes for better layout consistency.
2025-05-08 19:40:29 -04:00
scawful
11504ca4c1 Refactor Renderer access and enhance graphics loading functionality
- Replaced instances of Renderer::GetInstance() with Renderer::Get() for consistency across the codebase.
- Updated various rendering methods to streamline bitmap updates and enhance performance.
- Removed unused includes and comments to improve code clarity and maintainability.
2025-05-08 19:37:48 -04:00
scawful
43bf1e04c5 Refactor PaletteEditor to enhance color management and UI functionality
- Removed unused methods and streamlined color handling in the PaletteEditor.
- Introduced a quick access tab for palette categories and improved custom palette editing with context menus.
- Enhanced color picker functionality and added recently used colors feature for better user experience.
- Updated palette drawing methods to improve clarity and maintainability.
2025-05-05 16:17:39 -04:00
scawful
0e39c2b201 Remove kDrawDungeonRoomGraphics feature and related code from FeatureFlags and DungeonEditor for improved clarity and performance. Update room loading and rendering methods to streamline graphics management using gfx::Arena. 2025-05-05 12:28:25 -04:00
scawful
cb2473e656 Refactor LoadAssets method in EditorManager to streamline asset loading 2025-05-05 11:42:37 -04:00
scawful
95ff46a73f Remove redundant bitmap clearing logic in OverworldEditor::Clear for improved performance and clarity. 2025-05-03 14:08:12 -04:00
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
8f50d78ec7 Refactor DungeonEditor to use arrays for rooms and entrances, improving memory management and performance. Remove unused variables and streamline drawing methods for better clarity. 2025-04-30 17:50:13 -04:00
scawful
dcd7a81432 Refactor asset loading in EditorManager to iterate over active editors; streamline loading process for better scalability and maintainability. 2025-04-29 13:38:47 -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
ff74c0c92a Enhance DungeonEditor functionality by adding room graphics loading and rendering capabilities; implement bitmap drawing for background layers and room objects in the canvas, improving visual representation of dungeon rooms. 2025-04-27 14:00:40 -04:00
scawful
5c20d867ad Refactor DrawHomepage function in EditorManager to streamline UI elements; update welcome text, enhance recent files display, and improve button layout for better user experience. 2025-04-27 13:29:35 -04:00
scawful
f533ffb88b Enhance message parsing and editor functionality; add expanded message settings UI, improve message data handling, and remove import/export features for cleaner code structure. 2025-04-23 22:24:09 -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
903c1246c7 Refactor DungeonEditor to streamline room loading and size calculation; replace individual room loading methods with a unified LoadRoomFromRom function, and update room size management to utilize a dedicated RoomSize struct for improved clarity and efficiency. 2025-04-19 12:12:19 -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
c3d707901c Refactor MessageEditor to utilize gfx::SnesColor for font preview colors and replace custom TextBox implementation with gui::TextBox for improved functionality; adjust child window dimensions dynamically based on current font bitmap size. 2025-04-17 21:33:20 -04:00
scawful
c2a0cd930c Refactor DrawRomSelector method in EditorManager to return absl::Status for improved error handling; update method signature in header file and adjust menu drawing logic accordingly. 2025-04-16 22:34:57 -04:00
scawful
a01d554f15 Enhance message editor with import/export functionality for messages, including file handling and UI updates 2025-04-16 22:34:34 -04:00
scawful
97788fc033 Refactor canvas drawing methods to remove unnecessary bitmap parameters in context menu and bitmap drawing functions; update inventory and graphics editors to use new method signatures for improved consistency and clarity. 2025-04-16 21:44:07 -04:00
scawful
e7f976fcf0 add hyperlink to GitHub in the homepage for easier access to the project 2025-04-16 19:06:01 -04:00
scawful
00d30efbf1 Add short name handling for ROMs in Rom class; update EditorManager to use short names in the ROM selector for improved UI clarity. 2025-04-16 17:33:48 -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
a1a48e9057 message editor housekeeping 2025-04-12 13:23:46 -04:00
scawful
37b8b1cd3f Refactor Tile16Editor to enhance functionality with clipboard and scratch space features; implement methods for copying, pasting, saving, and loading Tile16 graphics. Update UI layout for improved editing experience and organization. 2025-04-12 11:56:36 -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
d8826739bf Refactor editor classes to accept a ROM pointer in constructors, enhancing dependency management and initialization across all editor types. 2025-04-11 16:54:47 -04:00
scawful
e0b95d8071 Refactor message pattern generation in TextElement for improved readability and maintainability; update table flags in MessageEditor for consistency. 2025-04-11 02:58:23 -04:00
scawful
216ee23f51 Refactor EditorManager to utilize EditorSet for managing multiple editors per ROM, enhance ROM loading and saving processes, and improve popup management integration. 2025-04-11 02:57:50 -04:00
scawful
b6bed9e92e Refactor EditorManager and integrate PopupManager for improved popup handling 2025-04-11 02:56:33 -04:00
scawful
ecbf991305 Move object names 2025-04-05 19:41:58 -04:00
scawful
e38a7d7581 Fix formatting in ParseTextDataByte and optimize message handling in ReadAllTextDataV2 2025-04-05 17:50:49 -04:00
scawful
0a311356ea Add function to replace all dictionary words in a string 2025-04-05 17:25:49 -04:00
scawful
d332f45d2a Fix bug with FindDictionaryEntry return type to int8_t 2025-04-05 17:25:10 -04:00
scawful
3d3a88a9c6 Refactor message handling: replace TextElement return type with std::optional for better nullability handling 2025-04-05 17:24:11 -04:00