Exemplo n.º 1
0
        public virtual TemplateSet Clone()
        {
            TemplateSet set = new TemplateSet();

            foreach (ItemTemplate template in base.List)
            {
                set.Add(template);
            }
            return(set);
        }
Exemplo n.º 2
0
        internal ItemTemplate GetTemplate(ListItem item, int ix)
        {
            TemplateSet templates = this.m_parent.Templates;
            int         count     = templates.Count;

            if ((ix < 0) || (ix >= count))
            {
                return(this.m_parent.DefaultTemplates[item.Selected ? 1 : 0]);
            }
            return(templates[ix]);
        }
Exemplo n.º 3
0
        internal ItemTemplate GetTemplate(ListItem item)
        {
            TemplateSet templates            = this.m_parent.Templates;
            int         count                = templates.Count;
            int         currentTemplateIndex = item.CurrentTemplateIndex;

            if ((currentTemplateIndex < 0) || (currentTemplateIndex >= count))
            {
                return(this.m_parent.DefaultTemplates[item.Selected ? 1 : 0]);
            }
            return(templates[currentTemplateIndex]);
        }
Exemplo n.º 4
0
        internal int Draw(Graphics gr, TemplateSet ts, int width, int ymax, int iItem, int iItemOffset, ref bool resetScrollbar)
        {
            int num     = (((this.Parent != null) && this.Parent.RightToLeft) && this.Parent.List.ScrollbarVisible) ? this.Parent.List.ClientScrollbarWidth : 0;
            int yOffset = iItemOffset;
            int count   = base.List.Count;

            this.LastDrawnItemOffset = yOffset;
            this.LastDrawnItem       = iItem;
            while (this.LastDrawnItem < count)
            {
                ListItem item = null;
                if ((this.LastDrawnItem >= 0) && (this.LastDrawnItem < base.InnerList.Count))
                {
                    item = base.InnerList[this.LastDrawnItem] as ListItem;
                }
                if (item != null)
                {
                    ItemTemplate template = item.GetTemplate(ts);
                    int          height   = 0;
                    int          num5     = -1;
                    if (template.CustomizeCells(item))
                    {
                        num5 = template.GetHeight(item);
                        item.ResetCachedBounds();
                    }
                    height = template.GetHeight(item);
                    if ((num5 >= 0) && (height != num5))
                    {
                        resetScrollbar = true;
                    }
                    if ((yOffset + height) >= 0)
                    {
                        template.Draw(gr, 0, yOffset, item, width, height);
                    }
                    this.LastDrawnItemOffset = yOffset;
                    yOffset += height;
                    if (this.Parent.List.GridLines)
                    {
                        gr.DrawLine(this.m_penBorder, num, yOffset, width + num, yOffset);
                        yOffset++;
                    }
                    if (yOffset > ymax)
                    {
                        return(yOffset);
                    }
                }
                this.LastDrawnItem++;
            }
            this.LastDrawnItemOffset = yOffset;
            return(yOffset);
        }
Exemplo n.º 5
0
        internal ItemTemplate GetTemplate(TemplateSet ts)
        {
            int currentTemplateIndex = this.CurrentTemplateIndex;

            if ((currentTemplateIndex < 0) || (currentTemplateIndex >= ts.Count))
            {
                if ((this.m_parent != null) && (this.m_parent.Parent != null))
                {
                    return(this.m_parent.Parent.DefaultTemplates[this.Selected ? 1 : 0]);
                }
                return(null);
            }
            return(ts[currentTemplateIndex]);
        }
Exemplo n.º 6
0
        internal int GetHeight(TemplateSet ts)
        {
            int currentTemplateIndex = this.CurrentTemplateIndex;

            if ((currentTemplateIndex < 0) || (currentTemplateIndex >= ts.Count))
            {
                if ((this.m_parent != null) && (this.m_parent.Parent != null))
                {
                    return(this.m_parent.Parent.DefaultTemplates[this.Selected ? 1 : 0].Height);
                }
                return(-1);
            }
            return(ts[currentTemplateIndex].GetHeight(this));
        }
Exemplo n.º 7
0
        internal int GetHeight(int i, TemplateSet ts)
        {
            if ((i < 0) || (i >= base.List.Count))
            {
                return(0);
            }
            ListItem item   = (ListItem)base.InnerList[i];
            int      height = this.GetTemplate(item).GetHeight(item);

            if (this.Parent.List.GridLines)
            {
                height++;
            }
            return(height);
        }