public FahClient(ILogger logger, IPreferences preferences, IProteinBenchmarkService benchmarkService, IProteinService proteinService, IWorkUnitRepository workUnitRepository) : base(logger, preferences, benchmarkService) { ProteinService = proteinService; WorkUnitRepository = workUnitRepository; Messages = new FahClientMessages(this); _slots = new List <SlotModel>(); _slotsLock = new ReaderWriterLockSlim(); }
public WorkUnitHistoryModel(IPreferences preferences, WorkUnitQueryDataContainer queryContainer, IWorkUnitRepository repository) { Preferences = preferences; QueryContainer = queryContainer; Repository = repository ?? throw new ArgumentNullException(nameof(repository)); _queryList = new List <WorkUnitQuery> { WorkUnitQuery.SelectAll }; QueryBindingSource = new BindingSource(); QueryBindingSource.DataSource = _queryList; QueryBindingSource.CurrentItemChanged += (s, e) => { OnPropertyChanged(nameof(EditAndDeleteButtonsEnabled)); _currentPage = 1; ResetBindings(true); }; _workUnitList = new WorkUnitRowSortableBindingList(); _workUnitList.RaiseListChangedEvents = false; _workUnitList.Sorted += (s, e) => { SortColumnName = e.Name; SortOrder = e.Direction; }; HistoryBindingSource = new BindingSource(); HistoryBindingSource.DataSource = _workUnitList; _page = new PetaPoco.Page <WorkUnitRow> { Items = new List <WorkUnitRow>() }; }