private void AddTask() { string defaultAddress = addresses[0]; using (var form = new EditHostEntryForm(view.ServiceProvider, addresses)) { form.Text = Resources.AddHostEntryDialogTitle; HostEntry selectedEntry = view.SelectedEntries.Select(c => c.HostEntry).FirstOrDefault(); form.EditableFields = HostEntryField.All; form.HostEntry = new HostEntry("", defaultAddress, null); DialogResult result = view.ShowDialog(form); if (result == DialogResult.OK) { this.module.ServiceProxy.AddEntries(new List <HostEntry>() { form.HostEntry }); this.UpdateData(); } } }
public virtual void EditSelectedEntry() { using (var form = new EditHostEntryForm(view.ServiceProvider, addresses)) { form.Text = Resources.EditHostEntryDialogTitle; HostEntry templateEntry = this.view.SelectedEntries.First().HostEntry; HostEntry editingEntry = templateEntry.Clone(); form.EditableFields = options.EditableFields; form.HostEntry = editingEntry; DialogResult result = view.ShowDialog(form); if (result == DialogResult.OK) { var originalEntries = SelectedEntries.Select(m => m.HostEntry).ToList(); var editedEntries = SelectedEntries.Select(entry => { var newEntry = entry.HostEntry.Clone(); this.ApplyChanges(newEntry, editingEntry, form.FieldChanges); return(newEntry); }) .ToList(); try { this.module.ServiceProxy.EditEntries(originalEntries, editedEntries); } catch (HostsFileServiceException ex) { uiService.ShowError(ex, null, Resources.ActionFailedTitle, false); return; } this.UpdateData(); } } }