using PropertyGridLib.Controls; using System; using System.Collections.Generic; using System.ComponentModel; using System.Linq; using System.Text; using System.Threading.Tasks; using TeamAAS.FlowEngine; using Plugins.Standard.Models; namespace Plugins.Standard.Core { public class NextToolConverter : StringConverter { public override bool GetStandardValuesSupported(ITypeDescriptorContext context) => true; public override StandardValuesCollection GetStandardValues(ITypeDescriptorContext context) { // 通过 PluginLoader.SelectFlow 获取"当前正在编辑的节点"上下文, // 不再依赖 IfConditionModel.Instance 静态单例(多节点会互相覆盖)。 var flow = PluginLoader.Instance.SelectFlow; if (flow == null) return new StandardValuesCollection(new List()); var Plugins = PluginLoader.Instance.IDGetNextPlugins(flow.FlowId, flow.NodeId).Select(x => x.NodeName).ToList(); return new StandardValuesCollection(Plugins); } public override bool GetStandardValuesExclusive(ITypeDescriptorContext context) => true; } }