示例#1
0
        private void AddFolder(string path)
        {
            string[] parts = path.Split('\\');

            JadeCore.Project.IFolder parent = _project;
            foreach(string name in parts)
            {
                JadeCore.Project.IFolder folder = parent.FindFolder(name);
                if(folder == null)
                {
                    folder = new JadeCore.Project.Folder(_project, name);
                    parent.AddFolder(folder);
                }                
                parent = folder;
            }
        }
示例#2
0
        private static JadeCore.Project.IFolder MakeFolder(JadeCore.Project.IProject project, string projectDir, FolderType xml, IFileService fileService)
        {
            JadeCore.Project.Folder folder = new JadeCore.Project.Folder(project, xml.Name);

            foreach (FileType f in xml.Files)
            {
                project.AddItem(folder, MakeFile(projectDir, f, fileService));
                //folder.AddItem(MakeFile(projectDir, f, fileService));
            }

            foreach (FolderType f in xml.Folders)
            {
                folder.AddFolder(MakeFolder(project, projectDir, f, fileService));
            }

            return folder;
        }
示例#3
0
        public void OnAddFolder()
        {
            TreeNodeBase sel = FindSelected();
            if (sel == null)
                return;

            string name;
            if (JadeCore.GuiUtils.PromptUserInput("Enter new Folder name", out name) == false || name.Length == 0)
            {
                return;
            }

            if (sel.ContainsChild(name))
            {
                JadeCore.GuiUtils.DisplayErrorAlert("Folder name is not unique.");
                return;
            }

            if (sel is WorkspaceFolder)
            {
                WorkspaceFolder parentVm = sel as WorkspaceFolder;
                JadeCore.Workspace.IFolder newFolderData = new JadeCore.Workspace.Folder(name, _data);
                parentVm.AddNewChildFolder(newFolderData);
                
            }
            else if (sel is ProjectFolder)
            {
                ProjectFolder paremtVm = sel as ProjectFolder;
                JadeCore.Project.IFolder parent = paremtVm.Data;
                JadeCore.Project.IFolder newFolderData = new JadeCore.Project.Folder(parent.OwningProject, name);
                paremtVm.AddNewChildFolder(newFolderData);
            }
            else
            {
                return;
            }
            sel.Expanded = true;            
            WorkspaceController.CurrentWorkspaceModified = true;
        }