diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/ICSharpCode.Reports.Core.csproj b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/ICSharpCode.Reports.Core.csproj
index d4c9df244b..6dd1ea06d5 100644
--- a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/ICSharpCode.Reports.Core.csproj
+++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/ICSharpCode.Reports.Core.csproj
@@ -327,12 +327,6 @@
-
- UserControl
-
-
- Project\ReportViewer.cs
-
@@ -344,6 +338,12 @@
+
+ UserControl
+
+
+ ReportViewer.cs
+
@@ -354,8 +354,7 @@
ParameterDialog.cs
- ReportViewer.Designer.cs
- ResXFileCodeGenerator
+ ReportViewer.cs
diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/BaseClasses/Printing/Layouter.cs b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/BaseClasses/Printing/Layouter.cs
index 1e29b28e4b..857c44b5b5 100644
--- a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/BaseClasses/Printing/Layouter.cs
+++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/BaseClasses/Printing/Layouter.cs
@@ -106,7 +106,8 @@ namespace ICSharpCode.Reports.Core.BaseClasses.Printing
canGrowShrinkCollection.First().Size.Width,
canGrowShrinkCollection.First().Size.Height);
- foreach (BaseReportItem elemToLayout in canGrowShrinkCollection) {
+ foreach (BaseTextItem elemToLayout in canGrowShrinkCollection) {
+ Console.WriteLine("ELEMTEXT {0}",elemToLayout.Text);
Size textSize = MeasurementService.MeasureReportItem (graphics,elemToLayout);
elemToLayout.Size = new Size(elemToLayout.Size.Width,textSize.Height);
rec = Rectangle.Union(rec,new Rectangle(elemToLayout.Location,elemToLayout.Size));
diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/BasePager.cs b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/BasePager.cs
index 1d7d0d2271..637b77e14e 100644
--- a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/BasePager.cs
+++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/BasePager.cs
@@ -92,28 +92,49 @@ namespace ICSharpCode.Reports.Core.Exporter
PrintHelper.AdjustParent((BaseSection)section,section.Items);
- ExporterCollection list = new ExporterCollection();
+ var list = new ExporterCollection();
if (section.Items.Count > 0) {
- Point offset = new Point(section.Location.X,section.SectionOffset);
-
+ section.Items.SortByLocation();
+
+ var offset = new Point(section.Location.X,section.SectionOffset);
+ IExpressionEvaluatorFacade f = EvaluationHelper.CreateEvaluator(this.SinglePage,this.SinglePage.IDataNavigator);
+
Rectangle desiredRectangle = LayoutHelper.FixSectionLayout(this.Graphics,section);
Setlayout( desiredRectangle, section);
foreach (BaseReportItem item in section.Items) {
- ISimpleContainer container = item as ISimpleContainer;
+ ISimpleContainer simpleContainer = item as ISimpleContainer;
- if (container != null) {
- ExportContainer exportContainer = StandardPrinter.ConvertToContainer(container,offset);
-
- ExporterCollection clist = StandardPrinter.ConvertPlainCollection(container.Items,exportContainer.StyleDecorator.Location);
+ if (simpleContainer != null)
+ {
+ foreach (BaseTextItem v in simpleContainer.Items)
+ {
+ string ss = f.Evaluate(v.Text);
+ v.Text = ss;
+ }
+ Size s = simpleContainer.Size;
+ var l = (ILayouter)ServiceContainer.GetService(typeof(ILayouter));
+ LayoutHelper.SetLayoutForRow(Graphics,l, simpleContainer);
+
+ ExportContainer exportContainer = StandardPrinter.ConvertToContainer(simpleContainer,offset);
+ s = simpleContainer.Size;
+
+ ExporterCollection clist = StandardPrinter.ConvertPlainCollection(simpleContainer.Items,exportContainer.StyleDecorator.Location);
exportContainer.Items.AddRange(clist);
list.Add(exportContainer);
-
+ offset = new Point(offset.X,offset.Y + simpleContainer.Size.Height + 4* GlobalValues.GapBetweenContainer);
+
+ foreach (ExportText VARIABLE in clist)
+ {
+ Console.WriteLine("{0} - {1}",VARIABLE.Text,VARIABLE.StyleDecorator.Location);
+ }
+ Console.WriteLine(".......");
+
} else {
list = StandardPrinter.ConvertPlainCollection(section.Items,offset);
}
@@ -273,8 +294,6 @@ namespace ICSharpCode.Reports.Core.Exporter
protected Graphics Graphics {get; private set;}
- //public ILayouter Layouter {get; private set;}
-
public IReportModel ReportModel {get;set;}
protected ExporterPage SinglePage {get;set;}
diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/Converters/GroupedRowConverter.cs b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/Converters/GroupedRowConverter.cs
index ff0b16c833..b6cd1c0dd8 100644
--- a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/Converters/GroupedRowConverter.cs
+++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/Converters/GroupedRowConverter.cs
@@ -82,9 +82,9 @@ namespace ICSharpCode.Reports.Core.Exporter
IDataNavigator childNavigator = base.DataNavigator.GetChildNavigator;
base.Evaluator.SinglePage.IDataNavigator = childNavigator;
- Console.WriteLine("Header start {0}",base.CurrentPosition);
+ //Console.WriteLine("Header start {0}",base.CurrentPosition);
base.CurrentPosition = ConvertGroupHeader(exporterCollection,section,base.CurrentPosition);
- Console.WriteLine("Header end {0}",base.CurrentPosition);
+ //Console.WriteLine("Header end {0}",base.CurrentPosition);
section.Size = base.RestoreSectionSize;
section.Items[0].Size = groupSize;
section.Items[1].Size = childSize;
@@ -95,7 +95,7 @@ namespace ICSharpCode.Reports.Core.Exporter
//Convert children
if (childNavigator != null) {
StandardPrinter.AdjustBackColor(simpleContainer,GlobalValues.DefaultBackColor);
- Console.WriteLine("child start {0}",base.CurrentPosition);
+ //Console.WriteLine("child start {0}",base.CurrentPosition);
do
{
section.Size = base.RestoreSectionSize;
@@ -109,7 +109,7 @@ namespace ICSharpCode.Reports.Core.Exporter
CheckForPageBreak(section,exporterCollection);
}
while ( childNavigator.MoveNext());
- Console.WriteLine("child end {0}",base.CurrentPosition);
+ //Console.WriteLine("child end {0}",base.CurrentPosition);
// GroupFooter
base.ConvertGroupFooter(section,exporterCollection);
diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/DataPageBuilder.cs b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/DataPageBuilder.cs
index 8310a1b130..0d3f84034d 100644
--- a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/DataPageBuilder.cs
+++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/DataPageBuilder.cs
@@ -7,6 +7,7 @@ using ICSharpCode.Reports.Core.BaseClasses.Printing;
using ICSharpCode.Reports.Core.Events;
using ICSharpCode.Reports.Core.Globals;
using ICSharpCode.Reports.Core.Interfaces;
+using ICSharpCode.Reports.Expressions.ReportingLanguage;
namespace ICSharpCode.Reports.Core.Exporter
{
@@ -77,6 +78,7 @@ namespace ICSharpCode.Reports.Core.Exporter
protected override void BuildPageHeader ()
{
base.ReportModel.PageHeader.SectionOffset = base.AdjustPageHeader();
+
ExporterCollection convertedList = base.ConvertSection (base.ReportModel.PageHeader,this.dataNavigator.CurrentRow);
base.SectionBounds.MeasurePageHeader(base.ReportModel.PageHeader);
base.SinglePage.Items.AddRange(convertedList);
@@ -186,6 +188,7 @@ namespace ICSharpCode.Reports.Core.Exporter
{
this.dataNavigator = this.dataManager.GetNavigator;
this.BuildNewPage();
+ this.SinglePage.IDataNavigator = this.dataNavigator;
this.dataNavigator.MoveNext();
BaseSection section = base.ReportModel.DetailSection;
diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Expressions/EvaluationHelper.cs b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Expressions/EvaluationHelper.cs
index 947bdb547d..57ec0a0e62 100644
--- a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Expressions/EvaluationHelper.cs
+++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Expressions/EvaluationHelper.cs
@@ -31,9 +31,11 @@ namespace ICSharpCode.Reports.Expressions.ReportingLanguage
throw new ArgumentNullException("singlePage");
}
+ /*
if (dataNavigator == null) {
throw new ArgumentNullException("dataNavigator");
}
+ * */
singlePage.IDataNavigator = dataNavigator;
IExpressionEvaluatorFacade evaluatorFacade = new ExpressionEvaluatorFacade(singlePage);
return evaluatorFacade;
diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/ReportViewer/ReportViewer.cs b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/ReportViewer/ReportViewer.cs
index 4dca5c147f..55bdd58e66 100644
--- a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/ReportViewer/ReportViewer.cs
+++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/ReportViewer/ReportViewer.cs
@@ -224,7 +224,7 @@ namespace ICSharpCode.Reports.Core.ReportViewer
private void GroupHeaderRendering (object sender, GroupHeaderEventArgs ghea)
{
- Console.WriteLine("ReportViewer - GroupHeaderRendering :");
+// Console.WriteLine("ReportViewer - GroupHeaderRendering :");
// BaseGroupedRow v = ghea.GroupHeader;
// v.BackColor = System.Drawing.Color.Red;
}
@@ -233,7 +233,7 @@ namespace ICSharpCode.Reports.Core.ReportViewer
private void GroupFooterRendering ( object sender, GroupFooterEventArgs gfea)
{
// Console.WriteLine();
- Console.WriteLine("ReportViewer - GroupFooterRendering :");
+// Console.WriteLine("ReportViewer - GroupFooterRendering :");
// var v = gfea.GroupFooter;
// v.BackColor = System.Drawing.Color.Red;
// BaseTextItem i = (BaseTextItem)v.Items[0];
@@ -243,7 +243,7 @@ namespace ICSharpCode.Reports.Core.ReportViewer
private void RowRendering (object sender,RowRenderEventArgs rrea)
{
- Console.WriteLine("ReportViewer - RowRendering :");
+ //Console.WriteLine("ReportViewer - RowRendering :");
}
#endregion