-
-
Notifications
You must be signed in to change notification settings - Fork 395
Feat/UI system view work #6173
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
base: master
Are you sure you want to change the base?
Feat/UI system view work #6173
Conversation
Add better formatting for Earth Masses and Solar Masses, but leaving it disabled as not all unicode characters are supported in the in-game fonts. Add space for the "atmosphere" formatting.
- move the button bar to the bottom center - create a right-hand bar to contain the object info and orbit planner - remove obsolete windows TODO: - code cleanup - save and restore display settings
I like the orbit planner as a sidebar widget; I think that makes a lot more sense and removes a barrier to modernizing its functionality. The "settings" buttons are tristate and could perhaps benefit from being made combo widgets (i.e. dropdowns) in the settings tab, but I'm unsure if that would hurt discoverability and ease of access as toggling ship display specifically is a somewhat high-frequency operation. For consistency with the sector map, the object info and system overview widgets should swap sidebar sides. That more closely matches both the WorldView's placement of the system overview widget, as well as the general pattern from the SectorMap with object info being on the left and search/selection controls on the right. Additionally, it allows using the economy display widget with the overview open as well. |
That's why I left this open as a question and copied the buttons for now instead of moving them / converting them to drop-downs until I got some feedback. I just felt it was more consistent with the Sector Map view to have them in the sidebar.. I didn't realise people would toggle the ship display constantly, I thought people would choose one and leave it. Perhaps it's more likely people would toggle ship lines on/off rather than ships themselves? Also, these settings should probably be saved; it's a little bit annoying having to enable the grid every time I open the game, for example.
Done (db24d60): |
One issue is that object icons and labels are not being dimmed behind the sidebars. The same happens in every view.. Is there a way to raise the z-order of the sidebars to be on top? |
🤣 As a german, I resemble this remark! And while the sentiment is not entirely inaccurate, Pioneer does have labels for settings everywhere else in the UI. Just open the main settings dialog, for example. Or, closer to home as it were, the Settings tab in the Sector Map. Anyway, this is currently only a placeholder to determine how / where to have these settings. For consistency with the Sector Map, they should be in a sidebar panel. |
Ship display is a common toggle (usually for mission purposes), and having it enabled it has performance implications. Full ship display with orbit lines is very inefficient right now and can cost multiple milliseconds of frame time even on high-end computers. Grids and L-points on the other hand have almost no gameplay purpose, and are rarely toggled in my experience. Continuing discussion from IRC, my feedback/design decision is that we should retain a two-state button in the action bar (with a keyboard shortcut... eventually) which toggles display of ships (and hyperspace clouds) globally on/off. Control of whether to render ship lines should be set with a combo or checkbox in the sidebar, defaulting to off (for performance and visual clutter reasons). Control of whether to render arrival only, departure only, or all hyperspace clouds should be set in the sidebar as well. This ideally should be a dropdown ( Each of these settings will only have an effect when the master toggles for ships and hyperspace clouds (respectively) are enabled. Display of grids and lagrange points should also be combo boxes in the sidebar. There is a premade UI style for themed combo boxes present in master; it's used in the sector map and can be accessed like so: local comboStyle = require 'pigui.styles'.combo
comboStyle:withStyle(function()
ui.combo(...) -- or ui.comboBox if you want to manually submit contents without an array
end) |
DRAFT PR
The code still needs some cleaning up, but preparing a PR for initial review/commenting on the implementation and direction.
Specifically:
NB: Apologies for the massive commit which refactors/modifies a large part of
system-view-ui.lua
; it could probably have been committed in stages to make it easier to review, but ultimately it was an iterative work which resulted in the current code.Fixes #6170 (see issue for screenshots; before, during, and final)
After the trivial work of adding the missing values, some of the values were shown using icons instead of text labels due to the Object Info window being too narrow (constrained by the time control buttons).
So the Object Info window was converted to a Sidebar Module and added to the left sidebar, which displayed nicely, but prevented being able to click through system objects using the overview window while seeing the object information.
So the entire view was rewritten to be more in-line with the sector map: