Browse Source

CanGrow for Table

git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/branches/reports@6092 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
pull/1/head
Peter Forstmeier 16 years ago
parent
commit
3afedf998d
  1. 6
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportDesignerView.cs
  2. 23
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/BaseClasses/Printing/Layouter.cs
  3. 1
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/BaseClasses/Printing/PrintHelper.cs
  4. 1
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/BaseClasses/Printing/StandardPrinter.cs
  5. 3
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Printing/AbstractDataRenderer.cs
  6. 6
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Printing/RenderDataReport.cs

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

@ -311,6 +311,7 @@ namespace ICSharpCode.Reports.Addin
#endregion #endregion
#region SelectionService #region SelectionService
private void SelectionChangedHandler(object sender, EventArgs args) private void SelectionChangedHandler(object sender, EventArgs args)
@ -327,6 +328,7 @@ namespace ICSharpCode.Reports.Addin
#endregion #endregion
#region Transaction #region Transaction
bool shouldUpdateSelectableObjects; bool shouldUpdateSelectableObjects;
@ -345,6 +347,7 @@ namespace ICSharpCode.Reports.Addin
#endregion #endregion
#region ComponentChangeService #region ComponentChangeService
@ -386,6 +389,7 @@ namespace ICSharpCode.Reports.Addin
#endregion #endregion
#region unload Designer #region unload Designer
/* /*
void UnloadDesigner() void UnloadDesigner()
@ -446,6 +450,7 @@ namespace ICSharpCode.Reports.Addin
*/ */
#endregion #endregion
#region HasPropertyContainer implementation #region HasPropertyContainer implementation
private void UpdatePropertyPad() private void UpdatePropertyPad()
@ -618,6 +623,7 @@ namespace ICSharpCode.Reports.Addin
return ReportingSideTabProvider.ReportingSideBar; return ReportingSideTabProvider.ReportingSideBar;
} }
} }
#endregion #endregion

23
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/BaseClasses/Printing/Layouter.cs

