public SearchPanelViewModel(ILogFilterService logFilterService, ILogsViewService logsViewService) { LogsViewService = logsViewService; _selectedLogLevel = CreateProperty(nameof(SelectedLogLevel), LogLevel.All); var levelFilter = _selectedLogLevel.Select(CreateLogLevelFilter); logFilterService.AddFilter(levelFilter); _query = CreateProperty <string>(nameof(Query)); var queryFilter = _query.Select(CreateQueryFilter).DistinctUntilChanged(); logFilterService.AddFilter(queryFilter); }
public LogFormatSelectionDialogViewModel(Uri sourceUri, IList <ILogFormat> options) { SourceUri = sourceUri; Options = options; _selectedProperty = CreateProperty <ILogFormat>(nameof(Selected)); CloseCommand = Command.Create((object o) => Return(null)); SelectCommand = Command.Create( _selectedProperty.Select(format => format != null), () => Return(Selected) ); }