示例#1
0
        private void RefreshElementName(PartElement element)
        {
            var elemNode = FindElementNode(element);

            if (elemNode != null)
            {
                elemNode.Text = element.Name;
                ProjectTreeView.RefreshObject(elemNode);
            }
        }
示例#2
0
        private void ProjectTreeView_CellClick(object sender, CellClickEventArgs e)
        {
            if (e.Column == olvColumnVisible)
            {
                e.Handled = true;

                if (e.Model is ProjectElementNode elementNode)
                {
                    var modelExt = elementNode.Element.GetExtension <ModelElementExtension>();
                    if (modelExt != null)
                    {
                        //Debug.WriteLine($"ProjectTreeView_CellClick {elementNode.Element.Name} IsHidden {modelExt.IsHidden} -> {!modelExt.IsHidden}");
                        modelExt.IsHidden = !modelExt.IsHidden;

                        ProjectTreeView.RefreshObject(elementNode);
                        if (elementNode.Parent is ElementGroupNode)
                        {
                            ProjectTreeView.RefreshObject(elementNode.Parent);
                        }
                    }
                }
                else if (e.Model is ElementCollectionNode elementColNode)
                {
                    var femaleStudExt = elementColNode.Element.GetExtension <FemaleStudModelExtension>();

                    if (femaleStudExt != null)
                    {
                        femaleStudExt.ShowAlternateModels = !femaleStudExt.ShowAlternateModels;
                        ProjectTreeView.RefreshObject(elementColNode.Parent);
                    }
                }
                else if (e.Model is ProjectCollectionNode collectionNode)
                {
                    if (collectionNode.Collection == CurrentProject.Surfaces)
                    {
                        ProjectManager.ShowPartModels = !ProjectManager.ShowPartModels;
                    }
                    else if (collectionNode.Collection == CurrentProject.Collisions)
                    {
                        ProjectManager.ShowCollisions = !ProjectManager.ShowCollisions;
                    }
                    else if (collectionNode.Collection == CurrentProject.Connections)
                    {
                        ProjectManager.ShowConnections = !ProjectManager.ShowConnections;
                    }

                    ProjectTreeView.RefreshObject(collectionNode);
                }
                else if (e.Model is ElementGroupNode groupNode && groupNode.SupportsVisibility())
                {
                    //groupNode.ToggleVisibility();
                    //ProjectTreeView.RefreshObject(groupNode);
                }
            }
        }
示例#3
0
        public void RefreshNavigationNode(ProjectTreeNode node)
        {
            if (IsRefreshingAll)
            {
                return;
            }

            ExecuteOnThread(() =>
            {
                if (IsRefreshingAll)
                {
                    return;
                }
                ProjectTreeView.RefreshObject(node);
            });
        }
示例#4
0
        private void ProjectTreeView_CellClick(object sender, CellClickEventArgs e)
        {
            if (e.Column == olvColumnVisible)
            {
                e.Handled = true;

                if (e.Model is ProjectTreeNode treeNode)
                {
                    if (treeNode.CanToggleVisibility())
                    {
                        treeNode.ToggleVisibility();
                        ProjectTreeView.RefreshObject(treeNode);
                    }
                }
            }
        }