Example #1
0
        public void ScanDirectory(string folder, string fileMatch = "", TreeNode lastnode = null)
        {
            Regex re = new Regex(fileMatch);

            DirectoryInfo dir = new DirectoryInfo(folder);
            if ((lastnode == null))
            {
                lastnode = new TreeNode(dir.Name);
                filetree.Nodes.Add(lastnode);
                filetree.TopNode = lastnode;
            }
            else
            {
                // Ignore the Classes folders
                lastnode = lastnode.Nodes.Add(dir.Name);
            }

            if (lastnode.Text == "Src")
            {
                lastnode.Name = projectName;
                lastnode.Text = projectName;
                lastnode.ImageIndex = 0;
            }
            else
            {
                lastnode.ImageIndex = 1;
            }

            lastnode.SelectedImageIndex = lastnode.ImageIndex;

            //("*.*", SearchOption.AllDirectories)
            foreach (FileInfo fileinfo in dir.GetFiles())
            {
                // Check if filename matches regex
                if (re.IsMatch(fileinfo.Name))
                {
                    // Add file to list
                    ProjectFile actor_file = new ProjectFile(fileinfo.FullName);

                    lastnode.Nodes.Add(actor_file.FileName, actor_file.FileName, 2, 2);
                }
            }

            foreach (DirectoryInfo dir_loopVariable in dir.GetDirectories())
            {
                dir = dir_loopVariable;
                ScanDirectory(dir.FullName, fileMatch, lastnode);
                lastnode = lastnode.Parent;
            }
        }
Example #2
0
        public EditorTabPage AddTab(string name, ProjectFile projectFile)
        {
            TabPage tab = null;
            if (projectfiles.ContainsKey(name))
            {
                // Select the page
                tab = Tabs.TabPages[name];
            }
            else
            {
                var editor = new ScintillaEditor();
                var editorTab =  new EditorTabPage(name, projectFile, editor);
                Tabs.TabPages.Add(editorTab);
                tab = Tabs.TabPages[Tabs.TabPages.Count - 1];
                tab.Name = name;
                tab.Text = name;
                tab.Controls.Add(editor);
                tab.Controls[tab.Controls.Count - 1].Text = projectFile.FileContents;
                projectfiles.Add(name, projectFile);
            }

            selectedtabname = name;
            selectedtabprojectfile = projectFile;

            Tabs.SelectedTab = tab;

            return (EditorTabPage)tab;
        }
Example #3
0
 public void FileView_NodeMouseDoubleClick(System.Object sender, TreeNodeMouseClickEventArgs e)
 {
     var profilename = projectManager.CurrentProject.DevelopmentFolder +
         mainForm.FileView.SelectedNode.FullPath.Replace(projectManager.CurrentProject.ProjectName + "\\", "");
     ProjectFile projectfile = new ProjectFile(profilename);
     FileInfo fileinfo = new FileInfo(projectfile.FullName);
     if (fileinfo.Exists && !(fileinfo.Attributes == FileAttributes.Directory))
     {
         editorTabManager.AddTab(projectfile.FileName, projectfile);
     }
 }
Example #4
0
        public void ScanDirectory(string folder, string fileMatch = "", bool recursive = true)
        {
            Regex re = new Regex(fileMatch);

            DirectoryInfo dir = new DirectoryInfo(folder);
            if (!dir.Exists)
            {
                dir.Create();
            }

            projectfolders.Add(new ProjectFolder(dir));

            foreach (var fileinfo in dir.GetFiles())
            {
                // Check if filename matches regex
                if (re.IsMatch(fileinfo.Name))
                {
                    // Add file to list
                    ProjectFile actorFile = new ProjectFile(fileinfo.FullName);
                    projectfiles.Add(actorFile);
                }
            }

            if (recursive)
            {
                foreach (var subdir in dir.GetDirectories())
                {
                    ScanDirectory(subdir.FullName, fileMatch, recursive);
                }
            }
        }