当前位置: 首页>>代码示例>>C#>>正文


C# ITreeNavigator.MoveToParent方法代码示例

本文整理汇总了C#中ITreeNavigator.MoveToParent方法的典型用法代码示例。如果您正苦于以下问题:C# ITreeNavigator.MoveToParent方法的具体用法?C# ITreeNavigator.MoveToParent怎么用?C# ITreeNavigator.MoveToParent使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在ITreeNavigator的用法示例。


在下文中一共展示了ITreeNavigator.MoveToParent方法的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: Fill

		public void Fill (Extension ext, ITreeNavigator nav)
		{
			labelName.Markup = "<small>Extension</small>\n<big><b>" + GLib.Markup.EscapeText (Util.GetDisplayName (ext)) + "</b></big>";
			object parent = ext.GetExtendedObject ();
			
			if (parent is ExtensionPoint) {
				ExtensionPoint ep = (ExtensionPoint) parent;
				string txt = "<small>Extension Point</small>\n<b>" + GLib.Markup.EscapeText (Util.GetDisplayName (ep)) + "</b>";
				if (!string.IsNullOrEmpty (ep.Description))
					txt += "\n" + GLib.Markup.EscapeText (ep.Description);
				Gtk.Label lab = new Gtk.Label ();
				lab.Xalign = lab.Yalign = 0;
				lab.Markup = txt;
				lab.WidthRequest = 400;
				lab.Wrap = true;
				Gtk.Image img = new Gtk.Image (ImageService.GetPixbuf ("md-extension-point", Gtk.IconSize.Menu));
				img.Yalign = 0;
				Gtk.HBox box = new Gtk.HBox (false, 6);
				box.PackStart (img, false, false, 0);
				box.PackStart (lab, true, true, 0);
				buttonExt.Add (box);
				buttonExt.ShowAll ();
				buttonExt.Clicked += delegate {
					if (nav.MoveToObject (ext)) {
						nav.MoveToParent (typeof(Solution));
						nav.Expanded = true;
						if (nav.MoveToObject (ep.ParentAddinDescription)) {
							nav.Expanded = true;
							if (nav.MoveToObject (ep))
								nav.Selected = true;
						}
					}
				};
			}
		}
开发者ID:Kalnor,项目名称:monodevelop,代码行数:35,代码来源:ExtensionView.cs

示例2: RestoreState

        internal static void RestoreState(TreeViewPad pad, ITreeNavigator nav, NodeState es)
        {
            if (es == null) return;

            Gtk.TreeIter it = nav.CurrentPosition._iter;
            if (es.Options != null) {
                pad.SetIterOptions (it, es.Options);
            }
            pad.ResetState (it);
            nav.Expanded = es.Expanded;

            if (es.ChildrenState != null) {
                foreach (NodeState ces in es.ChildrenState) {
                    if (nav.MoveToChild (ces.NodeName, null)) {
                        RestoreState (pad, nav, ces);
                        nav.MoveToParent ();
                    }
                }
            }

            if (es.Selected)
                nav.Selected = true;
        }
开发者ID:slluis,项目名称:monodevelop-prehistoric,代码行数:23,代码来源:NodeState.cs

示例3: SearchMember

		ITreeNavigator SearchMember (ITreeNavigator nav, string helpUrl)
		{
			if (nav == null)
				return null;
			bool searchType = helpUrl.StartsWith ("T:", StringComparison.Ordinal);
			do {
				if (IsMatch (nav, helpUrl, searchType)) {
					inspectEditor.ClearSelection ();
					nav.ExpandToNode ();
					nav.Selected = nav.Expanded = true;
					nav.ScrollToNode ();
					return nav;
				}
				if (!SkipChildren (nav, helpUrl, searchType) && nav.HasChildren ()) {
					nav.MoveToFirstChild ();
					ITreeNavigator result = SearchMember (nav, helpUrl);
					if (result != null)
						return result;
					
					if (!nav.MoveToParent ()) {
						return null;
					}
					try {
						if (nav.DataItem is TypeDefinition && PublicApiOnly) {
							nav.MoveToFirstChild ();
							result = SearchMember (nav, helpUrl);
							if (result != null)
								return result;
							nav.MoveToParent ();
						}
					} catch (Exception) {
					}
				}
			} while (nav.MoveNext());
			return null;
		}
