示例#1
0
        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();
        }
示例#2
0
        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>()
            };
        }