using System; using System.Collections.Generic; using Rewired.Integration.UnityUI; using Rewired.Utils; using UnityEngine; using UnityEngine.UI; namespace Rewired.UI.ControlMapper { [AddComponentMenu("")] public class CalibrationWindow : Window { public enum ButtonIdentifier { Done = 0, Cancel = 1, Default = 2, Calibrate = 3 } private const float minSensitivityOtherAxes = 0.1f; private const float maxDeadzone = 0.8f; [SerializeField] private RectTransform rightContentContainer; [SerializeField] private RectTransform valueDisplayGroup; [SerializeField] private RectTransform calibratedValueMarker; [SerializeField] private RectTransform rawValueMarker; [SerializeField] private RectTransform calibratedZeroMarker; [SerializeField] private RectTransform deadzoneArea; [SerializeField] private Slider deadzoneSlider; [SerializeField] private Slider zeroSlider; [SerializeField] private Slider sensitivitySlider; [SerializeField] private Toggle invertToggle; [SerializeField] private RectTransform axisScrollAreaContent; [SerializeField] private Button doneButton; [SerializeField] private Button calibrateButton; [SerializeField] private Text doneButtonLabel; [SerializeField] private Text cancelButtonLabel; [SerializeField] private Text defaultButtonLabel; [SerializeField] private Text deadzoneSliderLabel; [SerializeField] private Text zeroSliderLabel; [SerializeField] private Text sensitivitySliderLabel; [SerializeField] private Text invertToggleLabel; [SerializeField] private Text calibrateButtonLabel; [SerializeField] private GameObject axisButtonPrefab; private Joystick joystick; private string origCalibrationData; private int selectedAxis = -1; private AxisCalibrationData origSelectedAxisCalibrationData; private float displayAreaWidth; private List