private TreeNode CreatePlayBookNode(string strDirectory, ListBox lstBox) { TreeNode node = CreateDirectoryNode(strDirectory); DirectoryInfo directoryInfo = new DirectoryInfo(strDirectory); DirectoryInfo[] subdirectoryInfos = directoryInfo.GetDirectories(); FileInfo[] fileInfos = directoryInfo.GetFiles(); ArrayList arrList = new ArrayList(); foreach (FileInfo fileinfo in fileInfos) { string fileName = fileinfo.FullName; PlayBookFileDescription playbookFileDescription = new PlayBookFileDescription("", fileName); if (lstBox.Items.Contains(playbookFileDescription)) { continue; } TreeNode treeNode = this.CreateFileNode(fileinfo); string replaceDirectoryName = fileName.Replace(".Form", "@"); if (System.IO.Directory.Exists(replaceDirectoryName)) { ArrayList subNodes = GetSubNodes(replaceDirectoryName, lstBox); foreach (TreeNode subNode in subNodes) { treeNode.Nodes.Add(subNode); } arrList.Add(replaceDirectoryName); } node.Nodes.Add(treeNode); } foreach (DirectoryInfo subDirectoryInfo in subdirectoryInfos) { if (subDirectoryInfo.Name.EndsWith("@")) { continue; } TreeNode treeNode = this.CreatePlayBookNode(subDirectoryInfo.FullName, lstBox); if (treeNode.Nodes.Count == 0) { continue; } node.Nodes.Add(treeNode); } return(node); }
private TreeNode CreateFileNode(FileInfo fileinfo) { TreeNode node = new TreeNode(); node.Text = System.IO.Path.GetFileNameWithoutExtension(fileinfo.FullName); string installPath = this.C_TextFolder.Text; if (installPath != string.Empty && !installPath.EndsWith(@"\")) { installPath = installPath + @"\"; } string name = fileinfo.FullName.Replace(installPath, ""); int lastIndex = name.LastIndexOf("."); if (lastIndex >= 0) { name = name.Substring(0, lastIndex); } PlayBookFileDescription playBookFileDescription = new PlayBookFileDescription(name, fileinfo.FullName); node.ImageIndex = 1; node.SelectedImageIndex = 1; node.Tag = playBookFileDescription; return(node); }
public override bool Equals(object obj) { if (obj is PlayBookFileDescription) { PlayBookFileDescription playbookdescrpition = obj as PlayBookFileDescription; if (this._FileName == playbookdescrpition._FileName) { return(true); } } return(false); }
private void AddFormationsOrPlays(TreeNode node, ListBox lstBox) { if (node.Tag is DirectoryInfo) { foreach (TreeNode treeNode in node.Nodes) { AddFormationsOrPlays(treeNode, lstBox); } } else if (node.Tag is PlayBookFileDescription) { PlayBookFileDescription playbookFileDescription = node.Tag as PlayBookFileDescription; playbookFileDescription = new PlayBookFileDescription(node.FullPath, playbookFileDescription.FileName); lstBox.Items.Add(playbookFileDescription); foreach (TreeNode treeNode in node.Nodes) { AddFormationsOrPlays(treeNode, lstBox); } } }