mirror of
https://github.com/overte-org/overte.git
synced 2025-07-24 01:23:55 +02:00
Added General Preference to control stylus vs finger usage
By default the finger is preferred over the stylus.
This commit is contained in:
parent
465a9e2008
commit
4f03c06a94
4 changed files with 20 additions and 2 deletions
|
@ -549,6 +549,7 @@ const float DEFAULT_DESKTOP_TABLET_SCALE_PERCENT = 75.0f;
|
||||||
const bool DEFAULT_DESKTOP_TABLET_BECOMES_TOOLBAR = true;
|
const bool DEFAULT_DESKTOP_TABLET_BECOMES_TOOLBAR = true;
|
||||||
const bool DEFAULT_HMD_TABLET_BECOMES_TOOLBAR = false;
|
const bool DEFAULT_HMD_TABLET_BECOMES_TOOLBAR = false;
|
||||||
const bool DEFAULT_TABLET_VISIBLE_TO_OTHERS = false;
|
const bool DEFAULT_TABLET_VISIBLE_TO_OTHERS = false;
|
||||||
|
const bool DEFAULT_PREFER_AVATAR_FINGER_OVER_STYLUS = true;
|
||||||
|
|
||||||
Application::Application(int& argc, char** argv, QElapsedTimer& startupTimer, bool runServer, QString runServerPathOption) :
|
Application::Application(int& argc, char** argv, QElapsedTimer& startupTimer, bool runServer, QString runServerPathOption) :
|
||||||
QApplication(argc, argv),
|
QApplication(argc, argv),
|
||||||
|
@ -572,6 +573,7 @@ Application::Application(int& argc, char** argv, QElapsedTimer& startupTimer, bo
|
||||||
_desktopTabletBecomesToolbarSetting("desktopTabletBecomesToolbar", DEFAULT_DESKTOP_TABLET_BECOMES_TOOLBAR),
|
_desktopTabletBecomesToolbarSetting("desktopTabletBecomesToolbar", DEFAULT_DESKTOP_TABLET_BECOMES_TOOLBAR),
|
||||||
_hmdTabletBecomesToolbarSetting("hmdTabletBecomesToolbar", DEFAULT_HMD_TABLET_BECOMES_TOOLBAR),
|
_hmdTabletBecomesToolbarSetting("hmdTabletBecomesToolbar", DEFAULT_HMD_TABLET_BECOMES_TOOLBAR),
|
||||||
_tabletVisibleToOthersSetting("tabletVisibleToOthers", DEFAULT_TABLET_VISIBLE_TO_OTHERS),
|
_tabletVisibleToOthersSetting("tabletVisibleToOthers", DEFAULT_TABLET_VISIBLE_TO_OTHERS),
|
||||||
|
_preferAvatarFingerOverStylusSetting("preferAvatarFingerOverStylus", DEFAULT_PREFER_AVATAR_FINGER_OVER_STYLUS),
|
||||||
_constrainToolbarPosition("toolbar/constrainToolbarToCenterX", true),
|
_constrainToolbarPosition("toolbar/constrainToolbarToCenterX", true),
|
||||||
_scaleMirror(1.0f),
|
_scaleMirror(1.0f),
|
||||||
_rotateMirror(0.0f),
|
_rotateMirror(0.0f),
|
||||||
|
@ -2362,6 +2364,10 @@ void Application::setTabletVisibleToOthersSetting(bool value) {
|
||||||
updateSystemTabletMode();
|
updateSystemTabletMode();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void Application::setPreferAvatarFingerOverStylus(bool value) {
|
||||||
|
_preferAvatarFingerOverStylusSetting.set(value);
|
||||||
|
}
|
||||||
|
|
||||||
void Application::setSettingConstrainToolbarPosition(bool setting) {
|
void Application::setSettingConstrainToolbarPosition(bool setting) {
|
||||||
_constrainToolbarPosition.set(setting);
|
_constrainToolbarPosition.set(setting);
|
||||||
DependencyManager::get<OffscreenUi>()->setConstrainToolbarToCenterX(setting);
|
DependencyManager::get<OffscreenUi>()->setConstrainToolbarToCenterX(setting);
|
||||||
|
|
|
@ -220,6 +220,8 @@ public:
|
||||||
void setHmdTabletBecomesToolbarSetting(bool value);
|
void setHmdTabletBecomesToolbarSetting(bool value);
|
||||||
bool getTabletVisibleToOthersSetting() { return _tabletVisibleToOthersSetting.get(); }
|
bool getTabletVisibleToOthersSetting() { return _tabletVisibleToOthersSetting.get(); }
|
||||||
void setTabletVisibleToOthersSetting(bool value);
|
void setTabletVisibleToOthersSetting(bool value);
|
||||||
|
bool getPreferAvatarFingerOverStylus() { return _preferAvatarFingerOverStylusSetting.get(); }
|
||||||
|
void setPreferAvatarFingerOverStylus(bool value);
|
||||||
|
|
||||||
float getSettingConstrainToolbarPosition() { return _constrainToolbarPosition.get(); }
|
float getSettingConstrainToolbarPosition() { return _constrainToolbarPosition.get(); }
|
||||||
void setSettingConstrainToolbarPosition(bool setting);
|
void setSettingConstrainToolbarPosition(bool setting);
|
||||||
|
@ -565,6 +567,7 @@ private:
|
||||||
Setting::Handle<bool> _desktopTabletBecomesToolbarSetting;
|
Setting::Handle<bool> _desktopTabletBecomesToolbarSetting;
|
||||||
Setting::Handle<bool> _hmdTabletBecomesToolbarSetting;
|
Setting::Handle<bool> _hmdTabletBecomesToolbarSetting;
|
||||||
Setting::Handle<bool> _tabletVisibleToOthersSetting;
|
Setting::Handle<bool> _tabletVisibleToOthersSetting;
|
||||||
|
Setting::Handle<bool> _preferAvatarFingerOverStylusSetting;
|
||||||
Setting::Handle<bool> _constrainToolbarPosition;
|
Setting::Handle<bool> _constrainToolbarPosition;
|
||||||
|
|
||||||
float _scaleMirror;
|
float _scaleMirror;
|
||||||
|
|
|
@ -107,6 +107,12 @@ void setupPreferences() {
|
||||||
auto setter = [](bool value) { qApp->setTabletVisibleToOthersSetting(value); };
|
auto setter = [](bool value) { qApp->setTabletVisibleToOthersSetting(value); };
|
||||||
preferences->addPreference(new CheckPreference(UI_CATEGORY, "Tablet Is Visible To Others", getter, setter));
|
preferences->addPreference(new CheckPreference(UI_CATEGORY, "Tablet Is Visible To Others", getter, setter));
|
||||||
}
|
}
|
||||||
|
{
|
||||||
|
auto getter = []()->bool { return qApp->getPreferAvatarFingerOverStylus(); };
|
||||||
|
auto setter = [](bool value) { qApp->setPreferAvatarFingerOverStylus(value); };
|
||||||
|
preferences->addPreference(new CheckPreference(UI_CATEGORY, "Prefer Avatar Finger Over Stylus", getter, setter));
|
||||||
|
}
|
||||||
|
|
||||||
// Snapshots
|
// Snapshots
|
||||||
static const QString SNAPSHOTS { "Snapshots" };
|
static const QString SNAPSHOTS { "Snapshots" };
|
||||||
{
|
{
|
||||||
|
|
|
@ -46,8 +46,6 @@ var BUMPER_ON_VALUE = 0.5;
|
||||||
|
|
||||||
var THUMB_ON_VALUE = 0.5;
|
var THUMB_ON_VALUE = 0.5;
|
||||||
|
|
||||||
var USE_FINGER_AS_STYLUS = true;
|
|
||||||
|
|
||||||
var HAPTIC_PULSE_STRENGTH = 1.0;
|
var HAPTIC_PULSE_STRENGTH = 1.0;
|
||||||
var HAPTIC_PULSE_DURATION = 13.0;
|
var HAPTIC_PULSE_DURATION = 13.0;
|
||||||
var HAPTIC_TEXTURE_STRENGTH = 0.1;
|
var HAPTIC_TEXTURE_STRENGTH = 0.1;
|
||||||
|
@ -869,6 +867,11 @@ function MyController(hand) {
|
||||||
this.updateSmoothedTrigger();
|
this.updateSmoothedTrigger();
|
||||||
this.maybeScaleMyAvatar();
|
this.maybeScaleMyAvatar();
|
||||||
|
|
||||||
|
var DEFAULT_USE_FINGER_AS_STYLUS = true;
|
||||||
|
var USE_FINGER_AS_STYLUS = Settings.getValue("preferAvatarFingerOverStylus");
|
||||||
|
if (USE_FINGER_AS_STYLUS === "") {
|
||||||
|
USE_FINGER_AS_STYLUS = DEFAULT_USE_FINGER_AS_STYLUS;
|
||||||
|
}
|
||||||
if (USE_FINGER_AS_STYLUS && MyAvatar.getJointIndex("LeftHandIndex4") !== -1) {
|
if (USE_FINGER_AS_STYLUS && MyAvatar.getJointIndex("LeftHandIndex4") !== -1) {
|
||||||
this.useFingerInsteadOfStylus = true;
|
this.useFingerInsteadOfStylus = true;
|
||||||
} else {
|
} else {
|
||||||
|
|
Loading…
Reference in a new issue