public async Task InitializeAsync(ActiveFileBackup.Configuration.Config config) { var selectedFolders = from folder in config.FolderList select new SelectedFolder(new DirectoryInfo(folder.Path), folder.Recursive); var selectedFoldersObservableCollection = new ObservableCollection <SelectedFolder>(selectedFolders); selectedFoldersObservableCollection.CollectionChanged += SelectedFolders_CollectionChanged; var drives = await FileProvider.GetDrivesAsync(); var directories = from drive in drives select new Folder(drive, selectedFoldersObservableCollection); Directories = directories; OnPropertyChanged(() => Directories); var oldSelectedFolders = SelectedFolders; SelectedFolders = new ListCollectionView(selectedFoldersObservableCollection); SelectedFolders.SortDescriptions.Add(new SortDescription("Directory.FullName", ListSortDirection.Ascending)); SelectedFolders.MoveCurrentToPosition(-1); OnPropertyChanged(() => SelectedFolders); if (oldSelectedFolders != null) { ((ObservableCollection <SelectedFolder>)oldSelectedFolders.SourceCollection).CollectionChanged -= SelectedFolders_CollectionChanged; } }
public async Task InitializeAsync(ActiveFileBackup.Configuration.Config config) { Path = config.Backup.Path; Username = config.Backup.Username; Password = config.Backup.Password; await Task.Yield(); }
public void UpdateConfig(ActiveFileBackup.Configuration.Config config) { config.FolderList.Clear(); var selectedFolders = SelectedFolders.OfType <SelectedFolder>().OrderBy(x => x.Directory.FullName).ToList(); foreach (var folder in selectedFolders) { config.FolderList.Add(new ActiveFileBackup.Configuration.Folder(folder.Directory.FullName, folder.Recursive)); } }
public void UpdateConfig(ActiveFileBackup.Configuration.Config config) { config.Backup.Path = Path; config.Backup.Username = Username; config.Backup.Password = Password; }