示例#1
0
        public ConditionsViewModel(Compendium compendium, ConditionSearchService conditionSearchService, ConditionSearchInput conditionSearchInput,
                                   StringService stringService, DialogService dialogService, XMLImporter xmlImporter, XMLExporter xmlExporter)
        {
            _compendium             = compendium;
            _conditionSearchService = conditionSearchService;
            _conditionSearchInput   = conditionSearchInput;
            _stringService          = stringService;
            _dialogService          = dialogService;
            _xmlImporter            = xmlImporter;
            _xmlExporter            = xmlExporter;

            _selectConditionCommand     = new RelayCommand(obj => true, obj => SelectCondition(obj as ConditionListItemViewModel));
            _editConditionCommand       = new RelayCommand(obj => true, obj => EditCondition(obj as ConditionViewModel));
            _exportConditionCommand     = new RelayCommand(obj => true, obj => ExportCondition(obj as ConditionViewModel));
            _cancelEditConditionCommand = new RelayCommand(obj => true, obj => CancelEditCondition());
            _saveEditConditionCommand   = new RelayCommand(obj => HasUnsavedChanges, obj => SaveEditCondition());
            _resetFiltersCommand        = new RelayCommand(obj => true, obj => InitializeSearch());
            _addCommand            = new RelayCommand(obj => true, obj => Add());
            _copyCommand           = new RelayCommand(obj => _selectedCondition != null, obj => Copy());
            _deleteCommand         = new RelayCommand(obj => _selectedCondition != null, obj => Delete());
            _importCommand         = new RelayCommand(obj => true, obj => Import());
            _selectNextCommand     = new RelayCommand(obj => true, obj => SelectNext());
            _selectPreviousCommand = new RelayCommand(obj => true, obj => SelectPrevious());

            Search();
        }
 /// <summary>
 /// True if the search input applies to the model
 /// </summary>
 public bool SearchInputApplies(ConditionSearchInput searchInput, ConditionModel conditionModel)
 {
     return(HasSearchText(conditionModel, searchInput.SearchText));
 }
 /// <summary>
 /// Searches the compendium for conditions matching the search input
 /// </summary>
 public List <ConditionModel> Search(ConditionSearchInput searchInput)
 {
     return(Sort(_compendium.Conditions.Where(x => SearchInputApplies(searchInput, x)), searchInput.SortOption));
 }