public VisualScriptLinkViewModel(VisualScriptMethodEditorViewModel method, Link link, VisualScriptSlotViewModel sourceSlot, VisualScriptSlotViewModel targetSlot) : base(method.SafeArgument(nameof(method)).ServiceProvider) { this.Method = method; this.Editor = method.Editor; this.link = link; this.SourceSlot = sourceSlot; this.TargetSlot = targetSlot; }
public VisualScriptBlockViewModel(VisualScriptMethodEditorViewModel method, Block block) : base(method.SafeArgument(nameof(method)).ServiceProvider) { this.Method = method; this.block = block; this.blockNode = method.Editor.Session.AssetNodeContainer.GetOrCreateNode(block); var propertyGraph = method.Editor.Session.GraphContainer.TryGetGraph(method.Editor.Asset.Id); // If anything changes in the block, trigger a PropertyChanged on Title to force it to refresh graphNodeListener = new AssetGraphNodeChangeListener(blockNode, propertyGraph.Definition); graphNodeListener.Initialize(); graphNodeListener.ValueChanging += GraphNodeListener_Changing; graphNodeListener.ValueChanged += GraphNodeListener_Changed; }