Description
Feature description
Currently, Atta does not save the state (position, size, docking status) of the ImGui windows used within the editor. Every time a project is opened, the window layout resets to its default configuration. This requires users to manually rearrange their workspace repeatedly, which can be inefficient and annoying, especially for projects that rely on specific ImGui windows for visualization or debugging tasks.
This feature proposes saving the ImGui window layout configuration directly within the project's .atta
file. When a project is saved, the current layout of all ImGui windows should be stored. When the project is subsequently opened, Atta should restore the windows to their saved positions, sizes, and docking states.
This will provide a persistent workspace for users, improving workflow efficiency. ImGui itself provides mechanisms for saving and loading window states (often to an imgui.ini
file), which could potentially be leveraged or adapted for integration with the .atta
file format.
Tasks
- Study ImGui Ini settings
- Study ImGui window internal API
- Disable creation of detached window by ImGui
- Organize Atta dockspace
- Improve top bar "Window" menu
- Option to show/hide module windows
- Option to show/hide editor windows
- Improve top bar "Help" item
- Report a bug
- Suggest a feature
- Gallery
- Q&A
- Determine which window data to store in
.atta
- Get ImGui window data
- Serialize ImGui window data to
.atta
- Deserialize ImGui window data from
.atta
- Make sure the initial layout is correct when no layout is stored in
.atta
- Make sure layout is initialized when switching between Vulkan/OpenGL
- Fix Atta crashing when the window is resized