Beispiel #1
0
        public TreeNode AddClassNode(ExtTreeView classBrowser, IProject project, IClass c)
        {
            ClassNode cNode = new ClassNode(project, c);

            cNode.AddTo(classBrowser);
            return(cNode);
        }
		public TreeNode AddProjectNode(ExtTreeView classBrowser, IProject project)
		{
			ProjectNode prjNode = new ProjectNode(project);
			prjNode.AddTo(classBrowser);
			classBrowser.Sort();
			return prjNode;
		}
        public static void DoPaste(ISolutionFolderNode folderNode)
        {
            System.Windows.IDataObject dataObject = SD.Clipboard.GetDataObject();
            if (!DoEnablePaste(folderNode.Folder, dataObject))
            {
                LoggingService.Warn("SolutionFolderNode.DoPaste: Pasting was not enabled.");
                return;
            }

            ExtTreeNode folderTreeNode = (ExtTreeNode)folderNode;

            if (dataObject.GetDataPresent(typeof(ISolutionItem).ToString()))
            {
                Guid          guid         = Guid.Parse(dataObject.GetData(typeof(ISolutionItem).ToString()).ToString());
                ISolutionItem solutionItem = folderNode.Solution.GetItemByGuid(guid);
                if (solutionItem != null)
                {
                    MoveItem(solutionItem, folderNode.Folder);
                    ExtTreeView treeView = (ExtTreeView)folderTreeNode.TreeView;
                    foreach (ExtTreeNode node in treeView.CutNodes)
                    {
                        ExtTreeNode oldParent = node.Parent as ExtTreeNode;
                        node.Remove();

                        node.InsertSorted(folderTreeNode);
                        if (oldParent != null)
                        {
                            oldParent.Refresh();
                        }
                    }
                    ProjectService.SaveSolution();
                }
            }
            folderTreeNode.Expand();
        }
Beispiel #4
0
        public static void DoPaste(ISolutionFolderNode folderNode)
        {
            if (!DoEnablePaste(folderNode))
            {
                LoggingService.Warn("SolutionFolderNode.DoPaste: Pasting was not enabled.");
                return;
            }

            ExtTreeNode folderTreeNode = (ExtTreeNode)folderNode;
            IDataObject dataObject     = ClipboardWrapper.GetDataObject();

            if (dataObject.GetDataPresent(typeof(ISolutionFolder).ToString()))
            {
                string          guid           = dataObject.GetData(typeof(ISolutionFolder).ToString()).ToString();
                ISolutionFolder solutionFolder = folderNode.Solution.GetSolutionFolder(guid);
                if (solutionFolder != null)
                {
                    folderNode.Container.AddFolder(solutionFolder);
                    ExtTreeView treeView = (ExtTreeView)folderTreeNode.TreeView;
                    foreach (ExtTreeNode node in treeView.CutNodes)
                    {
                        ExtTreeNode oldParent = node.Parent as ExtTreeNode;
                        node.Remove();

                        node.AddTo(folderTreeNode);
                        if (oldParent != null)
                        {
                            oldParent.Refresh();
                        }
                    }
                    ProjectService.SaveSolution();
                }
            }
            folderTreeNode.Expand();
        }
        public TreeNode AddProjectNode(ExtTreeView classBrowser, IProject project)
        {
            ProjectNode prjNode = new ProjectNode(project);

            prjNode.AddTo(classBrowser);
            return(prjNode);
        }
Beispiel #6
0
        /// <summary>
        /// Adds a new tree node to the tree view.
        /// </summary>
        public static ExtTreeNode AddNode(ExtTreeView treeView, XmlElement element)
        {
            ExtTreeNode node = CreateNode(element);

            node.AddTo(treeView);
            return(node);
        }
Beispiel #7
0
        private void TreeView_MouseDoubleClick(object sender, MouseEventArgs e)
        {
            ExtTreeView etv = sender as ExtTreeView;
            IViewNode   ivn = etv.SelectedNode as IViewNode;

            if (ivn != null)
            {
                ivn.ShowView();
            }
        }
Beispiel #8
0
 /// <summary>
 /// 显示工程的树
 /// </summary>
 /// <param name="project"></param>
 public void ViewProject(IProject project)
 {
     treeView = new ExtTreeView(new ExtTreeNode(null, project.Name));
     treeView.SelectedItemChanged += new RoutedPropertyChangedEventHandler <object>(treeView_SelectedItemChanged);
     foreach (ATNET.Project.ProjectItem item in project.Items)
     {
         ExtTreeNode node = BuildNode(item);
         node.AddTo(treeView.BaseNode);
     }
     treeView.BaseNode.Refresh();
     mainGrid.Children.Add(treeView);
     Grid.SetRow(treeView, 1);
     Grid.SetColumn(treeView, 0);
 }
