예제 #1
0
        private TreeNode buildItemNode(Objects.Change item)
        {
            TreeNode itemNode = new TreeNode(item.Category + (item.IsType ? "Type":"") + ": " + item.ElementId + ": " + item.ChangeType);

            itemNode.ToolTipText = item.ChangeDescription;
            itemNode.Tag         = item;

            if (item.IsType == false)
            {
                itemNode.ForeColor = System.Drawing.Color.Blue;
            }

            return(itemNode);
        }
예제 #2
0
        private void collectTreeChanges(TreeNode node, IList <Objects.Change> changes)
        {
            if (node.Tag is Objects.Change)
            {
                Objects.Change c = node.Tag as Objects.Change;
                if (c != null)
                {
                    changes.Add(c);
                }
            }

            if (node.Nodes.Count > 0)
            {
                foreach (TreeNode child in node.Nodes)
                {
                    collectTreeChanges(child, changes);
                }
            }
        }
예제 #3
0
        private void onAfterSelect(object sender, TreeViewEventArgs e)
        {
            if (e.Node.Tag != null)
            {
                Objects.Change item = e.Node.Tag as Objects.Change;
                if (item != null)
                {
                    _selectedItems = new Objects.Change[] { item };

                    switch (item.ChangeType)
                    {
                    case Objects.Change.ChangeTypeEnum.Move:
                        _action = ActionEnum.ShowMove;
                        break;

                    case Objects.Change.ChangeTypeEnum.Rotate:
                        _action = ActionEnum.ShowRotation;
                        break;

                    case Objects.Change.ChangeTypeEnum.DeletedElement:
                        _action = ActionEnum.ShowSolid;
                        break;

                    default:
                        _action = (_isLinkDoc ? ActionEnum.ShowSolid : ActionEnum.ShowElement);
                        break;
                    }
                }

                else
                {
                    // we have an id?
                    int id = (int)e.Node.Tag;

                    _idsToShow = new ElementId[] { new ElementId(id) };
                    if (!_isLinkDoc)
                    {
                        _action = ActionEnum.ShowElement;
                    }
                }
            }
        }