Example #1
0
        public void AddItem(string fileName)
        {
            string             folderName = ResourceService.GetString("ICSharpCode.SharpDevelop.Commands.ProjectBrowser.SolutionItemsNodeText");
            SolutionFolderNode node       = null;

            foreach (TreeNode n in Nodes)
            {
                node = n as SolutionFolderNode;
                if (node != null && node.Folder.Name == folderName)
                {
                    break;
                }
                node = null;
            }
            if (node == null)
            {
                SolutionFolder newSolutionFolder = solution.CreateFolder(folderName);
                solution.AddFolder(newSolutionFolder);
                solution.Save();

                node = new SolutionFolderNode(solution, newSolutionFolder);
                node.AddTo(this);
            }
            node.AddItem(fileName);
        }
Example #2
0
        protected override void Initialize()
        {
            Nodes.Clear();

            foreach (object treeObject in folder.Folders)
            {
                if (treeObject is IProject)
                {
                    NodeBuilders.AddProjectNode(this, (IProject)treeObject);
                }
                else if (treeObject is SolutionFolder)
                {
                    SolutionFolderNode folderNode = new SolutionFolderNode(solution, (SolutionFolder)treeObject);
                    folderNode.AddTo(this);
                }
                else
                {
                    MessageService.ShowWarning("SolutionFolderNode.Initialize(): unknown tree object : " + treeObject);
                }
            }

            // add solution items (=files) from project sections.
            foreach (SolutionItem item in folder.SolutionItems.Items)
            {
                new SolutionItemNode(Solution, item).AddTo(this);
            }
            base.Initialize();
        }
Example #3
0
        public override void DoDragDrop(IDataObject dataObject, DragDropEffects effect)
        {
            AbstractProjectBrowserTreeNode parentNode = null;

            if (dataObject.GetDataPresent(typeof(SolutionFolderNode)))
            {
                SolutionFolderNode folderNode = (SolutionFolderNode)dataObject.GetData(typeof(SolutionFolderNode));
                parentNode = folderNode.Parent as AbstractProjectBrowserTreeNode;

                folderNode.Remove();
                folderNode.AddTo(this);

                this.solution.AddFolder(folderNode.Folder);
            }
            if (dataObject.GetDataPresent(typeof(ProjectNode)))
            {
                ProjectNode projectNode = (ProjectNode)dataObject.GetData(typeof(ProjectNode));
                parentNode = projectNode.Parent as AbstractProjectBrowserTreeNode;

                projectNode.Remove();
                projectNode.AddTo(this);
                projectNode.EnsureVisible();
                this.solution.AddFolder(projectNode.Project);
            }

            if (parentNode != null)
            {
                parentNode.Refresh();
            }


            solution.Save();
        }
Example #4
0
        public override void DoDragDrop(IDataObject dataObject, DragDropEffects effect)
        {
            if (!isInitialized)
            {
                Initialize();
                isInitialized = true;
            }

            if (dataObject.GetDataPresent(typeof(SolutionFolderNode)))
            {
                SolutionFolderNode             folderNode = (SolutionFolderNode)dataObject.GetData(typeof(SolutionFolderNode));
                AbstractProjectBrowserTreeNode parentNode = folderNode.Parent as AbstractProjectBrowserTreeNode;

                folderNode.Remove();
                folderNode.AddTo(this);
                folderNode.EnsureVisible();
                this.folder.AddFolder(folderNode.Folder);
                if (parentNode != null)
                {
                    parentNode.Refresh();
                }
            }

            if (dataObject.GetDataPresent(typeof(SolutionItemNode)))
            {
                SolutionItemNode solutionItemNode = (SolutionItemNode)dataObject.GetData(typeof(SolutionItemNode));

                ISolutionFolderNode folderNode = (ISolutionFolderNode)solutionItemNode.Parent;
                folderNode.Container.SolutionItems.Items.Remove(solutionItemNode.SolutionItem);
                Container.SolutionItems.Items.Add(solutionItemNode.SolutionItem);

                solutionItemNode.Remove();
                solutionItemNode.AddTo(this);
                solutionItemNode.EnsureVisible();
                if (solutionItemNode.Parent != null)
                {
                    ((ExtTreeNode)solutionItemNode.Parent).Refresh();
                }
            }

            if (dataObject.GetDataPresent(typeof(ProjectNode)))
            {
                ProjectNode projectNode = (ProjectNode)dataObject.GetData(typeof(ProjectNode));

                projectNode.Remove();
                projectNode.AddTo(this);
                projectNode.EnsureVisible();
                this.folder.AddFolder(projectNode.Project);

                if (projectNode.Parent != null)
                {
                    ((ExtTreeNode)projectNode.Parent).Refresh();
                }
            }

            solution.Save();
        }
        public void ViewSolution(Solution solution)
        {
            AbstractProjectBrowserTreeNode solutionNode = new SolutionNode(solution);

            treeView.Clear();
            solutionNode.AddTo(treeView);

            foreach (object treeObject in solution.Folders)
            {
                if (treeObject is IProject)
                {
                    NodeBuilders.AddProjectNode(solutionNode, (IProject)treeObject);
                }
                else
                {
                    SolutionFolderNode folderNode = new SolutionFolderNode(solution, (SolutionFolder)treeObject);
                    folderNode.AddTo(solutionNode);
                }
            }

            solutionNode.Expand();
        }
		public void ViewSolution(Solution solution)
		{
			AbstractProjectBrowserTreeNode solutionNode = new SolutionNode(solution);
			treeView.Clear();
			solutionNode.AddTo(treeView);
			
			foreach (object treeObject in solution.Folders) {
				if (treeObject is IProject) {
					NodeBuilders.AddProjectNode(solutionNode, (IProject)treeObject);
				} else {
					SolutionFolderNode folderNode = new SolutionFolderNode(solution, (SolutionFolder)treeObject);
					folderNode.AddTo(solutionNode);
				}
			}
			
			solutionNode.Expand();
		}
Example #7
0
		public void AddItem(string fileName)
		{
			string folderName = ResourceService.GetString("ICSharpCode.SharpDevelop.Commands.ProjectBrowser.SolutionItemsNodeText");
			SolutionFolderNode node = null;
			foreach (TreeNode n in Nodes) {
				node = n as SolutionFolderNode;
				if (node != null && node.Folder.Name == folderName) {
					break;
				}
				node = null;
			}
			if (node == null) {
				SolutionFolder newSolutionFolder = solution.CreateFolder(folderName);
				solution.AddFolder(newSolutionFolder);
				solution.Save();
				
				node = new SolutionFolderNode(solution, newSolutionFolder);
				node.AddTo(this);
			}
			node.AddItem(fileName);
		}
		protected override void Initialize()
		{
			Nodes.Clear();
			
			foreach (object treeObject in folder.Folders) {
				if (treeObject is IProject) {
					NodeBuilders.AddProjectNode(this, (IProject)treeObject);
				} else if (treeObject is SolutionFolder) {
					SolutionFolderNode folderNode = new SolutionFolderNode(solution, (SolutionFolder)treeObject);
					folderNode.AddTo(this);
				} else {
					MessageService.ShowWarning("SolutionFolderNode.Initialize(): unknown tree object : " + treeObject);
				}
			}
			
			// add solution items (=files) from project sections.
			foreach (SolutionItem item in folder.SolutionItems.Items) {
				new SolutionItemNode(Solution, item).AddTo(this);
			}
			base.Initialize();
		}