public MainViewModel() { var configuration = Configuration.GetConfiguration("defaultconfig.json"); Config.CollectionTarget = configuration.CollectionConnectionString; Config.DeletedTarget = configuration.DeletedConnectionString; collectionHistory = new CollectionHistory(); deletedHisotry = new DeleteHisotry(); deletedHisotry.DeletedHistory = new List <string>(); MyFiles.Clear(); history = new DirectoryHistory(FilePath); foreach (var logicalDrive in Directory.GetLogicalDrives()) { DirectoriesAndFiles.Add(new DirectoryViewModel(logicalDrive)); } history.HistoryChanged += History_HistoryChanged; CompressCollectionCommand = new DelegateCommand(CompressCollection); OpenCommand = new DelegateCommand(Open); CompressCommand = new DelegateCommand(Compress); DecompressCommand = new DelegateCommand(Decompress); DeleteFileCommand = new DelegateCommand(DeleteFile); AddToCollectionCommand = new DelegateCommand(AddToCollection); MoveBackCommand = new DelegateCommand(MoveBack, CanMoveBack); MoveForwardCommand = new DelegateCommand(MoveForward, CanMoveForward); MoveForwardCommand = new DelegateCommand(MoveForward, CanMoveForward); }
private void GetFileStructure() { string myDir = ""; System.Windows.Forms.FolderBrowserDialog fbd = new System.Windows.Forms.FolderBrowserDialog(); fbd.RootFolder = Environment.SpecialFolder.Desktop; fbd.ShowNewFolderButton = false; fbd.Description = "Browse to the root directory where the files are stored."; if (fbd.ShowDialog() == System.Windows.Forms.DialogResult.OK) { myDir = fbd.SelectedPath; try { TextRootDir = fbd.SelectedPath; MyFiles.Clear(); foreach (var file in Directory.GetFiles(myDir, TextFilter, SearchOption.AllDirectories)) { MyFiles.Add(file); } } catch (Exception excep) { MessageBox.Show(excep.Message); return; } } }
private void CompressCollection(object collection) { if (collection == null) { throw new ArgumentNullException(nameof(collection)); } foreach (var file in MyFiles) { Compress(file); } MyFiles.Clear(); }
private void ExploreFiles(TreeViewItem item) { var directoryInfo = (DirectoryInfo)null; if (item.Tag is DirectoryInfo) { directoryInfo = (DirectoryInfo)item.Tag; } if (ReferenceEquals(directoryInfo, null)) { return; } MyFiles.Clear(); FolderName = directoryInfo.Name; AddDataToCollection(directoryInfo.GetFiles(), item, ""); AddDataToCollection(directoryInfo.GetDirectories(), item, ""); }