////////////////////////////////////////////////////////////////////////// public override object EditValue(ITypeDescriptorContext context, IServiceProvider provider, object value) { if (context == null) return value; NativePropProxy Proxy = context.Instance as NativePropProxy; if (Proxy == null || Proxy.NativeObject == null) { SystemSounds.Asterisk.Play(); return value; } ScriptCollection OrigCol = value as ScriptCollection; ScriptsForm dlg = new ScriptsForm(); dlg.Game = Proxy.NativeObject.Game; dlg.ParentForm = Form.ActiveForm; foreach(string Scr in OrigCol.Scripts) { dlg.Scripts.Add(Scr); } if (dlg.ShowDialog() == DialogResult.OK) { ScriptCollection NewCol = new ScriptCollection(); foreach (string Scr in dlg.Scripts) { NewCol.Scripts.Add(Scr); } return NewCol; } else return OrigCol; }
////////////////////////////////////////////////////////////////////////// public override object EditValue(ITypeDescriptorContext context, IServiceProvider provider, object value) { if (context == null) { return(value); } NativePropProxy Proxy = context.Instance as NativePropProxy; if (Proxy == null || Proxy.NativeObject == null) { SystemSounds.Asterisk.Play(); return(value); } ScriptCollection OrigCol = value as ScriptCollection; ScriptsForm dlg = new ScriptsForm(); dlg.Game = Proxy.NativeObject.Game; dlg.ParentForm = Form.ActiveForm; foreach (string Scr in OrigCol.Scripts) { dlg.Scripts.Add(Scr); } if (dlg.ShowDialog() == DialogResult.OK) { ScriptCollection NewCol = new ScriptCollection(); foreach (string Scr in dlg.Scripts) { NewCol.Scripts.Add(Scr); } return(NewCol); } else { return(OrigCol); } }