public PyScriptNode(VplControl vplControl) : base(vplControl) { AddInputPortToNode("Input", typeof(object)); AddOutputPortToNode("Output", typeof(object)); pyScript = new PyScriptControl() { Width = 450, Height = 250 }; pyScript.StartCompilingEventHandler += PyScript_StartCompilingEventHandler; AddControlToNode(pyScript); BottomComment.Text = $"Description:{Environment.NewLine}Native CPython3 script execution embed in WPF, support native python packages."; }
private void MainConfigForm_Load(object sender, EventArgs e) { HideOnClose = true; diControl1.DiExs = DemoMachine.Ins.DiExs.Values.ToList(); diControl1.LoadFramework(); diControl1.FrameworkActivate(); doControl1.DoExs = DemoMachine.Ins.DoExs.Values.ToList(); doControl1.LoadFramework(); doControl1.FrameworkActivate(); cylinderControl1.CyExs = DemoMachine.Ins.CylinderExs.Values.ToList(); cylinderControl1.LoadFramework(); cylinderControl1.FrameworkActivate(); vioControl1.VioExs = DemoMachine.Ins.VioExs.Values.ToList(); vioControl1.LoadFramework(); vioControl1.FrameworkActivate(); tabControlPlatforms.TabPages.Clear(); foreach (var p in DemoMachine.Ins.Platforms.Values) { var platformControl = new PlatformControl() { Dock = DockStyle.Fill, }; platformControl.LoadPlatform(p); tabControlPlatforms.TabPages.Add(new TabPage($"{p.Name} {p.Description}") { Controls = { platformControl, } }); } tabControlDevices.TabPages.Clear(); foreach (var p in DemoMachine.Ins.Devices.Values) { var uc = p.CreateDeviceControl(); uc.Dock = DockStyle.Fill; tabControlDevices.TabPages.Add(new TabPage($"{p.Name} {p.Description}") { Controls = { uc, } }); } tabControlMachine.TabPages.Clear(); foreach (var s in DemoMachine.Ins.Stations) { tabControlMachine.TabPages.Add(new TabPage($"{s.Value.Name} {s.Value.Description}") { Controls = { new StationStateControl() { Dock = DockStyle.Fill, Station = s.Value, Machine = s.Value.Machine }, } }); } tabControlScripts.TabPages.Clear(); foreach (var s in DemoMachine.Ins.Tasks) { if (s.Value is PyScriptTask) { var psc = new PyScriptControl() { Dock = DockStyle.Fill, }; psc.LoadTask(s.Value as PyScriptTask); tabControlScripts.TabPages.Add(new TabPage($"{s.Value.Name} {s.Value.Description}") { Controls = { psc, } }); } } propertyGridSettings.SelectedObject = DemoMachine.Ins.Settings; propertyGridSettings.ExpandAllGridItems(); }