private void UpdatedCurrentReferenceValue(MethodParameterReferenceValueViewModel data) { var newValue = new MethodParameterReferenceValueViewModel(); if (data == null) { newValue.RegardingMethodParameter = Parameter; } else { newValue.Type = data.Type; if (newValue.Type == MethodParameterReferenceValue.ValueType.Constant) { SelectedSourceType = SourceTypes.ElementAt(0); } else { SelectedSourceType = SourceTypes.ElementAt(1); //TODO: match the parameter no by display name, but other unique parameter SelectedMethodParameterReference = AvailableParameterReferences.FirstOrDefault (k => k.DisplayName == data.RegardingReferenceMethodParameter.DisplayName); } newValue.RegardingMethodParameter = data.RegardingMethodParameter; newValue.RegardingReferenceMethodParameter = data.RegardingReferenceMethodParameter; if (newValue.Type == MethodParameterReferenceValue.ValueType.Constant) { var type = MethodTypeToGenericFormInputType(data.RegardingMethodParameter.Type); _view.UpdateGenericConstantInput(data.RegardingMethodParameter.Name, type, data.ConstantValue); } newValue.ConstantValue = data.ConstantValue; } NewReferenceValue = newValue; UpdatedCurrentValue(); }
public InputParameterSelectorControlViewModel() { SourceTypes = new Dictionary <int, string>() { { 1, "Constant" }, { 2, "Dynamic" }, }; NewReferenceValue = new MethodParameterReferenceValueViewModel(); }
public void RaiseUpdatedValueEvent(MethodParameterReferenceValueViewModel oldValue, MethodParameterReferenceValueViewModel newValue) { RoutedEventArgs args = new UpdatedMethodParameterReferenceValueEventArgs() { OldValue = oldValue, NewValue = newValue }; args.RoutedEvent = UpdatedValueEvent; RaiseEvent(args); }
public void UpdatedParameterReferenceValue( MethodParameterReferenceValueViewModel oldValue, MethodParameterReferenceValueViewModel newValue) { if (newValue == null || (newValue.RegardingMethodParameter == null && newValue.RegardingReferenceMethodParameter == null)) { return; } if (oldValue == null) { var sameParameter = newValue.RegardingMethodParameter; var sameReference = NewInputParametersReferenceValues.FirstOrDefault(k => k.RegardingMethodParameter == sameParameter); if (sameReference != null) { int index = NewInputParametersReferenceValues.IndexOf(sameReference); if (index != -1) { NewInputParametersReferenceValues[index] = newValue; } } else { NewInputParametersReferenceValues.Add(newValue); } } else { var item = NewInputParametersReferenceValues.FirstOrDefault (k => k.RegardingMethodParameter.Name == oldValue.RegardingMethodParameter.Name); var index = NewInputParametersReferenceValues.IndexOf(item); if (index > -1) { NewInputParametersReferenceValues[index] = newValue; } } }
private void SetCurrentReferenceValue(MethodParameterReferenceValueViewModel data) { ViewModel.CurrentReferenceValue = data; }
private void UpdatedNewReferenceValue(MethodParameterReferenceValueViewModel data) { }