/// <inheritdoc/> protected override void OnCancelEdit() { foreach (var label in _added) { CustomLabels.Remove(label); _labelService.RemoveCustomTextLabel(label); } foreach (var label in _removed) { CustomLabels.Add(label); _labelService.AddCustomTextLabel(label); } _added.Clear(); _removed.Clear(); }
/// <summary> /// Initializes a new instance of the <see cref="CustomLabelsVM"/> class /// with the list of custom labels and a label host. /// </summary> /// <param name="appsettings">The app setings.</param> /// <param name="labelService">The host for the labels.</param> /// <param name="dialogService">The dialog service</param> public CustomLabelsVM(IAppSettings appsettings, ICustomLabelService labelService, IDialogService dialogService) { _dialogService = dialogService; _customLabels = appsettings.CustomLabels; CustomLabels = new ObservableCollection <CustomLabelVM>(_customLabels.Select(customLabel => new CustomLabelVM(customLabel, dialogService))); _labelService = labelService; foreach (var customLabelVm in CustomLabels) { _labelService.AddCustomTextLabel(customLabelVm); } AddLabelCommand = new RelayCommand(AddLabelCommandOnExecute); RemoveLabelCommand = new RelayCommand <CustomLabelVM>(RemoveLabelCommandOnExecute); }