From 34305d2d6a81999d4b3bdaa15998084c6daa3116 Mon Sep 17 00:00:00 2001 From: Peter Forstmeier Date: Tue, 11 Feb 2014 21:05:57 +0100 Subject: [PATCH] DesignerAddin (ICSharpCode.ReportDesigner.addin) --- SharpDevelop.Tests.sln | 7 + .../Configuration/AssemblyInfo.cs | 16 ++ .../EmptyReport.xft | 20 ++ .../ICSharpCode.ReportingDesigner.addin | 217 ++++++++++++++++++ .../scr/DesignerBinding/DesignerBinding.cs | 60 +++++ .../ICSharpCode.ReportDesigner.addin | 9 +- .../ICSharpCode.Reports.Addin.csproj | 5 - .../TestView/TestWPFReportPreview.cs | 95 -------- .../SecondaryViews/WPFReportPreview.cs | 2 - 9 files changed, 325 insertions(+), 106 deletions(-) create mode 100644 src/AddIns/Misc/Reporting/ICSharpCode.Reporting.Addin/Configuration/AssemblyInfo.cs create mode 100644 src/AddIns/Misc/Reporting/ICSharpCode.Reporting.Addin/EmptyReport.xft create mode 100644 src/AddIns/Misc/Reporting/ICSharpCode.Reporting.Addin/ICSharpCode.ReportingDesigner.addin create mode 100644 src/AddIns/Misc/Reporting/ICSharpCode.Reporting.Addin/scr/DesignerBinding/DesignerBinding.cs delete mode 100644 src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/SecondaryViews/TestView/TestWPFReportPreview.cs diff --git a/SharpDevelop.Tests.sln b/SharpDevelop.Tests.sln index b34b871d81..b96a9fff6e 100644 --- a/SharpDevelop.Tests.sln +++ b/SharpDevelop.Tests.sln @@ -157,6 +157,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Reporting", "sr EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Reporting.Test", "src\AddIns\Misc\Reporting\ICSharpCode.Reporting\Test\ICSharpCode.Reporting.Test\ICSharpCode.Reporting.Test.csproj", "{97CA9CE5-B966-48DF-BB59-F00FFC534B1F}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Reporting.Addin", "src\AddIns\Misc\Reporting\ICSharpCode.Reporting.Addin\ICSharpCode.Reporting.Addin.csproj", "{0502FCF7-72F4-4587-936B-D0238CD0E072}" +EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Display Bindings", "Display Bindings", "{11BF9245-88A3-4A0A-9A8A-EC9D98036B0F}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AvalonEdit.AddIn", "src\AddIns\DisplayBindings\AvalonEdit.AddIn\AvalonEdit.AddIn.csproj", "{0162E499-42D0-409B-AA25-EED21F75336B}" @@ -507,6 +509,10 @@ Global {97CA9CE5-B966-48DF-BB59-F00FFC534B1F}.Debug|Any CPU.Build.0 = Debug|Any CPU {97CA9CE5-B966-48DF-BB59-F00FFC534B1F}.Release|Any CPU.ActiveCfg = Release|Any CPU {97CA9CE5-B966-48DF-BB59-F00FFC534B1F}.Release|Any CPU.Build.0 = Release|Any CPU + {0502FCF7-72F4-4587-936B-D0238CD0E072}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {0502FCF7-72F4-4587-936B-D0238CD0E072}.Debug|Any CPU.Build.0 = Debug|Any CPU + {0502FCF7-72F4-4587-936B-D0238CD0E072}.Release|Any CPU.ActiveCfg = Release|Any CPU + {0502FCF7-72F4-4587-936B-D0238CD0E072}.Release|Any CPU.Build.0 = Release|Any CPU {0162E499-42D0-409B-AA25-EED21F75336B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {0162E499-42D0-409B-AA25-EED21F75336B}.Debug|Any CPU.Build.0 = Debug|Any CPU {0162E499-42D0-409B-AA25-EED21F75336B}.Release|Any CPU.ActiveCfg = Release|Any CPU @@ -736,6 +742,7 @@ Global {D81F5C91-D7DB-46E5-BC99-49488FB6814C} = {FEDD3FD9-0480-43CC-913C-4E0876DDA852} {40CA84D4-ACFC-4646-9CDD-B87262D34093} = {FEDD3FD9-0480-43CC-913C-4E0876DDA852} {97CA9CE5-B966-48DF-BB59-F00FFC534B1F} = {FEDD3FD9-0480-43CC-913C-4E0876DDA852} + {0502FCF7-72F4-4587-936B-D0238CD0E072} = {FEDD3FD9-0480-43CC-913C-4E0876DDA852} {11BF9245-88A3-4A0A-9A8A-EC9D98036B0F} = {39327899-ED91-4F7F-988C-4FE4E17C014D} {0162E499-42D0-409B-AA25-EED21F75336B} = {11BF9245-88A3-4A0A-9A8A-EC9D98036B0F} {E618A9CD-A39F-4925-A538-E8A3FEF24E54} = {11BF9245-88A3-4A0A-9A8A-EC9D98036B0F} diff --git a/src/AddIns/Misc/Reporting/ICSharpCode.Reporting.Addin/Configuration/AssemblyInfo.cs b/src/AddIns/Misc/Reporting/ICSharpCode.Reporting.Addin/Configuration/AssemblyInfo.cs new file mode 100644 index 0000000000..aa3d0a9cc4 --- /dev/null +++ b/src/AddIns/Misc/Reporting/ICSharpCode.Reporting.Addin/Configuration/AssemblyInfo.cs @@ -0,0 +1,16 @@ +/* + * Created by SharpDevelop. + * User: Peter Forstmeier + * Date: 10.02.2014 + * Time: 20:24 + * + * To change this template use Tools | Options | Coding | Edit Standard Headers. + */ + +using System.Reflection; + +[assembly: AssemblyTitle("")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] \ No newline at end of file diff --git a/src/AddIns/Misc/Reporting/ICSharpCode.Reporting.Addin/EmptyReport.xft b/src/AddIns/Misc/Reporting/ICSharpCode.Reporting.Addin/EmptyReport.xft new file mode 100644 index 0000000000..d7c005713e --- /dev/null +++ b/src/AddIns/Misc/Reporting/ICSharpCode.Reporting.Addin/EmptyReport.xft @@ -0,0 +1,20 @@ + +?xml version="1.0"?> + + diff --git a/src/AddIns/Misc/Reporting/ICSharpCode.Reporting.Addin/ICSharpCode.ReportingDesigner.addin b/src/AddIns/Misc/Reporting/ICSharpCode.Reporting.Addin/ICSharpCode.ReportingDesigner.addin new file mode 100644 index 0000000000..fac39f8d3d --- /dev/null +++ b/src/AddIns/Misc/Reporting/ICSharpCode.Reporting.Addin/ICSharpCode.ReportingDesigner.addin @@ -0,0 +1,217 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/AddIns/Misc/Reporting/ICSharpCode.Reporting.Addin/scr/DesignerBinding/DesignerBinding.cs b/src/AddIns/Misc/Reporting/ICSharpCode.Reporting.Addin/scr/DesignerBinding/DesignerBinding.cs new file mode 100644 index 0000000000..7ab6164c2b --- /dev/null +++ b/src/AddIns/Misc/Reporting/ICSharpCode.Reporting.Addin/scr/DesignerBinding/DesignerBinding.cs @@ -0,0 +1,60 @@ +/* + * Created by SharpDevelop. + * User: Peter Forstmeier + * Date: 11.02.2014 + * Time: 20:19 + * + * To change this template use Tools | Options | Coding | Edit Standard Headers. + */ + +using System; +using System.IO; +using ICSharpCode.Core; +using ICSharpCode.SharpDevelop; +using ICSharpCode.SharpDevelop.Workbench; +namespace ICSharpCode.Reporting.Addin.DesignerBinding { + + + public class ReportDesignerBinding:IDisplayBinding { + + + #region IDisplayBinding implementation + + public bool IsPreferredBindingForFile(FileName fileName) + { + return true; + } + + public bool CanCreateContentForFile(FileName fileName) + { + return Path.GetExtension(fileName).Equals(".srd", StringComparison.OrdinalIgnoreCase); + } + + public double AutoDetectFileContent(FileName fileName, System.IO.Stream fileContent, string detectedMimeType) + { + throw new System.NotImplementedException(); + } + + public IViewContent CreateContentForFile(OpenedFile file) + { + MessageService.ShowMessage("ReportDesigner not available at the Moment","New ReportDesigner"); + return null; + /* + if (file.IsDirty) { + var cmd = new ReportWizardCommand(file); + cmd.Run(); + if (cmd.Canceled) { + return null; + } + file.SetData(cmd.GeneratedReport.ToArray()); + } + var viewCmd = new CreateDesignViewCommand(file); + viewCmd.Run(); + return viewCmd.DesignerView; + */ + + } + + #endregion + } +} \ No newline at end of file diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/ICSharpCode.ReportDesigner.addin b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/ICSharpCode.ReportDesigner.addin index 60b527d591..19f93149b5 100644 --- a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/ICSharpCode.ReportDesigner.addin +++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/ICSharpCode.ReportDesigner.addin @@ -20,13 +20,13 @@ - + @@ -182,14 +182,15 @@ label="${res:SharpReport.FieldsExplorer.Parameters}" class="ICSharpCode.Reports.Addin.Commands.ParameterEditorCommand"/> + - + diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/ICSharpCode.Reports.Addin.csproj b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/ICSharpCode.Reports.Addin.csproj index b411bcfb17..515cd7aa1d 100644 --- a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/ICSharpCode.Reports.Addin.csproj +++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/ICSharpCode.Reports.Addin.csproj @@ -260,7 +260,6 @@ ReportViewerSecondaryView.cs - @@ -335,10 +334,6 @@ ICSharpCode.Data.SQLServer False - - {40CA84D4-ACFC-4646-9CDD-B87262D34093} - ICSharpCode.Reporting - {4B2239FF-8FD6-431D-9D22-1B8049BA6917} ICSharpCode.Reports.Core diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/SecondaryViews/TestView/TestWPFReportPreview.cs b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/SecondaryViews/TestView/TestWPFReportPreview.cs deleted file mode 100644 index 3f3f36f4c5..0000000000 --- a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/SecondaryViews/TestView/TestWPFReportPreview.cs +++ /dev/null @@ -1,95 +0,0 @@ -// Copyright (c) 2014 AlphaSierraPapa for the SharpDevelop Team -// -// Permission is hereby granted, free of charge, to any person obtaining a copy of this -// software and associated documentation files (the "Software"), to deal in the Software -// without restriction, including without limitation the rights to use, copy, modify, merge, -// publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons -// to whom the Software is furnished to do so, subject to the following conditions: -// -// The above copyright notice and this permission notice shall be included in all copies or -// substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, -// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR -// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE -// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR -// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -// DEALINGS IN THE SOFTWARE. - -using System; -using System.Collections.ObjectModel; -using System.Xml; - -using ICSharpCode.Reporting; -using ICSharpCode.Reporting.Interfaces; -using ICSharpCode.Reporting.Items; -using ICSharpCode.Reporting.PageBuilder.ExportColumns; -using ICSharpCode.Reporting.WpfReportViewer; -using ICSharpCode.Reporting.Xml; -using ICSharpCode.SharpDevelop; -using ICSharpCode.SharpDevelop.Workbench; - -namespace ICSharpCode.Reports.Addin.SecondaryViews -{ - /// - /// Description of WPFReportPreview. - /// - public class TestWPFReportPreview: AbstractSecondaryViewContent - { - readonly ReportDesignerLoader designerLoader; - - IWpfReportViewer viewer; - -// IExportRunner exportRunner = new ExportRunner(); - - public TestWPFReportPreview(ReportDesignerLoader loader,IViewContent content):base(content) - { - this.designerLoader = loader; - viewer = new ICSharpCode.Reporting.WpfReportViewer.WpfReportViewer(); - base.TabPageText = "TestWpf View"; - Pages = new Collection(); - } - - - public Collection Pages{get;private set;} - - - protected override void LoadFromPrimary() - { - Pages.Clear(); - var xmDoc = designerLoader.CreateXmlModel(); - var modulLoader = new ModelLoader(); - var reportModel = (ReportModel)modulLoader.Load(xmDoc.DocumentElement); - - var reportingFactory = new ReportingFactory(); - var reportCreator = reportingFactory.ReportCreator(reportModel); - var previewViewModel = new PreviewViewModel (reportModel.ReportSettings,reportCreator.Pages); - reportCreator.BuildExportList(); - var p = new PreviewViewModel (reportModel.ReportSettings,reportCreator.Pages); - viewer.SetBinding(previewViewModel); - //Missing -// var reportCreator = reportingFactory.ReportCreator(model); -// if (reportCreator == null){ -// SD.MessageService.ShowWarning(String.Format("Cannot run {0} from Designer", -// GlobalEnums.PushPullModel.PushData.ToString())); -// return; -// } -// reportCreator.BuildExportList(); -// -// PreviewViewModel previewViewModel = new PreviewViewModel (model.ReportSettings,reportCreator.Pages); -// viewer.SetBinding(previewViewModel); - } - - protected override void SaveToPrimary() - { -// throw new NotImplementedException(); - } - - - public override object Control { - get { - return viewer; - } - } - } -} diff --git a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/SecondaryViews/WPFReportPreview.cs b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/SecondaryViews/WPFReportPreview.cs index fed724e132..62844968cc 100644 --- a/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/SecondaryViews/WPFReportPreview.cs +++ b/src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/SecondaryViews/WPFReportPreview.cs @@ -17,14 +17,12 @@ // DEALINGS IN THE SOFTWARE. using System; -using ICSharpCode.Reporting.Xml; using ICSharpCode.Reports.Addin.Commands; using ICSharpCode.Reports.Core; using ICSharpCode.Reports.Core.Exporter.ExportRenderer; using ICSharpCode.Reports.Core.Globals; using ICSharpCode.Reports.Core.WpfReportViewer; using ICSharpCode.SharpDevelop; -using ICSharpCode.SharpDevelop.Gui; using ICSharpCode.SharpDevelop.Workbench; namespace ICSharpCode.Reports.Addin.SecondaryViews