protected virtual void CheckControls(InputControl controls) { if (this.controls != null && controls.GetType() != this.controls.GetType()) { throw new Exception("Mixing incompatible input control types"); } }
public static InputControl CloneInputControls(InputControl controls) { if (controls is ButtonBasedInputControl) return new ButtonBasedInputControl(controls.Mappings); else if (controls is SpeechBasedInputControl) return new SpeechBasedInputControl(controls.Mappings); throw new Exception("No suitable input control class found"); }
protected override void CheckControls(InputControl controls) { base.CheckControls(controls); Dictionary<String, String> mappings = controls.Mappings; foreach (KeyValuePair<String, String> keyValuePair in mappings) { String name = keyValuePair.Key; String value = keyValuePair.Value; if (controls.IsContinuousMapping(name) && !isValidContinuousInputValue(value)) throw new Exception("The input element '" + name + "' is no valid axis."); else if (controls.IsBooleanMapping(name) && !isValidBooleanInputValue(value)) throw new Exception("The input element '" + name + "' is no valid button."); else if (!controls.IsContinuousMapping(name) && !controls.IsBooleanMapping(name)) throw new Exception("The input element '" + name + "' is neither marked as button nor as axis"); } }
private void SetControls(InputControl controls) { CheckControls(controls); this.controls = InputFactory.CloneInputControls(controls); }
public void CopyMappingsFrom(InputControl controls) { SetControls(controls); }
protected InputMapping(InputControl controls) { CopyMappingsFrom(controls); }
public DeviceAndSelectionConfigState(String name, Position layoutPosition, int rowNumber, InputControl.ControlType inputValueType, List<String> axisNames, List<String> controlsNotRecognized) : base(name, layoutPosition, rowNumber) { this.inputValueType = inputValueType; this.axisNames = new List<String>(axisNames); Console.WriteLine("---"); foreach (string axisNameTmp in this.axisNames) { Console.WriteLine("Name:" + axisNameTmp); } Console.WriteLine("---"); this.controlsNotRecognized = new List<String>(controlsNotRecognized); }
public DeviceInputConfigState(String name, Position layoutPosition, int rowNumber, InputControl.ControlType inputValueType) : base(name, layoutPosition, rowNumber) { this.inputValueType = inputValueType; }
private SpeechBasedInputMapping(InputControl controls) : base(controls) { }
protected ValidatedInputMapping(List<String> validBooleanInputValues, List<String> validContinuousInputValues, InputControl controls) : base() { InitializeValidation(validBooleanInputValues, validContinuousInputValues); InitializeControls(controls); }
private ButtonBasedInputMapping(List<String> validButtons, List<String> validAxes, InputControl controls) : base(validButtons, validAxes, controls) { }
public DeviceAndSelectionConfigState(String name, Position layoutPosition, int rowNumber, InputControl.ControlType inputValueType, List<String> axisNames, List<String> controlsNotRecognized) : base(name, layoutPosition, rowNumber) { this.inputValueType = inputValueType; this.axisNames = new List<String>(axisNames); this.controlsNotRecognized = new List<String>(controlsNotRecognized); }