private static void newFile_Click(object sender, EventArgs e) { ToolStripItem menuItem = (ToolStripItem)sender; var node = (FolderNode)menuItem.OwnerItem.Owner.Tag; var dir = node.TemplateFolder.AddNewTemplate(); var newNode = new FileNode(dir); node.Nodes.Add(newNode); node.Expand(); newNode.EditLabel(); }
void LoadFiles(TreeNode node, DirectoryInfo dir, IEnumerable<TemplateFile> openedFiles) { foreach (var d in dir.GetDirectories()) { if ((d.Attributes & FileAttributes.Hidden) == FileAttributes.Hidden) continue; FolderNode folder = new FolderNode(new TemplateFolder(d)); node.Nodes.Add(folder); LoadFiles(folder, d, openedFiles); } foreach (var f in dir.GetFiles("*" + TemplateFile.Extension)) { var file = openedFiles.FirstOrDefault(p => p.FullName == f.FullName); if(file == null) file = new TemplateFile(f); FileNode fileNode = new FileNode(file); node.Nodes.Add(fileNode); } }