Browse Source

RightToLeft

pull/15/head^2
peterforstmeier 14 years ago
parent
commit
e16ac81c82
  1. 5
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/BaseItems/BaseSection.cs
  2. 14
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Collections/Collections.cs
  3. 20
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/BasePager.cs
  4. 32
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/ExportHelper.cs
  5. 2
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/FormPageBuilder.cs

5
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/BaseItems/BaseSection.cs

@ -133,6 +133,11 @@ namespace ICSharpCode.Reports.Core @@ -133,6 +133,11 @@ namespace ICSharpCode.Reports.Core
#endregion
public Size MeasureOverride (Size size)
{
return Size.Empty;
}
#region System.IDisposable interface implementation
protected override void Dispose(bool disposing)

14
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Collections/Collections.cs

@ -33,21 +33,21 @@ namespace ICSharpCode.Reports.Core{ @@ -33,21 +33,21 @@ namespace ICSharpCode.Reports.Core{
/// (Line by Line)
/// </summary>
internal class LocationSorter : IComparer<BaseReportItem> {
public int Compare(BaseReportItem x, BaseReportItem y){
if (x == null){
if (y == null){
public int Compare(BaseReportItem lhs, BaseReportItem rhs){
if (lhs == null){
if (rhs == null){
return 0;
}
return -1;
}
if (y == null){
if (rhs == null){
return 1;
}
if (x.Location.Y == y.Location.Y){
return x.Location.X - y.Location.X;
if (lhs.Location.Y == rhs.Location.Y){
return lhs.Location.X - rhs.Location.X;
}
return x.Location.Y - y.Location.Y;
return lhs.Location.Y - rhs.Location.Y;
}
}

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

@ -89,9 +89,22 @@ namespace ICSharpCode.Reports.Core.Exporter @@ -89,9 +89,22 @@ namespace ICSharpCode.Reports.Core.Exporter
if (section.Items.Count > 0)
{
Size sectionSize = section.Size;
foreach (var element in section.Items) {
Console.WriteLine(element.Location);
}
section.Items.SortByLocation();
Console.WriteLine("--");
foreach (var element in section.Items) {
Console.WriteLine(element.Location);
}
section.Items.ForEach(delegate(BaseReportItem item)
{
Console.WriteLine(item.Location);
});
var h = section.Items.FindHighestElement();
IExpressionEvaluatorFacade evaluator = EvaluationHelper.CreateEvaluator(this.SinglePage,this.SinglePage.IDataNavigator);
Rectangle desiredRectangle = LayoutHelper.CalculateSectionLayout(this.Graphics,section);
@ -105,10 +118,11 @@ namespace ICSharpCode.Reports.Core.Exporter @@ -105,10 +118,11 @@ namespace ICSharpCode.Reports.Core.Exporter
{
ISimpleContainer simpleContainer = item as ISimpleContainer;
Offset = new Point(Offset.X,Offset.Y + gapCalculator.GapBetweenItems[i] );
// Offset = new Point(Offset.X,Offset.Y + gapCalculator.GapBetweenItems[i] );
if (simpleContainer != null)
{
Offset = new Point(Offset.X,Offset.Y + gapCalculator.GapBetweenItems[i] );
var containerSize = simpleContainer.Size;
EvaluationHelper.EvaluateReportItems(evaluator,simpleContainer.Items);

32
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/ExportHelper.cs

@ -58,38 +58,6 @@ namespace ICSharpCode.Reports.Core.Exporter @@ -58,38 +58,6 @@ namespace ICSharpCode.Reports.Core.Exporter
return col;
}
/*
public static Point ConvertPlainCollection_2 (ExportContainer container,ReportItemCollection items,Point offset)
{
if (items == null) {
throw new ArgumentNullException("items");
}
ExporterCollection col = new ExporterCollection();
Point o = offset;
if (items.Count > 0) {
foreach(BaseReportItem item in items)
{
container.Items.Add(ExportHelper.ConvertLineItem(item,offset));
}
Size max = Size.Empty;
foreach (var element in items) {
if (element.Size.Height > max.Height) {
max = element.Size;
}
}
if (container.StyleDecorator.Size.Height > max.Height) {
offset = new Point (o.X,o.Y + container.StyleDecorator.Size.Height + GlobalValues.GapBetweenContainer);
}
}
return offset;
}
*/
public static ExportContainer ConvertToContainer (ISimpleContainer container,Point offset)
{

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

@ -70,7 +70,7 @@ namespace ICSharpCode.Reports.Core.Exporter @@ -70,7 +70,7 @@ namespace ICSharpCode.Reports.Core.Exporter
base.BuildDetailInternal(section);
// section.SectionOffset = base.SinglePage.SectionBounds.DetailArea.Top;
SectionBounds.Offset = new Point(SectionBounds.Offset.X,base.ReportModel.DetailSection.Location.Y);
ExporterCollection convertedList = convertedList = base.ConvertSection (base.ReportModel.DetailSection,0);
ExporterCollection convertedList = base.ConvertSection (base.ReportModel.DetailSection,0);
base.SinglePage.Items.AddRange(convertedList);
}

Loading…
Cancel
Save