Commit Graph

12052 Commits

Author SHA1 Message Date
Ylva Selling e3f5b83f74 Feature/2025 UI rewrite (#3608)
* Remove Escape keybind; move gui keybind to F2

* Clear up keybinds properly

* Workaround for CEF focus bug

* Add TODO comment

* Guard against null ptr dereferencing

* Remove shift tab

* add additional keyboard mapping from glfw to cef

* Change dashboards to make prototype for first user test

* add mission added/removed event, disptached when a mission has been loaded/unloaded

* send missions as map instaed of array, rename missionName -> name

* Set keybind for toggling overlays to shift+f2

* Remove property for showing the title in the gui skybrowser module

* Remove default setting for skybrowser

* First implementation of setting the ui panel visibility from the launcher

* Add profile topic

* Coding style adjustment

* Add markNodes to the profiletopic

* Change format of additional data of options in engine

* Address PR comments

* map escape key from glfw to cef correctly

* fix issue with "Enter" key not working on buttons and other input fields in CEF

* Add test for new profile version

* Send skybrowser data although we are outside the solar system

* Update webgui to new ui

* Add name to profile topic

* Add cef variable to javascript context for when browser is in cef

* Use camelcase for cef variable

* Rewrite shortcuts topic to ActionKeybind and pass data in a better way (#3590)

* Rewrite shortcuts topic to ActionKeybind and pass data in a better way

* Fix strange error with file structure

* Address PR comments

* Address PR comments

* Address PR comments

* Make numbers in asset file prettier

* Rename name to identifier for missions event

* Clean up browser code

* Update UI hash (to fix the actions panel not working)

And update outdated comment. The backend is not part of this

* Feature/notify meta data change (#3605)

* Add notifyMetaDataChangeListener to topic

* First round of clean up the data passing

* Convert from string to json for metadata

* Update additional data to json

* Use nlohmann::json for additional data

* Pass meta data in new structure to topics

* Remove meta data method

* Fix mistake in merge

* Update src/properties/property.cpp

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* remove TODO comment that will be fixed by this PR

* Address PR comments

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Emma Broman <emma.broman@liu.se>

* Address PR comment

* Remove function for setting the endpoint

* Update frontend hash

* Remove enabled property from exoplanets module

* Remove enabled property from skybrowser module

* Update default UI panels json

* Remove setting of enabled properties for skybrowser and exoplanets

* Update gui hash

* Auto format json

---------

Co-authored-by: Andreas Engberg <adde.engberg@gmail.com>
Co-authored-by: Emma Broman <emma.broman@liu.se>
Co-authored-by: Alexander Bock <alexander.bock@liu.se>
Co-authored-by: Alexander Bock <mail@alexanderbock.eu>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-04-29 15:43:56 +02:00
Alexander Bock f024c25666 Add the ability to run as task file at startup. Add new model conversion task that requires an OpenGL context. Add ability to use FileVerifier and DirectoryVerifier on files that don't exist (#3612) 2025-04-29 09:50:29 +02:00
benpm 94dfb26ee0 (#3596) added discard if ring normal is near perpendicular with light direction 2025-04-28 15:01:07 -06:00
benpm 0aa1edcfde (#3596) added vertex normals to ring quad vertex attribs 2025-04-25 16:10:33 -06:00
Emma Broman e0df6d6c2e Default keybinds asset cleanup (#3618)
* Split default keybinds asset file into one file for the actions and one for the keybinds

* Renaming the `default_actions.asset -> solarsystem_actions.asset` and then separating the `default_keybindings.asset` into `default_keybindings` and `default_actions`

* Move time action to correct place in file

* Update ESC -> Ctrl+Q for toggling a shutdown

Also add comment to the clearKey lines to make the connection easier to see

* Remove Alt+R keybinding

* Add asset meta for keybindings asset

---------

Co-authored-by: Alexander Bock <alexander.bock@liu.se>
2025-04-25 14:12:26 +02:00
Arohdin 0e2a365e55 Moved onChange function for horizonstranslation 2025-04-24 17:30:41 +02:00
Alexander Bock 3ef4b003ab Launcher should indicate whether a profile is a standard profile or a user profile (#3611) 2025-04-24 09:39:20 +02:00
Alexander Bock b111b24e8a Add horizons-based NewHorizons asset. Move Voyager and Pioneer horizons files into separate folders. Create new interstellar horizons file that replaces previous voyager-pioneer one (closes #3273) 2025-04-24 09:09:42 +02:00
Alexander Bock c82a8a763f Reparent the milkyway galaxy to the root to make it not disappear when SPICE information runs out (closes #3232) 2025-04-23 17:38:32 +02:00
Alexander Bock 6257f96dca Adapt to the change in the codegen repository 2025-04-23 17:21:19 +02:00
Alexander Bock 66bf57eed6 Rename the codegen tool because it is a reserved CMake name (closes #3502) 2025-04-23 17:13:38 +02:00
Alexander Bock b94e0966fe Fix up the OpenSpace unit test 2025-04-23 16:52:48 +02:00
Anders Lundkvist ad786f7d5c Add RenderableSwitch class (#3597) 2025-04-23 16:44:24 +02:00
Alexander Bock 6dc738e54e Move functions about globe locations from the GlobeBrowsingModule into the core (#3613)
* Make GlobeRotation and GlobeTranslation work for non-globes and move them to the base module
* Move ellipsoid and geodetic classes into the core
* Allow more things to take scene graph nodes instead of RenderableGlobes
* Move goToGeo and related Lua functions into the core
* Move more functions from the pathnavigation namespace into the navigation namespace

---------

Co-authored-by: Emma Broman <emma.broman@liu.se>
2025-04-23 16:15:17 +02:00
Alexander Bock a4ddce76ef Add submenu to the "New" buttons (#3601)
- Add submenu to the "New" buttons
 - Don't prompt to save an empty profile
 - Set pointing hand cursor
 - Style the new menu bar
 - Reduce the number of different grayscales in the launcher QSS
2025-04-22 21:12:04 +02:00
Alexander Bock b02680a360 Add new TimeFrame that parses Spice kernels (#3600) 2025-04-22 20:47:17 +02:00
Alexander Bock ad29099140 Fix the tab order of the launcher widget (closes #3616) 2025-04-22 20:38:55 +02:00
Emma Broman ad324b1292 Remove "Up" keybind and retire property_helper and renderable_helper (#3604)
* Remove keybindings to the UP key

Removed the actions as well as they are probably not needed. We have the "now" button and it is rare that one want to interpolate to now

* Replace property_helper usage with function from core_scripts (only `invert` was used)

And retire the property_helper and renderable_helper assets. They are no longer needed!
2025-04-22 15:02:13 +02:00
Arohdin 5a862c27d8 Updated property names for "maximum allowed distance"
`EnableMaximumAllowedDistance` and `EnableMinimumAllowedDistance`
2025-04-22 12:53:43 +02:00
Alexander Bock a6dbbaf8e8 Add asset meta information for the Apollo assets (closes #3063) 2025-04-21 12:27:52 +02:00
Alexander Bock 8a364c16e3 Fix layout issues with Dashboards (#3614)
- Correctly render multiline text passed to a DashboardItemText
  - Invert the property for the Dashboard location to no longer need a negative y-axis
  - Use the current lineheight instead of pointsize for the ScreenLog
  - Remove the unused size function from DashboardItems
2025-04-21 01:10:02 +02:00
Alexander Bock bd448a1dd6 Fix the text alignment in the DashboardItemMission (closes #3540) 2025-04-20 20:22:07 +02:00
Alexander Bock fa1e9df6ef Update websocketpp to make it work with CMake 4.0 (closes #3585) 2025-04-20 19:50:03 +02:00
Brian Abbott 4982cd95e5 Alterations made to the GUI name and ordering of digital universie assets. (#3460)
---------

Co-authored-by: Alexander Bock <alexander.bock@liu.se>
2025-04-19 11:43:04 +02:00
Alexander Bock f2ac303b95 Fix issue preving the setting of the window configuration from the commandline 2025-04-17 20:49:00 +02:00
Alexander Bock e4eebaef7e Fix crash when the notification file is empty. Fix warning when running with Qt version newer than 6.7 2025-04-17 20:20:13 +02:00
Alexander Bock 78efc7b244 Add focus border for the list widget in mark interesting nodes window (closes #3441) 2025-04-17 17:26:22 +02:00
Emma Broman 93ef632663 Fix faulty identifier in exoplanet system creation script
And clarify that some tags are used in the UI => dangerous to change
2025-04-17 10:02:42 +02:00
Alexander Bock a85821f88c Deemphasize Edit and Start buttons in Launcher when they are disabled (closes #3443) 2025-04-17 09:37:55 +02:00
Alexander Bock 9a623129d8 Add Notification window to the Launcher (#3595) 2025-04-16 17:13:14 +02:00
Alexander Bock ba392d97ea Add new test images 2025-04-16 15:21:32 +02:00
Alexander Bock e7bc5a90a6 Make the window configurator a bit more compact (closes #3607) 2025-04-16 15:18:13 +02:00
Alexander Bock 125f54aa0a Update nlohmann repository (#3609)
* Remove old non-submodule version of nlohmann in favor of submodule
* Update nlohmann from 3.9.1 to 3.12.0
- Already disable implicit conversions in preparation for next major version
2025-04-16 14:13:20 +02:00
Alexander Bock 151d3f37b6 Fix reparenting function to actually update the children list of the two parents (closes #3603) 2025-04-15 19:26:32 +02:00
Alexander Bock b554187d76 Improve performance of setPropertyValue function (#3579)
* Cache full property URIs
  * Multithreaded handling

---------

Co-authored-by: Emma Broman <emma.broman@liu.se>
2025-04-15 17:43:57 +02:00
Emma Broman b5dbee2164 Fix exoplanet system 1 AU ring no longer being a ring, but a grid
Default value for gridsegments changed in #3506
2025-04-15 12:59:48 +02:00
Emma Broman d2821b48b7 Add missing tags for the Moon (closes #3406) 2025-04-15 10:49:06 +02:00
Alexander Bock 17b182cda3 Add new Kepler data reader for the IAU's Minor Planet Center database files (#3591) 2025-04-14 19:50:05 +02:00
Alexander Bock af20b97dc7 Add ability to configure horizontal field of view per window instead (#3584) 2025-04-14 19:47:54 +02:00
Ylva Selling 17279d2b4a Add handling for apostrophe code (#3594) 2025-04-11 13:40:30 +02:00
Arohdin d1ae420301 RenderableSphere assets: set blending and depth options 2025-04-08 14:21:49 +02:00
Ylva Selling 39a6d7ed5d Fix out of bounds crash and remove duplicate notifyChangeListeners (#3589) 2025-04-07 09:43:01 +02:00
Emma Broman 0d45e5fc8e Add documentation for ColorMappingComponent (#3581)
* Add documentation for `ColorMappingComponent`

* Apply suggestions from code review

Co-authored-by: Alexander Bock <alexander.bock@liu.se>

* Adjust text for line width

---------

Co-authored-by: Alexander Bock <alexander.bock@liu.se>
2025-04-07 09:37:21 +02:00
Alexander Bock 565bad9d4a Add new calibrator asset and profile (closes #2268) 2025-04-05 15:55:14 +02:00
Emma Broman c16968e6fb Update SGN Focusable property identifier to match the one in codecen parameters
So we can set it from an asset
2025-04-04 15:57:40 +02:00
Emma Broman d47e7f2074 Add type documentation for the different light sources (#3582)
* Add type documentation for the different light sources

* Address code review comments
2025-04-04 10:02:08 +02:00
Alexander Bock 6fa3f76c48 Add a new panel to the Launcher to control which WebUI button appears on the bottom bar (#3569)
- Add markNodes to the profiletopic

---------

Co-authored-by: Ylva Selling <ylva.selling@gmail.com>
2025-04-03 18:09:35 +02:00
Emma Broman eb709b830c Small option property cleanup (#3577)
* Notify change listeners

I can't come up with a reason for why we would not want to do this

* Remove the Display Type for OptionProperty (only used in ImGui)

* Replace extra boolean with internal anonymous addOption function

* Tiny refactor

* removed dropdown on a couple of more places

* Update optionproperty.cpp

---------

Co-authored-by: ElonOlsson <olssonelon@gmail.com>
2025-04-02 09:28:11 +02:00
Alexander Bock 80955e3ec1 Add ScreenSpaceRenderableRenderable class (#3575) 2025-04-01 12:45:35 +02:00
Alexander Bock 070d1180e5 Fix issue with scnlib update 2025-04-01 10:13:47 +02:00