Commit Graph

99 Commits

Author SHA1 Message Date
scawful
83dbee155b Implement workspace and session management features in EditorManager
- Added functionality for creating, duplicating, and closing sessions, enhancing user experience with multiple ROMs.
- Integrated session management UI elements, including a session switcher and session manager, for better navigation.
- Introduced workspace layout management features, allowing users to save and load layouts, and reset to defaults.
- Updated popup manager to include workspace help and session limit warnings, improving user guidance.
- Enhanced UI drawing functions to support new session and layout management features, ensuring a cohesive user interface.
2025-09-25 15:18:11 -04:00
scawful
41adb1b70e Enhance testing framework and UI integration for YAZE
- Added a comprehensive testing framework with support for unit, integration, and UI tests, improving overall test coverage and reliability.
- Integrated ImGui Test Engine for UI testing, allowing for real-time feedback and visualization of test results.
- Updated CMake configuration to conditionally include testing components based on build options, enhancing flexibility for developers.
- Introduced a new command in the CLI for running asset loading tests on ROMs, providing a straightforward way to validate functionality.
- Enhanced error handling and resource management during testing, ensuring stability and clarity in test execution.
- Improved user interface with a dedicated test dashboard for monitoring test progress and results, enhancing developer experience.
2025-09-25 13:26:56 -04:00
scawful
163aa9e121 Refactor CommandManager to Simplify Command Structure
- Updated CommandManager to replace the recursive CommandInfoOrPrefix structure with a simplified CommandGroup structure, enhancing clarity and usability.
- Modified ShowWhichKey, SaveKeybindings, and LoadKeybindings methods to accommodate the new command structure, ensuring consistent handling of main commands and their associated subcommands.
- Improved code readability and maintainability by streamlining command registration and execution processes.
2025-09-25 09:48:57 -04:00
scawful
6d8c56744f Add ToastManager class for displaying notifications in the editor
- Implemented ToastManager to manage and display toast notifications with different types (info, success, warning, error).
- Introduced a Toast struct to encapsulate message details and time-to-live (TTL) for each notification.
- Integrated ImGui for rendering notifications on the screen, allowing for dynamic updates and automatic removal based on TTL.
2025-09-13 10:57:08 -04:00
scawful
86d72fe0ca Refactor shortcut key constants to use static storage duration 2025-05-15 22:50:27 -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
b6bed9e92e Refactor EditorManager and integrate PopupManager for improved popup handling 2025-04-11 02:56:33 -04:00
scawful
e7720019fd Implement Save method in various editor classes with unimplemented error 2025-03-12 15:16:32 -04:00
scawful
29d940594c Simplify SettingsEditor by removing unnecessary child windows for flag drawing 2025-03-11 21:05:37 -04:00
scawful
5607ef7702 Refactor Editor and SettingsEditor classes to manage context; update keyboard shortcuts display logic 2025-03-10 11:25:49 -04:00
scawful
a307d24031 Refactor key mapping logic and streamline shortcut execution in CommandManager and ShortcutManager 2025-03-09 19:11:30 -04:00
scawful
7b2c919745 Implement shortcut execution logic and update Cut command handling in EditorManager 2025-03-09 18:42:04 -04:00
scawful
02ae11ec9e Add ShortcutManager for handling keyboard shortcuts in the editor 2025-03-09 18:15:16 -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
c66541db87 Add PopupManager: integrate PopupManager class and PopupParams structure for enhanced popup handling 2025-02-10 11:51:03 -05:00
scawful
db9fab83df Remove ConstantManager and related includes; update editor context accordingly 2025-01-26 13:38:45 -05:00
scawful
c8d4efda2e Refactor flag handling: move FlagParser implementation to flag.cc, remove ResourceManager, and update includes 2025-01-26 13:36:27 -05:00
scawful
1bc0f07a7e Refactor FlagsMenu to core namespace; remove redundant flags.h file and update references in editor files 2025-01-26 13:20:29 -05:00
scawful
de53ccae21 Refactor ExperimentFlags to FeatureFlags for consistency across the codebase 2025-01-22 13:41:28 -05:00
scawful
c8883a1e54 Remove unused includes and clean up header files 2025-01-16 03:44:37 -05:00
scawful
013edb3fae update yaze public header, remove sprite.h, add z3_dungeon_sprite 2025-01-06 16:21:37 -05:00
Justin Scofield
31217e1c5c Refactor flags and add Font Manager to settings editor
Simplified `ExperimentFlags` by removing unused flags and updated
`Controller` to no longer inherit from it. Refactored `FlagsMenu`
to separate flag categories into individual methods for better
organization. Enhanced settings editor with a new "Font Manager"
tab and updated `DrawGeneralSettings` to use the new flag category
methods. Added `DrawFontManager` function for font management.
2025-01-05 11:58:45 -05:00
scawful
d3eca0f950 Make ExperimentFlags a singleton, remove inheritance relationships 2024-12-31 18:13:53 -05:00
scawful
d47e8a8387 Remove ImGui input flag and related code from core and editor components 2024-12-31 16:40:24 -05:00
scawful
79a16bbefe mmmm housekeeping 2024-12-30 19:05:16 -05:00
scawful
8cf16906e6 remove overworld namespace 2024-12-29 16:12:53 -05:00
scawful
295f512826 Refactor namespace declarations for consistency in command and extension managers 2024-12-28 21:33:53 -05:00
scawful
e05e7c35db remove app namespace 2024-12-28 21:28:51 -05:00
scawful
2deb0050be Refactor EditorContext and system managers for improved clarity and consistency 2024-11-20 09:52:54 -05:00
scawful
21314702e8 Add EditorContext, refactor utils, add system managers 2024-11-19 23:10:23 -05:00
scawful
f630aa88a2 Refactor command manager and editor includes for improved organization and functionality 2024-11-18 14:05:54 -05:00
scawful
731eb456ab Refactor editor includes and update source files for improved organization 2024-11-18 14:05:08 -05:00
scawful
b336d14233 Refactor include paths and remove redundant headers in core and editor modules 2024-11-15 23:38:44 -05:00
scawful
8f8727b6c9 Update include paths in extension manager files for consistency 2024-11-13 08:51:10 -05:00
scawful
d118857e2e Add keybinding save and load functionality to CommandManager 2024-11-10 09:03:50 -05:00
scawful
2ddc04a5ce Refactor CommandManager to simplify key press checks by removing unnecessary GetKeyIndex calls 2024-11-08 00:14:44 -05:00
scawful
5e3f326fb2 Refactor CommandManager::ShowWhichKey to initialize defaults if commands are empty 2024-10-09 02:00:08 -04:00
scawful
c31f3b81be Refactor code to remove unused headers and unnecessary includes 2024-09-25 00:37:23 -04:00
scawful
46d7dc446e Add CommandManager::ShowWhichKey and include src in build 2024-09-19 20:59:56 -04:00
scawful
2681e46a7b Refactor file paths for extension headers 2024-08-30 02:22:08 -04:00
scawful
205e085a41 add constant manager 2024-08-29 13:08:45 -04:00
scawful
5879138e93 Refactor CommandManager to support undo and redo functionality 2024-08-25 00:12:04 -04:00
scawful
478ef0d0d2 wrap dlfcn.h in unix macro condition 2024-08-21 00:52:46 -04:00
scawful
d85530b14b extensions cleanup 2024-08-20 22:40:14 -04:00
scawful
93c1e1b6fa rename cmake files to match namespaces 2024-08-13 20:02:48 -04:00
scawful
443938e5ea add CommandManager 2024-08-10 21:32:45 -04:00
scawful
9cea919246 add ExtensionManager implementation 2024-08-10 20:10:39 -04:00
scawful
9f63a7de67 add ExtensionManager 2024-08-10 14:49:37 -04:00