示例#1
0
        private void refreshTree()
        {
            var treeView = _treeView;

            if (treeView == null)
            {
                return;
            }
            var root = new AGSTreeStringNode("", _font);
            List <ITreeStringNode> toExpand = new List <ITreeStringNode>();
            bool skipCategories             = _props.Count == 1;

            foreach (var pair in _props.OrderBy(p => p.Key.Z).ThenBy(p => p.Key.Name))
            {
                ITreeStringNode         cat    = skipCategories ? root : addToTree(pair.Key.Name, root);
                IEnumerable <IProperty> values = SortValues ? pair.Value.OrderBy(p => p.Name) : (IEnumerable <IProperty>)pair.Value;
                foreach (var prop in values)
                {
                    addToTree(cat, prop);
                }
                if (pair.Key.Expand)
                {
                    toExpand.Add(cat);
                }
            }
            treeView.Tree = root;
            treeView.Expand(root);
            foreach (var node in toExpand)
            {
                treeView.Expand(node);
            }
        }
示例#2
0
        private void refreshTree()
        {
            var treeView = _treeView;

            if (treeView == null)
            {
                return;
            }
            var root = new AGSTreeStringNode {
                Text = ""
            };
            List <ITreeStringNode> toExpand = new List <ITreeStringNode>();

            foreach (var pair in _props.OrderBy(p => p.Key.Z).ThenBy(p => p.Key.Name))
            {
                ITreeStringNode cat = addToTree(pair.Key.Name, root);
                foreach (var prop in pair.Value.OrderBy(p => p.Name))
                {
                    addToTree(cat, prop);
                }
                if (pair.Key.Expand)
                {
                    toExpand.Add(cat);
                }
            }
            treeView.Tree = root;
            treeView.Expand(root);
            foreach (var node in toExpand)
            {
                treeView.Expand(node);
            }
        }
示例#3
0
        private ITreeStringNode addToTree(string text, ITreeStringNode parent)
        {
            var node = new AGSTreeStringNode(text, _editor.Editor.Settings.Defaults.Fonts.Text);

            if (parent != null)
            {
                node.TreeNode.SetParent(parent.TreeNode);
            }
            return(node);
        }
示例#4
0
        private ITreeStringNode createFeaturesLabel(string text, ITreeStringNode parent, Func <IFeaturesPanel> panel = null)
        {
            var node = new AGSTreeStringNode(text, null);

            if (parent != null)
            {
                node.TreeNode.SetParent(parent.TreeNode);
            }
            _panels[text] = panel == null ? null : new Lazy <IFeaturesPanel>(panel);
            return(node);
        }
示例#5
0
        private ITreeStringNode addToTree(string text, ITreeStringNode parent)
        {
            var node = new AGSTreeStringNode {
                Text = text
            };

            if (parent != null)
            {
                node.TreeNode.SetParent(parent.TreeNode);
            }
            return(node);
        }
示例#6
0
        private ITreeStringNode addToTree(string text, ITreeStringNode parent)
        {
            ITreeStringNode node = new AGSTreeStringNode(text, _font);

            return(addToTree(node, parent));
        }