Browse Source

work on paging

git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/branches/3.0@5422 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
pull/1/head
Peter Forstmeier 16 years ago
parent
commit
0f3b60a3e2
  1. 8
      src/AddIns/Misc/SharpReport/ICSharpCode.Reports.Core/Project/BaseClasses/SinglePage.cs
  2. 11
      src/AddIns/Misc/SharpReport/ICSharpCode.Reports.Core/Project/Exporter/BasePager.cs
  3. 4
      src/AddIns/Misc/SharpReport/ICSharpCode.Reports.Core/Project/Exporter/Converters/RowConverter.cs
  4. 2
      src/AddIns/Misc/SharpReport/ICSharpCode.Reports.Core/Project/Exporter/DataPageBuilder.cs
  5. 2
      src/AddIns/Misc/SharpReport/ICSharpCode.Reports.Core/Project/ReportViewer/ReportViewer.cs

8
src/AddIns/Misc/SharpReport/ICSharpCode.Reports.Core/Project/BaseClasses/SinglePage.cs

@ -40,6 +40,7 @@ namespace ICSharpCode.Reports.Core @@ -40,6 +40,7 @@ namespace ICSharpCode.Reports.Core
throw new ArgumentNullException("reportModel");
}
Console.WriteLine("CalculatePageBounds for {0}",this.PageNumber);
sectionBounds.MeasureReportHeader(reportModel.ReportHeader);
//PageHeader
@ -54,7 +55,10 @@ namespace ICSharpCode.Reports.Core @@ -54,7 +55,10 @@ namespace ICSharpCode.Reports.Core
this.sectionBounds.MeasureDetailArea();
this.sectionBounds.DetailSectionRectangle = new System.Drawing.Rectangle(reportModel.DetailSection.Location,reportModel.DetailSection.Size);
this.sectionBounds.DetailSectionRectangle = new System.Drawing.Rectangle(reportModel.DetailSection.Location.X,sectionBounds.DetailStart.Y,
reportModel.DetailSection.Size.Width,
reportModel.DetailSection.Size.Height);
}
@ -100,7 +104,7 @@ namespace ICSharpCode.Reports.Core @@ -100,7 +104,7 @@ namespace ICSharpCode.Reports.Core
}
return parameterHash;
}
set { parameterHash = value; }
set {this.parameterHash = value;}
}

11
src/AddIns/Misc/SharpReport/ICSharpCode.Reports.Core/Project/Exporter/BasePager.cs

@ -111,6 +111,8 @@ namespace ICSharpCode.Reports.Core.Exporter @@ -111,6 +111,8 @@ namespace ICSharpCode.Reports.Core.Exporter
ExportContainer exportContainer = this.exportItemsConverter.ConvertToContainer(container);
this.exportItemsConverter.ParentLocation = exportContainer.StyleDecorator.Location;
AdjustBackColor (container);
ExporterCollection clist = container.Items.ConvertAll <BaseExportColumn> (this.exportItemsConverter.ConvertToLineItem) as ExporterCollection;
@ -135,7 +137,14 @@ namespace ICSharpCode.Reports.Core.Exporter @@ -135,7 +137,14 @@ namespace ICSharpCode.Reports.Core.Exporter
}
}
private void AdjustBackColor (IContainerItem container)
{
BaseReportItem parent = container as BaseReportItem;
foreach (BaseReportItem item in container.Items)
{
item.BackColor = parent.BackColor;
}
}
#endregion

4
src/AddIns/Misc/SharpReport/ICSharpCode.Reports.Core/Project/Exporter/Converters/RowConverter.cs

@ -57,6 +57,7 @@ namespace ICSharpCode.Reports.Core.Exporter @@ -57,6 +57,7 @@ namespace ICSharpCode.Reports.Core.Exporter
BaseSection section = parent as BaseSection;
Size containerSize = new Size (section.Items[0].Size.Width,section.Items[0].Size.Height);
IContainerItem row = section.Items[0] as IContainerItem;
do {
section.Location = new Point(section.Location.X,section.SectionOffset );
base.DataNavigator.Fill(row.Items);
@ -73,8 +74,7 @@ namespace ICSharpCode.Reports.Core.Exporter @@ -73,8 +74,7 @@ namespace ICSharpCode.Reports.Core.Exporter
if (base.IsPageFull(r)) {
base.FirePageFull(mylist);
section.Location = new Point(section.Location.X,SectionBounds.DetailStart.Y );
section.SectionOffset = SectionBounds.DetailStart.Y;
section.SectionOffset = base.SinglePage.SectionBounds.PageHeaderRectangle.Location.Y;
mylist.Clear();
}
section.Items[0].Size = containerSize;

2
src/AddIns/Misc/SharpReport/ICSharpCode.Reports.Core/Project/Exporter/DataPageBuilder.cs

@ -52,6 +52,7 @@ namespace ICSharpCode.Reports.Core.Exporter @@ -52,6 +52,7 @@ namespace ICSharpCode.Reports.Core.Exporter
protected override void BuildNewPage ()
{
Console.WriteLine("BuildNewPage");
base.BuildNewPage();
if (this.dataNavigator != null) {
@ -98,7 +99,6 @@ namespace ICSharpCode.Reports.Core.Exporter @@ -98,7 +99,6 @@ namespace ICSharpCode.Reports.Core.Exporter
base.ReportModel.PageHeader.SectionOffset = base.AdjustPageHeader();
base.ConvertSection (base.ReportModel.PageHeader,
this.dataNavigator.CurrentRow );
SectionBounds.MeasurePageHeader(base.ReportModel.PageHeader);
}

2
src/AddIns/Misc/SharpReport/ICSharpCode.Reports.Core/Project/ReportViewer/ReportViewer.cs

@ -268,7 +268,7 @@ namespace ICSharpCode.Reports.Core.ReportViewer @@ -268,7 +268,7 @@ namespace ICSharpCode.Reports.Core.ReportViewer
#region Events from worker
private void PushPrinting (object sender, SectionRenderEventArgs e ) {
Console.WriteLine ("ReportViewer - SectionRenderEventargs from <{0}> with {1} items ",e.Section.Name,e.Section.Items.Count);
// Console.WriteLine ("ReportViewer - SectionRenderEventargs from <{0}> with {1} items ",e.Section.Name,e.Section.Items.Count);
EventHelper.Raise<SectionRenderEventArgs>(SectionRendering,this,e);
}

Loading…
Cancel
Save