private int addFolder(TreeTraverser.FolderEntry folder) { foreach (BackendBase backend in this.backends) { this.reportBackupAction(new BackupActionItem(null, folder.RelPath, BackupActionEntity.Folder, BackupActionOperation.Add, backend.Name)); backend.CreateFolder(folder.RelPath, folder.Attributes); this.Logger.Info("{0}: Added folder: {1}", backend.Name, folder.RelPath); } int insertedId = this.fileDatabase.AddFolder(folder.RelPath); return(insertedId); }
private void checkFolder(TreeTraverser.FolderEntry folder) { foreach (BackendBase backend in this.backends) { if (!backend.FolderExists(folder.RelPath)) { this.reportBackupAction(new BackupActionItem(null, folder.RelPath, BackupActionEntity.Folder, BackupActionOperation.Add, backend.Name)); backend.CreateFolder(folder.RelPath, folder.Attributes); this.Logger.Info("{0}: Folder missing from backend, so re-creating: {1}", backend.Name, folder.RelPath); } } }
public void Populate(string startDir, string ignoreRules) { // Get rid of anything there before this.tree.Nodes.Clear(); // aaand start again! TreeTraverser treeTraverser = new TreeTraverser(startDir, ignoreRules); TreeNodeTri node; TreeTraverser.FolderEntry root = treeTraverser.ListFolders(0).First(); foreach (TreeTraverser.FolderEntry folder in root.GetFolders()) { node = new TreeNodeTri(folder, this.tree.ImageList, this.IgnoredFiles, this.IgnoredFolders, this.tree); node.Populate(); this.tree.Nodes.Add(node); } foreach (TreeTraverser.FileEntry file in root.GetFiles()) { this.tree.Nodes.Add(new TreeNodeTri(file, this.tree.ImageList, this.IgnoredFiles, this.IgnoredFolders, this.tree)); } }
public TreeNodeTri(TreeTraverser.FolderEntry folderEntry, ImageList imageList, HashSet <string> ignoredFiles, HashSet <string> ignoredFolders, TreeView parentTree, CheckedState defaultState = CheckedState.Checked) : base(folderEntry.Name) { this.imageList = imageList; if (ignoredFolders.Contains(folderEntry.FullPath)) { this.State = CheckedState.Unchecked; // No children yet to update } else { this.State = defaultState; } this.StateImageIndex = (int)this.State; this.ignoredFiles = ignoredFiles; this.ignoredFolders = ignoredFolders; this.parentTree = parentTree; this.folderEntry = folderEntry; this.ImageIndex = 0; this.SelectedImageIndex = 0; }
public TreeNodeTri(TreeTraverser.FolderEntry folderEntry, ImageList imageList, HashSet<string> ignoredFiles, HashSet<string> ignoredFolders, TreeView parentTree, CheckedState defaultState=CheckedState.Checked) : base(folderEntry.Name) { this.imageList = imageList; if (ignoredFolders.Contains(folderEntry.FullPath)) { this.State = CheckedState.Unchecked; // No children yet to update } else this.State = defaultState; this.StateImageIndex = (int)this.State; this.ignoredFiles = ignoredFiles; this.ignoredFolders = ignoredFolders; this.parentTree = parentTree; this.folderEntry = folderEntry; this.ImageIndex = 0; this.SelectedImageIndex = 0; }