public void Remove() { if (SelectedRootModel != null) { _events.PublishOnUIThread(new RootChangedEvent(ChangeType.Deleted, SelectedRootModel)); RootModels.Remove(SelectedRootModel); } }
public void Handle(RootChangedEvent message) { switch (message.ChangeType) { case ChangeType.Created: case ChangeType.Changed: if (message.ChangeType == ChangeType.Changed) { RootModels.Clear(); } foreach (var root in message.AppliedRootDirectories) { RootModels.Add(root); } break; case ChangeType.Deleted: foreach (var root in message.AppliedRootDirectories) { RootModels.Remove(root); } break; } }