@ -33,7 +33,6 @@ namespace ICSharpCode.Reports.Core.BaseClasses.Printing
} }
BaseReportItem containerItem = container as BaseReportItem; BaseReportItem containerItem = container as BaseReportItem;
// container.Items.SortByLocation();
Rectangle desiredContainerRectangle = new Rectangle (containerItem.Location,containerItem.Size); Rectangle desiredContainerRectangle = new Rectangle (containerItem.Location,containerItem.Size);
System.Collections.Generic.IEnumerable<BaseReportItem> canGrowShrinkCollection = from bt in container.Items where bt.CanGrow == true select bt; System.Collections.Generic.IEnumerable<BaseReportItem> canGrowShrinkCollection = from bt in container.Items where bt.CanGrow == true select bt;
@ -42,7 +41,8 @@ namespace ICSharpCode.Reports.Core.BaseClasses.Printing
int extend = containerItem.Size.Height - canGrowShrinkCollection.First().Size.Height; int extend = containerItem.Size.Height - canGrowShrinkCollection.First().Size.Height;
Rectangle surroundingRec = FindSurroundingRectangle(graphics,canGrowShrinkCollection); Rectangle surroundingRec = FindSurroundingRectangle(graphics,canGrowShrinkCollection);
if (surroundingRec.Height > desiredContainerRectangle.Height) { if (surroundingRec.Height > desiredContainerRectangle.Height)
{
desiredContainerRectangle = new Rectangle(containerItem.Location.X, desiredContainerRectangle = new Rectangle(containerItem.Location.X,
containerItem .Location.Y, containerItem .Location.Y,
containerItem .Size.Width, containerItem .Size.Width,
@ -85,28 +85,11 @@ namespace ICSharpCode.Reports.Core.BaseClasses.Printing
} }
/*
private static Rectangle FindSurroundingRectangle_2 (Graphics graphics,IEnumerable<BaseReportItem> canGrowShrinkCollection)
{
int top = int.MaxValue;
Rectangle rec = new Rectangle(canGrowShrinkCollection.First().Location.X,
canGrowShrinkCollection.First().Location.Y,
canGrowShrinkCollection.First().Size.Width,
canGrowShrinkCollection.First().Size.Height);
foreach (BaseReportItem elemToLayout in canGrowShrinkCollection) {
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));
top = Math.Min(top, elemToLayout.Location.Y);
}
return rec;
}
*/
private static Rectangle FindSurroundingRectangle (Graphics graphics,IEnumerable<BaseReportItem> canGrowShrinkCollection) private static Rectangle FindSurroundingRectangle (Graphics graphics,IEnumerable<BaseReportItem> canGrowShrinkCollection)
{ {
int top = int.MaxValue; int top = int.MaxValue;
Rectangle rec = new Rectangle(canGrowShrinkCollection.First().Location.X, Rectangle rec = new Rectangle(canGrowShrinkCollection.First().Location.X,
canGrowShrinkCollection.First().Location.Y, canGrowShrinkCollection.First().Location.Y,
canGrowShrinkCollection.First().Size.Width, canGrowShrinkCollection.First().Size.Width,

1
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/BaseClasses/Printing/PrintHelper.cs

@ -38,6 +38,7 @@ namespace ICSharpCode.Reports.Core.BaseClasses.Printing
#endregion #endregion
#region AdjustParentInSection #region AdjustParentInSection
public static void AdjustParent (BaseReportItem parent,ReportItemCollection items) public static void AdjustParent (BaseReportItem parent,ReportItemCollection items)

1
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/BaseClasses/Printing/StandardPrinter.cs

@ -93,6 +93,7 @@ namespace ICSharpCode.Reports.Core.BaseClasses.Printing
lineItem.StyleDecorator.DisplayRectangle = new Rectangle(lineItem.StyleDecorator.Location, lineItem.StyleDecorator.DisplayRectangle = new Rectangle(lineItem.StyleDecorator.Location,
lineItem.StyleDecorator.Size); lineItem.StyleDecorator.Size);
} }
return lineItem; return lineItem;
} }

3
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Printing/AbstractDataRenderer.cs

@ -81,6 +81,7 @@ namespace ICSharpCode.Reports.Core
if (PrintHelper.IsTextOnlyRow(row) ) if (PrintHelper.IsTextOnlyRow(row) )
{ {
PrintHelper.SetLayoutForRow(rpea.PrintPageEventArgs.Graphics,base.Layout,row);
Rectangle r = StandardPrinter.RenderContainer(row,Evaluator,currentPosition,rpea); Rectangle r = StandardPrinter.RenderContainer(row,Evaluator,currentPosition,rpea);
currentPosition =PrintHelper. ConvertRectangleToCurentPosition (r); currentPosition =PrintHelper. ConvertRectangleToCurentPosition (r);
@ -102,7 +103,9 @@ namespace ICSharpCode.Reports.Core
} }
this.dataNavigator.Fill(row.Items); this.dataNavigator.Fill(row.Items);
PrintHelper.SetLayoutForRow(rpea.PrintPageEventArgs.Graphics,base.Layout,row);
Rectangle r = StandardPrinter.RenderContainer(row,Evaluator,currentPosition,rpea); Rectangle r = StandardPrinter.RenderContainer(row,Evaluator,currentPosition,rpea);
currentPosition = PrintHelper.ConvertRectangleToCurentPosition (r); currentPosition = PrintHelper.ConvertRectangleToCurentPosition (r);
currentPosition = new Point(parent.Location.X + row.Location.X,currentPosition.Y); currentPosition = new Point(parent.Location.X + row.Location.X,currentPosition.Y);

6
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Printing/RenderDataReport.cs

@ -155,7 +155,8 @@ namespace ICSharpCode.Reports.Core {
ITableContainer tableContainer = base.CurrentSection.Items[0] as ITableContainer; ITableContainer tableContainer = base.CurrentSection.Items[0] as ITableContainer;
// branch to render table's etc // branch to render table's etc
if (tableContainer != null) { if (tableContainer != null)
{
tableContainer.DataNavigator = nav; tableContainer.DataNavigator = nav;
tableContainer.Parent = base.CurrentSection; tableContainer.Parent = base.CurrentSection;
tableContainer.ExpressionEvaluatorFacade = base.Evaluator; tableContainer.ExpressionEvaluatorFacade = base.Evaluator;
@ -166,11 +167,8 @@ namespace ICSharpCode.Reports.Core {
} }
//tableContainer.RenderTable(this.CurrentSection,this.SectionBounds,rpea,this.Layout);
base.RenderTable (base.CurrentSection,tableContainer,rpea); base.RenderTable (base.CurrentSection,tableContainer,rpea);
this.ReportDocument.DetailsDone = true; this.ReportDocument.DetailsDone = true;
} }

Loading…
Cancel
Save