protected override void ValidateValues() { var dotSize = Mathf.Clamp(cursorDotSizeSlider.value, ScreenControlUtility.ToDisplayUnits(SettingsConfig.CursorDotSize_Min), ScreenControlUtility.ToDisplayUnits(SettingsConfig.CursorDotSize_Max)); cursorDotSizeSlider.SetValueWithoutNotify(dotSize); cursorDotSize.SetTextWithoutNotify(dotSize.ToString("#0.00#")); var ringScale = Mathf.Clamp(cursorMaxRingScaleSlider.value, SettingsConfig.CursorRingMaxScale_Min, SettingsConfig.CursorRingMaxScale_Max); cursorMaxRingScaleSlider.SetValueWithoutNotify(ringScale); cursorMaxRingScale.SetTextWithoutNotify(ringScale.ToString("#0.00#")); var maxDistance = Mathf.Clamp(cursorMaxRingScaleAtDistanceSlider.value, ScreenControlUtility.ToDisplayUnits(SettingsConfig.CursorMaxRingScaleAtDistance_Min), ScreenControlUtility.ToDisplayUnits(SettingsConfig.CursorMaxRingScaleAtDistance_Max)); cursorMaxRingScaleAtDistanceSlider.SetValueWithoutNotify(maxDistance); cursorMaxRingScaleAtDistance.SetTextWithoutNotify(maxDistance.ToString("#0.00#")); var deadzoneRadius = Mathf.Clamp(cursorDeadzoneSlider.value, SettingsConfig.CursorDeadzone_Min, SettingsConfig.CursorDeadzone_Max); cursorDeadzoneSlider.SetValueWithoutNotify(deadzoneRadius); var verticalOffset = Mathf.Clamp(cursorVerticalOffsetSlider.value, ScreenControlUtility.ToDisplayUnits(SettingsConfig.CursorVerticalOffset_Min), ScreenControlUtility.ToDisplayUnits(SettingsConfig.CursorVerticalOffset_Max)); cursorVerticalOffsetSlider.SetValueWithoutNotify(verticalOffset); cursorVerticalOffset.SetTextWithoutNotify(verticalOffset.ToString("#0.00#")); var hoverStartTime = Mathf.Clamp(HoverCursorStartTimeSlider.value, SettingsConfig.HoverCursorStartTime_Min, SettingsConfig.HoverCursorStartTime_Max); HoverCursorStartTime.SetTextWithoutNotify(hoverStartTime.ToString("#0.00#")); HoverCursorStartTimeSlider.SetValueWithoutNotify(hoverStartTime); var hoverCompleteTime = Mathf.Clamp(HoverCursorCompleteTimeSlider.value, SettingsConfig.HoverCursorCompleteTime_Min, SettingsConfig.HoverCursorCompleteTime_Max); HoverCursorCompleteTime.SetTextWithoutNotify(hoverCompleteTime.ToString("#0.00#")); HoverCursorCompleteTimeSlider.SetValueWithoutNotify(hoverCompleteTime); CTIShowTimer.SetTextWithoutNotify(TryParseNewStringToFloat(ref CallToInteractConfig.Config.ShowTimeAfterNoHandPresent, CTIShowTimer.text).ToString("#0.00#")); CTIHideTimer.SetTextWithoutNotify(TryParseNewStringToFloat(ref CallToInteractConfig.Config.HideTimeAfterHandPresent, CTIHideTimer.text).ToString("#0.00#")); switch (CallToInteractConfig.Config.hideType) { case HideRequirement.PRESENT: activityHideOption.SetActive(true); break; case HideRequirement.INTERACTION: activityHideOption.SetActive(false); break; } ValidateInteractionTypeElements(); hoverEventsWarning.SetActive(sendHoverEventsTog.isOn); }
void InitialiseUI() { PhysicalScreenTiltAngleSlider.minValue = PhysicalConfigurable.ScreenTilt_Min; ScreenHeightSlider.minValue = ScreenControlUtility.ToDisplayUnits(PhysicalConfigurable.ScreenHeight_Min); TrackingOriginXSlider.minValue = ScreenControlUtility.ToDisplayUnits(PhysicalConfigurable.TrackingOriginX_Min); TrackingOriginYSlider.minValue = ScreenControlUtility.ToDisplayUnits(PhysicalConfigurable.TrackingOriginY_Min); TrackingOriginZSlider.minValue = ScreenControlUtility.ToDisplayUnits(PhysicalConfigurable.TrackingOriginZ_Min); TrackingRotationXSlider.minValue = PhysicalConfigurable.TrackingRoation_Min; PhysicalScreenTiltAngleSlider.maxValue = PhysicalConfigurable.ScreenTilt_Max; ScreenHeightSlider.maxValue = ScreenControlUtility.ToDisplayUnits(PhysicalConfigurable.ScreenHeight_Max); TrackingOriginXSlider.maxValue = ScreenControlUtility.ToDisplayUnits(PhysicalConfigurable.TrackingOriginX_Max); TrackingOriginYSlider.maxValue = ScreenControlUtility.ToDisplayUnits(PhysicalConfigurable.TrackingOriginY_Max); TrackingOriginZSlider.maxValue = ScreenControlUtility.ToDisplayUnits(PhysicalConfigurable.TrackingOriginZ_Max); TrackingRotationXSlider.maxValue = PhysicalConfigurable.TrackingRoation_Max; }
protected override void LoadConfigValuesIntoFields() { PhysicalScreenTiltAngle.SetTextWithoutNotify(PhysicalConfigurable.Config.ScreenRotationD.ToString("##0.0")); ScreenHeight.SetTextWithoutNotify(ScreenControlUtility.ToDisplayUnits(PhysicalConfigurable.Config.ScreenHeightM).ToString("#0.00#")); TrackingOriginX.SetTextWithoutNotify(ScreenControlUtility.ToDisplayUnits(PhysicalConfigurable.Config.LeapPositionRelativeToScreenBottomM.x).ToString("#0.00#")); TrackingOriginY.SetTextWithoutNotify(ScreenControlUtility.ToDisplayUnits(PhysicalConfigurable.Config.LeapPositionRelativeToScreenBottomM.y).ToString("#0.00#")); TrackingOriginZ.SetTextWithoutNotify(ScreenControlUtility.ToDisplayUnits(-PhysicalConfigurable.Config.LeapPositionRelativeToScreenBottomM.z).ToString("#0.00#")); TrackingRotationX.SetTextWithoutNotify(PhysicalConfigurable.Config.LeapRotationD.x.ToString("##0.0")); var bottomMount = Mathf.Approximately(PhysicalConfigurable.Config.LeapRotationD.z, 0f); PhysicalScreenTiltAngleSlider.SetValueWithoutNotify(PhysicalConfigurable.Config.ScreenRotationD); ScreenHeightSlider.SetValueWithoutNotify(ScreenControlUtility.ToDisplayUnits(PhysicalConfigurable.Config.ScreenHeightM)); TrackingOriginXSlider.SetValueWithoutNotify(ScreenControlUtility.ToDisplayUnits(PhysicalConfigurable.Config.LeapPositionRelativeToScreenBottomM.x)); TrackingOriginYSlider.SetValueWithoutNotify(ScreenControlUtility.ToDisplayUnits(PhysicalConfigurable.Config.LeapPositionRelativeToScreenBottomM.y)); TrackingOriginZSlider.SetValueWithoutNotify(ScreenControlUtility.ToDisplayUnits(-PhysicalConfigurable.Config.LeapPositionRelativeToScreenBottomM.z)); TrackingRotationXSlider.SetValueWithoutNotify(PhysicalConfigurable.Config.LeapRotationD.x); }
void InitialiseUI() { cursorDotSizeSlider.minValue = ScreenControlUtility.ToDisplayUnits(SettingsConfig.CursorDotSize_Min); cursorDotSizeSlider.maxValue = ScreenControlUtility.ToDisplayUnits(SettingsConfig.CursorDotSize_Max); cursorMaxRingScaleSlider.minValue = SettingsConfig.CursorRingMaxScale_Min; cursorMaxRingScaleSlider.maxValue = SettingsConfig.CursorRingMaxScale_Max; cursorMaxRingScaleAtDistanceSlider.minValue = ScreenControlUtility.ToDisplayUnits(SettingsConfig.CursorMaxRingScaleAtDistance_Min); cursorMaxRingScaleAtDistanceSlider.maxValue = ScreenControlUtility.ToDisplayUnits(SettingsConfig.CursorMaxRingScaleAtDistance_Max); cursorDeadzoneSlider.minValue = SettingsConfig.CursorDeadzone_Min; cursorDeadzoneSlider.maxValue = SettingsConfig.CursorDeadzone_Max; cursorVerticalOffsetSlider.minValue = ScreenControlUtility.ToDisplayUnits(SettingsConfig.CursorVerticalOffset_Min); cursorVerticalOffsetSlider.maxValue = ScreenControlUtility.ToDisplayUnits(SettingsConfig.CursorVerticalOffset_Max); HoverCursorStartTimeSlider.minValue = SettingsConfig.HoverCursorStartTime_Min; HoverCursorStartTimeSlider.maxValue = SettingsConfig.HoverCursorStartTime_Max; HoverCursorCompleteTimeSlider.minValue = SettingsConfig.HoverCursorCompleteTime_Min; HoverCursorCompleteTimeSlider.maxValue = SettingsConfig.HoverCursorCompleteTime_Max; customCursorDotFillColour = SettingsConfig.Config.CursorDotFillColor; customCursorDotBorderColour = SettingsConfig.Config.CursorDotBorderColor; customCursorRingColour = SettingsConfig.Config.CursorRingColor; customCursorDotFillOpacity = SettingsConfig.Config.CursorDotFillOpacity; customCursorDotBorderOpacity = SettingsConfig.Config.CursorDotBorderOpacity; customCursorRingOpacity = SettingsConfig.Config.CursorRingOpacity; if (SettingsConfig.Config.CursorColorPreset == CursorColourPreset.custom) { // we are in custom, so only worry about custom colours foreach (var label in customCursorColourLabels) { label.SetActive(true); } } else { foreach (var label in customCursorColourLabels) { label.SetActive(false); } } }
protected float TryParseNewStringToFloat(ref float _original, string _newText, bool _convertToStorageUnits = false, bool _convertToDisplayUnits = false) { // Match any character that is not period (.), hypen (-), or numbers 0 to 9, and strip them out. _newText = Regex.Replace(_newText, "[^.0-9-]", ""); float val; if (!float.TryParse(_newText, NumberStyles.Number, CultureInfo.CurrentCulture, out val)) { val = _original; // string was not compatible! } if (_convertToDisplayUnits) { val = ScreenControlUtility.ToDisplayUnits(val); } else if (_convertToStorageUnits) { val = ScreenControlUtility.FromDisplayUnits(val); } return(val); }
protected override void LoadConfigValuesIntoFields() { resolutionWidth.text = Screen.currentResolution.width.ToString(); resolutionHeight.text = Screen.currentResolution.height.ToString(); cursorDotSize.SetTextWithoutNotify(ScreenControlUtility.ToDisplayUnits(SettingsConfig.Config.CursorDotSizeM).ToString("#0.00#")); cursorDotSizeSlider.SetValueWithoutNotify(ScreenControlUtility.ToDisplayUnits(SettingsConfig.Config.CursorDotSizeM)); cursorMaxRingScale.SetTextWithoutNotify(SettingsConfig.Config.CursorRingMaxScale.ToString("#0.00#")); cursorMaxRingScaleSlider.SetValueWithoutNotify(SettingsConfig.Config.CursorRingMaxScale); cursorMaxRingScaleAtDistance.SetTextWithoutNotify(ScreenControlUtility.ToDisplayUnits(SettingsConfig.Config.CursorMaxRingScaleAtDistanceM).ToString("#0.00#")); cursorMaxRingScaleAtDistanceSlider.SetValueWithoutNotify(ScreenControlUtility.ToDisplayUnits(SettingsConfig.Config.CursorMaxRingScaleAtDistanceM)); scrollingOrDraggingTog.SetIsOnWithoutNotify(SettingsConfig.Config.UseScrollingOrDragging); setupOnStartup.SetIsOnWithoutNotify(SettingsConfig.Config.ShowSetupScreenOnStartup); sendHoverEventsTog.SetIsOnWithoutNotify(SettingsConfig.Config.SendHoverEvents); cursorRingColor.SetTextWithoutNotify(SettingsConfig.Config.CursorRingColor); cursorRingOpacity.SetValueWithoutNotify(SettingsConfig.Config.CursorRingOpacity); cursorDotFillColor.SetTextWithoutNotify(SettingsConfig.Config.CursorDotFillColor); cursorDotFillOpacity.SetValueWithoutNotify(SettingsConfig.Config.CursorDotFillOpacity); cursorDotBorderColor.SetTextWithoutNotify(SettingsConfig.Config.CursorDotBorderColor); cursorDotBorderOpacity.SetValueWithoutNotify(SettingsConfig.Config.CursorDotBorderOpacity); cursorDeadzoneSlider.SetValueWithoutNotify(SettingsConfig.Config.DeadzoneRadius); cursorVerticalOffset.SetTextWithoutNotify(ScreenControlUtility.ToDisplayUnits(SettingsConfig.Config.CursorVerticalOffset).ToString("#0.00#")); cursorVerticalOffsetSlider.SetValueWithoutNotify(ScreenControlUtility.ToDisplayUnits(SettingsConfig.Config.CursorVerticalOffset)); HoverCursorStartTime.SetTextWithoutNotify(SettingsConfig.Config.HoverCursorStartTimeS.ToString("#0.00#")); HoverCursorStartTimeSlider.SetValueWithoutNotify(SettingsConfig.Config.HoverCursorStartTimeS); HoverCursorCompleteTime.SetTextWithoutNotify(SettingsConfig.Config.HoverCursorCompleteTimeS.ToString("#0.00#")); HoverCursorCompleteTimeSlider.SetValueWithoutNotify(SettingsConfig.Config.HoverCursorCompleteTimeS); interactionTypeTogglePush.SetIsOnWithoutNotify(false); interactionTypeTogglePoke.SetIsOnWithoutNotify(false); interactionTypeTogglePinch.SetIsOnWithoutNotify(false); interactionTypeToggleHover.SetIsOnWithoutNotify(false); switch (SettingsConfig.Config.InteractionSelection) { case InteractionSelection.Push: interactionTypeTogglePush.SetIsOnWithoutNotify(true); break; case InteractionSelection.Poke: interactionTypeTogglePoke.SetIsOnWithoutNotify(true); break; case InteractionSelection.Grab: interactionTypeTogglePinch.SetIsOnWithoutNotify(true); break; case InteractionSelection.Hover: interactionTypeToggleHover.SetIsOnWithoutNotify(true); break; } cursorColorPresetToggleLight.SetIsOnWithoutNotify(false); cursorColorPresetToggleDark.SetIsOnWithoutNotify(false); cursorColorPresetToggleLightContrast.SetIsOnWithoutNotify(false); cursorColorPresetToggleDarkContrast.SetIsOnWithoutNotify(false); cursorColorPresetToggleCustom.SetIsOnWithoutNotify(false); switch (SettingsConfig.Config.CursorColorPreset) { case CursorColourPreset.light: cursorColorPresetToggleLight.SetIsOnWithoutNotify(true); break; case CursorColourPreset.dark: cursorColorPresetToggleDark.SetIsOnWithoutNotify(true); break; case CursorColourPreset.white_Contrast: cursorColorPresetToggleLightContrast.SetIsOnWithoutNotify(true); break; case CursorColourPreset.black_Contrast: cursorColorPresetToggleDarkContrast.SetIsOnWithoutNotify(true); break; case CursorColourPreset.custom: cursorColorPresetToggleCustom.SetIsOnWithoutNotify(true); break; } if (SettingsConfig.Config.CursorColorPreset == CursorColourPreset.custom) { foreach (var label in customCursorColourLabels) { label.SetActive(true); } } else { foreach (var label in customCursorColourLabels) { label.SetActive(false); } } ValidateInteractionTypeElements(); CTIEnableTog.SetIsOnWithoutNotify(CallToInteractConfig.Config.Enabled); CTIShowTimer.SetTextWithoutNotify(CallToInteractConfig.Config.ShowTimeAfterNoHandPresent.ToString("#0.00#")); CTIHideTimer.SetTextWithoutNotify(CallToInteractConfig.Config.HideTimeAfterHandPresent.ToString("#0.00#")); switch (CallToInteractConfig.Config.hideType) { case HideRequirement.PRESENT: CTIEndOnPresentTog.SetIsOnWithoutNotify(true); CTIEndOnInteractionTog.SetIsOnWithoutNotify(false); activityHideOption.SetActive(true); break; case HideRequirement.INTERACTION: CTIEndOnPresentTog.SetIsOnWithoutNotify(false); CTIEndOnInteractionTog.SetIsOnWithoutNotify(true); activityHideOption.SetActive(false); break; } hoverEventsWarning.SetActive(sendHoverEventsTog.isOn); LoadCTIFilesIntoDropdown(); DisplayCursorPreview(); DisplayIntractionPreview(); }