Commit Graph

2416 Commits

Author SHA1 Message Date
scawful
114084ef95 Refactor ROM loading and saving methods for clarity and consistency; streamline filename handling, remove unused flags, and rename SaveGroupsToRom to SaveGfxGroups for better readability. 2025-04-29 10:27:35 -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
0b9002e455 Refactor TexturePool class for improved readability and maintainability; reorganize method definitions and formatting for consistency. 2025-04-29 08:20:59 -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
3dc8a1f0ee Add Tile class and constructor overloads for tile data initialization 2025-04-29 00:09:58 -04:00
scawful
102f7b95e0 Add Tilemap functionality with creation, updating, and rendering capabilities; implement data retrieval for individual tiles, enhancing graphics management in the application. 2025-04-29 00:09:32 -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
683b7f637d Update SetColorsPalette function to set palette size to 256, no longer uses vector as underlying so assignment operations dont increment size 2025-04-23 20:17:04 -04:00
scawful
131f0485c6 Add context menu options for editable palette in Canvas; implement BeginCanvas and EndCanvas functions for improved canvas management. 2025-04-23 20:16:38 -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
c0c6374539 Refactor event handling in Controller::OnInput to use SDL_WaitEvent instead of polling; improves efficiency by reducing CPU usage during event processing. 2025-04-20 17:37:05 -04:00
scawful
97bb0a8bc6 Remove vsync from Renderer 2025-04-20 17:36:14 -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
8c207dc292 Implement SnesColor and SnesPalette constructors for enhanced color initialization; add methods for setting RGB and SNES values in SnesColor, improving color management and conversion capabilities. 2025-04-18 19:04:59 -04:00
scawful
6c6f7a9581 Add comprehensive tests for SnesColor and SnesPalette classes, including constructors, color addition, updating, sub-palettes, and iterator functionality; ensure proper behavior and state management in various scenarios. 2025-04-17 22:12:14 -04:00
scawful
afab5900f7 Add color conversion utility and editable palette display functionality; implement color picker and context menu options for palette colors in the GUI. 2025-04-17 21:50:01 -04:00
scawful
9ad41f9f8b Refactor SnesColor class to use constexpr for constructors and methods, improving compile-time evaluation and performance; include <array> for better type handling. 2025-04-17 21:49:55 -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
eeab477e72 Add RenderLayout function to handle dynamic rendering of Text and Button elements; introduce Layout struct for managing UI components in input module. 2025-04-17 21:33:35 -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
a267e18f46 Refactor Bitmap class to improve texture management and memory tracking; implement custom allocators for SDL_Surface and SDL_Texture, enhance bitmap constructors, and add utility functions for tile extraction and pixel manipulation. 2025-04-16 22:35:47 -04:00
scawful
875d3d2bcf Introduce TexturePool for efficient texture reuse. 2025-04-16 22:35:42 -04:00
scawful
110106dc61 Implement object rendering enhancements in DungeonObjectRenderer, including instruction execution limit to prevent infinite loops, improved tilemap initialization, and added palette setting functionality. Update header file with detailed method documentation. 2025-04-16 22:35:15 -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
fa68ba9167 Update submodule references for imgui and imgui_test_engine to latest commits. 2025-04-16 17:35:12 -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
75d7ba9382 Enhance ClickableText function to improve hover and click detection; refactor text rendering with dynamic color based on hover state and streamline cursor positioning for better UI interaction. 2025-04-16 17:20:05 -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
5637c20cb5 Add palette constants 2025-04-12 13:24:56 -04:00
scawful
96c9c5bea6 expand entrance room constants in Zelda3 and enhance OverworldMap class with mosaic handling. 2025-04-12 13:24:48 -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
935b0b5863 Add MemoryTracker class for memory allocation tracking; integrate with SDL deleters for improved memory management 2025-04-12 11:30:28 -04:00
scawful
f43328a1ae Update overworld loading logic to use Rom pointers directly; adjust test cases for consistency. 2025-04-12 11:29:45 -04:00
scawful
42cfb3bcb2 Refactor overworld constructors to accept Rom pointers 2025-04-12 11:27:23 -04:00
scawful
cb86c7b2ec Add TestEditor class and integration test setup for ImGui; implement basic UI elements and test registration functionality. 2025-04-12 09:59:47 -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
5e13b1b571 Remove dungeon.h and overworld.h headers; integrate their structures directly into zelda.h and update include paths in related source files. 2025-04-11 00:50:48 -04:00
scawful
087b194651 Remove unused room_tag.h header file and clean up includes in room.cc 2025-04-10 17:55:01 -04:00
scawful
ecbf991305 Move object names 2025-04-05 19:41:58 -04:00