Added "ToggleDelay" option to Revive menu.

This commit is contained in:
2017-02-11 21:50:54 +01:00
parent c6f71f08dd
commit beb0b9fce4
3 changed files with 73 additions and 1 deletions
@@ -9,6 +9,7 @@ namespace advsettings {
const char* section_revive = "revive";
const char* key_pixelsPerDisplayPixel = "pixelsPerDisplayPixel";
const char* key_toggleGrip = "ToggleGrip";
const char* key_toggleDelay = "ToggleDelay";
const char* key_thumbDeadzone = "ThumbDeadzone";
const char* key_thumbSensitivity = "ThumbSensitivity";
const char* key_touchPitch = "TouchPitch";
@@ -49,6 +50,13 @@ namespace advsettings {
m_gripButtonMode = valuei;
}
valuef = vr::VRSettings()->GetFloat(section_revive, key_toggleDelay, &vrSettingsError);
if (vrSettingsError != vr::VRSettingsError_None) {
LOG(WARNING) << "Could not read \"revive::" << key_toggleDelay << "\" setting: " << vr::VRSettings()->GetSettingsErrorNameFromEnum(vrSettingsError);
} else {
m_toggleDelay = valuef;
}
valuef = vr::VRSettings()->GetFloat(section_revive, key_thumbDeadzone, &vrSettingsError);
if (vrSettingsError != vr::VRSettingsError_None) {
LOG(WARNING) << "Could not read \"revive::" << key_thumbDeadzone << "\" setting: " << vr::VRSettings()->GetSettingsErrorNameFromEnum(vrSettingsError);
@@ -177,6 +185,11 @@ namespace advsettings {
setGripButtonMode(valuei);
}
valuef = vr::VRSettings()->GetFloat(section_revive, key_toggleDelay, &vrSettingsError);
if (vrSettingsError == vr::VRSettingsError_None) {
setToggleDelay(valuef);
}
valuef = vr::VRSettings()->GetFloat(section_revive, key_thumbDeadzone, &vrSettingsError);
if (vrSettingsError == vr::VRSettingsError_None) {
setThumbDeadzone(valuef);
@@ -263,6 +276,10 @@ namespace advsettings {
return m_gripButtonMode;
}
float ReviveTabController::toggleDelay() const {
return m_toggleDelay;
}
bool ReviveTabController::isPixelsPerDisplayPixelOverrideEnabled() const {
return m_pixelsPerDisplayPixelOverrideEnabled;
}
@@ -338,6 +355,21 @@ namespace advsettings {
}
}
void ReviveTabController::setToggleDelay(float value, bool notify) {
if (m_toggleDelay != value) {
m_toggleDelay = value;
vr::EVRSettingsError vrSettingsError;
vr::VRSettings()->SetFloat(section_revive, key_toggleDelay, m_toggleDelay, &vrSettingsError);
if (vrSettingsError != vr::VRSettingsError_None) {
LOG(WARNING) << "Could not set \"revive::" << key_toggleDelay << "\" setting: " << vr::VRSettings()->GetSettingsErrorNameFromEnum(vrSettingsError);
}
vr::VRSettings()->Sync();
if (notify) {
emit toggleDelayChanged(m_toggleDelay);
}
}
}
void ReviveTabController::setPixelsPerDisplayPixelOverrideEnabled(bool value, bool notify) {
if (m_pixelsPerDisplayPixelOverrideEnabled != value) {
m_pixelsPerDisplayPixelOverrideEnabled = value;
@@ -599,6 +631,11 @@ namespace advsettings {
LOG(WARNING) << "Could not remove \"revive::" << key_toggleGrip << "\" setting: " << vr::VRSettings()->GetSettingsErrorNameFromEnum(vrSettingsError);
}
vr::VRSettings()->RemoveKeyInSection(section_revive, key_toggleDelay, &vrSettingsError);
if (vrSettingsError != vr::VRSettingsError_None) {
LOG(WARNING) << "Could not remove \"revive::" << key_toggleDelay << "\" setting: " << vr::VRSettings()->GetSettingsErrorNameFromEnum(vrSettingsError);
}
vr::VRSettings()->RemoveKeyInSection(section_revive, key_thumbDeadzone, &vrSettingsError);
if (vrSettingsError != vr::VRSettingsError_None) {
LOG(WARNING) << "Could not remove \"revive::" << key_thumbDeadzone << "\" setting: " << vr::VRSettings()->GetSettingsErrorNameFromEnum(vrSettingsError);
+5
View File
@@ -31,6 +31,7 @@ namespace advsettings {
Q_PROPERTY(int isOverlayInstalled READ isOverlayInstalled NOTIFY isOverlayInstalledChanged)
Q_PROPERTY(int gripButtonMode READ gripButtonMode WRITE setGripButtonMode NOTIFY gripButtonModeChanged)
Q_PROPERTY(bool pixelsPerDisplayPixelOverrideEnabled READ isPixelsPerDisplayPixelOverrideEnabled WRITE setPixelsPerDisplayPixelOverrideEnabled NOTIFY pixelsPerDisplayPixelOverrideEnabledChanged)
Q_PROPERTY(float toggleDelay READ toggleDelay WRITE setToggleDelay NOTIFY toggleDelayChanged)
Q_PROPERTY(float pixelsPerDisplayPixelOverride READ pixelsPerDisplayPixelOverride WRITE setPixelsPerDisplayPixelOverride NOTIFY pixelsPerDisplayPixelOverrideChanged)
Q_PROPERTY(float thumbDeadzone READ thumbDeadzone WRITE setThumbDeadzone NOTIFY thumbDeadzoneChanged)
Q_PROPERTY(float thumbRange READ thumbRange WRITE setThumbRange NOTIFY thumbRangeChanged)
@@ -52,6 +53,7 @@ namespace advsettings {
bool m_isOverlayInstalled = false;
int m_gripButtonMode = 0;
float m_toggleDelay = 0.5f;
bool m_pixelsPerDisplayPixelOverrideEnabled = false;
float m_pixelsPerDisplayPixelOverride = 1.0f;
float m_thumbDeadzone = 0.3f;
@@ -81,6 +83,7 @@ namespace advsettings {
bool isOverlayInstalled() const;
int gripButtonMode() const;
float toggleDelay() const;
bool isPixelsPerDisplayPixelOverrideEnabled() const;
float pixelsPerDisplayPixelOverride() const;
@@ -111,6 +114,7 @@ namespace advsettings {
public slots:
void setGripButtonMode(int value, bool notify = true);
void setToggleDelay(float value, bool notify = true);
void setPixelsPerDisplayPixelOverrideEnabled(bool value, bool notify = true);
void setPixelsPerDisplayPixelOverride(float value, bool notify = true);
@@ -141,6 +145,7 @@ namespace advsettings {
void isOverlayInstalledChanged(bool value);
void gripButtonModeChanged(int value);
void toggleDelayChanged(float value);
void pixelsPerDisplayPixelOverrideEnabledChanged(bool value);
void pixelsPerDisplayPixelOverrideChanged(float value);