add move shortcut settings and deal with double handed moves
This commit is contained in:
@@ -20,6 +20,8 @@ class MoveCenterTabController : public QObject {
|
||||
Q_PROPERTY(float offsetZ READ offsetZ WRITE setOffsetZ NOTIFY offsetZChanged)
|
||||
Q_PROPERTY(int rotation READ rotation WRITE setRotation NOTIFY rotationChanged)
|
||||
Q_PROPERTY(bool adjustChaperone READ adjustChaperone WRITE setAdjustChaperone NOTIFY adjustChaperoneChanged)
|
||||
Q_PROPERTY(bool moveShortcutRight READ moveShortcutRight WRITE setMoveShortcutRight NOTIFY moveShortcutRightChanged)
|
||||
Q_PROPERTY(bool moveShortcutLeft READ moveShortcutLeft WRITE setMoveShortcutLeft NOTIFY moveShortcutLeftChanged)
|
||||
|
||||
private:
|
||||
OverlayController* parent;
|
||||
@@ -31,11 +33,17 @@ private:
|
||||
float m_offsetZ = 0.0f;
|
||||
int m_rotation = 0;
|
||||
bool m_adjustChaperone = true;
|
||||
bool m_moveActive = false;
|
||||
bool m_moveShortcutRightPressed = false;
|
||||
bool m_moveShortcutLeftPressed = false;
|
||||
vr::ETrackedControllerRole m_activeMoveController;
|
||||
float m_lastControllerPosition[3];
|
||||
bool m_moveShortcutRightEnabled = false;
|
||||
bool m_moveShortcutLeftEnabled = false;
|
||||
|
||||
unsigned settingsUpdateCounter = 0;
|
||||
|
||||
vr::ETrackedControllerRole getMoveShortcutHand();
|
||||
|
||||
public:
|
||||
void initStage1();
|
||||
void initStage2(OverlayController* parent, QQuickWindow* widget);
|
||||
@@ -47,6 +55,8 @@ public:
|
||||
float offsetZ() const;
|
||||
int rotation() const;
|
||||
bool adjustChaperone() const;
|
||||
bool moveShortcutRight() const;
|
||||
bool moveShortcutLeft() const;
|
||||
|
||||
public slots:
|
||||
int trackingUniverse() const;
|
||||
@@ -60,6 +70,9 @@ public slots:
|
||||
|
||||
void setAdjustChaperone(bool value, bool notify = true);
|
||||
|
||||
void setMoveShortcutRight(bool value, bool notify = true);
|
||||
void setMoveShortcutLeft(bool value, bool notify = true);
|
||||
|
||||
void modOffsetX(float value, bool notify = true);
|
||||
void modOffsetY(float value, bool notify = true);
|
||||
void modOffsetZ(float value, bool notify = true);
|
||||
@@ -72,6 +85,8 @@ signals:
|
||||
void offsetZChanged(float value);
|
||||
void rotationChanged(int value);
|
||||
void adjustChaperoneChanged(bool value);
|
||||
void moveShortcutRightChanged(bool value);
|
||||
void moveShortcutLeftChanged(bool value);
|
||||
};
|
||||
|
||||
} // namespace advsettings
|
||||
|
||||
Reference in New Issue
Block a user