//TODO: Abstract this public void OpenView(HeaderedView headeredView) { _schedulerProvider.Background.Schedule(() => { try { _logger.Info($"Attempting to open a restored view {headeredView.Header}"); //var HeaderedView = new HeaderedView(view); //TODO: Factory should create the HeaderedView _windowsController.Register(headeredView); //do the work on the ui thread _schedulerProvider.MainThread.Schedule(() => { Views.Add(headeredView); Selected = headeredView; }); } catch (Exception ex) { //TODO: Create a failed to load view _logger.Error(ex, $"There was a problem opening '{headeredView.Header}'"); } }); }
public void Remove(HeaderedView item) { _views.Remove(item); }
public void Register(HeaderedView item) { _views.AddOrUpdate(item); }