开发者ID:alexrp,项目名称:monodevelop,代码行数:36,代码来源:AssemblyBrowserWidget.cs

示例4: Dispose

		void Dispose (ITreeNavigator nav)
		{
			if (nav == null)
				return;
			IDisposable d = nav.DataItem as IDisposable;
			if (d != null) 
				d.Dispose ();
			if (nav.HasChildren ()) {
				nav.MoveToFirstChild ();
				do {
					Dispose (nav);
				} while (nav.MoveNext ());
				nav.MoveToParent ();
			}
		}
开发者ID:alexrp,项目名称:monodevelop,代码行数:15,代码来源:AssemblyBrowserWidget.cs

示例5: SaveStateRec

        static NodeState SaveStateRec(TreeViewPad pad, ITreeNavigator nav)
        {
            Gtk.TreeIter it = nav.CurrentPosition._iter;

            ArrayList childrenState = null;

            if (nav.Filled && nav.MoveToFirstChild ()) {
                do {
                    NodeState cs = SaveStateRec (pad, nav);
                    if (cs != null) {
                        cs.NodeName = nav.NodeName;
                        if (childrenState == null) childrenState = new ArrayList ();
                        childrenState.Add (cs);
                    }
                } while (nav.MoveNext ());
                nav.MoveToParent ();
            }

            TreeViewPad.TreeOptions ops = pad.GetIterOptions (it);

            if (ops != null || nav.Expanded || childrenState != null || nav.Selected) {
                NodeState es = new NodeState ();
                es.Expanded = nav.Expanded;
                es.Selected = nav.Selected;
                es.Options = ops;
                es.ChildrenState = childrenState;
                return es;
            } else
                return null;
        }
开发者ID:slluis,项目名称:monodevelop-prehistoric,代码行数:30,代码来源:NodeState.cs

示例6: SearchMember

		ITreeNavigator SearchMember (ITreeNavigator nav, string helpUrl, bool expandNode = true)
		{
			if (nav == null)
				return null;
			bool searchType = helpUrl.StartsWith ("T:", StringComparison.Ordinal);
			do {
				if (IsMatch (nav, helpUrl, searchType)) {
					inspectEditor.ClearSelection ();
					nav.ExpandToNode ();
					if (expandNode) {
						nav.Selected = nav.Expanded = true;
						nav.ScrollToNode ();
					} else {
						nav.Selected = true;
						nav.ScrollToNode ();
					}
					return nav;
				}
				if (!SkipChildren (nav, helpUrl, searchType) && nav.HasChildren ()) {
					nav.MoveToFirstChild ();
					ITreeNavigator result = SearchMember (nav, helpUrl, expandNode);
					if (result != null)
						return result;
					
					if (!nav.MoveToParent ()) {
						return null;
					}
				}
			} while (nav.MoveNext());
			return null;
		}
开发者ID:kdubau,项目名称:monodevelop,代码行数:31,代码来源:AssemblyBrowserWidget.cs

示例7: GetFiles

 private void GetFiles(ITreeNavigator nav, List<SystemFile> filesToAdd)
 {
     nav.MoveToFirstChild ();
     do {
         if (nav.HasChildren ()) {
             ProjectFolder pf = nav.DataItem as ProjectFolder;
             if (pf != null && (File.GetAttributes (pf.Path) & FileAttributes.Hidden) == 0) {
                 ITreeNavigator newNav = nav.Clone ();
                 GetFiles (newNav, filesToAdd);
             }
         } else if (nav.DataItem is SystemFile) {
             filesToAdd.Add ((SystemFile) nav.DataItem);
         }
     } while (nav.MoveNext ());
     nav.MoveToParent ();
 }
开发者ID:brantwedel,项目名称:monodevelop,代码行数:16,代码来源:ProjectFolderNodeBuilder.cs

