-
-
Notifications
You must be signed in to change notification settings - Fork 377
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
Add System Overview Widget to System Map view #5327
Add System Overview Widget to System Map view #5327
Conversation
Perchance, a base could be painted on this.... onto which one could walk.... and stabby-stabby-stabby people, and take their loot, and in a bar listen to their tales of great adventure, and stuff. (One of these days, I'll muster up the energy to get cracking on this, (as the British say)). |
Unfortunately probably not, this is specifically designed for creating a UI on top of other fullscreen interactable content (e.g. Flight UI, Map screens, etc.). For something like the Bar screen I might have a few ideas up my sleeve in the future to make it a bit easier to build, but I can't really say anything concrete at this juncture. Having a proper mockup / concept art really helps make UI a reality though, so perhaps @nozmajner would be happy to help... in the appropriate discussion venue, of course. |
when I try to open a system map, for example, in Barnard Star, I get an assertion |
How can I hide system-overview-window in the system map? |
'center' context menu item does not center |
Dangit, that's what I get for running without assertions enabled. Will look into that. The system overview widget does not have a hide button in the map screen, although that is probably something worth adding. |
The window-layout class abstracts common functionality from Sector and System views and provides a simpler interface for building auto-sizing windows.
SystemOverviewWidget now contains all reusable logic for displaying the list of SystemBodies in a system. The system-overview FlightUI module now handles displaying the flight-UI specific body overview list.
Due to unknown issues with SystemBody refs using different userdata 'wrapper' objects, we must propagate selection state in entries instead using the selected array.
Avoids the complication of passing the disableCeil parameter to rescaleUI
Scissor test state was not properly tracked by the render state cache, leading to it being incorrectly enabled.
b681fea
to
413c85c
Compare
Also, this is not in the master, this PR is to blame backtrace:
|
Ah, I get it now. The new System Atlas Mode (#5239) only shows orbital bodies, not stations on them (like the old version did), so this will solve that problem neatly. |
@Web-eWorks here is lua traceback:
as I understand it, this is due to the fact that you use the |
Attempting to access SystemBody.body from Lua returns nil for remote systems.
Fixed. That assert is something that Lua shouldn't be able to trigger (and doesn't have any easy way to tell if a system body has a real body associated without querying that variable) so I added some error handling for that case. |
This PR adds the System Overview widget (the body list in the top right of the world view) to both of the System Map view modes. It also refactors out the layout code from both the Sector Map and System Map into a single reusable module for creating full-screen UIs.
It also changes the focus-object interaction in the SystemView to use double-clicks instead of single-clicks; this may be a slightly controversial change, but having selection state decoupled from focus state is fairly useful when interacting with the overview widget.
This is likely the last of the work branches I have outstanding to be merged into the release, nothing else is close enough to done to be a viable candidate.