public virtual TemplateSet Clone() { TemplateSet set = new TemplateSet(); foreach (ItemTemplate template in base.List) { set.Add(template); } return(set); }
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]); }
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]); }
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); }
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]); }
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)); }
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); }