feat: Enhance EditorManager with Editor Selection and Shortcut Functionality

- Implemented an editor selection dialog with a callback for selecting various editor types, improving user interaction.
- Added keyboard shortcuts for quick access to different editors, enhancing workflow efficiency.
- Updated the menu structure to include options for the editor selection dialog and improved session management features.
- Enhanced the welcome screen logic to optionally show the editor selection dialog after loading a ROM, streamlining the user experience.
This commit is contained in:
scawful
2025-10-05 02:59:06 -04:00
parent 576229f7c3
commit 81c67728a9
6 changed files with 460 additions and 650 deletions

View File

@@ -5,6 +5,8 @@
#include <string>
#include <vector>
#include "imgui/imgui.h"
namespace yaze {
namespace editor {
@@ -100,9 +102,14 @@ class WelcomeScreen {
// Animation state
float animation_time_ = 0.0f;
float header_glow_ = 0.0f;
float card_hover_scale_[6] = {1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f};
int hovered_card_ = -1;
// Interactive triforce positions (smooth interpolation)
static constexpr int kNumTriforces = 9;
ImVec2 triforce_positions_[kNumTriforces] = {};
ImVec2 triforce_base_positions_[kNumTriforces] = {};
bool triforce_positions_initialized_ = false;
};
} // namespace editor