Beispiel #9
0
        private void CreateCustomTree()
        {
            Image icon = LoadImage();

            CustomTreeNode baseNode = new CustomTreeNode(icon, "工程");
            ExtTreeView    treeView = new ExtTreeView(baseNode);

            for (int i = 0; i < 10; i++)
            {
                CustomTreeNode node = new CustomTreeNode(LoadImage(), "子项" + i);
                node.AddTo(treeView);
                CustomTreeNode node1 = new CustomTreeNode(LoadImage(), "子子项" + 2);
                node1.AddTo(node);
            }

            mainGrid.Children.Add(treeView);
        }
		/// <summary>
		/// This method builds a ClassBrowserNode Tree out of a given combine.
		/// </summary>
		public static TreeNode AddProjectNode(ExtTreeView classBrowser, IProject project)
		{
			IProjectNodeBuilder projectNodeBuilder = null;
			foreach (IProjectNodeBuilder nodeBuilder in AddInTree.BuildItems<IProjectNodeBuilder>("/SharpDevelop/Views/ClassBrowser/ProjectNodeBuilders", null, true))
			{
				if (nodeBuilder.CanBuildProjectTree(project))
				{
					projectNodeBuilder = nodeBuilder;
					break;
				}
			}
			if (projectNodeBuilder != null)
			{
				return projectNodeBuilder.AddProjectNode(classBrowser, project);
			}

			throw new NotImplementedException("can't create node builder for project type " + project.Language);
		}
		/// <summary>
		/// This method builds a ClassBrowserNode Tree out of a given combine.
		/// </summary>
		public static TreeNode AddClassNode(ExtTreeView classBrowser, IProject project, IClass c)
		{
			IClassNodeBuilder classNodeBuilder = null;
			foreach (IClassNodeBuilder nodeBuilder in AddInTree.BuildItems<IClassNodeBuilder>("/SharpDevelop/Views/ClassBrowser/ClassNodeBuilders", null, true))
			{
				if (nodeBuilder.CanBuildClassTree(c))
				{
					classNodeBuilder = nodeBuilder;
					break;
				}
			}
			if (classNodeBuilder != null)
			{
				return classNodeBuilder.AddClassNode(classBrowser, project, c);
			}

			throw new NotImplementedException("Can't create node builder for class " + c.Name);
		}
Beispiel #12
0
        /// <summary>
        /// This method builds a ClassBrowserNode Tree out of a given combine.
        /// </summary>
        public static TreeNode AddProjectNode(ExtTreeView classBrowser, IProject project)
        {
            IProjectNodeBuilder projectNodeBuilder = null;

            foreach (IProjectNodeBuilder nodeBuilder in AddInTree.BuildItems <IProjectNodeBuilder>("/SharpDevelop/Views/ClassBrowser/ProjectNodeBuilders", null, true))
            {
                if (nodeBuilder.CanBuildProjectTree(project))
                {
                    projectNodeBuilder = nodeBuilder;
                    break;
                }
            }
            if (projectNodeBuilder != null)
            {
                return(projectNodeBuilder.AddProjectNode(classBrowser, project));
            }

            throw new NotImplementedException("can't create node builder for project type " + project.Language);
        }
        /// <summary>
        /// This method is required for Windows Forms designer support.
        /// Do not change the method contents inside the source code editor. The Forms designer might
        /// not be able to load this method if it was changed manually.
        /// </summary>
        private void InitializeComponent()
        {
            this.treeView = new ExtTreeView();
            //this.SuspendLayout();
            //
            // treeView
            //
//			this.treeView.Dock = System.Windows.Forms.DockStyle.Fill;
//			this.treeView.ImageIndex = -1;
//			this.treeView.Location = new System.Drawing.Point(0, 0);
            this.treeView.Name = "treeView";
//			this.treeView.SelectedImageIndex = -1;
//			this.treeView.Size = new System.Drawing.Size(292, 266);
//			this.treeView.Width = 292;
//			this.treeView.Height = 266;
            this.treeView.TabIndex = 0;

            //
            // ProjectBrowserControl
            //
            //this.Controls.Add(this.treeView);
            StackPanel stackPanel = new StackPanel();
            Border     border     = new Border();

            border.BorderThickness = new System.Windows.Thickness(1);
            border.BorderBrush     = System.Windows.Media.Brushes.DarkGray;
            border.Background      = System.Windows.Media.Brushes.Transparent;
            border.CornerRadius    = new System.Windows.CornerRadius(2);
            border.Child           = stackPanel;
            border.Margin          = new System.Windows.Thickness(5, 0, 5, 0);
            stackPanel.Children.Add(treeView);
            this.Content = border;
            this.Name    = "ProjectBrowserControl";
            //this.Size = new System.Drawing.Size(292, 266);
//			Width = 292;
//			Height = 266;
            //this.ResumeLayout(false);
        }
 /// <summary>
 /// Writes the current view state into the memento.
 /// </summary>
 public void StoreViewState(Properties memento)
 {
     memento.Set("ProjectBrowserState", ExtTreeView.GetViewStateString(treeView));
 }
        /// <summary>
        /// Sorts the child nodes of this node. This sort is not
        /// recursive so it only sorts the immediate children.
        /// </summary>
        protected void SortChildNodes()
        {
            ExtTreeView treeView = (ExtTreeView)TreeView;

            treeView.SortNodes(Nodes, false);
        }
 /// <summary>
 /// Reads the view state from the memento.
 /// </summary>
 public void ReadViewState(Properties memento)
 {
     ExtTreeView.ApplyViewStateString(memento.Get("ProjectBrowserState", ""), treeView);
 }
 /// <summary>
 /// Reads the view state from the memento.
 /// </summary>
 public void ReadViewState(Properties memento)
 {
     projectBrowserControl.ReadViewState(memento);
     ExtTreeView.ApplyViewStateString(memento.Get("ProjectBrowserState", ""), projectBrowserControl.TreeView);
 }
 /// <summary>
 /// Writes the current view state into the memento.
 /// </summary>
 public void StoreViewState(Properties memento)
 {
     projectBrowserControl.StoreViewState(memento);
     memento.Set("ProjectBrowserState", ExtTreeView.GetViewStateString(projectBrowserControl.TreeView));
 }
		public TreeNode AddClassNode(ExtTreeView classBrowser, IProject project, IClass c)
		{
			ClassNode cNode = new ClassNode(project, c);
			cNode.AddTo(classBrowser);
			return cNode;
		}