21 changed files with 269 additions and 99 deletions
@ -1,36 +0,0 @@
@@ -1,36 +0,0 @@
|
||||
/* |
||||
* Created by SharpDevelop. |
||||
* User: Peter Forstmeier |
||||
* Date: 22.04.2013 |
||||
* Time: 19:11 |
||||
* |
||||
* To change this template use Tools | Options | Coding | Edit Standard Headers. |
||||
*/ |
||||
using System; |
||||
using ICSharpCode.Reporting.Interfaces; |
||||
using ICSharpCode.Reporting.Items; |
||||
using ICSharpCode.Reporting.PageBuilder.ExportColumns; |
||||
|
||||
namespace ICSharpCode.Reporting.Arrange |
||||
{ |
||||
/// <summary>
|
||||
/// Description of ArrangeStrategy.
|
||||
/// </summary>
|
||||
public interface IArrangeStrategy |
||||
{ |
||||
void Arrange(IPrintableObject reportItem); |
||||
} |
||||
|
||||
|
||||
public class ContainerArrangeStrategy:IArrangeStrategy |
||||
{ |
||||
public ContainerArrangeStrategy() |
||||
{ |
||||
} |
||||
|
||||
public void Arrange(IPrintableObject reportItem) |
||||
{ |
||||
Console.WriteLine("Arrange {0}",reportItem.Name); |
||||
} |
||||
} |
||||
} |
||||
@ -0,0 +1,48 @@
@@ -0,0 +1,48 @@
|
||||
/* |
||||
* Created by SharpDevelop. |
||||
* User: Peter Forstmeier |
||||
* Date: 22.04.2013 |
||||
* Time: 19:11 |
||||
* |
||||
* To change this template use Tools | Options | Coding | Edit Standard Headers. |
||||
*/ |
||||
using System; |
||||
using System.Drawing; |
||||
using ICSharpCode.Reporting.Globals; |
||||
using ICSharpCode.Reporting.Interfaces; |
||||
using ICSharpCode.Reporting.Items; |
||||
using ICSharpCode.Reporting.PageBuilder.ExportColumns; |
||||
|
||||
namespace ICSharpCode.Reporting.Arrange |
||||
{ |
||||
/// <summary>
|
||||
/// Description of ArrangeStrategy.
|
||||
/// </summary>
|
||||
public interface IArrangeStrategy |
||||
{ |
||||
void Arrange(IPrintableObject reportItem,Graphics graphics); |
||||
} |
||||
|
||||
|
||||
internal class ContainerArrangeStrategy:IArrangeStrategy |
||||
{ |
||||
public ContainerArrangeStrategy() |
||||
{ |
||||
} |
||||
|
||||
public void Arrange(IPrintableObject reportItem,Graphics graphics) |
||||
{ |
||||
Console.WriteLine("Arrange Container {0}",reportItem.Name); |
||||
} |
||||
} |
||||
|
||||
internal class TextBasedArrangeStrategy:IArrangeStrategy |
||||
{ |
||||
|
||||
public void Arrange(IPrintableObject reportItem, Graphics graphics) |
||||
{ |
||||
Console.WriteLine("\tArrange TextBasedItem {0}",reportItem.Name); |
||||
MeasurementService.Measure((ITextItem)reportItem,graphics); |
||||
} |
||||
} |
||||
} |
||||
@ -0,0 +1,40 @@
@@ -0,0 +1,40 @@
|
||||
/* |
||||
* Created by SharpDevelop. |
||||
* User: Peter Forstmeier |
||||
* Date: 30.04.2013 |
||||
* Time: 19:44 |
||||
* |
||||
* To change this template use Tools | Options | Coding | Edit Standard Headers. |
||||
*/ |
||||
using System; |
||||
using System.Drawing; |
||||
using ICSharpCode.Reporting.Items; |
||||
|
||||
namespace ICSharpCode.Reporting.Globals |
||||
{ |
||||
/// <summary>
|
||||
/// Description of MeasurementService.
|
||||
/// </summary>
|
||||
internal class MeasurementService |
||||
{ |
||||
|
||||
public MeasurementService() |
||||
{ |
||||
} |
||||
|
||||
public static Size Measure (ITextItem item,Graphics graphics) { |
||||
|
||||
|
||||
if (!String.IsNullOrEmpty(item.Text)) { |
||||
SizeF size = graphics.MeasureString(item.Text.TrimEnd(), |
||||
item.Font, |
||||
item.Size.Width); |
||||
var i = (int)size.Height/item.Font.Height; |
||||
Console.WriteLine("\t\tMeasure <{0}> - {1} - {2}",item.Text,item.Size,size); |
||||
return size.ToSize(); |
||||
} |
||||
|
||||
return item.Size; |
||||
} |
||||
} |
||||
} |
||||
@ -0,0 +1,87 @@
@@ -0,0 +1,87 @@
|
||||
// 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 ICSharpCode.Core; |
||||
using ICSharpCode.Reports.Addin.Commands; |
||||
using ICSharpCode.Reports.Core; |
||||
using ICSharpCode.Reports.Core.Globals; |
||||
using ICSharpCode.SharpDevelop; |
||||
using ICSharpCode.SharpDevelop.Gui; |
||||
using ICSharpCode.SharpDevelop.Workbench; |
||||
|
||||
namespace ICSharpCode.Reports.Addin.SecondaryViews.TestView |
||||
{ |
||||
/// <summary>
|
||||
/// Description of ReportViewerSecondaryView.
|
||||
/// </summary>
|
||||
public class TestSecondaryView: AbstractSecondaryViewContent |
||||
{ |
||||
ReportDesignerLoader designerLoader; |
||||
ICSharpCode.Reports.Core.ReportViewer.PreviewControl control; |
||||
|
||||
public TestSecondaryView(ReportDesignerLoader designerLoader,IViewContent content):base(content) |
||||
{ |
||||
if (designerLoader == null) { |
||||
throw new ArgumentNullException("designerLoader"); |
||||
} |
||||
if (content == null) { |
||||
throw new ArgumentNullException("content"); |
||||
} |
||||
this.designerLoader = designerLoader; |
||||
this.control = new ICSharpCode.Reports.Core.ReportViewer.PreviewControl(); |
||||
this.control.Messages = new ReportViewerMessages(); |
||||
this.control.PreviewLayoutChanged += OnPreviewLayoutChanged; |
||||
base.TabPageText = "TestView"; |
||||
} |
||||
|
||||
|
||||
private void OnPreviewLayoutChanged (object sender, EventArgs e) |
||||
{ |
||||
LoadFromPrimary(); |
||||
} |
||||
|
||||
#region overrides
|
||||
|
||||
protected override void LoadFromPrimary() |
||||
{ |
||||
ReportModel model = designerLoader.CreateRenderableModel(); |
||||
AbstractPreviewCommand cmd = null; |
||||
|
||||
switch (model.DataModel) { |
||||
case GlobalEnums.PushPullModel.FormSheet : { |
||||
cmd = new FormSheetToReportViewerCommand (model,control); |
||||
break; |
||||
} |
||||
case GlobalEnums.PushPullModel.PullData:{ |
||||
cmd = new PullModelToReportViewerCommand(model,control); |
||||
break; |
||||
} |
||||
case GlobalEnums.PushPullModel.PushData:{ |
||||
cmd = new PushModelToReportViewerCommand(model,control); |
||||
break; |
||||
} |
||||
default: |
||||
throw new InvalidReportModelException(); |
||||
} |
||||
cmd.Run(); |
||||
} |
||||
|
||||
|
||||
protected override void SaveToPrimary() |
||||
{ |
||||
// throw new NotImplementedException();
|
||||
} |
||||
|
||||
#endregion
|
||||
|
||||
|
||||
|
||||
public override object Control { |
||||
get { |
||||
return this.control; |
||||
} |
||||
} |
||||
|
||||
} |
||||
} |
||||
Loading…
Reference in new issue