* Remove unused shortcut manager
* Add events for adding and removing actions
* Publish event when an action is added
* Add get_action event to shortcut topic which sends requested action to the topic
* Add better comments to events
* Publish event action removed when removing an action
* Rename actions to shortcuts in the json object
* Remove subscriptions and rename action to shortcut
* Add event topic
Add ability to subscribe to events via js-api
* Apply suggestions from code review
Co-authored-by: Alexander Bock <alexander.bock@liu.se>
* Output an error if no status or event object is passed to payload
* fixed typo
* Report a warning if user tries to unsubscribe to a non registered event/type combination
---------
Co-authored-by: Alexander Bock <alexander.bock@liu.se>
* Add a camera path topic and compute remaining time in path
* Remove unused parameter in function
* Include speed scale in estimation of time the path will take
* Includes cleanup and address review comments
* Round instead of ceil, to make countdown reach 0 in most cases
* Update GUI hash
* Rename remote scripting property to reflect better what it does
* Change the remote scripting name in all modules
* Update all scripts and action calls to use the new property for sync
* Simplify code that decides whether to send actions to nodes and peers
* Move Lua console hint text to be right top aligned
* Update Lua script topic
* Added new JSON key whether or not the script should be synced to other
nodes and peers
* Per default all scripts sync to everyone
In the next full release, we should have two separate keys that
decides whether to sync and send to nodes and peers separately
* Add some comments that explain why there is no sync for some scripts
* Make sync argument in trigger action function BooleanType
* Change spline curve parameter interval from [0,1] to [0,nSegments], for slightly increased precision
* Use linear paths whenever precision isn't enough/paths are too long (and traverse linear paths differently, to make them less depending on the distance)
* Remove OrbitalNavigator.LinearFlight and instead add "Zoom to" helper functions (closes#1837 )
* Add check to prevent triggering awkward short paths, for example when flying to the current target or to the same geo position twice
* Refactor speed code and handle speed when path is shorter than start+closeup distance
* Add easing to speed dampening
* Add topic for engine mode (to be used for UI later)
* Cleaner log when creating paths (some previous info messages are now debug messages)
Related PR: OpenSpace/OpenSpace-WebGuiFrontend#70
* Reimplement stringlistproperty with a listproperty parent class
* Add string list property tests and structure test files
* Reimplement SelectionProperty and add tests
* Some TemplateProperty documentation updates
* Read full constellation name and not just first word for ConstallationSelection
* Remove support for setting property value from string (unused)
* Add IntListProperty, DoubleListProperty
* Bug fix: SetProperty topic now support empty json objects
* Imgui renderings for list properties and pass SelectionProperty info to WebGui
* Cleaner handling of global state
* Prevent Lua memory corruption (closes#982)
* Initialize glfw first thing to prevent weird joystick loading bug during startup
* Added separate directory for session recording files
* Changed recording & playback paths to use RECORDINGS dir and prevent absolute or relative paths in filename.
* Updated .gitignore so that recordings directory is ignored.
* Added session recording topic for synchronization of rec/play state with web gui.
* Added support to sessionRecording for providing a list of available playback files to web GUI.
* Fixed problem with playback filenames in list
* Fixed problem with occasional large jump in camera pos/rotation after playback finishes.
* Fixed the remaining post-playback problem that was causing a jump in position and rotation.
* Fix path issue on mac
* Fixed bug with bad scale values in recordings saved in ascii format.
- Implement documentation topic that can be used to query documentation using the network API.
- Implement a way to pass arguments to lua scripts using json (rather than formatting entire lua string clientside)
- Implement ability to attach callback to lua script executions
- Implement abillity to transport return values from lua scripts back to network API clients.
- Do not initialize server interface on slave nodes.
- Implement Dictionary -> json converter using nlohmann json library
* Cleanup
* CMake cleanups
* Update current year
* Update copyright header
* Use script to return list of all modules
* Update credits, license and ghoul