Browse Source

RowRendering Event, cleanup

pull/14/head
peterforstmeier 15 years ago
parent
commit
239fb0a454
  1. 10
      samples/SharpDevelopReports/src/SharpReportSamples/MainForm.cs
  2. 17
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/Commands/PreviewCommands.cs
  3. 38
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportDesignerView.cs
  4. 6
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/SecondaryViews/ReportViewerSecondaryView.cs
  5. 1
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/ICSharpCode.Reports.Core.csproj
  6. 7
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/Converters/BaseConverter.cs
  7. 6
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/Converters/GroupedRowConverter.cs
  8. 21
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/Converters/GroupedTableConverter.cs
  9. 56
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Printing/ExtendedPrintController.cs
  10. 1
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/ReportEngine.cs
  11. 2
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/ReportViewer/ReportViewer.cs

10
samples/SharpDevelopReports/src/SharpReportSamples/MainForm.cs

@ -98,9 +98,7 @@ namespace SharpReportSamples @@ -98,9 +98,7 @@ namespace SharpReportSamples
this.RunContributors(reportName);
}
else if (s == "ContributorsListWithParameters"){
//this.V1_RunContributorsWithParameters(reportName);
// this.V2_RunContributorsWithParameters(string fileName)
this.V3_RunContributorsWithParameters(reportName);
this.RunContributorsWithParameters(reportName);
}
else if (s == "NoConnectionReport") {
@ -221,7 +219,7 @@ namespace SharpReportSamples @@ -221,7 +219,7 @@ namespace SharpReportSamples
}
private void V3_RunContributorsWithParameters(string fileName)
private void RunContributorsWithParameters(string fileName)
{
var model = ReportEngine.LoadReportModel(fileName);
ReportParameters parameters = ReportEngine.LoadParameters(fileName);
@ -231,10 +229,6 @@ namespace SharpReportSamples @@ -231,10 +229,6 @@ namespace SharpReportSamples
List<Contributor> list = ContributorsReportData.CreateContributorsList();
// IDataManager dataManager = DataManager.CreateInstance(list,model.ReportSettings);
//IReportCreator creator = ReportEngine.CreatePageBuilder(model,eventLogger.EventLog,null);
IReportCreator creator = ReportEngine.CreatePageBuilder(model,list,parameters);

17
src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/Commands/PreviewCommands.cs

@ -2,13 +2,8 @@ @@ -2,13 +2,8 @@
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
using System;
using System.Globalization;
using System.Windows.Forms;
using ICSharpCode.Core;
using ICSharpCode.Reports.Core;
using ICSharpCode.SharpDevelop;
using ICSharpCode.Reports.Core.ReportViewer;
using ICSharpCode.SharpDevelop.Gui;
namespace ICSharpCode.Reports.Addin.Commands
@ -50,9 +45,9 @@ namespace ICSharpCode.Reports.Addin.Commands @@ -50,9 +45,9 @@ namespace ICSharpCode.Reports.Addin.Commands
}
public class AsyncFormsSheetPreviewCommand:AbstractPreviewCommand
public class FormsSheetPreviewCommand:AbstractPreviewCommand
{
public AsyncFormsSheetPreviewCommand(ReportModel model,
public FormsSheetPreviewCommand(ReportModel model,
ICSharpCode.Reports.Core.ReportViewer.PreviewControl reportViewer):base (model,reportViewer)
{
}
@ -65,10 +60,10 @@ namespace ICSharpCode.Reports.Addin.Commands @@ -65,10 +60,10 @@ namespace ICSharpCode.Reports.Addin.Commands
}
public class AsyncPullModelPreviewCommand:AbstractPreviewCommand
public class PullModelPreviewCommand:AbstractPreviewCommand
{
public AsyncPullModelPreviewCommand(ReportModel model, ICSharpCode.Reports.Core.ReportViewer.PreviewControl reportViewer):base (model,reportViewer)
public PullModelPreviewCommand(ReportModel model, ICSharpCode.Reports.Core.ReportViewer.PreviewControl reportViewer):base (model,reportViewer)
{
}
@ -81,9 +76,9 @@ namespace ICSharpCode.Reports.Addin.Commands @@ -81,9 +76,9 @@ namespace ICSharpCode.Reports.Addin.Commands
}
public class AsyncPushModelPreviewCommand:AbstractPreviewCommand
public class PushModelPreviewCommand:AbstractPreviewCommand
{
public AsyncPushModelPreviewCommand(ReportModel model, ICSharpCode.Reports.Core.ReportViewer.PreviewControl reportViewer):base (model,reportViewer)
public PushModelPreviewCommand(ReportModel model, ICSharpCode.Reports.Core.ReportViewer.PreviewControl reportViewer):base (model,reportViewer)
{
}

38
src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportDesignerView.cs

@ -12,6 +12,7 @@ using System.Windows.Forms; @@ -12,6 +12,7 @@ using System.Windows.Forms;
using ICSharpCode.Core;
using ICSharpCode.Reports.Addin.Designer;
using ICSharpCode.Reports.Core;
using ICSharpCode.SharpDevelop;
using ICSharpCode.SharpDevelop.Gui;
@ -556,13 +557,48 @@ namespace ICSharpCode.Reports.Addin @@ -556,13 +557,48 @@ namespace ICSharpCode.Reports.Addin
#region IPrintable
private void ccc()
{
/*
ReportModel model = loader.CreateRenderableModel();
IReportCreator creator = ReportEngine.CreatePageBuilder(model,eventLogger.EventLog,null);
//creator.SectionRendering += PushPrinting;
creator.BuildExportList();
using (PdfRenderer pdfRenderer = PdfRenderer.CreateInstance(creator,SelectFilename(),true))
{
pdfRenderer.Start();
pdfRenderer.RenderOutput();
pdfRenderer.End();
}
*/
var model = loader.CreateRenderableModel();
switch (model.DataModel) {
case GlobalEnums.PushPullModel.FormSheet : {
//cmd = new FormsSheetPreviewCommand (model,control);
break;
}
case GlobalEnums.PushPullModel.PullData:{
//cmd = new PullModelPreviewCommand(model,control);
break;
}
case GlobalEnums.PushPullModel.PushData:{
//cmd = new PushModelPreviewCommand(model,control);
break;
}
default:
throw new InvalidReportModelException();
}
}
public System.Drawing.Printing.PrintDocument PrintDocument {
get {
ccc();
ICSharpCode.Reports.Core.ReportModel model = this.loader.CreateRenderableModel();
StandartPreviewManager reportManager = new StandartPreviewManager();
ICSharpCode.Reports.Core.AbstractRenderer r = reportManager.CreateRenderer (model);
r.ReportDocument.PrintController = new ICSharpCode.Reports.Core.ExtendedPrintController(new System.Drawing.Printing.PreviewPrintController());
return r.ReportDocument;
}
}

6
src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/SecondaryViews/ReportViewerSecondaryView.cs

@ -50,15 +50,15 @@ namespace ICSharpCode.Reports.Addin @@ -50,15 +50,15 @@ namespace ICSharpCode.Reports.Addin
AbstractPreviewCommand cmd = null;
switch (model.DataModel) {
case GlobalEnums.PushPullModel.FormSheet : {
cmd = new AsyncFormsSheetPreviewCommand (model,control);
cmd = new FormsSheetPreviewCommand (model,control);
break;
}
case GlobalEnums.PushPullModel.PullData:{
cmd = new AsyncPullModelPreviewCommand(model,control);
cmd = new PullModelPreviewCommand(model,control);
break;
}
case GlobalEnums.PushPullModel.PushData:{
cmd = new AsyncPushModelPreviewCommand(model,control);
cmd = new PushModelPreviewCommand(model,control);
break;
}
default:

1
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/ICSharpCode.Reports.Core.csproj

@ -260,7 +260,6 @@ @@ -260,7 +260,6 @@
<Compile Include="Project\Interfaces\IReportModel.cs" />
<Compile Include="Project\Interfaces\ISinglePage.cs" />
<Compile Include="Project\IReportCreator.cs" />
<Compile Include="Project\Printing\ExtendedPrintController.cs" />
<Compile Include="Project\Printing\Graphics\BaseLine.cs" />
<Compile Include="Project\Printing\Graphics\BaseShape.cs" />
<Compile Include="Project\Printing\Graphics\Border.cs" />

7
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/Converters/BaseConverter.cs

@ -240,6 +240,8 @@ namespace ICSharpCode.Reports.Core.Exporter @@ -240,6 +240,8 @@ namespace ICSharpCode.Reports.Core.Exporter
protected void PrepareContainerForConverting(BaseSection section,ISimpleContainer simpleContainer)
{
Console.WriteLine("\tPrepareContainerForConverting");
FireSectionRendering(section);
LayoutRow(simpleContainer);
}
@ -248,11 +250,13 @@ namespace ICSharpCode.Reports.Core.Exporter @@ -248,11 +250,13 @@ namespace ICSharpCode.Reports.Core.Exporter
protected Point ConvertStandardRow(ExporterCollection mylist, ISimpleContainer simpleContainer)
{
var rowSize = simpleContainer.Size;
Console.WriteLine("ConvertStandardRow");
Point curPos = ConvertContainer(mylist,simpleContainer,DefaultLeftPosition,CurrentPosition);
AfterConverting (mylist);
simpleContainer.Size = rowSize;
Console.WriteLine("");
return curPos;
}
@ -272,6 +276,7 @@ namespace ICSharpCode.Reports.Core.Exporter @@ -272,6 +276,7 @@ namespace ICSharpCode.Reports.Core.Exporter
protected static void FillRow (ISimpleContainer row,IDataNavigator currentNavigator)
{
Console.WriteLine("\tFillrow");
currentNavigator.Fill(row.Items);
}

6
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/Converters/GroupedRowConverter.cs

@ -101,9 +101,10 @@ namespace ICSharpCode.Reports.Core.Exporter @@ -101,9 +101,10 @@ namespace ICSharpCode.Reports.Core.Exporter
section.Items[1].Size = childSize;
FillRow(simpleContainer,childNavigator);
FireRowRendering(simpleContainer,childNavigator);
PrepareContainerForConverting(section,simpleContainer);
FireRowRendering(simpleContainer,childNavigator);
// FireRowRendering(simpleContainer,childNavigator);
base.CurrentPosition = ConvertStandardRow(exporterCollection,simpleContainer);
CheckForPageBreak(section,exporterCollection);
}
@ -123,8 +124,9 @@ namespace ICSharpCode.Reports.Core.Exporter @@ -123,8 +124,9 @@ namespace ICSharpCode.Reports.Core.Exporter
Size containerSize = section.Items[0].Size;
FillRow(simpleContainer,base.DataNavigator);
base.PrepareContainerForConverting(section,simpleContainer);
FireRowRendering(simpleContainer,base.DataNavigator);
base.PrepareContainerForConverting(section,simpleContainer);
// FireRowRendering(simpleContainer,base.DataNavigator);
base.CurrentPosition = ConvertStandardRow (exporterCollection,simpleContainer);
section.Size = base.RestoreSectionSize;
section.Items[0].Size = containerSize;

21
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/Converters/GroupedTableConverter.cs

@ -97,14 +97,12 @@ namespace ICSharpCode.Reports.Core.Exporter @@ -97,14 +97,12 @@ namespace ICSharpCode.Reports.Core.Exporter
childNavigator.MoveNext();
/*
FillRow
PrepareContainerForConverting
Layouter for Container
FireRowRendering
eportViewer - RowRendering :
ConvertStandardRow
*/
---- GroupTableConverter.cs Zeile 151:
FillRow(simpleContainer,base.DataNavigator);
FireRowRendering(simpleContainer,base.DataNavigator);
base.PrepareContainerForConverting(section,simpleContainer);
----
*/
//Convert children
if (childNavigator != null) {
do
@ -114,9 +112,9 @@ eportViewer - RowRendering : @@ -114,9 +112,9 @@ eportViewer - RowRendering :
containerSize = simpleContainer.Size;
FillRow(simpleContainer,childNavigator);
PrepareContainerForConverting(section,simpleContainer);
// PrepareContainerForConverting(section,simpleContainer);
FireRowRendering(simpleContainer,childNavigator);
PrepareContainerForConverting(section,simpleContainer);
base.CurrentPosition = ConvertStandardRow(exporterCollection,simpleContainer);
simpleContainer.Size = containerSize;
@ -149,9 +147,10 @@ eportViewer - RowRendering : @@ -149,9 +147,10 @@ eportViewer - RowRendering :
CheckForPageBreak(section,simpleContainer,headerRow,exporterCollection);
FillRow(simpleContainer,base.DataNavigator);
// base.PrepareContainerForConverting(section,simpleContainer);
FireRowRendering(simpleContainer,base.DataNavigator);
base.PrepareContainerForConverting(section,simpleContainer);
FireRowRendering(simpleContainer,base.DataNavigator);
base.CurrentPosition = ConvertStandardRow (exporterCollection,simpleContainer);
simpleContainer.Size = containerSize;
section.Size = base.RestoreSectionSize;

56
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Printing/ExtendedPrintController.cs

@ -1,56 +0,0 @@ @@ -1,56 +0,0 @@
// Copyright (c) AlphaSierraPapa for the SharpDevelop Team (for details please see \doc\copyright.txt)
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
using System;
using System.Drawing.Printing;
namespace ICSharpCode.Reports.Core
{
/// <summary>
/// Description of ExtendedPrintController.
/// </summary>
public class ExtendedPrintController:PrintController
{
PrintController controller;
public ExtendedPrintController(PrintController controller):base()
{
if (controller == null) {
throw new ArgumentNullException("controller");
}
this.controller = controller;
}
public override System.Drawing.Graphics OnStartPage(PrintDocument document, PrintPageEventArgs e)
{
System.Diagnostics.Trace.WriteLine("ExtPrintcontroller OnStartPage");
return this.controller.OnStartPage (document, e);
}
public override void OnStartPrint(PrintDocument document, PrintEventArgs e)
{
System.Diagnostics.Trace.WriteLine("ExtPrintcontroller OnStartPrint");
this.controller.OnStartPrint(document, e);
}
public override void OnEndPage(PrintDocument document, PrintPageEventArgs e)
{
System.Diagnostics.Trace.WriteLine("ExtPrintcontroller OnEndPage");
this.controller.OnEndPage (document, e);
}
public override void OnEndPrint(PrintDocument document, PrintEventArgs e)
{
System.Diagnostics.Trace.WriteLine("ExtPrintcontroller OnEndprint");
PreviewPrintController c = this.controller as PreviewPrintController;
if (c != null) {
PreviewPageInfo[] ppia = c.GetPreviewPageInfo();
}
this.controller.OnEndPrint(document,e);
}
}
}

1
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/ReportEngine.cs

@ -21,7 +21,6 @@ namespace ICSharpCode.Reports.Core { @@ -21,7 +21,6 @@ namespace ICSharpCode.Reports.Core {
public class ReportEngine : IDisposable
{
private PreviewControl previewControl;
// private IDataManager dataMan;
/// <summary>
/// This event is fired before a Section is Rendered, you can use

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

@ -23,7 +23,7 @@ namespace ICSharpCode.Reports.Core.ReportViewer @@ -23,7 +23,7 @@ namespace ICSharpCode.Reports.Core.ReportViewer
public partial class PreviewControl
{
public event EventHandler <EventArgs> PreviewLayoutChanged;
// public event EventHandler<SectionRenderEventArgs> SectionRendering;
private float zoom;

Loading…
Cancel
Save