private void OK_Click(object sender, EventArgs e) { try { Save: foreach (ListViewItem li in lvPlugin.Items) { if (!File.Exists(li.SubItems[5].Text)) { lvPlugin.Items.Remove(li); goto Save; } var plugin = new Entity.Plugin(); plugin.Checked = li.Checked; plugin.Name = li.SubItems[0].Text; plugin.Author = li.SubItems[1].Text; plugin.Version = li.SubItems[2].Text; plugin.LphVersion = li.SubItems[3].Text; plugin.Description = li.SubItems[4].Text; plugin.FileName = li.SubItems[5].Text; plugin.MenuItems = li.SubItems[6].Text.Split(',').ToList(); plugin.ToolButtons = li.SubItems[7].Text.Split(',').ToList(); var model = dal.FindOne(plugin.FileName); if (model == null) { dal.Insert(plugin); } else { plugin.Id = model.Id; dal.Update(plugin); } if (li.Checked) { if (!PluginManager.Exists(plugin.FileName)) { var pe = new PluginManager(plugin.FileName, Config.MainForm); pe.Run(); } } } Close(); } catch (Exception ex) { MsgBox.ShowExceptionMessage(ex); } }
private void OK_Click(object sender, EventArgs e) { try { Save: var ps = new PluginSetting(); foreach (ListViewItem li in lvPlugin.Items) { if (!File.Exists(li.SubItems[5].Text)) { lvPlugin.Items.Remove(li); goto Save; } var plugin = new Entity.Plugin(); plugin.Checked = li.Checked; plugin.Name = li.SubItems[0].Text; plugin.Author = li.SubItems[1].Text; plugin.Version = li.SubItems[2].Text; plugin.LphVersion = li.SubItems[3].Text; plugin.Description = li.SubItems[4].Text; plugin.FileName = li.SubItems[5].Text; ps.Plugins.Add(plugin); if (li.Checked) { if (!PluginManager.Exists(plugin.FileName)) { var pe = new PluginManager(plugin.FileName, Config.MainForm); pe.Run(); } } } if (ps.Plugins.Count > 0) { Config.PluginSetting = ps; } Close(); } catch (Exception ex) { MsgBox.ShowExceptionMessage(ex); } }