mirror of
https://github.com/OpenSpace/OpenSpace.git
synced 2026-05-05 10:59:47 -05:00
Feature/webgui ops (#723)
* Update node packages, download nodejs in build process, start server from openspace process * Patch CEF cmake automatically * Build webserver automatically * Work on CMake for WebBrowser, Webgui and CefWebGui * Map key modifiers to CEF * Smooth time interpolation in webgui * Automatically focus on search field in filter lists * Move webgui code to external repositories * Use asset system to distribute webgui * Remove webgui from main repository * Add support for right click in webgui and improve timetopic * Resolve cmake policy warning * Add relative time interpolation to lua interface * Sanitize json error message before logging error. Workaround for #736 * Added gui properties to scene graph nodes * Add version topic * Add shortcuttopic * Add ability to disable rendering of cefwebgui * Don't do message loop work if there is no browser. * Set correct path to nodejs on unix * Message loop work in presync * modifications for shortcuts in gui, added names for shortcuts * Set properties via lua scripts * Allow gui grouping for shortcuts * Add gui paths keybindings * Blocking keyboard callbacks when webgui has keyboard focus in an editable field * Allow disabling of WebBrowser and CefWebGui * Make it possible to hide GUI * Get rid of redundant dashboard items if web gui is used * Hide WebGUI on slave nodes * Hide WebGUI on main rendering window if a GUI window exists * Enable WebGUI on default unless it is overwritten in the openspace.cfg * Add guiName for propery owners in socket api
This commit is contained in:
committed by
Alexander Bock
parent
ec67169854
commit
7181de4673
@@ -108,8 +108,6 @@ struct Configuration {
|
||||
std::string serverPasskey = "17308";
|
||||
bool doesRequireSocketAuthentication = true;
|
||||
std::vector<std::string> clientAddressWhitelist = {};
|
||||
std::string webHelperLocation = "";
|
||||
std::string cefWebGuiUrl = "";
|
||||
|
||||
struct HTTPProxy {
|
||||
bool usingHttpProxy = false;
|
||||
|
||||
@@ -47,6 +47,8 @@ public:
|
||||
std::string command;
|
||||
IsSynchronized synchronization;
|
||||
std::string documentation;
|
||||
std::string name;
|
||||
std::string guiPath;
|
||||
};
|
||||
|
||||
KeybindingManager();
|
||||
@@ -54,10 +56,10 @@ public:
|
||||
void resetKeyBindings();
|
||||
|
||||
void bindKeyLocal(Key key, KeyModifier modifier, std::string luaCommand,
|
||||
std::string documentation = "");
|
||||
std::string documentation = "", std::string name = "", std::string guiPath = "");
|
||||
|
||||
void bindKey(Key key, KeyModifier modifier, std::string luaCommand,
|
||||
std::string documentation = "");
|
||||
std::string documentation = "", std::string name = "", std::string guiPath = "");
|
||||
|
||||
void removeKeyBinding(const std::string& key);
|
||||
|
||||
|
||||
@@ -42,6 +42,7 @@ public:
|
||||
std::string script;
|
||||
IsSynchronized synchronization;
|
||||
std::string documentation;
|
||||
std::string guiPath;
|
||||
};
|
||||
|
||||
void resetShortcuts();
|
||||
|
||||
@@ -33,6 +33,8 @@
|
||||
#include <functional>
|
||||
#include <memory>
|
||||
#include <vector>
|
||||
#include <openspace/properties/stringproperty.h>
|
||||
#include <openspace/properties/scalar/boolproperty.h>
|
||||
|
||||
//#define Debugging_Core_SceneGraphNode_Indices
|
||||
|
||||
@@ -139,7 +141,7 @@ public:
|
||||
const Renderable* renderable() const;
|
||||
Renderable* renderable();
|
||||
|
||||
const std::string& guiPath() const;
|
||||
std::string guiPath() const;
|
||||
bool hasGuiHintHidden() const;
|
||||
|
||||
static documentation::Documentation Documentation();
|
||||
@@ -158,13 +160,14 @@ private:
|
||||
|
||||
// If this value is 'true' GUIs are asked to hide this node from collections, as it
|
||||
// might be a node that is not very interesting (for example barycenters)
|
||||
bool _guiHintHidden = false;
|
||||
properties::BoolProperty _guiHidden;
|
||||
|
||||
PerformanceRecord _performanceRecord = { 0, 0, 0, 0, 0 };
|
||||
|
||||
std::unique_ptr<Renderable> _renderable;
|
||||
|
||||
std::string _guiPath;
|
||||
properties::StringProperty _guiPath;
|
||||
properties::StringProperty _guiDisplayName;
|
||||
|
||||
// Transformation defined by ephemeris, rotation and scale
|
||||
struct {
|
||||
|
||||
@@ -86,6 +86,7 @@ public:
|
||||
float defaultUnpauseInterpolationDuration() const;
|
||||
|
||||
void interpolateTime(double targetTime, double durationSeconds);
|
||||
void interpolateTimeRelative(double delta, double durationSeconds);
|
||||
void interpolateDeltaTime(double targetDeltaTime, double durationSeconds);
|
||||
void interpolatePause(bool pause, double durationSeconds);
|
||||
|
||||
@@ -121,6 +122,7 @@ private:
|
||||
double _targetDeltaTime = 1.0;
|
||||
double _deltaTime = 0.0;
|
||||
double _lastTime = 0;
|
||||
bool _lastTimePaused = false;
|
||||
double _lastDeltaTime = 0;
|
||||
|
||||
properties::FloatProperty _defaultTimeInterpolationDuration;
|
||||
|
||||
Reference in New Issue
Block a user