* Fix faulty log category and minor inconsistencies in GlobeTranslation and GlobeRotation
* Small refactor
* Remove unused return value from initialize function
* Fill attached node in globetranslation initialize and initialize all timeline
Should make the timeline translation work with globetranslations in other cases that the renderabletrails
* Do the same type of change for rotation and scale
* Update initialize function singatures
* Initialize and update translation in trail before use
* Screenspace renderable renderable - move initialize call to initialize
* Refactor trail position calls to make it clearer what is being done
* Call timeframe initialize functions in transform classes
* Do not call update in trail position after all - it borks up the performance
* GlobeTransform: Only fill attached node in init and onchange, and allow nodes without renderable
* Correctly initialize the multi-transform types
* Apply suggestions from code review
* Apply suggestions from code review
Co-authored-by: Alexander Bock <alexander.bock@liu.se>
* Address code review comment
* Update comments in renderabletrail
---------
Co-authored-by: Alexander Bock <alexander.bock@liu.se>
* Combine single- and multithreaded initializer to only one initializer
* Change the default to 0 to represent initializing the nodes on the main thread. Increase the default number of threads
---------
Co-authored-by: Malin E <malin.ejdbo@gmail.com>
* 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>
- Remove toStringConversion function and move json_helper include out of numericalproperty.inl
- Optimizing some header files
- Remove duplicate Lua functions from properties.
- Move List,Option,Selection,String, and TriggerProperty into misc folder
- Move lua_helper include out of inline file
- Add lua_helper to the precompiled header
- Declare property functions as final. No longer have OptionProperty derive from IntProperty
- Remove Dictionary header from properties
* Makes Translation/Scale/Rotation all able to have a TimeFrame, not just the SpiceRotation. Add read-only BoolProperty to the TimeFrame that indicates whether the current time is a in the timeframe
---------
Co-authored-by: Emma Broman <emma.broman@liu.se>
* update background and foreground colors in launcher
* Change tab order and preliminary focus visuals
* update focus color
Improves on #3091 but does not fixes it, the contrast ratio is 2.4/2.9-3.3 versus the white border/the gray background on each button/dropdown
* update focus border width
* Update color of error messages fixes#3103
* Enable enter key interaction on ui launcher buttons fixes#3092
* Update accessibility names on buttons and fields where the current readout does not make sense, fixes#3089
* Fixed issue where you could not tab out of multiline textfields
* Add overlay to the launcher image to increase contrast
* Slightly improves readability of Start button fixes#3096
We decided to keep the all caps to indicate call to action
* Add start button to have default focus which enables quick start by pressing enter or space on startup
* Removed overriden object name
* Update color label text for better clarity fixes#3094
The actual fix is in #9a7e8e1
* Add `esc` keypress to exit the launcher fixes#3097
* add placeholder text for profile name fixes#3101
* Fixed issue with properties, assets, and keybindings multiline readout, fixes#3098
* Change tab order of properties, assets, and keybindings: text area -> edit button, fixes#3099
* Add prompt to user warning of unsaved changes in profile editor
* Add error message dialog fixes#3100
* Removed unused code
* Remove hardcoded color for information text in cameradialog
* Don't compare profile files but profiles instead
* Add same focus outline to all buttons in launcher
---------
Co-authored-by: Alexander Bock <mail@alexanderbock.eu>
Co-authored-by: Alexander Bock <alexander.bock@liu.se>
* remove code for controlling group sorting in ImGui
We only use this for debug and the sorting here is no longer relevant
* Add feature to add custom ordering to UI groups
* Tiny cleanup
* Add numerical ordering for night sky planets
* Update Lua function name and create an event when ordering updated
* Set top-level ordering
* Add function documentation
* Add a custom ordering that previously was hardcoded in UI
* Apply suggestions from code review
Co-authored-by: Alexander Bock <alexander.bock@liu.se>
* Rename GUI ordering function
* Update GUI hash
---------
Co-authored-by: Alexander Bock <alexander.bock@liu.se>
* Add possiblity to sort SGNs in GUI based on numerical value
And apply to grids
* Fix mistake in docs
* Apply suggestions from code review
Co-authored-by: Ylva Selling <ylva.selling@gmail.com>
* Rename Order -> Ordering and remove unused getter functions
* Update GUI hash to match the UI changes
---------
Co-authored-by: Ylva Selling <ylva.selling@gmail.com>
* Always add GUI properties, even if tag is not in the asset
To make objects wihtout GUI tag be included in the UI
* Hide the hover circle, to clean up scene menu list a little
* set root node gui hidden property to true
* Properly add the gui properties for all scene graph nodes (even root)
* Update GUI hash
* Add property for actual bounding and interaction sphere value
* Apply suggestions from code review (no "Read Only" in name)
Co-authored-by: Alexander Bock <alexander.bock@liu.se>
* Add profile edit to start camera at a given scene graph node
* Restructure some navigation code to allow computing camera pose from node
* Delay computation of camera pose for node spec as well... And give NodeInfo a more extensive name (The objects may move during the frame, making the computed pose invalid)
* Update to make scene graph node first option in editor
* Add some description to each tab in the camera dialog
* Add operator== for CameraGoToNode struct to make the unit tests compile
* Add version handling for new profile version
* Add option to specify an optional height
* Update current version constant, for old test cases to go through successfully
* Add some test files
Note that apparently, the profile loading does not check the values of the individual fields, just existence, and type. So added two test cases that are not currently checked.
---------
Co-authored-by: Alexander Bock <mail@alexanderbock.eu>