/// <summary> /// Constructor /// </summary> /// <param name="nodeDefinition">NodeDefinition</param> /// <param name="nodeConfiguration">NodeConfiguration</param> public NodeViewModel(NodeDefinition nodeDefinition, NodeConfiguration nodeConfiguration) { this.nodeDefinition = nodeDefinition; this.nodeConfiguration = nodeConfiguration; FlowPins = new ObservableCollection <FlowConnectorViewModel>(); DataPins = new ObservableCollection <DataConnectorViewModel>(); defaultValues = new ObservableCollection <DataPinDefaultValueViewModel>(); FillPins(); foreach (var inPin in DataPins.Where(x => x.PinDirection == PinDirectionDefinition.In)) { // Skip if array var configuration = new NodePinConfiguration { Name = inPin.Name, DefaultValue = nodeConfiguration.Pins.FirstOrDefault(x => x.Name == inPin.Name)?.DefaultValue }; defaultValues.Add(new DataPinDefaultValueViewModel(configuration, inPin.DisplayName) { Parent = this }); } if (nodeConfiguration == null) { nodeConfiguration = new NodeConfiguration(); } }
/// <summary> /// Constructor /// </summary> /// <param name="pinConfiguration">NodePinConfiguration</param> /// <param name="displayName">displayName</param> public DataPinDefaultValueViewModel(NodePinConfiguration pinConfiguration, string displayName) { this.pinConfiguration = pinConfiguration; DisplayName = displayName; }