示例8: SearchMember

		ITreeNavigator SearchMember (ITreeNavigator nav, string helpUrl)
		{
			do {
				if (IsMatch (nav, helpUrl))
					return nav;
				if (!SkipChildren (nav, helpUrl) && nav.HasChildren ()) {
					DispatchService.RunPendingEvents ();
					nav.MoveToFirstChild ();
					ITreeNavigator result = SearchMember (nav, helpUrl);
					if (result != null)
						return result;
					
					if (!nav.MoveToParent ())
						return null;
					try {
						if (nav.DataItem is DomCecilType && nav.Options["PublicApiOnly"]) {
							nav.Options["PublicApiOnly"] = false;
							nav.MoveToFirstChild ();
							result = SearchMember (nav, helpUrl);
							if (result != null)
								return result;
							nav.MoveToParent ();
						}
					} catch (Exception) {
						return null;
					}
				}
			} while (nav.MoveNext());
			return null;
		}
开发者ID:Tak,项目名称:monodevelop-novell,代码行数:30,代码来源:AssemblyBrowserWidget.cs

示例9: RestoreState

		internal static void RestoreState (ExtensibleTreeView pad, ITreeNavigator nav, NodeState es)
		{
			if (es == null) 
				return;
			
			if (es.Options != null) 
				pad.SetNodeOptions (nav, es.Options);
			
			pad.ResetState (nav);
			nav.Expanded = es.Expanded;
			
			if (es.ChildrenState != null) {
				foreach (NodeState ces in es.ChildrenState) {
					if (nav.MoveToChild (ces.NodeName, null)) {
						RestoreState (pad, nav, ces);
						nav.MoveToParent ();
					}
				}
			}
			
			if (es.Selected)
				nav.Selected = true;
		}
开发者ID:transformersprimeabcxyz,项目名称:monodevelop-1,代码行数:23,代码来源:NodeState.cs

示例10: SaveStateRec

		static NodeState SaveStateRec (ExtensibleTreeView pad, ITreeNavigator nav)
		{
			List<NodeState> childrenState = null;

			if (nav.Filled && nav.MoveToFirstChild ()) {
				do {
					NodeState cs = SaveStateRec (pad, nav);
					if (cs != null) {
						cs.NodeName = nav.NodeName;
						if (childrenState == null) 
							childrenState = new List<NodeState> ();
						childrenState.Add (cs);
					}
				} while (nav.MoveNext ());
				nav.MoveToParent ();
			}
			
			ExtensibleTreeView.TreeOptions ops = pad.GetNodeOptions (nav);
			
			if (ops != null || nav.Expanded || childrenState != null || nav.Selected) {
				NodeState es = new NodeState ();
				es.Expanded = nav.Expanded;
				es.Selected = nav.Selected;
				es.Options = ops;
				es.ChildrenState = childrenState;
				return es;
			} else
				return null;
		}
开发者ID:transformersprimeabcxyz,项目名称:monodevelop-1,代码行数:29,代码来源:NodeState.cs

示例11: SearchMember

		ITreeNavigator SearchMember (ITreeNavigator nav, string helpUrl)
		{
			bool searchType = helpUrl.StartsWith ("T:");
			do {
				if (IsMatch (nav, helpUrl, searchType)) {
					nav.ExpandToNode ();
					nav.Selected = nav.Expanded = true;
					return nav;
				}
				if (!SkipChildren (nav, helpUrl, searchType) && nav.HasChildren ()) {
					nav.MoveToFirstChild ();
					ITreeNavigator result = SearchMember (nav, helpUrl);
					if (result != null)
						return result;
					
					if (!nav.MoveToParent ()) {
						return null;
					}
					try {
						if (nav.DataItem is TypeDefinition && nav.Options ["PublicApiOnly"]) {
							nav.Options ["PublicApiOnly"] = PublicApiOnly;
							nav.MoveToFirstChild ();
							result = SearchMember (nav, helpUrl);
							if (result != null)
								return result;
							nav.MoveToParent ();
						}
					} catch (Exception) {
					}
				}
			} while (nav.MoveNext());
			return null;
		}
开发者ID:txdv,项目名称:monodevelop,代码行数:33,代码来源:AssemblyBrowserWidget.cs


注:本文中的ITreeNavigator.MoveToParent方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。