feat: Refactor editor structure and enhance multi-session support

- Moved `menu_builder.cc` to a new `ui` directory for better organization.
- Updated `EditorManager` to generate unique ImGui IDs for multi-session support, ensuring separate window handling.
- Added session ID management in `EditorContext` for improved child panel identification.
- Introduced a new `MenuBuilder` class for streamlined ImGui menu creation, enhancing UI maintainability.
This commit is contained in:
scawful
2025-10-05 02:09:50 -04:00
parent 46b5f1f288
commit 20b8251724
6 changed files with 28 additions and 7 deletions

View File

@@ -28,6 +28,11 @@ struct EditorContext {
HistoryManager history_manager;
PopupManager* popup_manager = nullptr;
ShortcutManager shortcut_manager;
// Session identification for multi-session support
// Used by child panels to create unique ImGui IDs
size_t session_id = 0;
// Cross-session shared clipboard for editor data transfers
struct SharedClipboard {
// Overworld tile16 selection payload