Пример #1
0
        public void ApplySettings(AxisSettings settings)
        {
            m_zeroDeadZone   = settings.ZeroDeadZoneRaw;
            m_oneDeadZone    = settings.OneDeadZoneRaw;
            m_truncate       = ((settings.Flags & (byte)AxisSettingsFlags.Truncate) > 0);
            m_invert         = ((settings.Flags & (byte)AxisSettingsFlags.Invert) > 0);
            m_interpretation = Global.Interpretations.FirstOrDefault(x => x.Type == settings.Interpretation);
            if (m_interpretation == null)
            {
                m_interpretation = Global.InterpretationNull;
            }

            RaiseAllSettingsChanged();
        }
Пример #2
0
        static Global()
        {
            Dictionary <Type, Func <object, Window> > windowViewModelMapping = new Dictionary <Type, Func <object, Window> >();

            windowViewModelMapping.Add(typeof(AxisCallibrationViewModel), x => new AxisCallibrationWindow((AxisCallibrationViewModel)x));

            m_dialogs = new DialogService(windowViewModelMapping);

            s_interpretationNull = new InterpretationViewModel(AxisInterpretation.InterpretationNull);

            s_interpretations = new ObservableCollection <InterpretationViewModel>();
            s_interpretations.Add(s_interpretationNull);
            s_interpretations.Add(new InterpretationViewModel(AxisInterpretation.InterpretationXAxis));
            s_interpretations.Add(new InterpretationViewModel(AxisInterpretation.InterpretationXRotation));
            s_interpretations.Add(new InterpretationViewModel(AxisInterpretation.InterpretationYAxis));
            s_interpretations.Add(new InterpretationViewModel(AxisInterpretation.InterpretationYRotation));
            s_interpretations.Add(new InterpretationViewModel(AxisInterpretation.InterpretationZAxis));
            s_interpretations.Add(new InterpretationViewModel(AxisInterpretation.InterpretationZRotation));
        }
Пример #3
0
        public void ApplyDefaultSettings()
        {
            switch (m_type)
            {
            case AxisType.AccelerometerHorizontal:
            {
                m_zeroDeadZone   = 20;
                m_oneDeadZone    = 80;
                m_truncate       = false;
                m_invert         = false;
                m_interpretation = Global.Interpretations.FirstOrDefault(x => x.Type == AxisInterpretation.InterpretationXAxis);
            }
            break;

            case AxisType.AccelerometerVertical:
            {
                m_zeroDeadZone   = 20;
                m_oneDeadZone    = 80;
                m_truncate       = false;
                m_invert         = false;
                m_interpretation = Global.Interpretations.FirstOrDefault(x => x.Type == AxisInterpretation.InterpretationYAxis);
            }
            break;

            case AxisType.LeftAnalogHorizontal:
            {
                m_zeroDeadZone   = 5;
                m_oneDeadZone    = 95;
                m_truncate       = false;
                m_invert         = false;
                m_interpretation = Global.Interpretations.FirstOrDefault(x => x.Type == AxisInterpretation.InterpretationZAxis);
            }
            break;

            case AxisType.LeftAnalogVertical:
            {
                m_zeroDeadZone   = 5;
                m_oneDeadZone    = 95;
                m_truncate       = false;
                m_invert         = false;
                m_interpretation = Global.Interpretations.FirstOrDefault(x => x.Type == AxisInterpretation.InterpretationZRotation);
            }
            break;

            case AxisType.RightAnalogHorizontal:
            {
                m_zeroDeadZone   = 5;
                m_oneDeadZone    = 95;
                m_truncate       = false;
                m_invert         = false;
                m_interpretation = Global.Interpretations.FirstOrDefault(x => x.Type == AxisInterpretation.InterpretationXRotation);
            }
            break;

            case AxisType.RightAnalogVertical:
            {
                m_zeroDeadZone   = 5;
                m_oneDeadZone    = 95;
                m_truncate       = false;
                m_invert         = false;
                m_interpretation = Global.Interpretations.FirstOrDefault(x => x.Type == AxisInterpretation.InterpretationYRotation);
            }
            break;
            }

            if (m_interpretation == null)
            {
                m_interpretation = Global.InterpretationNull;
            }
            RaiseAllSettingsChanged();
        }