Example #1
0
        public void Consume(string controlId, DCSBIOSControlInput dcsbiosControlInput)
        {
            _controlId   = controlId;
            _description = dcsbiosControlInput.description;

            if ([email protected]("fixed_step"))
            {
                _interface = DCSBIOSInputType.FIXED_STEP;
            }
            else if ([email protected]("set_state"))
            {
                _interface = DCSBIOSInputType.SET_STATE;
            }
            else if ([email protected]("action"))
            {
                _interface = DCSBIOSInputType.ACTION;
            }
            else if ([email protected]("variable_step"))
            {
                _interface = DCSBIOSInputType.VARIABLE_STEP;
            }

            _maxValue = dcsbiosControlInput.max_value.GetValueOrDefault();
            _specifiedActionArgument = dcsbiosControlInput.argument;
            //Set by user
            //_specifiedSetStateArgument
            //Set by user
            //_specifiedFixedStepInput
        }
        private void SetVisibility(DCSBIOSInputType dcsbiosInputType)
        {
            LabelInputValue.Visibility = Visibility.Visible;
            switch (dcsbiosInputType)
            {
            case DCSBIOSInputType.FIXED_STEP:
            {
                //INC / DEC
                ComboBoxInputValueFixedStep.Visibility = Visibility.Visible;
                ComboBoxInputValueAction.Visibility    = Visibility.Collapsed;
                TextBoxInputValueSetState.Visibility   = Visibility.Collapsed;

                LabelMaxValue.Visibility   = Visibility.Collapsed;
                TextBoxMaxValue.Visibility = Visibility.Collapsed;
                break;
            }

            case DCSBIOSInputType.ACTION:
            {
                //TOGGLE
                ComboBoxInputValueFixedStep.Visibility = Visibility.Collapsed;
                ComboBoxInputValueAction.Visibility    = Visibility.Visible;
                TextBoxInputValueSetState.Visibility   = Visibility.Collapsed;

                LabelMaxValue.Visibility   = Visibility.Collapsed;
                TextBoxMaxValue.Visibility = Visibility.Collapsed;
                break;
            }

            case DCSBIOSInputType.SET_STATE:
            {
                //INTEGER
                ComboBoxInputValueFixedStep.Visibility = Visibility.Collapsed;
                ComboBoxInputValueAction.Visibility    = Visibility.Collapsed;
                TextBoxInputValueSetState.Visibility   = Visibility.Visible;

                LabelMaxValue.Visibility   = Visibility.Visible;
                TextBoxMaxValue.Visibility = Visibility.Visible;
                break;
            }

            case DCSBIOSInputType.VARIABLE_STEP:
            {
                //INTEGER
                ComboBoxInputValueFixedStep.Visibility = Visibility.Collapsed;
                ComboBoxInputValueAction.Visibility    = Visibility.Collapsed;
                TextBoxInputValueSetState.Visibility   = Visibility.Visible;

                LabelMaxValue.Visibility   = Visibility.Visible;
                TextBoxMaxValue.Visibility = Visibility.Visible;
                break;
            }
            }
        }
Example #3
0
 public void SetSelectedInputBasedOnInterfaceType(DCSBIOSInputType dcsbiosInputType)
 {
     foreach (var dcsbiosInputObject in DCSBIOSInputObjects)
     {
         if (dcsbiosInputObject.Interface == dcsbiosInputType)
         {
             SelectedDCSBIOSInput = dcsbiosInputObject;
             break;
         }
     }
 }
Example #4
0
 public string GetDescriptionForInterface(DCSBIOSInputType dcsbiosInputType)
 {
     foreach (var dcsbiosInputObject in _dcsbiosInputObjects)
     {
         if (dcsbiosInputObject.Interface == dcsbiosInputType)
         {
             return(dcsbiosInputObject.Description);
         }
     }
     return("");
 }
Example #5
0
 public int GetMaxValueForInterface(DCSBIOSInputType dcsbiosInputType)
 {
     if (dcsbiosInputType == DCSBIOSInputType.ACTION || dcsbiosInputType == DCSBIOSInputType.FIXED_STEP)
     {
         return(-99);
     }
     foreach (var dcsbiosInputObject in _dcsbiosInputObjects)
     {
         if (dcsbiosInputObject.Interface == dcsbiosInputType)
         {
             return(dcsbiosInputObject.MaxValue);
         }
     }
     return(-99);
 }
Example #6
0
        public void Cosume_ShouldSet_4_Properties(string givenControlInterface, DCSBIOSInputType expectedDCSBIOSInputType)
        {
            string controlId = "ThisIsAControlId";
            DCSBIOSControlInput controlInput = new()
            {
                Description      = "Test",
                ControlInterface = givenControlInterface,
                MaxValue         = 666,
                Argument         = "ThisIsAnArgument"
            };
            DCSBIOSInputObject inputObject = new();

            inputObject.Consume(controlId, controlInput);

            Assert.Equal(controlId, inputObject.ControlId);
            Assert.Equal(controlInput.Description, inputObject.Description);
            Assert.Equal(expectedDCSBIOSInputType, inputObject.Interface);
            Assert.Equal(controlInput.Argument, inputObject.SpecifiedActionArgument);
        }
Example #7
0
        public void Consume(string controlId, DCSBIOSControlInput dcsbiosControlInput)
        {
            _controlId   = controlId;
            _description = dcsbiosControlInput.Description;

            _interface = dcsbiosControlInput.ControlInterface switch
            {
                "fixed_step" => DCSBIOSInputType.FIXED_STEP,
                "set_state" => DCSBIOSInputType.SET_STATE,
                "action" => DCSBIOSInputType.ACTION,
                "variable_step" => DCSBIOSInputType.VARIABLE_STEP,
                _ => throw new SystemException($"Unexpected ControlInterface value [{dcsbiosControlInput.ControlInterface}]")
            };
            _maxValue = dcsbiosControlInput.MaxValue.GetValueOrDefault();
            _specifiedActionArgument = dcsbiosControlInput.Argument;
            //Set by user
            //_specifiedSetStateArgument
            //Set by user
            //_specifiedFixedStepInput
        }