protected override void drawGroupHeader(Graphics g, int groupId, RectangleF groupHeaderRect) { foreach (ReportColumn col in Columns) { if (!col.Visible) { continue; } RectangleF columnHeaderRect = new RectangleF( col.X, groupHeaderRect.Y, col.Width, groupHeaderRect.Height); if (col.Image != null) { if (col.Split) { float imageHeight = (2f / 3) * columnHeaderRect.Height; RectangleF textRect = new RectangleF( columnHeaderRect.X, columnHeaderRect.Y + imageHeight, columnHeaderRect.Width, columnHeaderRect.Height - imageHeight); g.DrawRectangle(pen, textRect.X, textRect.Y, textRect.Width, textRect.Height); g.DrawString(col.HeaderTitle, itemsHeaderFont, blackBrush, textRect, col.HeaderFormat); if (col.Span) { RectangleF imageRect = new RectangleF( col.X, groupHeaderRect.Y, col.SpanEndColumn.X + col.SpanEndColumn.Width - col.X, imageHeight); g.DrawRectangle(pen, imageRect.X, imageRect.Y, imageRect.Width, imageRect.Height); // Mnozim sa 0.95 zato sto se desava da slike pauza (koje nemaju okvir oko // sebe) prebrisu gornju liniju pravougaonika u koji su smestene. Izvestaj.scaleImageIsotropically(g, col.Image, imageRect, 0.95f); } } else { Izvestaj.scaleImageIsotropically(g, col.Image, columnHeaderRect); } } else { if (col.DrawHeaderRect) { g.DrawRectangle(pen, columnHeaderRect.X, columnHeaderRect.Y, columnHeaderRect.Width, columnHeaderRect.Height); } g.DrawString(col.HeaderTitle, itemsHeaderFont, blackBrush, columnHeaderRect, col.HeaderFormat); } } }
protected override void drawGroupHeader(Graphics g, int groupId, RectangleF groupHeaderRect) { foreach (ReportColumn col in Columns) { RectangleF columnHeaderRect = new RectangleF( col.X, groupHeaderRect.Y, col.Width, groupHeaderRect.Height); if (col.Image != null) { if (col.Split) { float imageHeight = (2f / 3) * columnHeaderRect.Height; RectangleF textRect = new RectangleF( columnHeaderRect.X, columnHeaderRect.Y + imageHeight, columnHeaderRect.Width, columnHeaderRect.Height - imageHeight); g.DrawRectangle(pen, textRect.X, textRect.Y, textRect.Width, textRect.Height); g.DrawString(col.HeaderTitle, itemsHeaderFont, blackBrush, textRect, col.HeaderFormat); if (col.Span) { RectangleF imageRect = new RectangleF( col.X, groupHeaderRect.Y, col.SpanEndColumn.X + col.SpanEndColumn.Width - col.X, imageHeight); g.DrawRectangle(pen, imageRect.X, imageRect.Y, imageRect.Width, imageRect.Height); Izvestaj.scaleImageIsotropically(g, col.Image, imageRect); } } else { if (col.DrawHeaderRect) { g.DrawRectangle(pen, columnHeaderRect.X, columnHeaderRect.Y, columnHeaderRect.Width, columnHeaderRect.Height); } Izvestaj.scaleImageIsotropically(g, col.Image, columnHeaderRect); } } else { if (col.DrawHeaderRect) { g.DrawRectangle(pen, columnHeaderRect.X, columnHeaderRect.Y, columnHeaderRect.Width, columnHeaderRect.Height); } g.DrawString(col.HeaderTitle, itemsHeaderFont, blackBrush, columnHeaderRect, col.HeaderFormat); } } }
protected override void drawGroupHeader(Graphics g, int groupId, RectangleF groupHeaderRect) { float headerHeight = groupHeaderRect.Height / 2; RectangleF nazivEkipeRectangle = new RectangleF(groupHeaderRect.X + delta, groupHeaderRect.Y, groupHeaderRect.Width, headerHeight); ReportGrupa gr = groups[groupId]; Nullable <short> rank = (Nullable <short>)gr.Data[0]; string naziv = (string)gr.Data[1]; Nullable <float> total; if (gimnastika == Gimnastika.MSG) { total = (Nullable <float>)gr.Data[8]; } else { total = (Nullable <float>)gr.Data[6]; } string fmtTot = "F" + Opcije.Instance.BrojDecimalaTotal; string text = rank.ToString() + (rank != null ? ". " : "") + naziv + " " + (total != null ? total.Value.ToString(fmtTot) : String.Empty); StringFormat nazivEkipeFormat = new StringFormat(); nazivEkipeFormat.Alignment = StringAlignment.Near; nazivEkipeFormat.LineAlignment = StringAlignment.Far; g.DrawString(text, nazivEkipeFont, blackBrush, nazivEkipeRectangle, nazivEkipeFormat); foreach (ReportColumn col in Columns) { RectangleF columnHeaderRect = new RectangleF( col.X, groupHeaderRect.Y + headerHeight, col.Width, headerHeight); g.DrawRectangle(pen, columnHeaderRect.X, columnHeaderRect.Y, columnHeaderRect.Width, columnHeaderRect.Height); if (col.Image != null) { Izvestaj.scaleImageIsotropically(g, col.Image, columnHeaderRect); } else { g.DrawString(col.HeaderTitle, itemsHeaderFont, blackBrush, columnHeaderRect, col.HeaderFormat); } } }