示例#1
0
        protected internal bool UpdateView()
        {
            bool flag1 = this.owner.treeView.SortDescriptors.Count != 0;
            bool flag2 = this.owner.treeView.FilterDescriptors.Count != 0;

            if (!flag1 && !flag2)
            {
                this.state[4] = false;
                this.state[2] = false;
                this.view     = this.nodes;
                return(true);
            }
            if (flag1)
            {
                this.rbTree = new RBOrderedMultiTree <RadTreeNode>(this.owner.treeView.Comparer);
                this.view   = this.rbTree.Collection;
            }
            else
            {
                this.rbTree = (RBOrderedMultiTree <RadTreeNode>)null;
                this.view   = (IList <RadTreeNode>) new List <RadTreeNode>(this.nodes.Count);
            }
            if (flag2)
            {
                for (int index = 0; index < this.nodes.Count; ++index)
                {
                    if (this.owner.treeView.PassesFilter(this.nodes[index]))
                    {
                        this.view.Add(this.nodes[index]);
                    }
                }
            }
            else
            {
                for (int index = 0; index < this.nodes.Count; ++index)
                {
                    this.view.Add(this.nodes[index]);
                }
            }
            bool flag3 = this.state[1];

            this.state    = new BitVector32();
            this.state[2] = flag1;
            this.state[4] = flag2;
            this.state[1] = flag3;
            return(true);
        }
        protected internal bool UpdateView()
        {
            bool flag1 = this.owner.GanttViewElement.FilterDescriptors.Count != 0;

            if (!flag1)
            {
                this.state[4] = false;
                this.state[2] = false;
                this.view     = this.items;
                return(true);
            }
            this.rbTree = (RBOrderedMultiTree <GanttViewDataItem>)null;
            this.view   = (IList <GanttViewDataItem>) new List <GanttViewDataItem>(this.items.Count);
            if (flag1)
            {
                for (int index = 0; index < this.items.Count; ++index)
                {
                    if (this.owner.GanttViewElement.PassesFilter(this.items[index]))
                    {
                        this.view.Add(this.items[index]);
                    }
                }
            }
            else
            {
                for (int index = 0; index < this.items.Count; ++index)
                {
                    this.view.Add(this.items[index]);
                }
            }
            bool flag2 = this.state[1];

            this.state    = new BitVector32();
            this.state[4] = flag1;
            this.state[1] = flag2;
            return(true);
        }