Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

UI rework #2

Open
gotmachine opened this issue Nov 20, 2020 · 0 comments
Open

UI rework #2

gotmachine opened this issue Nov 20, 2020 · 0 comments
Labels
code enhancement New feature or request

Comments

@gotmachine
Copy link
Contributor

gotmachine commented Nov 20, 2020

Main concept :

  • Unified flight / planner UI for the "vessel management UI".
  • Separate dedicated planner tab/popup/window for controlling the "simulation parameters"

Vessel summary tab
image

File manager tab
image

Automation tab

  • Collapsible device groups (ex : LS processes, ISRU, solar panels, antennas, etc)
  • Expandable device info (experiments, processes...) to avoid having to open the popup for the main info/actions

Vessel log / settings

  • Need to be refactored from the ground up, with a special attention to performance
  • Handling of log/settings persistence when docking/undocking

Various notes

  • Expanding on the "detachable tabs" Kerbalism 3.x feature would be nice. For that to work, we should code things so each detachable element is a self-contained class that doesn't depend on its parent. Not a huge constraint, but better to do it from the start.
  • Many UI elements take the form of arbitrary, potentially short or very long lists (vessels list, kerbals list, resources list, drives/files list, automation list...). To handle that, we need those to be scroll views. It would be nice to standardize a scroll view component that expand/retract vertically depending on the element count, but up to a max height driven by the max height of the parent window, and the height of the other non-resizable elements in that window.
  • Related : we need to make sure the windows don't get larger than the screen height. First measure is to design windows so they aren't too huge in the first place (that is bad from an usability POV anyway). But implementing a scroll view by default on all windows is probably needed as a safe-guard. UGUI scroll views suffer from some performance issues, so we need to get around that by disabling them when not needed.
  • Related bis : variable-height windows (ie, containing scroll views) should be user-resizable, and the choosen height must be remembered. Not sure what the best option is. Handling that at the window level is easier to implement and logical, but when windows contains multiple scroll views, having the option to define a max size for each scroll view individually would be nice.
  • Related bis-bis : Detachable windows should have the ability to be made "sticky", ie : they should reappear at the same position on a per-scene basis. Also, for vessel-management windows, there should be an option to tie them to the active vessel.
  • Collapsible headers : the black headers are a good way organize complex UIs in standard way, making them more digest. They also kinda work as a "title bar" for elements that are detachable in a new window. It would make sense to standardize a "collapse/expand" functionality.
@gotmachine gotmachine changed the title [4.0] UI rework UI rework Jan 21, 2021
@gotmachine gotmachine transferred this issue from Kerbalism/Kerbalism Jul 29, 2021
@gotmachine gotmachine added enhancement New feature or request code labels Jul 29, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
code enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant