Complete GUI overhaul (from Qt Widgets to Qt Quick Controls 2)

Added chaperone profiles
Added separate supersampling sliders for applications/compositor
Added asynchronous reprojection on/off switch
Merged in Microphone Control Overlay
Added Push-to-Talk profiles
Updated to OpenVR 1.0.3
Requires at least SteamVR beta 1477423729.
This commit is contained in:
2016-10-28 18:38:05 +02:00
parent 8e815b0ce4
commit e39c240ff5
462 changed files with 64668 additions and 2760 deletions
+26 -9
View File
@@ -4,39 +4,56 @@
#include <QObject>
#include <openvr.h>
class QQuickWindow;
// application namespace
namespace advsettings {
// forward declaration
class OverlayWidget;
class OverlayController;
class FixFloorTabController : public QObject {
Q_OBJECT
Q_PROPERTY(bool canUndo READ canUndo WRITE setCanUndo NOTIFY canUndoChanged)
private:
OverlayController* parent;
OverlayWidget* widget;
QQuickWindow* widget;
float controllerUpOffsetCorrection = 0.06f; // Controller touchpad facing upwards
float controllerDownOffsetCorrection = 0.0f; // Controller touchpad facing downwards (not implemented yet)
int state = 0; // 0 .. idle, 1 .. measurement in progress, 2 .. waiting for status message timeout
int state = 0; // 0 .. idle, 1 .. measurement in progress
vr::TrackedDeviceIndex_t referenceController = vr::k_unTrackedDeviceIndexInvalid;
unsigned measurementCount = 0;
double tempOffset = 0.0;
unsigned statusMessageTimeout = 0;
float floorOffset = 0.0f;
QString statusMessage = "";
float statusMessageTimeout = 0.0f;
bool m_canUndo = false;
public:
void init(OverlayController* parent, OverlayWidget* widget);
void initStage1();
void initStage2(OverlayController* parent, QQuickWindow* widget);
public slots:
void UpdateTab();
void eventLoopTick(vr::TrackedDevicePose_t* devicePoses);
void FixFloorClicked();
void UndoFixFloorClicked();
Q_INVOKABLE QString currentStatusMessage();
Q_INVOKABLE float currentStatusMessageTimeout();
bool canUndo() const;
public slots:
void fixFloorClicked();
void undoFixFloorClicked();
void setCanUndo(bool value, bool notify = true);
signals:
void statusMessageSignal();
void measureStartSignal();
void measureEndSignal();
void canUndoChanged(bool value);
};
} // namespace advsettings