|
|
@ -139,37 +139,31 @@ namespace ICSharpCode.Reporting.WpfReportViewer.Visitor |
|
|
|
{ |
|
|
|
{ |
|
|
|
var border = CreateBorder(exportRectangle); |
|
|
|
var border = CreateBorder(exportRectangle); |
|
|
|
CanvasHelper.SetPosition(border, new Point(0,0)); |
|
|
|
CanvasHelper.SetPosition(border, new Point(0,0)); |
|
|
|
var sp = new StackPanel(); |
|
|
|
var panel = new StackPanel(); |
|
|
|
sp.Orientation = Orientation.Horizontal; |
|
|
|
panel.Orientation = Orientation.Horizontal; |
|
|
|
foreach (var element in exportRectangle.ExportedItems) { |
|
|
|
foreach (var element in exportRectangle.ExportedItems) { |
|
|
|
var acceptor = element as IAcceptor; |
|
|
|
var acceptor = element as IAcceptor; |
|
|
|
acceptor.Accept(this); |
|
|
|
acceptor.Accept(this); |
|
|
|
sp.Children.Add(UIElement); |
|
|
|
panel.Children.Add(UIElement); |
|
|
|
} |
|
|
|
} |
|
|
|
border.Child = sp; |
|
|
|
border.Child = panel; |
|
|
|
UIElement = border; |
|
|
|
UIElement = border; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public override void Visit(ExportCircle exportCircle) |
|
|
|
public override void Visit(ExportCircle exportCircle) |
|
|
|
{ |
|
|
|
{ |
|
|
|
var pen = FixedDocumentCreator.CreateWpfPen(exportCircle); |
|
|
|
var containerCanvas = new Canvas(); |
|
|
|
var rad = CalcRad(exportCircle.Size); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var visual = new DrawingVisual(); |
|
|
|
|
|
|
|
using (var dc = visual.RenderOpen()){ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
dc.DrawEllipse(FixedDocumentCreator.ConvertBrush(exportCircle.BackColor), |
|
|
|
|
|
|
|
pen, |
|
|
|
|
|
|
|
new Point(exportCircle.Location.X + rad.X, |
|
|
|
|
|
|
|
exportCircle.Location.Y + rad.Y), |
|
|
|
|
|
|
|
rad.X, |
|
|
|
|
|
|
|
rad.Y); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var drawingElement = CircleVisual(exportCircle); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
containerCanvas.Children.Add(drawingElement); |
|
|
|
|
|
|
|
foreach (var element in exportCircle.ExportedItems) { |
|
|
|
|
|
|
|
var acceptor = element as IAcceptor; |
|
|
|
|
|
|
|
acceptor.Accept(this); |
|
|
|
|
|
|
|
containerCanvas.Children.Add(UIElement); |
|
|
|
} |
|
|
|
} |
|
|
|
var dragingElement = new DrawingElement(visual); |
|
|
|
UIElement = containerCanvas; |
|
|
|
UIElement = dragingElement; |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -183,6 +177,22 @@ namespace ICSharpCode.Reporting.WpfReportViewer.Visitor |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
DrawingElement CircleVisual(GraphicsContainer circle){ |
|
|
|
|
|
|
|
var pen = FixedDocumentCreator.CreateWpfPen(circle); |
|
|
|
|
|
|
|
var rad = CalcRadius(circle.Size); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var visual = new DrawingVisual(); |
|
|
|
|
|
|
|
using (var dc = visual.RenderOpen()){ |
|
|
|
|
|
|
|
dc.DrawEllipse(FixedDocumentCreator.ConvertBrush(circle.BackColor), |
|
|
|
|
|
|
|
pen, |
|
|
|
|
|
|
|
new Point( rad.X,rad.Y), |
|
|
|
|
|
|
|
rad.X, |
|
|
|
|
|
|
|
rad.Y); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
return new DrawingElement(visual); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Border CreateBorder(IExportColumn exportColumn) |
|
|
|
Border CreateBorder(IExportColumn exportColumn) |
|
|
|
{ |
|
|
|
{ |
|
|
|
double bT; |
|
|
|
double bT; |
|
|
@ -202,7 +212,7 @@ namespace ICSharpCode.Reporting.WpfReportViewer.Visitor |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
static Point CalcRad(System.Drawing.Size size) { |
|
|
|
static Point CalcRadius(System.Drawing.Size size) { |
|
|
|
return new Point(size.Width /2,size.Height /2); |
|
|
|
return new Point(size.Width /2,size.Height /2); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
@ -212,7 +222,4 @@ namespace ICSharpCode.Reporting.WpfReportViewer.Visitor |
|
|
|
|
|
|
|
|
|
|
|
public FixedPage FixedPage {get; private set;} |
|
|
|
public FixedPage FixedPage {get; private set;} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|