示例#1
0
文件: TreeView.cs 项目: dlech/xwt
 /// <summary>
 /// Raises the row expanding event.
 /// </summary>
 /// <param name="a">The alpha component.</param>
 protected virtual void OnRowExpanded(TreeViewRowEventArgs a)
 {
     if (rowExpanded != null)
     {
         rowExpanded(this, a);
     }
 }
示例#2
0
文件: TreeView.cs 项目: xecrets/xwt
 /// <summary>
 /// Raises the row collapsing event.
 /// </summary>
 /// <param name="a">The alpha component.</param>
 protected virtual void OnRowCollapsing(TreeViewRowEventArgs a)
 {
     if (rowCollapsing != null)
     {
         rowCollapsing(this, a);
     }
 }
		void OnRowExpanding (object sender, TreeViewRowEventArgs e)
		{
			var navigator = store.GetNavigatorAt (e.Position);
			var node = navigator.GetValue (nodeField);
			if (!syncedNodes.Contains (node)) {
				SyncNode (navigator, true);
			}
		}
		void OnRowActivated (object sender, TreeViewRowEventArgs e)
		{
			var position = e.Position;
			var node = store.GetNavigatorAt (position).GetValue (nodeField);
			
			var issueSummary = node as IssueSummary;
			if (issueSummary != null) {
				var region = issueSummary.Region;
				IdeApp.Workbench.OpenDocument (region.FileName, region.BeginLine, region.BeginColumn);
			} else {
				if (!view.IsRowExpanded (position)) {
					view.ExpandRow (position, false);
				} else {
					view.CollapseRow (position);
				}
			}
		}
        private void OnRowClicked(object sender, TreeViewRowEventArgs e)
        {
            var node = _treeStore.GetNavigatorAt(e.Position);
            var nodeType = node.GetValue(_type);

            switch (nodeType)
            {
                case NodeType.SourceControl:
                    node.MoveToParent();
                    var project = (ProjectInfo)node.GetValue(_item);
                    SourceControlExplorerView.Open(project);
                    break;
                case NodeType.WorkItemQuery:
                    var query = (StoredQuery)node.GetValue(_item);
                    WorkItemsView.Open(query);
                default:
                    break;
            }
        }