Browse Source

Merge remote branch 'origin/reports'

pull/1/head
Daniel Grunwald 15 years ago
parent
commit
b6cdd5a767
  1. 544
      SharpDevelop.Tests.sln
  2. 9
      src/AddIns/DisplayBindings/Data/ICSharpCode.Data.Addin/ICSharpCode.Data.addin
  3. 28
      src/AddIns/DisplayBindings/Data/ICSharpCode.Data.Addin/Templates/Files/CSharp.EDMX.xft
  4. 1
      src/AddIns/DisplayBindings/Data/ICSharpCode.Data.Core.UI/ICSharpCode.Data.Core.UI.csproj
  5. 41
      src/AddIns/DisplayBindings/Data/ICSharpCode.Data.Core.UI/UserControls/WizardErrorUserControl.cs
  6. 21
      src/AddIns/DisplayBindings/Data/ICSharpCode.Data.Core.UI/UserControls/WizardUserControl.cs
  7. 68
      src/AddIns/DisplayBindings/Data/ICSharpCode.Data.Core.UI/Windows/WizardWindowInnards.xaml.cs
  8. 3
      src/AddIns/DisplayBindings/Data/ICSharpCode.Data.Core/DatabaseObjects/Column.cs
  9. 16
      src/AddIns/DisplayBindings/Data/ICSharpCode.Data.Core/DatabaseObjects/DatabaseObjectsCollection.cs
  10. 11
      src/AddIns/DisplayBindings/Data/ICSharpCode.Data.Core/DatabaseObjects/View.cs
  11. 1
      src/AddIns/DisplayBindings/Data/ICSharpCode.Data.Core/Interfaces/IView.cs
  12. 1
      src/AddIns/DisplayBindings/Data/ICSharpCode.Data.DemoApp/ICSharpCode.Data.DemoApp.csproj
  13. 65
      src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core.UI/DisplayBinding/EDMDesignerViewContent.cs
  14. 16
      src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core.UI/UserControls/CSDLType/TypeBaseDesigner.xaml.cs
  15. 11
      src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core.UI/UserControls/DesignerCanvas.cs
  16. 4
      src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core.UI/UserControls/Relations/Association.xaml.cs
  17. 2
      src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core/EDMObjects/Common/Cardinality.cs
  18. 3
      src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core/EDMObjects/Common/EDMObjectBase.cs
  19. 72
      src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core/EDMObjects/Designer/ChangeWatcher/EDMDesignerChangeWatcher.cs
  20. 17
      src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core/EDMObjects/Designer/ChangeWatcher/IEDMDesignerChangeWatcherObserver.cs
  21. 32
      src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core/EDMObjects/SSDL/EntityType/EntityType.cs
  22. 13
      src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core/ICSharpCode.Data.EDMDesigner.Core.csproj
  23. 205
      src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core/IO/CSDLIO.cs
  24. 105
      src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core/IO/DesignerIO.cs
  25. 122
      src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core/IO/EDMXIO.cs
  26. 51
      src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core/IO/EntityModelCodeGenerator.cs
  27. 35
      src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core/IO/IO.cs
  28. 305
      src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core/IO/MSLIO.cs
  29. 48
      src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core/IO/SSDLIO.cs
  30. 43
      src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core/ObjectModelConverters/EDMConverter.cs
  31. 39
      src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core/ObjectModelConverters/ObjectModelConverterException.cs
  32. 4
      src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core/ObjectModelConverters/SSDLConverter.cs
  33. 2
      src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core/Windows/EDMWizard/ChooseDatabaseObjectsUserControl.xaml.cs
  34. 14
      src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core/Windows/EDMWizard/EDMWizardErrorUserControl.xaml
  35. 44
      src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core/Windows/EDMWizard/EDMWizardErrorUserControl.xaml.cs
  36. 24
      src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core/Windows/EDMWizard/EDMWizardWindow.cs
  37. 23
      src/AddIns/DisplayBindings/Data/ICSharpCode.Data.SQLServer/SQLServerDatabaseDriver.cs
  38. 4
      src/AddIns/DisplayBindings/Data/ICSharpCode.Data.sln
  39. 2
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/ICSharpCode.Reports.Addin.csproj
  40. 4
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/Designer/TextBasedDesignerActionList.cs
  41. 2
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/Designer/TextItemDesigner.cs
  42. 43
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/Dialogs/DataTypeStringConverter.cs
  43. 48
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/Dialogs/FormatStringConverte.cs
  44. 11
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/BaseTextItem.cs
  45. 2
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Test/Dialogs/DummyEditorDialog.cs
  46. 4
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Test/Dialogs/TextEditorDialogFixture.cs
  47. 4
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/ICSharpCode.Reports.Core.csproj
  48. 65
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/BaseClasses/PageInfo.cs
  49. 2
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/BaseClasses/Printing/PrintHelper.cs
  50. 41
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/BaseClasses/Printing/StandardPrinter.cs
  51. 4
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/BaseClasses/SectionBounds.cs
  52. 51
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/BaseClasses/SinglePage.cs
  53. 1
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/BaseItems/IExpression.cs
  54. 2
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Dialogs/DefaultTextEditor.cs
  55. 8
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Dialogs/EditorDialog.cs
  56. 24
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Dialogs/IStringBasedEditorDialog.cs
  57. 21
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/BasePager.cs
  58. 1
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/Converters/BaseConverter.cs
  59. 2
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/Converters/GroupedRowConverter.cs
  60. 13
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/DataPageBuilder.cs
  61. 1
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/ExporterPage.cs
  62. 14
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Expressions/ExpressionEvaluatorFacade.cs
  63. 2
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Expressions/IExpressionEvaluatorFacade.cs
  64. 4
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Expressions/ReportingLanguage/ReportingLanguageCompiler.cs
  65. 2
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Expressions/SimpleExpressionEvaluator/Compilation/Functions/ReportingService/FieldReference.cs
  66. 6
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Expressions/UnknownFunctionException.cs
  67. 14
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Globals/GlobalLists.cs
  68. 6
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Globals/GlobalValues.cs
  69. 1
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Interfaces/IItemConverter.cs
  70. 18
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Interfaces/ISinglePage.cs
  71. 2
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Printing/AbstractDataRenderer.cs
  72. 1
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Printing/AbstractRenderer.cs
  73. 1
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Test/ICSharpCode.Reports.Core.Test/Printing/SectionBoundFixture.cs
  74. 1
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Test/ICSharpCode.Reports.Core.Test/Printing/SinglePageFixture.cs
  75. 4
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Test/ICSharpCode.Reports.Core.Test/ReportingLanguage/ExpressionEvaluatorFixture.cs
  76. 8
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Test/ICSharpCode.Reports.Core.Test/ReportingLanguage/IntegrationTests/AggregateFunctionsFixture.cs
  77. 6
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Test/ICSharpCode.Reports.Core.Test/ReportingLanguage/IntegrationTests/AggregateFunctionsFromIListFixture.cs
  78. 6
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Test/ICSharpCode.Reports.Core.Test/ReportingLanguage/IntegrationTests/ConcatFieldsFixture.cs
  79. 4
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Test/ICSharpCode.Reports.Core.Test/ReportingLanguage/IntegrationTests/FieldReferenceFixture.cs
  80. 7
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Test/ICSharpCode.Reports.Core.Test/ReportingLanguage/IntegrationTests/GlobalFunctions.cs
  81. 2
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Test/ICSharpCode.Reports.Core.Test/ReportingLanguage/IntegrationTests/SimpleCompilerFixture.cs
  82. 1
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Test/ICSharpCode.Reports.Core.Test/ReportingLanguage/TestHelper.cs

544
SharpDevelop.Tests.sln

@ -1,69 +1,69 @@ @@ -1,69 +1,69 @@

Microsoft Visual Studio Solution File, Format Version 11.00
# Visual Studio 2010
# SharpDevelop 4.0.0.6474
# SharpDevelop 4.0.0.6623
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Main", "Main", "{256F5C28-532C-44C0-8AB8-D8EC5E492E01}"
ProjectSection(SolutionItems) = postProject
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.BuildWorker35", "src\Main\ICSharpCode.SharpDevelop.BuildWorker35\ICSharpCode.SharpDevelop.BuildWorker35.csproj", "{B5F54272-49F0-40DB-845A-8D837875D3BA}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "StartUp", "src\Main\StartUp\Project\StartUp.csproj", "{1152B71B-3C05-4598-B20D-823B5D40559E}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.BuildWorker", "src\Main\ICSharpCode.SharpDevelop.BuildWorker\ICSharpCode.SharpDevelop.BuildWorker.csproj", "{C3CBC8E3-81D8-4C5B-9941-DCCD12D50B1F}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.Widgets", "src\Main\ICSharpCode.SharpDevelop.Widgets\Project\ICSharpCode.SharpDevelop.Widgets.csproj", "{8035765F-D51F-4A0C-A746-2FD100E19419}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.Dom.Tests", "src\Main\ICSharpCode.SharpDevelop.Dom\Tests\ICSharpCode.SharpDevelop.Dom.Tests\ICSharpCode.SharpDevelop.Dom.Tests.csproj", "{7DB80259-24D4-46C3-A024-53FF1987733D}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop", "src\Main\Base\Project\ICSharpCode.SharpDevelop.csproj", "{2748AD25-9C63-4E12-877B-4DCE96FBED54}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.Tests", "src\Main\Base\Test\ICSharpCode.SharpDevelop.Tests.csproj", "{4980B743-B32F-4aba-AABD-45E2CAD3568D}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.Sda", "src\Main\ICSharpCode.SharpDevelop.Sda\ICSharpCode.SharpDevelop.Sda.csproj", "{80318B5F-A25D-45AB-8A95-EF31D2370A4C}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Core.Tests", "src\Main\Core\Test\ICSharpCode.Core.Tests.csproj", "{AD6FAA08-D6F5-4DBA-AF85-F4DA9F40C3B5}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.Dom", "src\Main\ICSharpCode.SharpDevelop.Dom\Project\ICSharpCode.SharpDevelop.Dom.csproj", "{924EE450-603D-49C1-A8E5-4AFAA31CE6F3}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Core", "src\Main\Core\Project\ICSharpCode.Core.csproj", "{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Core.Presentation", "src\Main\ICSharpCode.Core.Presentation\ICSharpCode.Core.Presentation.csproj", "{7E4A7172-7FF5-48D0-B719-7CD959DD1AC9}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Core.WinForms", "src\Main\ICSharpCode.Core.WinForms\ICSharpCode.Core.WinForms.csproj", "{857CA1A3-FC88-4BE0-AB6A-D1EE772AB288}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Core.WinForms", "src\Main\ICSharpCode.Core.WinForms\ICSharpCode.Core.WinForms.csproj", "{857CA1A3-FC88-4BE0-AB6A-D1EE772AB288}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Core.Presentation", "src\Main\ICSharpCode.Core.Presentation\ICSharpCode.Core.Presentation.csproj", "{7E4A7172-7FF5-48D0-B719-7CD959DD1AC9}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.Dom", "src\Main\ICSharpCode.SharpDevelop.Dom\Project\ICSharpCode.SharpDevelop.Dom.csproj", "{924EE450-603D-49C1-A8E5-4AFAA31CE6F3}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Core", "src\Main\Core\Project\ICSharpCode.Core.csproj", "{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Core.Tests", "src\Main\Core\Test\ICSharpCode.Core.Tests.csproj", "{AD6FAA08-D6F5-4DBA-AF85-F4DA9F40C3B5}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.Sda", "src\Main\ICSharpCode.SharpDevelop.Sda\ICSharpCode.SharpDevelop.Sda.csproj", "{80318B5F-A25D-45AB-8A95-EF31D2370A4C}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.Tests", "src\Main\Base\Test\ICSharpCode.SharpDevelop.Tests.csproj", "{4980B743-B32F-4aba-AABD-45E2CAD3568D}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop", "src\Main\Base\Project\ICSharpCode.SharpDevelop.csproj", "{2748AD25-9C63-4E12-877B-4DCE96FBED54}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.Dom.Tests", "src\Main\ICSharpCode.SharpDevelop.Dom\Tests\ICSharpCode.SharpDevelop.Dom.Tests\ICSharpCode.SharpDevelop.Dom.Tests.csproj", "{7DB80259-24D4-46C3-A024-53FF1987733D}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.Widgets", "src\Main\ICSharpCode.SharpDevelop.Widgets\Project\ICSharpCode.SharpDevelop.Widgets.csproj", "{8035765F-D51F-4A0C-A746-2FD100E19419}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.BuildWorker", "src\Main\ICSharpCode.SharpDevelop.BuildWorker\ICSharpCode.SharpDevelop.BuildWorker.csproj", "{C3CBC8E3-81D8-4C5B-9941-DCCD12D50B1F}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "StartUp", "src\Main\StartUp\Project\StartUp.csproj", "{1152B71B-3C05-4598-B20D-823B5D40559E}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.BuildWorker35", "src\Main\ICSharpCode.SharpDevelop.BuildWorker35\ICSharpCode.SharpDevelop.BuildWorker35.csproj", "{B5F54272-49F0-40DB-845A-8D837875D3BA}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
@ -72,45 +72,45 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Libraries", "Libraries", "{ @@ -72,45 +72,45 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Libraries", "Libraries", "{
ProjectSection(SolutionItems) = postProject
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.AvalonEdit.Tests", "src\Libraries\AvalonEdit\ICSharpCode.AvalonEdit.Tests\ICSharpCode.AvalonEdit.Tests.csproj", "{6222A3A1-83CE-47A3-A4E4-A018F82D44D8}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.TreeView", "src\Libraries\SharpTreeView\ICSharpCode.TreeView\ICSharpCode.TreeView.csproj", "{DDE2A481-8271-4EAC-A330-8FA6A38D13D1}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "NRefactory", "NRefactory", "{E5A0F4D8-37FD-4A30-BEB0-4409DC4E0865}"
ProjectSection(SolutionItems) = postProject
EndProjectSection
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Aga.Controls", "src\Libraries\TreeViewAdv\Aga.Controls\Aga.Controls.csproj", "{E73BB233-D88B-44A7-A98F-D71EE158381D}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NRefactoryTests", "src\Libraries\NRefactory\Test\NRefactoryTests.csproj", "{870115DD-960A-4406-A6B9-600BCDC36A03}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Build.Tasks", "src\Libraries\ICSharpCode.Build.Tasks\Project\ICSharpCode.Build.Tasks.csproj", "{4139CCF6-FB49-4A9D-B2CF-331E9EA3198D}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NRefactoryASTGenerator", "src\Libraries\NRefactory\NRefactoryASTGenerator\NRefactoryASTGenerator.csproj", "{B22522AA-B5BF-4A58-AC6D-D4B45805521F}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.AvalonEdit", "src\Libraries\AvalonEdit\ICSharpCode.AvalonEdit\ICSharpCode.AvalonEdit.csproj", "{6C55B776-26D4-4DB3-A6AB-87E783B2F3D1}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AvalonDock", "src\Libraries\AvalonDock\AvalonDock\AvalonDock.csproj", "{2FF700C2-A38A-48BD-A637-8CAFD4FE6237}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "NRefactory", "NRefactory", "{E5A0F4D8-37FD-4A30-BEB0-4409DC4E0865}"
ProjectSection(SolutionItems) = postProject
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NRefactory", "src\Libraries\NRefactory\Project\NRefactory.csproj", "{3A9AE6AA-BC07-4A2F-972C-581E3AE2F195}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AvalonDock", "src\Libraries\AvalonDock\AvalonDock\AvalonDock.csproj", "{2FF700C2-A38A-48BD-A637-8CAFD4FE6237}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.AvalonEdit", "src\Libraries\AvalonEdit\ICSharpCode.AvalonEdit\ICSharpCode.AvalonEdit.csproj", "{6C55B776-26D4-4DB3-A6AB-87E783B2F3D1}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NRefactoryASTGenerator", "src\Libraries\NRefactory\NRefactoryASTGenerator\NRefactoryASTGenerator.csproj", "{B22522AA-B5BF-4A58-AC6D-D4B45805521F}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Build.Tasks", "src\Libraries\ICSharpCode.Build.Tasks\Project\ICSharpCode.Build.Tasks.csproj", "{4139CCF6-FB49-4A9D-B2CF-331E9EA3198D}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NRefactoryTests", "src\Libraries\NRefactory\Test\NRefactoryTests.csproj", "{870115DD-960A-4406-A6B9-600BCDC36A03}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Aga.Controls", "src\Libraries\TreeViewAdv\Aga.Controls\Aga.Controls.csproj", "{E73BB233-D88B-44A7-A98F-D71EE158381D}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.TreeView", "src\Libraries\SharpTreeView\ICSharpCode.TreeView\ICSharpCode.TreeView.csproj", "{DDE2A481-8271-4EAC-A330-8FA6A38D13D1}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.AvalonEdit.Tests", "src\Libraries\AvalonEdit\ICSharpCode.AvalonEdit.Tests\ICSharpCode.AvalonEdit.Tests.csproj", "{6222A3A1-83CE-47A3-A4E4-A018F82D44D8}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
@ -119,239 +119,239 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "AddIns", "AddIns", "{393278 @@ -119,239 +119,239 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "AddIns", "AddIns", "{393278
ProjectSection(SolutionItems) = postProject
EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Version Control", "Version Control", "{F208FF4F-E5D8-41D5-A7C7-B463976F156E}"
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Analysis", "Analysis", "{F355E45F-F54F-4B42-8916-9A633A392789}"
ProjectSection(SolutionItems) = postProject
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "GitAddIn", "src\AddIns\VersionControl\GitAddIn\GitAddIn.csproj", "{83F15BA7-8478-4664-81BB-A82F146D88B3}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CodeQualityAnalysis", "src\AddIns\Analysis\CodeQuality\CodeQualityAnalysis.csproj", "{76DD1CC0-0D86-44A1-9BD6-D91F79807BC3}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SubversionAddIn", "src\AddIns\VersionControl\SubversionAddIn\SubversionAddIn.csproj", "{17F4D7E0-6933-4C2E-8714-FD7E98D625D5}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UnitTesting.Tests", "src\AddIns\Analysis\UnitTesting\Test\UnitTesting.Tests.csproj", "{44A8DE09-CAB9-49D8-9CFC-5EB0A552F181}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Reports", "Reports", "{8789D7FF-B36C-4187-B57D-55ED64623272}"
ProjectSection(SolutionItems) = postProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SourceAnalysis", "src\AddIns\Analysis\SourceAnalysis\SourceAnalysis.csproj", "{CE498514-D12D-4B6E-AE0E-FEC29BD43748}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Reports.Addin.Test", "src\AddIns\Misc\Reports\ICSharpCode.Reports.Addin\Test\ICSharpCode.Reports.Addin.Test.csproj", "{2B232C7E-CFB6-4B73-A1B8-134A8A2ED4F7}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CodeCoverage", "src\AddIns\Analysis\CodeCoverage\Project\CodeCoverage.csproj", "{08CE9972-283B-44F4-82FA-966F7DFA6B7A}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Reports.Addin", "src\AddIns\Misc\Reports\ICSharpCode.Reports.Addin\ICSharpCode.Reports.Addin.csproj", "{35D002D7-C78B-44FB-92AA-104BEB431678}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CodeAnalysis", "src\AddIns\Analysis\CodeAnalysis\CodeAnalysis.csproj", "{3EAA45A9-735C-4AC7-A799-947B93EA449D}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Reports.Core.Test", "src\AddIns\Misc\Reports\ICSharpCode.Reports.Core\Test\ICSharpCode.Reports.Core.Test\ICSharpCode.Reports.Core.Test.csproj", "{E16B73CA-3603-47EE-915E-6F8B2A07304B}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UnitTesting", "src\AddIns\Analysis\UnitTesting\UnitTesting.csproj", "{1F261725-6318-4434-A1B1-6C70CE4CD324}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Reports.Core", "src\AddIns\Misc\Reports\ICSharpCode.Reports.Core\ICSharpCode.Reports.Core.csproj", "{4B2239FF-8FD6-431D-9D22-1B8049BA6917}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CodeCoverage.Tests", "src\AddIns\Analysis\CodeCoverage\Test\CodeCoverage.Tests.csproj", "{A5C0E8F8-9D04-46ED-91D6-1DEF1575313B}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Irony", "src\AddIns\Misc\Reports\Irony\Irony.csproj", "{D81F5C91-D7DB-46E5-BC99-49488FB6814C}"
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Display Bindings", "Display Bindings", "{11BF9245-88A3-4A0A-9A8A-EC9D98036B0F}"
ProjectSection(SolutionItems) = postProject
EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Profiler", "Profiler", "{C4035C32-026F-4158-AF15-113EA1EF1960}"
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "WpfDesign", "WpfDesign", "{6022AC51-B658-4C54-97EF-79187AC65B47}"
ProjectSection(SolutionItems) = postProject
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Profiler.AddIn", "src\AddIns\Analysis\Profiler\Frontend\AddIn\Profiler.AddIn.csproj", "{D294A12D-4B38-4F25-9AA6-3D4A6CE26E7B}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WpfDesign.XamlDom", "src\AddIns\DisplayBindings\WpfDesign\WpfDesign.XamlDom\Project\WpfDesign.XamlDom.csproj", "{88DA149F-21B2-48AB-82C4-28FB6BDFD783}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
{FE88FE17-D9FB-4FCC-9A35-6BFFB6B26CC6} = {FE88FE17-D9FB-4FCC-9A35-6BFFB6B26CC6}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Profiler.Controls", "src\AddIns\Analysis\Profiler\Frontend\Controls\Profiler.Controls.csproj", "{BDA49550-5ED1-4C6B-B648-657B2CACD8E0}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WpfDesign.Tests", "src\AddIns\DisplayBindings\WpfDesign\WpfDesign.Designer\Tests\WpfDesign.Tests.csproj", "{943DBBB3-E84E-4CF4-917C-C05AFA8743C1}"
ProjectSection(ProjectDependencies) = postProject
{FE88FE17-D9FB-4FCC-9A35-6BFFB6B26CC6} = {FE88FE17-D9FB-4FCC-9A35-6BFFB6B26CC6}
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Profiler.Controller", "src\AddIns\Analysis\Profiler\Controller\Profiler.Controller.csproj", "{72FFB35A-C9E2-4A31-B4FA-E3E3E28DED5F}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WpfDesign.Designer", "src\AddIns\DisplayBindings\WpfDesign\WpfDesign.Designer\Project\WpfDesign.Designer.csproj", "{78CC29AC-CC79-4355-B1F2-97936DF198AC}"
ProjectSection(ProjectDependencies) = postProject
{FE88FE17-D9FB-4FCC-9A35-6BFFB6B26CC6} = {FE88FE17-D9FB-4FCC-9A35-6BFFB6B26CC6}
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Profiler.X64Converter", "src\AddIns\Analysis\Profiler\X64Converter\Profiler.X64Converter.csproj", "{FE88FE17-D9FB-4FCC-9A35-6BFFB6B26CC6}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WpfDesign.AddIn", "src\AddIns\DisplayBindings\WpfDesign\WpfDesign.AddIn\WpfDesign.AddIn.csproj", "{9A9D6FD4-6A2E-455D-ACC3-DDA775FE9865}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Profiler.Tests", "src\AddIns\Analysis\Profiler\Tests\Profiler.Tests\Profiler.Tests.csproj", "{068F9531-5D29-49E0-980E-59982A3A0469}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WpfDesign", "src\AddIns\DisplayBindings\WpfDesign\WpfDesign\Project\WpfDesign.csproj", "{66A378A1-E9F4-4AD5-8946-D0EC06C2902F}"
ProjectSection(ProjectDependencies) = postProject
{FE88FE17-D9FB-4FCC-9A35-6BFFB6B26CC6} = {FE88FE17-D9FB-4FCC-9A35-6BFFB6B26CC6}
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Language Bindings", "Language Bindings", "{E0646C25-36F2-4524-969F-FA621353AB94}"
ProjectSection(SolutionItems) = postProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "XmlEditor.Tests", "src\AddIns\DisplayBindings\XmlEditor\Test\XmlEditor.Tests.csproj", "{FC0FE702-A87D-4D70-A9B6-1ECCD611125F}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Ruby", "Ruby", "{C7288E72-FFBE-48CD-84B4-6CBF95A7195A}"
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "IconEditor", "IconEditor", "{0773ED53-08E2-4495-A3BE-CA0B5D413C15}"
ProjectSection(SolutionItems) = postProject
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RubyBinding.Tests", "src\AddIns\BackendBindings\Ruby\RubyBinding\Test\RubyBinding.Tests.csproj", "{01DF0475-0CB2-4E81-971B-BADC60CDE3A5}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "IconEditorAddIn", "src\AddIns\DisplayBindings\IconEditor\IconEditorAddIn\IconEditorAddIn.csproj", "{DFB936AD-90EE-4B4F-941E-4F4A636F0D92}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RubyBinding", "src\AddIns\BackendBindings\Ruby\RubyBinding\Project\RubyBinding.csproj", "{C896FFFF-5B6C-4B0E-B6DF-049865F501B4}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "IconEditor", "src\AddIns\DisplayBindings\IconEditor\IconEditor\IconEditor.csproj", "{DC1CCE11-CB91-40FA-9C47-4D9EB5D67BFD}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CppBinding", "src\AddIns\BackendBindings\CppBinding\CppBinding\CppBinding.csproj", "{70966F84-74C9-4067-A379-0C674A929233}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HexEditor", "src\AddIns\DisplayBindings\HexEditor\Project\HexEditor.csproj", "{E618A9CD-A39F-4925-A538-E8A3FEF24E54}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CSharpBinding.Tests", "src\AddIns\BackendBindings\CSharpBinding\Tests\CSharpBinding.Tests.csproj", "{52006F3F-3156-45DE-89D8-C4813694FBA4}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ResourceEditor", "src\AddIns\DisplayBindings\ResourceEditor\Project\ResourceEditor.csproj", "{CBC6C247-747B-4908-B09A-4D2E0F640B6B}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "VBNetBinding.Tests", "src\AddIns\BackendBindings\VBNetBinding\Test\VBNetBinding.Tests.csproj", "{50A89267-A28B-4DF3-8E62-912E005143B8}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AvalonEdit.AddIn", "src\AddIns\DisplayBindings\AvalonEdit.AddIn\AvalonEdit.AddIn.csproj", "{0162E499-42D0-409B-AA25-EED21F75336B}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Boo", "Boo", "{97B3B514-AB0E-4FE1-89DE-8A945F5112AE}"
ProjectSection(SolutionItems) = postProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "XmlEditor", "src\AddIns\DisplayBindings\XmlEditor\Project\XmlEditor.csproj", "{DCA2703D-250A-463E-A68A-07ED105AE6BD}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BooBinding.Tests", "src\AddIns\BackendBindings\Boo\BooBinding\Test\BooBinding.Tests.csproj", "{6FA16499-896F-4C02-BB43-1AF5C6C7C713}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FormsDesigner", "src\AddIns\DisplayBindings\FormsDesigner\Project\FormsDesigner.csproj", "{7D7E92DF-ACEB-4B69-92C8-8AC7A703CD57}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BooBinding", "src\AddIns\BackendBindings\Boo\BooBinding\Project\BooBinding.csproj", "{4AC2D5F1-F671-480C-A075-6BF62B3721B2}"
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "ClassDiagram", "ClassDiagram", "{BFA3BF26-33BD-4A65-B84D-C7F30D131668}"
ProjectSection(SolutionItems) = postProject
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ClassCanvas", "src\AddIns\DisplayBindings\ClassDiagram\ClassCanvas\ClassCanvas.csproj", "{08F772A1-F0BE-433E-8B37-F6522953DB05}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NRefactoryToBooConverter", "src\AddIns\BackendBindings\Boo\NRefactoryToBooConverter\Project\NRefactoryToBooConverter.csproj", "{DBCF20A1-BA13-4582-BFA9-74DE4D987B73}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ClassDiagramAddin", "src\AddIns\DisplayBindings\ClassDiagram\ClassDiagramAddin\ClassDiagramAddin.csproj", "{5A1354DF-4989-4BB4-BC6B-D627C2E9FA13}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NRefactoryToBooConverter.Tests", "src\AddIns\BackendBindings\Boo\NRefactoryToBooConverter\Test\NRefactoryToBooConverter.Tests.csproj", "{C9DE556D-325C-4544-B29F-16A9EB7C9830}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Diagrams", "src\AddIns\DisplayBindings\ClassDiagram\DiagramRouter\Diagrams.csproj", "{0991423A-DBF6-4C89-B365-A1DF1EB32E42}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Python", "Python", "{CA76F702-5B4E-4918-B8D8-7FF8382434FF}"
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Data", "Data", "{C7F29FC2-1B03-4CDD-9E30-400F4765FF04}"
ProjectSection(SolutionItems) = postProject
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PythonBinding.Tests", "src\AddIns\BackendBindings\Python\PythonBinding\Test\PythonBinding.Tests.csproj", "{23B517C9-1ECC-4419-A13F-0B7136D085CB}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Data.Addin", "src\AddIns\DisplayBindings\Data\ICSharpCode.Data.Addin\ICSharpCode.Data.Addin.csproj", "{A9F12710-24E4-46D4-832C-6ECB395B9EAD}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Python.Build.Tasks.Tests", "src\AddIns\BackendBindings\Python\Python.Build.Tasks\Test\Python.Build.Tasks.Tests.csproj", "{833904AB-3CD4-4071-9B48-5770E44685AA}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Data.Core", "src\AddIns\DisplayBindings\Data\ICSharpCode.Data.Core\ICSharpCode.Data.Core.csproj", "{B7823AE9-4B43-4859-8796-2EBDC116FBB8}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Python.Build.Tasks", "src\AddIns\BackendBindings\Python\Python.Build.Tasks\Project\Python.Build.Tasks.csproj", "{D332F2D1-2CF1-43B7-903C-844BD5211A7E}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Data.Core.UI", "src\AddIns\DisplayBindings\Data\ICSharpCode.Data.Core.UI\ICSharpCode.Data.Core.UI.csproj", "{BAD94D6E-4159-4CB6-B991-486F412D9BB6}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PythonBinding", "src\AddIns\BackendBindings\Python\PythonBinding\Project\PythonBinding.csproj", "{8D732610-8FC6-43BA-94C9-7126FD7FE361}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Data.EDMDesigner.Core", "src\AddIns\DisplayBindings\Data\ICSharpCode.Data.EDMDesigner.Core\ICSharpCode.Data.EDMDesigner.Core.csproj", "{5C70D6AB-0A33-43F9-B8B5-54558C35BBB1}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WixBinding", "src\AddIns\BackendBindings\WixBinding\Project\WixBinding.csproj", "{E1B288A2-08EE-4318-8BBB-8AB72C69E33E}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Data.EDMDesigner.Core.UI", "src\AddIns\DisplayBindings\Data\ICSharpCode.Data.EDMDesigner.Core.UI\ICSharpCode.Data.EDMDesigner.Core.UI.csproj", "{EEF5E054-4192-4A57-8FBF-E860D808A51D}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CSharpBinding", "src\AddIns\BackendBindings\CSharpBinding\Project\CSharpBinding.csproj", "{1F1AC7CD-D154-45BB-8EAF-804CA8055F5A}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Data.SQLServer", "src\AddIns\DisplayBindings\Data\ICSharpCode.Data.SQLServer\ICSharpCode.Data.SQLServer.csproj", "{AFE34868-AFA1-4E1C-9450-47AB4BE329D5}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "VBNetBinding", "src\AddIns\BackendBindings\VBNetBinding\Project\VBNetBinding.csproj", "{BF38FB72-B380-4196-AF8C-95749D726C61}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Misc", "Misc", "{F3662720-9EA2-4591-BBC6-97361DCE50A9}"
ProjectSection(SolutionItems) = postProject
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "XamlBinding", "src\AddIns\BackendBindings\XamlBinding\XamlBinding\XamlBinding.csproj", "{7C96B65D-28A5-4F28-A35B-8D83CE831EE8}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "UsageDataCollector", "UsageDataCollector", "{DEFC8584-BEC3-4921-BD0F-40482E450B7B}"
ProjectSection(SolutionItems) = postProject
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "XamlBinding.Tests", "src\AddIns\BackendBindings\XamlBinding\XamlBinding.Tests\XamlBinding.Tests.csproj", "{F390DA70-1FE1-4715-81A0-389AB010C130}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UsageDataCollector.AddIn", "src\AddIns\Misc\UsageDataCollector\UsageDataCollector.AddIn\UsageDataCollector.AddIn.csproj", "{0008FCE9-9EB4-4E2E-979B-553278E5BBA6}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WixBinding.Tests", "src\AddIns\BackendBindings\WixBinding\Test\WixBinding.Tests.csproj", "{388E7B64-0393-4EB4-A3E3-5C474F141853}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UsageDataCollector", "src\AddIns\Misc\UsageDataCollector\UsageDataCollector\UsageDataCollector.csproj", "{6B1CFE35-DA17-4DEB-9C6E-227E5E251DA0}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FSharpBinding", "src\AddIns\BackendBindings\FSharpBinding\FSharpBinding.csproj", "{E954F3CB-A446-492F-A664-2B376EBC86E8}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SearchAndReplace.Tests", "src\AddIns\Misc\SearchAndReplace\Test\SearchAndReplace.Tests.csproj", "{A569DCC1-C608-45FD-B770-4F79335EF154}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Scripting", "src\AddIns\BackendBindings\Scripting\Project\ICSharpCode.Scripting.csproj", "{7048AE18-EB93-4A84-82D0-DD60EB58ADBD}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ResourceToolkit.Tests", "src\AddIns\Misc\ResourceToolkit\Test\ResourceToolkit.Tests.csproj", "{DD9AE6A5-2B9D-443A-BC71-38BE578C36BD}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Scripting.Tests", "src\AddIns\BackendBindings\Scripting\Test\ICSharpCode.Scripting.Tests.csproj", "{85C09AD8-183B-403A-869A-7226646218A9}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ResourceToolkit", "src\AddIns\Misc\ResourceToolkit\Project\ResourceToolkit.csproj", "{461606BD-E824-4D0A-8CBA-01810B1F5E02}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Debugger", "Debugger", "{CDE0C5A4-2096-48B5-BEA3-74DBA0F0E1EF}"
ProjectSection(SolutionItems) = postProject
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Debugger.Tests", "src\AddIns\Debugger\Debugger.Tests\Debugger.Tests.csproj", "{A4C858C8-51B6-4265-A695-A20FCEBA1D19}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RegExpTk", "src\AddIns\Misc\RegExpTk\Project\RegExpTk.csproj", "{64A3E5E6-90BF-47F6-94DF-68C94B62C817}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Debugger.Core", "src\AddIns\Debugger\Debugger.Core\Debugger.Core.csproj", "{1D18D788-F7EE-4585-A23B-34DC8EC63CB8}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PInvokeAddIn", "src\AddIns\Misc\PInvokeAddIn\Project\PInvokeAddIn.csproj", "{5EEB99CF-EA2B-4733-80A6-CE9192D68170}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Debugger.AddIn", "src\AddIns\Debugger\Debugger.AddIn\Debugger.AddIn.csproj", "{EC06F96A-AEEC-49D6-B03D-AB87C6EB674C}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FiletypeRegisterer", "src\AddIns\Misc\FiletypeRegisterer\Project\FiletypeRegisterer.csproj", "{D022A6CE-7438-41E8-AC64-F2DE18EC54C6}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Misc", "Misc", "{F3662720-9EA2-4591-BBC6-97361DCE50A9}"
ProjectSection(SolutionItems) = postProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AddinScout", "src\AddIns\Misc\AddinScout\Project\AddinScout.csproj", "{4B8F0F98-8BE1-402B-AA8B-C8D548577B38}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HelpViewer", "src\AddIns\Misc\HelpViewer\HelpViewer.csproj", "{80F76D10-0B44-4D55-B4BD-DAEB5464090C}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AddInManager", "src\AddIns\Misc\AddInManager\Project\AddInManager.csproj", "{F93E52FD-DA66-4CE5-A0CB-BCD902811122}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SharpRefactoring.Tests", "src\AddIns\Misc\SharpRefactoring\Test\SharpRefactoring.Tests.csproj", "{A4AA51DE-A096-47EC-AA5D-D91457834ECF}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "StartPage", "src\AddIns\Misc\StartPage\Project\StartPage.csproj", "{7D5C266F-D6FF-4D14-B315-0C0FC6C4EF51}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SharpRefactoring", "src\AddIns\Misc\SharpRefactoring\Project\SharpRefactoring.csproj", "{3CA90546-3B4C-4663-9445-C4E9371750A7}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ReflectorAddIn", "src\AddIns\Misc\ReflectorAddIn\ReflectorAddIn\Project\ReflectorAddIn.csproj", "{8AA421C8-D7AF-4957-9F43-5135328ACB24}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
@ -361,235 +361,235 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SearchAndReplace", "src\Add @@ -361,235 +361,235 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SearchAndReplace", "src\Add
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ReflectorAddIn", "src\AddIns\Misc\ReflectorAddIn\ReflectorAddIn\Project\ReflectorAddIn.csproj", "{8AA421C8-D7AF-4957-9F43-5135328ACB24}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SharpRefactoring", "src\AddIns\Misc\SharpRefactoring\Project\SharpRefactoring.csproj", "{3CA90546-3B4C-4663-9445-C4E9371750A7}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "StartPage", "src\AddIns\Misc\StartPage\Project\StartPage.csproj", "{7D5C266F-D6FF-4D14-B315-0C0FC6C4EF51}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SharpRefactoring.Tests", "src\AddIns\Misc\SharpRefactoring\Test\SharpRefactoring.Tests.csproj", "{A4AA51DE-A096-47EC-AA5D-D91457834ECF}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AddInManager", "src\AddIns\Misc\AddInManager\Project\AddInManager.csproj", "{F93E52FD-DA66-4CE5-A0CB-BCD902811122}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HelpViewer", "src\AddIns\Misc\HelpViewer\HelpViewer.csproj", "{80F76D10-0B44-4D55-B4BD-DAEB5464090C}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AddinScout", "src\AddIns\Misc\AddinScout\Project\AddinScout.csproj", "{4B8F0F98-8BE1-402B-AA8B-C8D548577B38}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Debugger", "Debugger", "{CDE0C5A4-2096-48B5-BEA3-74DBA0F0E1EF}"
ProjectSection(SolutionItems) = postProject
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FiletypeRegisterer", "src\AddIns\Misc\FiletypeRegisterer\Project\FiletypeRegisterer.csproj", "{D022A6CE-7438-41E8-AC64-F2DE18EC54C6}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Debugger.AddIn", "src\AddIns\Debugger\Debugger.AddIn\Debugger.AddIn.csproj", "{EC06F96A-AEEC-49D6-B03D-AB87C6EB674C}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PInvokeAddIn", "src\AddIns\Misc\PInvokeAddIn\Project\PInvokeAddIn.csproj", "{5EEB99CF-EA2B-4733-80A6-CE9192D68170}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Debugger.Core", "src\AddIns\Debugger\Debugger.Core\Debugger.Core.csproj", "{1D18D788-F7EE-4585-A23B-34DC8EC63CB8}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RegExpTk", "src\AddIns\Misc\RegExpTk\Project\RegExpTk.csproj", "{64A3E5E6-90BF-47F6-94DF-68C94B62C817}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Debugger.Tests", "src\AddIns\Debugger\Debugger.Tests\Debugger.Tests.csproj", "{A4C858C8-51B6-4265-A695-A20FCEBA1D19}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ResourceToolkit", "src\AddIns\Misc\ResourceToolkit\Project\ResourceToolkit.csproj", "{461606BD-E824-4D0A-8CBA-01810B1F5E02}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Language Bindings", "Language Bindings", "{E0646C25-36F2-4524-969F-FA621353AB94}"
ProjectSection(SolutionItems) = postProject
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ResourceToolkit.Tests", "src\AddIns\Misc\ResourceToolkit\Test\ResourceToolkit.Tests.csproj", "{DD9AE6A5-2B9D-443A-BC71-38BE578C36BD}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Scripting.Tests", "src\AddIns\BackendBindings\Scripting\Test\ICSharpCode.Scripting.Tests.csproj", "{85C09AD8-183B-403A-869A-7226646218A9}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SearchAndReplace.Tests", "src\AddIns\Misc\SearchAndReplace\Test\SearchAndReplace.Tests.csproj", "{A569DCC1-C608-45FD-B770-4F79335EF154}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Scripting", "src\AddIns\BackendBindings\Scripting\Project\ICSharpCode.Scripting.csproj", "{7048AE18-EB93-4A84-82D0-DD60EB58ADBD}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "UsageDataCollector", "UsageDataCollector", "{DEFC8584-BEC3-4921-BD0F-40482E450B7B}"
ProjectSection(SolutionItems) = postProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FSharpBinding", "src\AddIns\BackendBindings\FSharpBinding\FSharpBinding.csproj", "{E954F3CB-A446-492F-A664-2B376EBC86E8}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UsageDataCollector", "src\AddIns\Misc\UsageDataCollector\UsageDataCollector\UsageDataCollector.csproj", "{6B1CFE35-DA17-4DEB-9C6E-227E5E251DA0}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WixBinding.Tests", "src\AddIns\BackendBindings\WixBinding\Test\WixBinding.Tests.csproj", "{388E7B64-0393-4EB4-A3E3-5C474F141853}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UsageDataCollector.AddIn", "src\AddIns\Misc\UsageDataCollector\UsageDataCollector.AddIn\UsageDataCollector.AddIn.csproj", "{0008FCE9-9EB4-4E2E-979B-553278E5BBA6}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "XamlBinding.Tests", "src\AddIns\BackendBindings\XamlBinding\XamlBinding.Tests\XamlBinding.Tests.csproj", "{F390DA70-1FE1-4715-81A0-389AB010C130}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Display Bindings", "Display Bindings", "{11BF9245-88A3-4A0A-9A8A-EC9D98036B0F}"
ProjectSection(SolutionItems) = postProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "XamlBinding", "src\AddIns\BackendBindings\XamlBinding\XamlBinding\XamlBinding.csproj", "{7C96B65D-28A5-4F28-A35B-8D83CE831EE8}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Data", "Data", "{C7F29FC2-1B03-4CDD-9E30-400F4765FF04}"
ProjectSection(SolutionItems) = postProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "VBNetBinding", "src\AddIns\BackendBindings\VBNetBinding\Project\VBNetBinding.csproj", "{BF38FB72-B380-4196-AF8C-95749D726C61}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Data.SQLServer", "src\AddIns\DisplayBindings\Data\ICSharpCode.Data.SQLServer\ICSharpCode.Data.SQLServer.csproj", "{AFE34868-AFA1-4E1C-9450-47AB4BE329D5}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CSharpBinding", "src\AddIns\BackendBindings\CSharpBinding\Project\CSharpBinding.csproj", "{1F1AC7CD-D154-45BB-8EAF-804CA8055F5A}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Data.EDMDesigner.Core.UI", "src\AddIns\DisplayBindings\Data\ICSharpCode.Data.EDMDesigner.Core.UI\ICSharpCode.Data.EDMDesigner.Core.UI.csproj", "{EEF5E054-4192-4A57-8FBF-E860D808A51D}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WixBinding", "src\AddIns\BackendBindings\WixBinding\Project\WixBinding.csproj", "{E1B288A2-08EE-4318-8BBB-8AB72C69E33E}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Data.EDMDesigner.Core", "src\AddIns\DisplayBindings\Data\ICSharpCode.Data.EDMDesigner.Core\ICSharpCode.Data.EDMDesigner.Core.csproj", "{5C70D6AB-0A33-43F9-B8B5-54558C35BBB1}"
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Python", "Python", "{CA76F702-5B4E-4918-B8D8-7FF8382434FF}"
ProjectSection(SolutionItems) = postProject
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PythonBinding", "src\AddIns\BackendBindings\Python\PythonBinding\Project\PythonBinding.csproj", "{8D732610-8FC6-43BA-94C9-7126FD7FE361}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Data.Core.UI", "src\AddIns\DisplayBindings\Data\ICSharpCode.Data.Core.UI\ICSharpCode.Data.Core.UI.csproj", "{BAD94D6E-4159-4CB6-B991-486F412D9BB6}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Python.Build.Tasks", "src\AddIns\BackendBindings\Python\Python.Build.Tasks\Project\Python.Build.Tasks.csproj", "{D332F2D1-2CF1-43B7-903C-844BD5211A7E}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Data.Core", "src\AddIns\DisplayBindings\Data\ICSharpCode.Data.Core\ICSharpCode.Data.Core.csproj", "{B7823AE9-4B43-4859-8796-2EBDC116FBB8}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Python.Build.Tasks.Tests", "src\AddIns\BackendBindings\Python\Python.Build.Tasks\Test\Python.Build.Tasks.Tests.csproj", "{833904AB-3CD4-4071-9B48-5770E44685AA}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Data.Addin", "src\AddIns\DisplayBindings\Data\ICSharpCode.Data.Addin\ICSharpCode.Data.Addin.csproj", "{A9F12710-24E4-46D4-832C-6ECB395B9EAD}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PythonBinding.Tests", "src\AddIns\BackendBindings\Python\PythonBinding\Test\PythonBinding.Tests.csproj", "{23B517C9-1ECC-4419-A13F-0B7136D085CB}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "ClassDiagram", "ClassDiagram", "{BFA3BF26-33BD-4A65-B84D-C7F30D131668}"
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Boo", "Boo", "{97B3B514-AB0E-4FE1-89DE-8A945F5112AE}"
ProjectSection(SolutionItems) = postProject
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Diagrams", "src\AddIns\DisplayBindings\ClassDiagram\DiagramRouter\Diagrams.csproj", "{0991423A-DBF6-4C89-B365-A1DF1EB32E42}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ClassDiagramAddin", "src\AddIns\DisplayBindings\ClassDiagram\ClassDiagramAddin\ClassDiagramAddin.csproj", "{5A1354DF-4989-4BB4-BC6B-D627C2E9FA13}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NRefactoryToBooConverter.Tests", "src\AddIns\BackendBindings\Boo\NRefactoryToBooConverter\Test\NRefactoryToBooConverter.Tests.csproj", "{C9DE556D-325C-4544-B29F-16A9EB7C9830}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ClassCanvas", "src\AddIns\DisplayBindings\ClassDiagram\ClassCanvas\ClassCanvas.csproj", "{08F772A1-F0BE-433E-8B37-F6522953DB05}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NRefactoryToBooConverter", "src\AddIns\BackendBindings\Boo\NRefactoryToBooConverter\Project\NRefactoryToBooConverter.csproj", "{DBCF20A1-BA13-4582-BFA9-74DE4D987B73}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FormsDesigner", "src\AddIns\DisplayBindings\FormsDesigner\Project\FormsDesigner.csproj", "{7D7E92DF-ACEB-4B69-92C8-8AC7A703CD57}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BooBinding", "src\AddIns\BackendBindings\Boo\BooBinding\Project\BooBinding.csproj", "{4AC2D5F1-F671-480C-A075-6BF62B3721B2}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "XmlEditor", "src\AddIns\DisplayBindings\XmlEditor\Project\XmlEditor.csproj", "{DCA2703D-250A-463E-A68A-07ED105AE6BD}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BooBinding.Tests", "src\AddIns\BackendBindings\Boo\BooBinding\Test\BooBinding.Tests.csproj", "{6FA16499-896F-4C02-BB43-1AF5C6C7C713}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AvalonEdit.AddIn", "src\AddIns\DisplayBindings\AvalonEdit.AddIn\AvalonEdit.AddIn.csproj", "{0162E499-42D0-409B-AA25-EED21F75336B}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "VBNetBinding.Tests", "src\AddIns\BackendBindings\VBNetBinding\Test\VBNetBinding.Tests.csproj", "{50A89267-A28B-4DF3-8E62-912E005143B8}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ResourceEditor", "src\AddIns\DisplayBindings\ResourceEditor\Project\ResourceEditor.csproj", "{CBC6C247-747B-4908-B09A-4D2E0F640B6B}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CSharpBinding.Tests", "src\AddIns\BackendBindings\CSharpBinding\Tests\CSharpBinding.Tests.csproj", "{52006F3F-3156-45DE-89D8-C4813694FBA4}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HexEditor", "src\AddIns\DisplayBindings\HexEditor\Project\HexEditor.csproj", "{E618A9CD-A39F-4925-A538-E8A3FEF24E54}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CppBinding", "src\AddIns\BackendBindings\CppBinding\CppBinding\CppBinding.csproj", "{70966F84-74C9-4067-A379-0C674A929233}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "IconEditor", "IconEditor", "{0773ED53-08E2-4495-A3BE-CA0B5D413C15}"
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Ruby", "Ruby", "{C7288E72-FFBE-48CD-84B4-6CBF95A7195A}"
ProjectSection(SolutionItems) = postProject
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "IconEditor", "src\AddIns\DisplayBindings\IconEditor\IconEditor\IconEditor.csproj", "{DC1CCE11-CB91-40FA-9C47-4D9EB5D67BFD}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "IconEditorAddIn", "src\AddIns\DisplayBindings\IconEditor\IconEditorAddIn\IconEditorAddIn.csproj", "{DFB936AD-90EE-4B4F-941E-4F4A636F0D92}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RubyBinding", "src\AddIns\BackendBindings\Ruby\RubyBinding\Project\RubyBinding.csproj", "{C896FFFF-5B6C-4B0E-B6DF-049865F501B4}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "XmlEditor.Tests", "src\AddIns\DisplayBindings\XmlEditor\Test\XmlEditor.Tests.csproj", "{FC0FE702-A87D-4D70-A9B6-1ECCD611125F}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RubyBinding.Tests", "src\AddIns\BackendBindings\Ruby\RubyBinding\Test\RubyBinding.Tests.csproj", "{01DF0475-0CB2-4E81-971B-BADC60CDE3A5}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "WpfDesign", "WpfDesign", "{6022AC51-B658-4C54-97EF-79187AC65B47}"
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Profiler", "Profiler", "{C4035C32-026F-4158-AF15-113EA1EF1960}"
ProjectSection(SolutionItems) = postProject
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WpfDesign", "src\AddIns\DisplayBindings\WpfDesign\WpfDesign\Project\WpfDesign.csproj", "{66A378A1-E9F4-4AD5-8946-D0EC06C2902F}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Profiler.Tests", "src\AddIns\Analysis\Profiler\Tests\Profiler.Tests\Profiler.Tests.csproj", "{068F9531-5D29-49E0-980E-59982A3A0469}"
ProjectSection(ProjectDependencies) = postProject
{FE88FE17-D9FB-4FCC-9A35-6BFFB6B26CC6} = {FE88FE17-D9FB-4FCC-9A35-6BFFB6B26CC6}
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WpfDesign.AddIn", "src\AddIns\DisplayBindings\WpfDesign\WpfDesign.AddIn\WpfDesign.AddIn.csproj", "{9A9D6FD4-6A2E-455D-ACC3-DDA775FE9865}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Profiler.X64Converter", "src\AddIns\Analysis\Profiler\X64Converter\Profiler.X64Converter.csproj", "{FE88FE17-D9FB-4FCC-9A35-6BFFB6B26CC6}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WpfDesign.Designer", "src\AddIns\DisplayBindings\WpfDesign\WpfDesign.Designer\Project\WpfDesign.Designer.csproj", "{78CC29AC-CC79-4355-B1F2-97936DF198AC}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Profiler.Controller", "src\AddIns\Analysis\Profiler\Controller\Profiler.Controller.csproj", "{72FFB35A-C9E2-4A31-B4FA-E3E3E28DED5F}"
ProjectSection(ProjectDependencies) = postProject
{FE88FE17-D9FB-4FCC-9A35-6BFFB6B26CC6} = {FE88FE17-D9FB-4FCC-9A35-6BFFB6B26CC6}
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WpfDesign.Tests", "src\AddIns\DisplayBindings\WpfDesign\WpfDesign.Designer\Tests\WpfDesign.Tests.csproj", "{943DBBB3-E84E-4CF4-917C-C05AFA8743C1}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Profiler.Controls", "src\AddIns\Analysis\Profiler\Frontend\Controls\Profiler.Controls.csproj", "{BDA49550-5ED1-4C6B-B648-657B2CACD8E0}"
ProjectSection(ProjectDependencies) = postProject
{FE88FE17-D9FB-4FCC-9A35-6BFFB6B26CC6} = {FE88FE17-D9FB-4FCC-9A35-6BFFB6B26CC6}
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WpfDesign.XamlDom", "src\AddIns\DisplayBindings\WpfDesign\WpfDesign.XamlDom\Project\WpfDesign.XamlDom.csproj", "{88DA149F-21B2-48AB-82C4-28FB6BDFD783}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Profiler.AddIn", "src\AddIns\Analysis\Profiler\Frontend\AddIn\Profiler.AddIn.csproj", "{D294A12D-4B38-4F25-9AA6-3D4A6CE26E7B}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
{FE88FE17-D9FB-4FCC-9A35-6BFFB6B26CC6} = {FE88FE17-D9FB-4FCC-9A35-6BFFB6B26CC6}
EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Analysis", "Analysis", "{F355E45F-F54F-4B42-8916-9A633A392789}"
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Reports", "Reports", "{8789D7FF-B36C-4187-B57D-55ED64623272}"
ProjectSection(SolutionItems) = postProject
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CodeCoverage.Tests", "src\AddIns\Analysis\CodeCoverage\Test\CodeCoverage.Tests.csproj", "{A5C0E8F8-9D04-46ED-91D6-1DEF1575313B}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Irony", "src\AddIns\Misc\Reports\Irony\Irony.csproj", "{D81F5C91-D7DB-46E5-BC99-49488FB6814C}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Reports.Core", "src\AddIns\Misc\Reports\ICSharpCode.Reports.Core\ICSharpCode.Reports.Core.csproj", "{4B2239FF-8FD6-431D-9D22-1B8049BA6917}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UnitTesting", "src\AddIns\Analysis\UnitTesting\UnitTesting.csproj", "{1F261725-6318-4434-A1B1-6C70CE4CD324}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Reports.Core.Test", "src\AddIns\Misc\Reports\ICSharpCode.Reports.Core\Test\ICSharpCode.Reports.Core.Test\ICSharpCode.Reports.Core.Test.csproj", "{E16B73CA-3603-47EE-915E-6F8B2A07304B}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CodeAnalysis", "src\AddIns\Analysis\CodeAnalysis\CodeAnalysis.csproj", "{3EAA45A9-735C-4AC7-A799-947B93EA449D}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Reports.Addin", "src\AddIns\Misc\Reports\ICSharpCode.Reports.Addin\ICSharpCode.Reports.Addin.csproj", "{35D002D7-C78B-44FB-92AA-104BEB431678}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CodeCoverage", "src\AddIns\Analysis\CodeCoverage\Project\CodeCoverage.csproj", "{08CE9972-283B-44F4-82FA-966F7DFA6B7A}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Reports.Addin.Test", "src\AddIns\Misc\Reports\ICSharpCode.Reports.Addin\Test\ICSharpCode.Reports.Addin.Test.csproj", "{2B232C7E-CFB6-4B73-A1B8-134A8A2ED4F7}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SourceAnalysis", "src\AddIns\Analysis\SourceAnalysis\SourceAnalysis.csproj", "{CE498514-D12D-4B6E-AE0E-FEC29BD43748}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Version Control", "Version Control", "{F208FF4F-E5D8-41D5-A7C7-B463976F156E}"
ProjectSection(SolutionItems) = postProject
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UnitTesting.Tests", "src\AddIns\Analysis\UnitTesting\Test\UnitTesting.Tests.csproj", "{44A8DE09-CAB9-49D8-9CFC-5EB0A552F181}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SubversionAddIn", "src\AddIns\VersionControl\SubversionAddIn\SubversionAddIn.csproj", "{17F4D7E0-6933-4C2E-8714-FD7E98D625D5}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CodeQualityAnalysis", "src\AddIns\Analysis\CodeQuality\CodeQualityAnalysis.csproj", "{76DD1CC0-0D86-44A1-9BD6-D91F79807BC3}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "GitAddIn", "src\AddIns\VersionControl\GitAddIn\GitAddIn.csproj", "{83F15BA7-8478-4664-81BB-A82F146D88B3}"
ProjectSection(ProjectDependencies) = postProject
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}
EndProjectSection
@ -1221,126 +1221,126 @@ Global @@ -1221,126 +1221,126 @@ Global
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(NestedProjects) = preSolution
{1152B71B-3C05-4598-B20D-823B5D40559E} = {256F5C28-532C-44C0-8AB8-D8EC5E492E01}
{8035765F-D51F-4A0C-A746-2FD100E19419} = {256F5C28-532C-44C0-8AB8-D8EC5E492E01}
{2748AD25-9C63-4E12-877B-4DCE96FBED54} = {256F5C28-532C-44C0-8AB8-D8EC5E492E01}
{80318B5F-A25D-45AB-8A95-EF31D2370A4C} = {256F5C28-532C-44C0-8AB8-D8EC5E492E01}
{924EE450-603D-49C1-A8E5-4AFAA31CE6F3} = {256F5C28-532C-44C0-8AB8-D8EC5E492E01}
{857CA1A3-FC88-4BE0-AB6A-D1EE772AB288} = {256F5C28-532C-44C0-8AB8-D8EC5E492E01}
{7E4A7172-7FF5-48D0-B719-7CD959DD1AC9} = {256F5C28-532C-44C0-8AB8-D8EC5E492E01}
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {256F5C28-532C-44C0-8AB8-D8EC5E492E01}
{AD6FAA08-D6F5-4DBA-AF85-F4DA9F40C3B5} = {256F5C28-532C-44C0-8AB8-D8EC5E492E01}
{4980B743-B32F-4aba-AABD-45E2CAD3568D} = {256F5C28-532C-44C0-8AB8-D8EC5E492E01}
{7DB80259-24D4-46C3-A024-53FF1987733D} = {256F5C28-532C-44C0-8AB8-D8EC5E492E01}
{C3CBC8E3-81D8-4C5B-9941-DCCD12D50B1F} = {256F5C28-532C-44C0-8AB8-D8EC5E492E01}
{B5F54272-49F0-40DB-845A-8D837875D3BA} = {256F5C28-532C-44C0-8AB8-D8EC5E492E01}
{DDE2A481-8271-4EAC-A330-8FA6A38D13D1} = {2A232EF1-EB95-41C6-B63A-C106E0C95D3C}
{E73BB233-D88B-44A7-A98F-D71EE158381D} = {2A232EF1-EB95-41C6-B63A-C106E0C95D3C}
{4139CCF6-FB49-4A9D-B2CF-331E9EA3198D} = {2A232EF1-EB95-41C6-B63A-C106E0C95D3C}
{6C55B776-26D4-4DB3-A6AB-87E783B2F3D1} = {2A232EF1-EB95-41C6-B63A-C106E0C95D3C}
{2FF700C2-A38A-48BD-A637-8CAFD4FE6237} = {2A232EF1-EB95-41C6-B63A-C106E0C95D3C}
{E5A0F4D8-37FD-4A30-BEB0-4409DC4E0865} = {2A232EF1-EB95-41C6-B63A-C106E0C95D3C}
{C3CBC8E3-81D8-4C5B-9941-DCCD12D50B1F} = {256F5C28-532C-44C0-8AB8-D8EC5E492E01}
{7DB80259-24D4-46C3-A024-53FF1987733D} = {256F5C28-532C-44C0-8AB8-D8EC5E492E01}
{4980B743-B32F-4aba-AABD-45E2CAD3568D} = {256F5C28-532C-44C0-8AB8-D8EC5E492E01}
{AD6FAA08-D6F5-4DBA-AF85-F4DA9F40C3B5} = {256F5C28-532C-44C0-8AB8-D8EC5E492E01}
{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {256F5C28-532C-44C0-8AB8-D8EC5E492E01}
{7E4A7172-7FF5-48D0-B719-7CD959DD1AC9} = {256F5C28-532C-44C0-8AB8-D8EC5E492E01}
{857CA1A3-FC88-4BE0-AB6A-D1EE772AB288} = {256F5C28-532C-44C0-8AB8-D8EC5E492E01}
{924EE450-603D-49C1-A8E5-4AFAA31CE6F3} = {256F5C28-532C-44C0-8AB8-D8EC5E492E01}
{80318B5F-A25D-45AB-8A95-EF31D2370A4C} = {256F5C28-532C-44C0-8AB8-D8EC5E492E01}
{2748AD25-9C63-4E12-877B-4DCE96FBED54} = {256F5C28-532C-44C0-8AB8-D8EC5E492E01}
{8035765F-D51F-4A0C-A746-2FD100E19419} = {256F5C28-532C-44C0-8AB8-D8EC5E492E01}
{1152B71B-3C05-4598-B20D-823B5D40559E} = {256F5C28-532C-44C0-8AB8-D8EC5E492E01}
{6222A3A1-83CE-47A3-A4E4-A018F82D44D8} = {2A232EF1-EB95-41C6-B63A-C106E0C95D3C}
{3A9AE6AA-BC07-4A2F-972C-581E3AE2F195} = {E5A0F4D8-37FD-4A30-BEB0-4409DC4E0865}
{B22522AA-B5BF-4A58-AC6D-D4B45805521F} = {E5A0F4D8-37FD-4A30-BEB0-4409DC4E0865}
{E5A0F4D8-37FD-4A30-BEB0-4409DC4E0865} = {2A232EF1-EB95-41C6-B63A-C106E0C95D3C}
{2FF700C2-A38A-48BD-A637-8CAFD4FE6237} = {2A232EF1-EB95-41C6-B63A-C106E0C95D3C}
{6C55B776-26D4-4DB3-A6AB-87E783B2F3D1} = {2A232EF1-EB95-41C6-B63A-C106E0C95D3C}
{4139CCF6-FB49-4A9D-B2CF-331E9EA3198D} = {2A232EF1-EB95-41C6-B63A-C106E0C95D3C}
{E73BB233-D88B-44A7-A98F-D71EE158381D} = {2A232EF1-EB95-41C6-B63A-C106E0C95D3C}
{DDE2A481-8271-4EAC-A330-8FA6A38D13D1} = {2A232EF1-EB95-41C6-B63A-C106E0C95D3C}
{870115DD-960A-4406-A6B9-600BCDC36A03} = {E5A0F4D8-37FD-4A30-BEB0-4409DC4E0865}
{F355E45F-F54F-4B42-8916-9A633A392789} = {39327899-ED91-4F7F-988C-4FE4E17C014D}
{11BF9245-88A3-4A0A-9A8A-EC9D98036B0F} = {39327899-ED91-4F7F-988C-4FE4E17C014D}
{F3662720-9EA2-4591-BBC6-97361DCE50A9} = {39327899-ED91-4F7F-988C-4FE4E17C014D}
{CDE0C5A4-2096-48B5-BEA3-74DBA0F0E1EF} = {39327899-ED91-4F7F-988C-4FE4E17C014D}
{E0646C25-36F2-4524-969F-FA621353AB94} = {39327899-ED91-4F7F-988C-4FE4E17C014D}
{C4035C32-026F-4158-AF15-113EA1EF1960} = {39327899-ED91-4F7F-988C-4FE4E17C014D}
{8789D7FF-B36C-4187-B57D-55ED64623272} = {39327899-ED91-4F7F-988C-4FE4E17C014D}
{B22522AA-B5BF-4A58-AC6D-D4B45805521F} = {E5A0F4D8-37FD-4A30-BEB0-4409DC4E0865}
{3A9AE6AA-BC07-4A2F-972C-581E3AE2F195} = {E5A0F4D8-37FD-4A30-BEB0-4409DC4E0865}
{F208FF4F-E5D8-41D5-A7C7-B463976F156E} = {39327899-ED91-4F7F-988C-4FE4E17C014D}
{17F4D7E0-6933-4C2E-8714-FD7E98D625D5} = {F208FF4F-E5D8-41D5-A7C7-B463976F156E}
{83F15BA7-8478-4664-81BB-A82F146D88B3} = {F208FF4F-E5D8-41D5-A7C7-B463976F156E}
{D81F5C91-D7DB-46E5-BC99-49488FB6814C} = {8789D7FF-B36C-4187-B57D-55ED64623272}
{4B2239FF-8FD6-431D-9D22-1B8049BA6917} = {8789D7FF-B36C-4187-B57D-55ED64623272}
{E16B73CA-3603-47EE-915E-6F8B2A07304B} = {8789D7FF-B36C-4187-B57D-55ED64623272}
{35D002D7-C78B-44FB-92AA-104BEB431678} = {8789D7FF-B36C-4187-B57D-55ED64623272}
{2B232C7E-CFB6-4B73-A1B8-134A8A2ED4F7} = {8789D7FF-B36C-4187-B57D-55ED64623272}
{068F9531-5D29-49E0-980E-59982A3A0469} = {C4035C32-026F-4158-AF15-113EA1EF1960}
{FE88FE17-D9FB-4FCC-9A35-6BFFB6B26CC6} = {C4035C32-026F-4158-AF15-113EA1EF1960}
{72FFB35A-C9E2-4A31-B4FA-E3E3E28DED5F} = {C4035C32-026F-4158-AF15-113EA1EF1960}
{BDA49550-5ED1-4C6B-B648-657B2CACD8E0} = {C4035C32-026F-4158-AF15-113EA1EF1960}
{D294A12D-4B38-4F25-9AA6-3D4A6CE26E7B} = {C4035C32-026F-4158-AF15-113EA1EF1960}
{85C09AD8-183B-403A-869A-7226646218A9} = {E0646C25-36F2-4524-969F-FA621353AB94}
{7048AE18-EB93-4A84-82D0-DD60EB58ADBD} = {E0646C25-36F2-4524-969F-FA621353AB94}
{E954F3CB-A446-492F-A664-2B376EBC86E8} = {E0646C25-36F2-4524-969F-FA621353AB94}
{388E7B64-0393-4EB4-A3E3-5C474F141853} = {E0646C25-36F2-4524-969F-FA621353AB94}
{F390DA70-1FE1-4715-81A0-389AB010C130} = {E0646C25-36F2-4524-969F-FA621353AB94}
{7C96B65D-28A5-4F28-A35B-8D83CE831EE8} = {E0646C25-36F2-4524-969F-FA621353AB94}
{BF38FB72-B380-4196-AF8C-95749D726C61} = {E0646C25-36F2-4524-969F-FA621353AB94}
{1F1AC7CD-D154-45BB-8EAF-804CA8055F5A} = {E0646C25-36F2-4524-969F-FA621353AB94}
{E1B288A2-08EE-4318-8BBB-8AB72C69E33E} = {E0646C25-36F2-4524-969F-FA621353AB94}
{CA76F702-5B4E-4918-B8D8-7FF8382434FF} = {E0646C25-36F2-4524-969F-FA621353AB94}
{97B3B514-AB0E-4FE1-89DE-8A945F5112AE} = {E0646C25-36F2-4524-969F-FA621353AB94}
{50A89267-A28B-4DF3-8E62-912E005143B8} = {E0646C25-36F2-4524-969F-FA621353AB94}
{52006F3F-3156-45DE-89D8-C4813694FBA4} = {E0646C25-36F2-4524-969F-FA621353AB94}
{70966F84-74C9-4067-A379-0C674A929233} = {E0646C25-36F2-4524-969F-FA621353AB94}
{C7288E72-FFBE-48CD-84B4-6CBF95A7195A} = {E0646C25-36F2-4524-969F-FA621353AB94}
{C896FFFF-5B6C-4B0E-B6DF-049865F501B4} = {C7288E72-FFBE-48CD-84B4-6CBF95A7195A}
{01DF0475-0CB2-4E81-971B-BADC60CDE3A5} = {C7288E72-FFBE-48CD-84B4-6CBF95A7195A}
{C9DE556D-325C-4544-B29F-16A9EB7C9830} = {97B3B514-AB0E-4FE1-89DE-8A945F5112AE}
{DBCF20A1-BA13-4582-BFA9-74DE4D987B73} = {97B3B514-AB0E-4FE1-89DE-8A945F5112AE}
{4AC2D5F1-F671-480C-A075-6BF62B3721B2} = {97B3B514-AB0E-4FE1-89DE-8A945F5112AE}
{6FA16499-896F-4C02-BB43-1AF5C6C7C713} = {97B3B514-AB0E-4FE1-89DE-8A945F5112AE}
{8D732610-8FC6-43BA-94C9-7126FD7FE361} = {CA76F702-5B4E-4918-B8D8-7FF8382434FF}
{D332F2D1-2CF1-43B7-903C-844BD5211A7E} = {CA76F702-5B4E-4918-B8D8-7FF8382434FF}
{833904AB-3CD4-4071-9B48-5770E44685AA} = {CA76F702-5B4E-4918-B8D8-7FF8382434FF}
{23B517C9-1ECC-4419-A13F-0B7136D085CB} = {CA76F702-5B4E-4918-B8D8-7FF8382434FF}
{EC06F96A-AEEC-49D6-B03D-AB87C6EB674C} = {CDE0C5A4-2096-48B5-BEA3-74DBA0F0E1EF}
{1D18D788-F7EE-4585-A23B-34DC8EC63CB8} = {CDE0C5A4-2096-48B5-BEA3-74DBA0F0E1EF}
{A4C858C8-51B6-4265-A695-A20FCEBA1D19} = {CDE0C5A4-2096-48B5-BEA3-74DBA0F0E1EF}
{DEFC8584-BEC3-4921-BD0F-40482E450B7B} = {F3662720-9EA2-4591-BBC6-97361DCE50A9}
{A569DCC1-C608-45FD-B770-4F79335EF154} = {F3662720-9EA2-4591-BBC6-97361DCE50A9}
{DD9AE6A5-2B9D-443A-BC71-38BE578C36BD} = {F3662720-9EA2-4591-BBC6-97361DCE50A9}
{461606BD-E824-4D0A-8CBA-01810B1F5E02} = {F3662720-9EA2-4591-BBC6-97361DCE50A9}
{64A3E5E6-90BF-47F6-94DF-68C94B62C817} = {F3662720-9EA2-4591-BBC6-97361DCE50A9}
{5EEB99CF-EA2B-4733-80A6-CE9192D68170} = {F3662720-9EA2-4591-BBC6-97361DCE50A9}
{D022A6CE-7438-41E8-AC64-F2DE18EC54C6} = {F3662720-9EA2-4591-BBC6-97361DCE50A9}
{4B8F0F98-8BE1-402B-AA8B-C8D548577B38} = {F3662720-9EA2-4591-BBC6-97361DCE50A9}
{F93E52FD-DA66-4CE5-A0CB-BCD902811122} = {F3662720-9EA2-4591-BBC6-97361DCE50A9}
{7D5C266F-D6FF-4D14-B315-0C0FC6C4EF51} = {F3662720-9EA2-4591-BBC6-97361DCE50A9}
{8AA421C8-D7AF-4957-9F43-5135328ACB24} = {F3662720-9EA2-4591-BBC6-97361DCE50A9}
{9196DD8A-B4D4-4780-8742-C5762E547FC2} = {F3662720-9EA2-4591-BBC6-97361DCE50A9}
{3CA90546-3B4C-4663-9445-C4E9371750A7} = {F3662720-9EA2-4591-BBC6-97361DCE50A9}
{A4AA51DE-A096-47EC-AA5D-D91457834ECF} = {F3662720-9EA2-4591-BBC6-97361DCE50A9}
{80F76D10-0B44-4D55-B4BD-DAEB5464090C} = {F3662720-9EA2-4591-BBC6-97361DCE50A9}
{0008FCE9-9EB4-4E2E-979B-553278E5BBA6} = {DEFC8584-BEC3-4921-BD0F-40482E450B7B}
{6B1CFE35-DA17-4DEB-9C6E-227E5E251DA0} = {DEFC8584-BEC3-4921-BD0F-40482E450B7B}
{6022AC51-B658-4C54-97EF-79187AC65B47} = {11BF9245-88A3-4A0A-9A8A-EC9D98036B0F}
{FC0FE702-A87D-4D70-A9B6-1ECCD611125F} = {11BF9245-88A3-4A0A-9A8A-EC9D98036B0F}
{0773ED53-08E2-4495-A3BE-CA0B5D413C15} = {11BF9245-88A3-4A0A-9A8A-EC9D98036B0F}
{E618A9CD-A39F-4925-A538-E8A3FEF24E54} = {11BF9245-88A3-4A0A-9A8A-EC9D98036B0F}
{CBC6C247-747B-4908-B09A-4D2E0F640B6B} = {11BF9245-88A3-4A0A-9A8A-EC9D98036B0F}
{0162E499-42D0-409B-AA25-EED21F75336B} = {11BF9245-88A3-4A0A-9A8A-EC9D98036B0F}
{DCA2703D-250A-463E-A68A-07ED105AE6BD} = {11BF9245-88A3-4A0A-9A8A-EC9D98036B0F}
{7D7E92DF-ACEB-4B69-92C8-8AC7A703CD57} = {11BF9245-88A3-4A0A-9A8A-EC9D98036B0F}
{BFA3BF26-33BD-4A65-B84D-C7F30D131668} = {11BF9245-88A3-4A0A-9A8A-EC9D98036B0F}
{8789D7FF-B36C-4187-B57D-55ED64623272} = {39327899-ED91-4F7F-988C-4FE4E17C014D}
{C4035C32-026F-4158-AF15-113EA1EF1960} = {39327899-ED91-4F7F-988C-4FE4E17C014D}
{E0646C25-36F2-4524-969F-FA621353AB94} = {39327899-ED91-4F7F-988C-4FE4E17C014D}
{CDE0C5A4-2096-48B5-BEA3-74DBA0F0E1EF} = {39327899-ED91-4F7F-988C-4FE4E17C014D}
{F3662720-9EA2-4591-BBC6-97361DCE50A9} = {39327899-ED91-4F7F-988C-4FE4E17C014D}
{11BF9245-88A3-4A0A-9A8A-EC9D98036B0F} = {39327899-ED91-4F7F-988C-4FE4E17C014D}
{F355E45F-F54F-4B42-8916-9A633A392789} = {39327899-ED91-4F7F-988C-4FE4E17C014D}
{A5C0E8F8-9D04-46ED-91D6-1DEF1575313B} = {F355E45F-F54F-4B42-8916-9A633A392789}
{1F261725-6318-4434-A1B1-6C70CE4CD324} = {F355E45F-F54F-4B42-8916-9A633A392789}
{3EAA45A9-735C-4AC7-A799-947B93EA449D} = {F355E45F-F54F-4B42-8916-9A633A392789}
{08CE9972-283B-44F4-82FA-966F7DFA6B7A} = {F355E45F-F54F-4B42-8916-9A633A392789}
{CE498514-D12D-4B6E-AE0E-FEC29BD43748} = {F355E45F-F54F-4B42-8916-9A633A392789}
{44A8DE09-CAB9-49D8-9CFC-5EB0A552F181} = {F355E45F-F54F-4B42-8916-9A633A392789}
{76DD1CC0-0D86-44A1-9BD6-D91F79807BC3} = {F355E45F-F54F-4B42-8916-9A633A392789}
{C7F29FC2-1B03-4CDD-9E30-400F4765FF04} = {11BF9245-88A3-4A0A-9A8A-EC9D98036B0F}
{A9F12710-24E4-46D4-832C-6ECB395B9EAD} = {C7F29FC2-1B03-4CDD-9E30-400F4765FF04}
{B7823AE9-4B43-4859-8796-2EBDC116FBB8} = {C7F29FC2-1B03-4CDD-9E30-400F4765FF04}
{BAD94D6E-4159-4CB6-B991-486F412D9BB6} = {C7F29FC2-1B03-4CDD-9E30-400F4765FF04}
{5C70D6AB-0A33-43F9-B8B5-54558C35BBB1} = {C7F29FC2-1B03-4CDD-9E30-400F4765FF04}
{EEF5E054-4192-4A57-8FBF-E860D808A51D} = {C7F29FC2-1B03-4CDD-9E30-400F4765FF04}
{AFE34868-AFA1-4E1C-9450-47AB4BE329D5} = {C7F29FC2-1B03-4CDD-9E30-400F4765FF04}
{08F772A1-F0BE-433E-8B37-F6522953DB05} = {BFA3BF26-33BD-4A65-B84D-C7F30D131668}
{5A1354DF-4989-4BB4-BC6B-D627C2E9FA13} = {BFA3BF26-33BD-4A65-B84D-C7F30D131668}
{0991423A-DBF6-4C89-B365-A1DF1EB32E42} = {BFA3BF26-33BD-4A65-B84D-C7F30D131668}
{DFB936AD-90EE-4B4F-941E-4F4A636F0D92} = {0773ED53-08E2-4495-A3BE-CA0B5D413C15}
{DC1CCE11-CB91-40FA-9C47-4D9EB5D67BFD} = {0773ED53-08E2-4495-A3BE-CA0B5D413C15}
{88DA149F-21B2-48AB-82C4-28FB6BDFD783} = {6022AC51-B658-4C54-97EF-79187AC65B47}
{943DBBB3-E84E-4CF4-917C-C05AFA8743C1} = {6022AC51-B658-4C54-97EF-79187AC65B47}
{78CC29AC-CC79-4355-B1F2-97936DF198AC} = {6022AC51-B658-4C54-97EF-79187AC65B47}
{9A9D6FD4-6A2E-455D-ACC3-DDA775FE9865} = {6022AC51-B658-4C54-97EF-79187AC65B47}
{BFA3BF26-33BD-4A65-B84D-C7F30D131668} = {11BF9245-88A3-4A0A-9A8A-EC9D98036B0F}
{7D7E92DF-ACEB-4B69-92C8-8AC7A703CD57} = {11BF9245-88A3-4A0A-9A8A-EC9D98036B0F}
{DCA2703D-250A-463E-A68A-07ED105AE6BD} = {11BF9245-88A3-4A0A-9A8A-EC9D98036B0F}
{0162E499-42D0-409B-AA25-EED21F75336B} = {11BF9245-88A3-4A0A-9A8A-EC9D98036B0F}
{CBC6C247-747B-4908-B09A-4D2E0F640B6B} = {11BF9245-88A3-4A0A-9A8A-EC9D98036B0F}
{E618A9CD-A39F-4925-A538-E8A3FEF24E54} = {11BF9245-88A3-4A0A-9A8A-EC9D98036B0F}
{0773ED53-08E2-4495-A3BE-CA0B5D413C15} = {11BF9245-88A3-4A0A-9A8A-EC9D98036B0F}
{FC0FE702-A87D-4D70-A9B6-1ECCD611125F} = {11BF9245-88A3-4A0A-9A8A-EC9D98036B0F}
{6022AC51-B658-4C54-97EF-79187AC65B47} = {11BF9245-88A3-4A0A-9A8A-EC9D98036B0F}
{66A378A1-E9F4-4AD5-8946-D0EC06C2902F} = {6022AC51-B658-4C54-97EF-79187AC65B47}
{76DD1CC0-0D86-44A1-9BD6-D91F79807BC3} = {F355E45F-F54F-4B42-8916-9A633A392789}
{44A8DE09-CAB9-49D8-9CFC-5EB0A552F181} = {F355E45F-F54F-4B42-8916-9A633A392789}
{CE498514-D12D-4B6E-AE0E-FEC29BD43748} = {F355E45F-F54F-4B42-8916-9A633A392789}
{08CE9972-283B-44F4-82FA-966F7DFA6B7A} = {F355E45F-F54F-4B42-8916-9A633A392789}
{3EAA45A9-735C-4AC7-A799-947B93EA449D} = {F355E45F-F54F-4B42-8916-9A633A392789}
{1F261725-6318-4434-A1B1-6C70CE4CD324} = {F355E45F-F54F-4B42-8916-9A633A392789}
{A5C0E8F8-9D04-46ED-91D6-1DEF1575313B} = {F355E45F-F54F-4B42-8916-9A633A392789}
{9A9D6FD4-6A2E-455D-ACC3-DDA775FE9865} = {6022AC51-B658-4C54-97EF-79187AC65B47}
{78CC29AC-CC79-4355-B1F2-97936DF198AC} = {6022AC51-B658-4C54-97EF-79187AC65B47}
{943DBBB3-E84E-4CF4-917C-C05AFA8743C1} = {6022AC51-B658-4C54-97EF-79187AC65B47}
{88DA149F-21B2-48AB-82C4-28FB6BDFD783} = {6022AC51-B658-4C54-97EF-79187AC65B47}
{DC1CCE11-CB91-40FA-9C47-4D9EB5D67BFD} = {0773ED53-08E2-4495-A3BE-CA0B5D413C15}
{DFB936AD-90EE-4B4F-941E-4F4A636F0D92} = {0773ED53-08E2-4495-A3BE-CA0B5D413C15}
{0991423A-DBF6-4C89-B365-A1DF1EB32E42} = {BFA3BF26-33BD-4A65-B84D-C7F30D131668}
{5A1354DF-4989-4BB4-BC6B-D627C2E9FA13} = {BFA3BF26-33BD-4A65-B84D-C7F30D131668}
{08F772A1-F0BE-433E-8B37-F6522953DB05} = {BFA3BF26-33BD-4A65-B84D-C7F30D131668}
{AFE34868-AFA1-4E1C-9450-47AB4BE329D5} = {C7F29FC2-1B03-4CDD-9E30-400F4765FF04}
{EEF5E054-4192-4A57-8FBF-E860D808A51D} = {C7F29FC2-1B03-4CDD-9E30-400F4765FF04}
{5C70D6AB-0A33-43F9-B8B5-54558C35BBB1} = {C7F29FC2-1B03-4CDD-9E30-400F4765FF04}
{BAD94D6E-4159-4CB6-B991-486F412D9BB6} = {C7F29FC2-1B03-4CDD-9E30-400F4765FF04}
{B7823AE9-4B43-4859-8796-2EBDC116FBB8} = {C7F29FC2-1B03-4CDD-9E30-400F4765FF04}
{A9F12710-24E4-46D4-832C-6ECB395B9EAD} = {C7F29FC2-1B03-4CDD-9E30-400F4765FF04}
{80F76D10-0B44-4D55-B4BD-DAEB5464090C} = {F3662720-9EA2-4591-BBC6-97361DCE50A9}
{A4AA51DE-A096-47EC-AA5D-D91457834ECF} = {F3662720-9EA2-4591-BBC6-97361DCE50A9}
{3CA90546-3B4C-4663-9445-C4E9371750A7} = {F3662720-9EA2-4591-BBC6-97361DCE50A9}
{9196DD8A-B4D4-4780-8742-C5762E547FC2} = {F3662720-9EA2-4591-BBC6-97361DCE50A9}
{8AA421C8-D7AF-4957-9F43-5135328ACB24} = {F3662720-9EA2-4591-BBC6-97361DCE50A9}
{7D5C266F-D6FF-4D14-B315-0C0FC6C4EF51} = {F3662720-9EA2-4591-BBC6-97361DCE50A9}
{F93E52FD-DA66-4CE5-A0CB-BCD902811122} = {F3662720-9EA2-4591-BBC6-97361DCE50A9}
{4B8F0F98-8BE1-402B-AA8B-C8D548577B38} = {F3662720-9EA2-4591-BBC6-97361DCE50A9}
{D022A6CE-7438-41E8-AC64-F2DE18EC54C6} = {F3662720-9EA2-4591-BBC6-97361DCE50A9}
{5EEB99CF-EA2B-4733-80A6-CE9192D68170} = {F3662720-9EA2-4591-BBC6-97361DCE50A9}
{64A3E5E6-90BF-47F6-94DF-68C94B62C817} = {F3662720-9EA2-4591-BBC6-97361DCE50A9}
{461606BD-E824-4D0A-8CBA-01810B1F5E02} = {F3662720-9EA2-4591-BBC6-97361DCE50A9}
{DD9AE6A5-2B9D-443A-BC71-38BE578C36BD} = {F3662720-9EA2-4591-BBC6-97361DCE50A9}
{A569DCC1-C608-45FD-B770-4F79335EF154} = {F3662720-9EA2-4591-BBC6-97361DCE50A9}
{DEFC8584-BEC3-4921-BD0F-40482E450B7B} = {F3662720-9EA2-4591-BBC6-97361DCE50A9}
{6B1CFE35-DA17-4DEB-9C6E-227E5E251DA0} = {DEFC8584-BEC3-4921-BD0F-40482E450B7B}
{0008FCE9-9EB4-4E2E-979B-553278E5BBA6} = {DEFC8584-BEC3-4921-BD0F-40482E450B7B}
{A4C858C8-51B6-4265-A695-A20FCEBA1D19} = {CDE0C5A4-2096-48B5-BEA3-74DBA0F0E1EF}
{1D18D788-F7EE-4585-A23B-34DC8EC63CB8} = {CDE0C5A4-2096-48B5-BEA3-74DBA0F0E1EF}
{EC06F96A-AEEC-49D6-B03D-AB87C6EB674C} = {CDE0C5A4-2096-48B5-BEA3-74DBA0F0E1EF}
{C7288E72-FFBE-48CD-84B4-6CBF95A7195A} = {E0646C25-36F2-4524-969F-FA621353AB94}
{70966F84-74C9-4067-A379-0C674A929233} = {E0646C25-36F2-4524-969F-FA621353AB94}
{52006F3F-3156-45DE-89D8-C4813694FBA4} = {E0646C25-36F2-4524-969F-FA621353AB94}
{50A89267-A28B-4DF3-8E62-912E005143B8} = {E0646C25-36F2-4524-969F-FA621353AB94}
{97B3B514-AB0E-4FE1-89DE-8A945F5112AE} = {E0646C25-36F2-4524-969F-FA621353AB94}
{CA76F702-5B4E-4918-B8D8-7FF8382434FF} = {E0646C25-36F2-4524-969F-FA621353AB94}
{E1B288A2-08EE-4318-8BBB-8AB72C69E33E} = {E0646C25-36F2-4524-969F-FA621353AB94}
{1F1AC7CD-D154-45BB-8EAF-804CA8055F5A} = {E0646C25-36F2-4524-969F-FA621353AB94}
{BF38FB72-B380-4196-AF8C-95749D726C61} = {E0646C25-36F2-4524-969F-FA621353AB94}
{7C96B65D-28A5-4F28-A35B-8D83CE831EE8} = {E0646C25-36F2-4524-969F-FA621353AB94}
{F390DA70-1FE1-4715-81A0-389AB010C130} = {E0646C25-36F2-4524-969F-FA621353AB94}
{388E7B64-0393-4EB4-A3E3-5C474F141853} = {E0646C25-36F2-4524-969F-FA621353AB94}
{E954F3CB-A446-492F-A664-2B376EBC86E8} = {E0646C25-36F2-4524-969F-FA621353AB94}
{7048AE18-EB93-4A84-82D0-DD60EB58ADBD} = {E0646C25-36F2-4524-969F-FA621353AB94}
{85C09AD8-183B-403A-869A-7226646218A9} = {E0646C25-36F2-4524-969F-FA621353AB94}
{23B517C9-1ECC-4419-A13F-0B7136D085CB} = {CA76F702-5B4E-4918-B8D8-7FF8382434FF}
{833904AB-3CD4-4071-9B48-5770E44685AA} = {CA76F702-5B4E-4918-B8D8-7FF8382434FF}
{D332F2D1-2CF1-43B7-903C-844BD5211A7E} = {CA76F702-5B4E-4918-B8D8-7FF8382434FF}
{8D732610-8FC6-43BA-94C9-7126FD7FE361} = {CA76F702-5B4E-4918-B8D8-7FF8382434FF}
{6FA16499-896F-4C02-BB43-1AF5C6C7C713} = {97B3B514-AB0E-4FE1-89DE-8A945F5112AE}
{4AC2D5F1-F671-480C-A075-6BF62B3721B2} = {97B3B514-AB0E-4FE1-89DE-8A945F5112AE}
{DBCF20A1-BA13-4582-BFA9-74DE4D987B73} = {97B3B514-AB0E-4FE1-89DE-8A945F5112AE}
{C9DE556D-325C-4544-B29F-16A9EB7C9830} = {97B3B514-AB0E-4FE1-89DE-8A945F5112AE}
{01DF0475-0CB2-4E81-971B-BADC60CDE3A5} = {C7288E72-FFBE-48CD-84B4-6CBF95A7195A}
{C896FFFF-5B6C-4B0E-B6DF-049865F501B4} = {C7288E72-FFBE-48CD-84B4-6CBF95A7195A}
{D294A12D-4B38-4F25-9AA6-3D4A6CE26E7B} = {C4035C32-026F-4158-AF15-113EA1EF1960}
{BDA49550-5ED1-4C6B-B648-657B2CACD8E0} = {C4035C32-026F-4158-AF15-113EA1EF1960}
{72FFB35A-C9E2-4A31-B4FA-E3E3E28DED5F} = {C4035C32-026F-4158-AF15-113EA1EF1960}
{FE88FE17-D9FB-4FCC-9A35-6BFFB6B26CC6} = {C4035C32-026F-4158-AF15-113EA1EF1960}
{068F9531-5D29-49E0-980E-59982A3A0469} = {C4035C32-026F-4158-AF15-113EA1EF1960}
{2B232C7E-CFB6-4B73-A1B8-134A8A2ED4F7} = {8789D7FF-B36C-4187-B57D-55ED64623272}
{35D002D7-C78B-44FB-92AA-104BEB431678} = {8789D7FF-B36C-4187-B57D-55ED64623272}
{E16B73CA-3603-47EE-915E-6F8B2A07304B} = {8789D7FF-B36C-4187-B57D-55ED64623272}
{4B2239FF-8FD6-431D-9D22-1B8049BA6917} = {8789D7FF-B36C-4187-B57D-55ED64623272}
{D81F5C91-D7DB-46E5-BC99-49488FB6814C} = {8789D7FF-B36C-4187-B57D-55ED64623272}
{83F15BA7-8478-4664-81BB-A82F146D88B3} = {F208FF4F-E5D8-41D5-A7C7-B463976F156E}
{17F4D7E0-6933-4C2E-8714-FD7E98D625D5} = {F208FF4F-E5D8-41D5-A7C7-B463976F156E}
EndGlobalSection
EndGlobal

9
src/AddIns/DisplayBindings/Data/ICSharpCode.Data.Addin/ICSharpCode.Data.addin

@ -38,7 +38,7 @@ @@ -38,7 +38,7 @@
<DisplayBinding id="EDMDesignerDisplayBinding"
class="ICSharpCode.Data.EDMDesigner.Core.UI.DisplayBinding.EDMDesignerDisplayBinding"
insertbefore="Text"
fileNamePattern="\.(edmx)$"
fileNamePattern="\.edmx$"
languagePattern="^Edmx$" />
</Path>
@ -46,4 +46,11 @@ @@ -46,4 +46,11 @@
<Path name = "/SharpDevelop/BackendBindings/Templates">
<Directory id = "Data" path = "./Templates/Files" />
</Path>
<!-- Custom tools path-->
<Path name = "/SharpDevelop/CustomTools">
<CustomTool id = "EntityModelCodeGenerator"
class = "ICSharpCode.Data.EDMDesigner.Core.IO.EntityModelCodeGenerator"
fileNamePattern = "\.edmx$"/>
</Path>
</AddIn>

28
src/AddIns/DisplayBindings/Data/ICSharpCode.Data.Addin/Templates/Files/CSharp.EDMX.xft

@ -9,8 +9,26 @@ @@ -9,8 +9,26 @@
language = "C#" />
<Description>Entity Framework Data Model</Description>
<!--
<References>
<Reference include="System.Data">
<RequiredTargetFramework>4.0</RequiredTargetFramework>
</Reference>
<Reference include="System.Data.Entity">
<RequiredTargetFramework>4.0</RequiredTargetFramework>
</Reference>
<Reference include="System.Runtime.Serialization">
<RequiredTargetFramework>4.0</RequiredTargetFramework>
</Reference>
<Reference include="System.Security">
<RequiredTargetFramework>4.0</RequiredTargetFramework>
</Reference>
<Reference include="System.XML">
<RequiredTargetFramework>4.0</RequiredTargetFramework>
</Reference>
</References>
<!--
Special new file templates:
${StandardNamespace} -> Standardnamespace of the current project or FileNameWithoutExtension
${FullName} -> Full generated path name
@ -20,10 +38,9 @@ @@ -20,10 +38,9 @@
${Path} -> Full path of the file
-->
<Files>
<!--<File name="${FileNameWithoutExtension}.Designer.cs" language="C#" DependentUpon="${FileName}" SubType="Code"><![CDATA[${StandardHeader.C#}]]></File>-->
<File name="${FullName}" language="XML" buildAction="Page">
<File name="${FullName}" language="XML" buildAction="EntityDeploy" Generator="EntityModelCodeGenerator">
<![CDATA[<?xml version="1.0" encoding="utf-8"?>
<edmx:Edmx Version="1.0" xmlns:edmx="http://schemas.microsoft.com/ado/2007/06/edmx">
<edmx:Edmx Version="1.0" xmlns:edmx="http://schemas.microsoft.com/ado/2008/10/edmx">
<!-- EF Runtime content -->
<edmx:Runtime>
<!-- SSDL content -->
@ -36,6 +53,7 @@ @@ -36,6 +53,7 @@
<DesignerViews />
</edmx:Edmx>]]>
</File>
<File name="${FileNameWithoutExtension}.Designer.cs" language="C#" DependentUpon="${FileName}" SubType="Code"><![CDATA[${StandardHeader.C#}]]></File>
</Files>
<AdditionalOptions/>

1
src/AddIns/DisplayBindings/Data/ICSharpCode.Data.Core.UI/ICSharpCode.Data.Core.UI.csproj

@ -162,6 +162,7 @@ @@ -162,6 +162,7 @@
<Compile Include="UserControls\LoadingCircle.xaml.cs">
<DependentUpon>LoadingCircle.xaml</DependentUpon>
</Compile>
<Compile Include="UserControls\WizardErrorUserControl.cs" />
<Compile Include="UserControls\WizardUserControl.cs" />
<Compile Include="Windows\ConnectionWizardWindow.xaml.cs">
<DependentUpon>ConnectionWizardWindow.xaml</DependentUpon>

41
src/AddIns/DisplayBindings/Data/ICSharpCode.Data.Core.UI/UserControls/WizardErrorUserControl.cs

@ -0,0 +1,41 @@ @@ -0,0 +1,41 @@
#region Usings
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
#endregion
namespace ICSharpCode.Data.Core.UI.UserControls
{
public class WizardErrorUserControl : WizardUserControl
{
#region Fields
private Exception _exception = null;
#endregion
#region Properties
public override sealed bool CanFinish
{
get { return false; }
}
public Exception Exception
{
get { return _exception; }
set
{
_exception = value;
OnPropertyChanged("Exception");
}
}
public int PreviousIndex { get; set; }
#endregion
}
}

21
src/AddIns/DisplayBindings/Data/ICSharpCode.Data.Core.UI/UserControls/WizardUserControl.cs

@ -62,6 +62,14 @@ namespace ICSharpCode.Data.Core.UI.UserControls @@ -62,6 +62,14 @@ namespace ICSharpCode.Data.Core.UI.UserControls
get { throw new NotImplementedException(); }
}
/// <summary>
/// Returns if this WizardUserControl is dependent of its predecessor user control.
/// </summary>
public virtual bool IsDependentOnPredecessor
{
get { return true; }
}
/// <summary>
/// Returns if this WizardUserControl can finish the WizardWindow.
/// </summary>
@ -111,6 +119,19 @@ namespace ICSharpCode.Data.Core.UI.UserControls @@ -111,6 +119,19 @@ namespace ICSharpCode.Data.Core.UI.UserControls
#region Methods
internal void Activate(bool activatedFromPredecessor)
{
if (activatedFromPredecessor && IsDependentOnPredecessor)
{
OnActivateFromPredecessor();
}
OnActivate();
}
public virtual void OnActivateFromPredecessor()
{ }
public virtual void OnActivate()
{ }

68
src/AddIns/DisplayBindings/Data/ICSharpCode.Data.Core.UI/Windows/WizardWindowInnards.xaml.cs

@ -35,8 +35,10 @@ namespace ICSharpCode.Data.Core.UI.Windows @@ -35,8 +35,10 @@ namespace ICSharpCode.Data.Core.UI.Windows
DependencyProperty.Register("IsReadyForNextStep", typeof(bool), typeof(WizardWindowInnards), new FrameworkPropertyMetadata(false, IsReadyForNextStep_Changed));
private WizardWindow _wizardWindow = null;
private ObservableCollection<WizardUserControl> _wizardUserControls = new ObservableCollection<WizardUserControl>();
private WizardErrorUserControl _wizardErrorUserControl = null;
private WizardUserControl _currentWizardUserControl = null;
private int _currentIndex = 0;
private int _previousIndex = 0;
#endregion
@ -50,6 +52,15 @@ namespace ICSharpCode.Data.Core.UI.Windows @@ -50,6 +52,15 @@ namespace ICSharpCode.Data.Core.UI.Windows
get { return _wizardUserControls; }
}
/// <summary>
/// Gets or sets the current WizardWindows' user control for displaying errors.
/// </summary>
public WizardErrorUserControl WizardErrorUserControl
{
get { return _wizardErrorUserControl; }
set { _wizardErrorUserControl = value; }
}
/// <summary>
/// Returns the current WizardUserControls index of the WizardWindow.
/// </summary>
@ -58,6 +69,7 @@ namespace ICSharpCode.Data.Core.UI.Windows @@ -58,6 +69,7 @@ namespace ICSharpCode.Data.Core.UI.Windows
get { return _currentIndex; }
protected set
{
_previousIndex = _currentIndex;
_currentIndex = value;
_currentWizardUserControl = null;
OnPropertyChanged("CurrentIndex");
@ -76,10 +88,28 @@ namespace ICSharpCode.Data.Core.UI.Windows @@ -76,10 +88,28 @@ namespace ICSharpCode.Data.Core.UI.Windows
return _currentWizardUserControl;
else
{
_currentWizardUserControl = _wizardUserControls.FirstOrDefault(wuc => wuc.Index == _currentIndex);
BindingBase binding = new Binding("IsReadyForNextStep") { Source = _currentWizardUserControl };
SetBinding(WizardWindowInnards.IsReadyForNextStepProperty, binding);
ToggleEnabledButtons();
if (_currentIndex == -1)
{
_currentWizardUserControl = _wizardErrorUserControl;
}
else
{
_currentWizardUserControl = _wizardUserControls.FirstOrDefault(wuc => wuc.Index == _currentIndex);
BindingBase binding = new Binding("IsReadyForNextStep") { Source = _currentWizardUserControl };
SetBinding(WizardWindowInnards.IsReadyForNextStepProperty, binding);
}
if (_currentWizardUserControl != null)
{
if (_currentIndex != -1 && _currentIndex - 1 == _previousIndex)
_currentWizardUserControl.Activate(true);
else
_currentWizardUserControl.Activate(false);
ToggleEnabledButtons();
}
return _currentWizardUserControl;
}
}
@ -109,7 +139,7 @@ namespace ICSharpCode.Data.Core.UI.Windows @@ -109,7 +139,7 @@ namespace ICSharpCode.Data.Core.UI.Windows
if (!IsInitialized)
return;
if (CurrentIndex == 0)
if (_currentIndex == 0)
{
btnPrevious.IsEnabled = false;
}
@ -118,7 +148,7 @@ namespace ICSharpCode.Data.Core.UI.Windows @@ -118,7 +148,7 @@ namespace ICSharpCode.Data.Core.UI.Windows
btnPrevious.IsEnabled = true;
}
if (CurrentIndex == _wizardUserControls.Count - 1)
if (_currentIndex == -1 || _currentIndex == _wizardUserControls.Count - 1)
{
btnNext.IsEnabled = false;
}
@ -137,8 +167,6 @@ namespace ICSharpCode.Data.Core.UI.Windows @@ -137,8 +167,6 @@ namespace ICSharpCode.Data.Core.UI.Windows
}
else
btnFinish.IsEnabled = false;
CurrentWizardUserControl.OnActivate();
}
#endregion
@ -160,6 +188,10 @@ namespace ICSharpCode.Data.Core.UI.Windows @@ -160,6 +188,10 @@ namespace ICSharpCode.Data.Core.UI.Windows
{
if (CurrentIndex == 0)
return;
else if (CurrentIndex == -1)
{
CurrentIndex = _wizardErrorUserControl.PreviousIndex;
}
else
{
CurrentIndex--;
@ -178,7 +210,25 @@ namespace ICSharpCode.Data.Core.UI.Windows @@ -178,7 +210,25 @@ namespace ICSharpCode.Data.Core.UI.Windows
private void btnFinish_Click(object sender, RoutedEventArgs e)
{
_wizardWindow.OnFinished();
try
{
_wizardWindow.OnFinished();
}
catch (Exception ex)
{
if (_wizardErrorUserControl != null)
{
_wizardErrorUserControl.Exception = ex;
_wizardErrorUserControl.PreviousIndex = _currentIndex;
CurrentIndex = -1;
return;
}
else
{
throw ex;
}
}
_wizardWindow.DialogResult = true;
_wizardWindow.Close();

3
src/AddIns/DisplayBindings/Data/ICSharpCode.Data.Core/DatabaseObjects/Column.cs

@ -194,6 +194,9 @@ namespace ICSharpCode.Data.Core.DatabaseObjects @@ -194,6 +194,9 @@ namespace ICSharpCode.Data.Core.DatabaseObjects
{
get
{
if (_parentTable.Constraints == null)
return false;
IConstraint constraint = _parentTable.Constraints.FirstOrDefault(constr => constr.FKColumns.FirstOrDefault(column => column.ColumnId == ColumnId && column.Name == Name) != null);
if (constraint == null)

16
src/AddIns/DisplayBindings/Data/ICSharpCode.Data.Core/DatabaseObjects/DatabaseObjectsCollection.cs

@ -34,6 +34,22 @@ namespace ICSharpCode.Data.Core.DatabaseObjects @@ -34,6 +34,22 @@ namespace ICSharpCode.Data.Core.DatabaseObjects
}
}
public int SelectedItemsCount
{
get
{
int selectedItemsCount = 0;
foreach (T item in this)
{
if (item.IsSelected)
selectedItemsCount++;
}
return selectedItemsCount;
}
}
#endregion
#region Methods

11
src/AddIns/DisplayBindings/Data/ICSharpCode.Data.Core/DatabaseObjects/View.cs

@ -17,12 +17,23 @@ namespace ICSharpCode.Data.Core.DatabaseObjects @@ -17,12 +17,23 @@ namespace ICSharpCode.Data.Core.DatabaseObjects
{
#region Fields
private string _query = string.Empty;
private string _definingQuery = string.Empty;
#endregion
#region Properties
public string Query
{
get { return _query; }
set
{
_query = value;
OnPropertyChanged("Query");
}
}
public string DefiningQuery
{
get { return _definingQuery; }

1
src/AddIns/DisplayBindings/Data/ICSharpCode.Data.Core/Interfaces/IView.cs

@ -14,6 +14,7 @@ namespace ICSharpCode.Data.Core.Interfaces @@ -14,6 +14,7 @@ namespace ICSharpCode.Data.Core.Interfaces
{
public interface IView : ITable
{
string Query { get; set; }
string DefiningQuery { get; set; }
}
}

1
src/AddIns/DisplayBindings/Data/ICSharpCode.Data.DemoApp/ICSharpCode.Data.DemoApp.csproj

@ -59,6 +59,7 @@ @@ -59,6 +59,7 @@
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Data" />
<Reference Include="System.Xaml" />
<Reference Include="System.Xml" />
<Reference Include="Microsoft.CSharp">
<RequiredTargetFramework>4.0</RequiredTargetFramework>

65
src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core.UI/DisplayBinding/EDMDesignerViewContent.cs

@ -23,12 +23,15 @@ using ICSharpCode.Data.EDMDesigner.Core.UI.UserControls.CSDLType; @@ -23,12 +23,15 @@ using ICSharpCode.Data.EDMDesigner.Core.UI.UserControls.CSDLType;
using ICSharpCode.Data.EDMDesigner.Core.Windows.EDMWizard;
using ICSharpCode.SharpDevelop;
using ICSharpCode.SharpDevelop.Gui;
using ICSharpCode.Data.EDMDesigner.Core.EDMObjects.Designer.ChangeWatcher;
using ICSharpCode.Data.EDMDesigner.Core.EDMObjects.Common;
using ICSharpCode.SharpDevelop.Project;
#endregion
namespace ICSharpCode.Data.EDMDesigner.Core.UI.DisplayBinding
{
public class EDMDesignerViewContent : AbstractViewContent, IHasPropertyContainer, IToolsHost
public class EDMDesignerViewContent : AbstractViewContent, IHasPropertyContainer, IToolsHost, IEDMDesignerChangeWatcherObserver
{
#region Fields
@ -72,9 +75,9 @@ namespace ICSharpCode.Data.EDMDesigner.Core.UI.DisplayBinding @@ -72,9 +75,9 @@ namespace ICSharpCode.Data.EDMDesigner.Core.UI.DisplayBinding
}
public DesignerCanvas DesignerCanvas
{
{
get { return _designerCanvas; }
}
}
#endregion
@ -86,7 +89,9 @@ namespace ICSharpCode.Data.EDMDesigner.Core.UI.DisplayBinding @@ -86,7 +89,9 @@ namespace ICSharpCode.Data.EDMDesigner.Core.UI.DisplayBinding
if (primaryFile == null)
throw new ArgumentNullException("primaryFile");
primaryFile.ForceInitializeView(this); // call Load()
primaryFile.ForceInitializeView(this); // call Load()
EDMDesignerChangeWatcher.AddEDMDesignerViewContent(this);
}
#endregion
@ -97,6 +102,8 @@ namespace ICSharpCode.Data.EDMDesigner.Core.UI.DisplayBinding @@ -97,6 +102,8 @@ namespace ICSharpCode.Data.EDMDesigner.Core.UI.DisplayBinding
{
Debug.Assert(file == this.PrimaryFile);
EDMDesignerChangeWatcher.Init = true;
// Load EDMX from stream
XElement edmxElement = null;
Action<XElement> readMoreAction = edmxElt => edmxElement = edmxElt;
@ -106,7 +113,7 @@ namespace ICSharpCode.Data.EDMDesigner.Core.UI.DisplayBinding @@ -106,7 +113,7 @@ namespace ICSharpCode.Data.EDMDesigner.Core.UI.DisplayBinding
if (_edmView.EDM.IsEmpty)
{
edmxElement = null;
EDMWizardWindow wizard = RunWizard(file);
EDMWizardWindow wizard = RunWizard(file, ProjectService.CurrentProject.RootNamespace);
if (wizard.DialogResult == true)
_edmView = new EDMView(wizard.EDMXDocument, readMoreAction);
@ -117,13 +124,17 @@ namespace ICSharpCode.Data.EDMDesigner.Core.UI.DisplayBinding @@ -117,13 +124,17 @@ namespace ICSharpCode.Data.EDMDesigner.Core.UI.DisplayBinding
// Load or generate DesignerView and EntityTypeDesigners
EntityTypeDesigner.Init = true;
if (edmxElement == null || edmxElement.Element("DesignerViews") == null)
edmxElement = new XElement("Designer", DesignerIO.GenerateNewDesignerViewsFromCSDLView(_edmView.CSDL));
if (edmxElement != null && edmxElement.Element("DesignerViews") != null)
DesignerIO.Read(_edmView, edmxElement.Element("DesignerViews"), entityType => new EntityTypeDesigner(entityType), complexType => new ComplexTypeDesigner(complexType));
XElement designerViewsElement = null;
EntityTypeDesigner.Init = false;
if (edmxElement == null || (designerViewsElement = EDMXIO.ReadSection(edmxElement, EDMXIO.EDMXSection.DesignerViews)) == null)
{
designerViewsElement = DesignerIO.GenerateNewDesignerViewsFromCSDLView(_edmView);
}
if (edmxElement != null && designerViewsElement != null)
DesignerIO.Read(_edmView, designerViewsElement, entityType => new EntityTypeDesigner(entityType), complexType => new ComplexTypeDesigner(complexType));
EntityTypeDesigner.Init = false;
// Call DoEvents, otherwise drawing associations can fail
VisualHelper.DoEvents();
@ -134,17 +145,18 @@ namespace ICSharpCode.Data.EDMDesigner.Core.UI.DisplayBinding @@ -134,17 +145,18 @@ namespace ICSharpCode.Data.EDMDesigner.Core.UI.DisplayBinding
// Register CSDL of EDMX in CSDL DatabaseTreeView
CSDLDatabaseTreeViewAdditionalNode.Instance.CSDLViews.Add(_edmView.CSDL);
EDMDesignerChangeWatcher.Init = false;
}
public override void Save(OpenedFile file, Stream stream)
{
Debug.Assert(file == this.PrimaryFile);
//Writer.Write(_designerCanvas.EDMView.EDM, EDMDesignerView.Writer.Write(_designerCanvas.EDMView)).Save(file.FileName);
EDMXIO.WriteXDocument(_edmView).Save(stream);
}
private EDMWizardWindow RunWizard(OpenedFile file)
private EDMWizardWindow RunWizard(OpenedFile file, string projectStandardNamespace)
{
EDMWizardWindow wizard = new EDMWizardWindow(file);
EDMWizardWindow wizard = new EDMWizardWindow(file, projectStandardNamespace);
wizard.Owner = Application.Current.MainWindow;
wizard.WindowStartupLocation = WindowStartupLocation.CenterOwner;
wizard.ShowDialog();
@ -156,6 +168,8 @@ namespace ICSharpCode.Data.EDMDesigner.Core.UI.DisplayBinding @@ -156,6 +168,8 @@ namespace ICSharpCode.Data.EDMDesigner.Core.UI.DisplayBinding
{
if (CSDLDatabaseTreeViewAdditionalNode.Instance.CSDLViews.Contains(_edmView.CSDL))
CSDLDatabaseTreeViewAdditionalNode.Instance.CSDLViews.Remove(_edmView.CSDL);
EDMDesignerChangeWatcher.RemoveEDMDesignerViewContent(this);
}
public void ShowMappingTab(IUIType uiType)
@ -180,5 +194,26 @@ namespace ICSharpCode.Data.EDMDesigner.Core.UI.DisplayBinding @@ -180,5 +194,26 @@ namespace ICSharpCode.Data.EDMDesigner.Core.UI.DisplayBinding
}
#endregion
#region IEDMDesignerChangeWatcherObserver Member
public bool ObjectChanged(object changedObject)
{
foreach (DesignerView designerView in _edmView.DesignerViews)
{
foreach (ITypeDesigner uiType in designerView)
{
if (uiType == changedObject || uiType.UIType.BusinessInstance == changedObject)
{
PrimaryFile.IsDirty = true;
return true;
}
}
}
return false;
}
#endregion
}
}

16
src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core.UI/UserControls/CSDLType/TypeBaseDesigner.xaml.cs

@ -20,6 +20,7 @@ using ICSharpCode.Data.EDMDesigner.Core.EDMObjects.Designer.CSDL.Type; @@ -20,6 +20,7 @@ using ICSharpCode.Data.EDMDesigner.Core.EDMObjects.Designer.CSDL.Type;
using ICSharpCode.Data.EDMDesigner.Core.UI.UserControls.Common;
using ICSharpCode.Data.EDMDesigner.Core.UI.UserControls.Relations;
using ICSharpCode.Data.Core.UI;
using ICSharpCode.Data.EDMDesigner.Core.EDMObjects.Designer.ChangeWatcher;
#endregion
@ -288,6 +289,7 @@ namespace ICSharpCode.Data.EDMDesigner.Core.UI.UserControls.CSDLType @@ -288,6 +289,7 @@ namespace ICSharpCode.Data.EDMDesigner.Core.UI.UserControls.CSDLType
set
{
entityTypeExpander.IsExpanded = value;
OnPropertyChanged("IsExpanded");
}
}
@ -329,6 +331,8 @@ namespace ICSharpCode.Data.EDMDesigner.Core.UI.UserControls.CSDLType @@ -329,6 +331,8 @@ namespace ICSharpCode.Data.EDMDesigner.Core.UI.UserControls.CSDLType
{
if (PropertyChanged != null)
PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
EDMDesignerChangeWatcher.ObjectChanged(this);
}
public event PropertyChangedEventHandler PropertyChanged;
@ -341,12 +345,20 @@ namespace ICSharpCode.Data.EDMDesigner.Core.UI.UserControls.CSDLType @@ -341,12 +345,20 @@ namespace ICSharpCode.Data.EDMDesigner.Core.UI.UserControls.CSDLType
public double Left
{
get { return Canvas.GetLeft(this); }
set { Canvas.SetLeft(this, value); }
set
{
Canvas.SetLeft(this, value);
OnPropertyChanged("Left");
}
}
public double Top
{
get { return Canvas.GetTop(this); }
set { Canvas.SetTop(this, value); }
set
{
Canvas.SetTop(this, value);
OnPropertyChanged("Top");
}
}
}
}

11
src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core.UI/UserControls/DesignerCanvas.cs

@ -18,6 +18,7 @@ using ICSharpCode.Data.EDMDesigner.Core.EDMObjects.Designer.CSDL.Type; @@ -18,6 +18,7 @@ using ICSharpCode.Data.EDMDesigner.Core.EDMObjects.Designer.CSDL.Type;
using ICSharpCode.Data.EDMDesigner.Core.UI.UserControls.Common;
using ICSharpCode.Data.EDMDesigner.Core.UI.DisplayBinding;
using ICSharpCode.Data.EDMDesigner.Core.UI.Helpers;
using ICSharpCode.Data.EDMDesigner.Core.EDMObjects.Designer.ChangeWatcher;
#endregion
@ -331,6 +332,7 @@ namespace ICSharpCode.Data.EDMDesigner.Core.UI.UserControls @@ -331,6 +332,7 @@ namespace ICSharpCode.Data.EDMDesigner.Core.UI.UserControls
double currentRowsMaxHeight = 0;
EntityTypeDesigner.Init = true;
EDMDesignerChangeWatcher.Init = true;
foreach(EntityTypeDesigner entityTypeDesigner in DesignerView.TypeDesignersLocations)
{
@ -350,10 +352,17 @@ namespace ICSharpCode.Data.EDMDesigner.Core.UI.UserControls @@ -350,10 +352,17 @@ namespace ICSharpCode.Data.EDMDesigner.Core.UI.UserControls
}
EntityTypeDesigner.Init = false;
EDMDesignerChangeWatcher.Init = false;
}
foreach (TypeBaseDesigner typeBaseDesigner in DesignerView)
typeBaseDesigner.DrawRelations();
{
try
{
typeBaseDesigner.DrawRelations();
}
catch { }
}
(sender as DesignerCanvas).Zoom = DesignerView.Zoom;
}

4
src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core.UI/UserControls/Relations/Association.xaml.cs

@ -65,11 +65,11 @@ namespace ICSharpCode.Data.EDMDesigner.Core.UI.UserControls.Relations @@ -65,11 +65,11 @@ namespace ICSharpCode.Data.EDMDesigner.Core.UI.UserControls.Relations
public string FromCardinality
{
get { return CardinalityStringConverter.CardinalityToSTring(CSDLAssociation.PropertyEnd1.Cardinality); }
get { return CardinalityStringConverter.CardinalityToString(CSDLAssociation.PropertyEnd1.Cardinality); }
}
public string ToCardinality
{
get { return CardinalityStringConverter.CardinalityToSTring(CSDLAssociation.PropertyEnd2.Cardinality); }
get { return CardinalityStringConverter.CardinalityToString(CSDLAssociation.PropertyEnd2.Cardinality); }
}
protected override void OnAssociationCoordonatesChanged()

2
src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core/EDMObjects/Common/Cardinality.cs

@ -28,7 +28,7 @@ namespace ICSharpCode.Data.EDMDesigner.Core.EDMObjects.Common @@ -28,7 +28,7 @@ namespace ICSharpCode.Data.EDMDesigner.Core.EDMObjects.Common
throw new NotImplementedException();
}
public static string CardinalityToSTring(Cardinality cardinality)
public static string CardinalityToString(Cardinality cardinality)
{
switch (cardinality)
{

3
src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core/EDMObjects/Common/EDMObjectBase.cs

@ -9,6 +9,7 @@ using System.Linq; @@ -9,6 +9,7 @@ using System.Linq;
using System.Text;
using ICSharpCode.Data.EDMDesigner.Core.EDMObjects.Interfaces;
using System.ComponentModel;
using ICSharpCode.Data.EDMDesigner.Core.EDMObjects.Designer.ChangeWatcher;
#endregion
@ -51,6 +52,8 @@ namespace ICSharpCode.Data.EDMDesigner.Core.EDMObjects.Common @@ -51,6 +52,8 @@ namespace ICSharpCode.Data.EDMDesigner.Core.EDMObjects.Common
{
PropertyChanged(this, new PropertyChangedEventArgs(property));
}
EDMDesignerChangeWatcher.ObjectChanged(this);
}
#endregion

72
src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core/EDMObjects/Designer/ChangeWatcher/EDMDesignerChangeWatcher.cs

@ -0,0 +1,72 @@ @@ -0,0 +1,72 @@
#region Usings
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using ICSharpCode.Data.EDMDesigner.Core.EDMObjects.Common;
using ICSharpCode.Data.EDMDesigner.Core.EDMObjects.Designer;
using ICSharpCode.Data.EDMDesigner.Core.EDMObjects.Designer.CSDL.Property;
#endregion
namespace ICSharpCode.Data.EDMDesigner.Core.EDMObjects.Designer.ChangeWatcher
{
public class EDMDesignerChangeWatcher
{
#region Field
private static List<IEDMDesignerChangeWatcherObserver> _observers = new List<IEDMDesignerChangeWatcherObserver>();
private static bool _init = true;
#endregion
#region Properties
public static bool Init
{
get { return EDMDesignerChangeWatcher._init; }
set { EDMDesignerChangeWatcher._init = value; }
}
#endregion
#region Methods
public static void AddEDMDesignerViewContent(IEDMDesignerChangeWatcherObserver observer)
{
_observers.Add(observer);
}
public static void RemoveEDMDesignerViewContent(IEDMDesignerChangeWatcherObserver observer)
{
_observers.Remove(observer);
}
public static void ObjectChanged(EDMObjectBase edmObjectBase)
{
if (_init)
return;
foreach (IEDMDesignerChangeWatcherObserver observer in _observers)
{
if (observer.ObjectChanged(edmObjectBase))
break;
}
}
public static void ObjectChanged(ITypeDesigner typeDesigner)
{
if (_init)
return;
foreach (IEDMDesignerChangeWatcherObserver observer in _observers)
{
if (observer.ObjectChanged(typeDesigner))
break;
}
}
#endregion
}
}

17
src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core/EDMObjects/Designer/ChangeWatcher/IEDMDesignerChangeWatcherObserver.cs

@ -0,0 +1,17 @@ @@ -0,0 +1,17 @@
#region Usings
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using ICSharpCode.Data.EDMDesigner.Core.EDMObjects.Common;
#endregion
namespace ICSharpCode.Data.EDMDesigner.Core.EDMObjects.Designer.ChangeWatcher
{
public interface IEDMDesignerChangeWatcherObserver
{
bool ObjectChanged(object changedObject);
}
}

32
src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core/EDMObjects/SSDL/EntityType/EntityType.cs

@ -46,7 +46,37 @@ namespace ICSharpCode.Data.EDMDesigner.Core.EDMObjects.SSDL.EntityType @@ -46,7 +46,37 @@ namespace ICSharpCode.Data.EDMDesigner.Core.EDMObjects.SSDL.EntityType
public string DefiningQuery
{
get { return _definingQuery; }
get
{
if (StoreType == null || StoreType == SSDL.EntityType.StoreType.Tables)
return _definingQuery;
if (string.IsNullOrEmpty(_definingQuery))
{
string definingQuery = string.Empty;
for (int i = 0; i < _properties.Count; i++)
{
if (string.IsNullOrEmpty(definingQuery))
definingQuery += "SELECT \r";
definingQuery += string.Format("[{0}].[{1}] AS [{1}]", _entitySetName, _properties[i].Name);
if (i < _properties.Count - 1)
{
definingQuery += ", \r";
}
else
{
definingQuery += string.Format(" \rFROM [{0}].[{1}] AS [{1}]", Schema, _entitySetName);
}
}
return definingQuery;
}
return _definingQuery;
}
set
{
_definingQuery = value;

13
src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core/ICSharpCode.Data.EDMDesigner.Core.csproj

@ -59,6 +59,8 @@ @@ -59,6 +59,8 @@
<Reference Include="System.Core">
<RequiredTargetFramework>3.5</RequiredTargetFramework>
</Reference>
<Reference Include="System.Data.Entity" />
<Reference Include="System.Data.Entity.Design" />
<Reference Include="System.Xaml">
<RequiredTargetFramework>4.0</RequiredTargetFramework>
</Reference>
@ -99,8 +101,10 @@ @@ -99,8 +101,10 @@
<Compile Include="EDMObjects\Designer\Common\DesignerProperty.cs" />
<Compile Include="EDMObjects\Designer\DesignerView.cs" />
<Compile Include="EDMObjects\Designer\EDMController.cs" />
<Compile Include="EDMObjects\Designer\ChangeWatcher\EDMDesignerChangeWatcher.cs" />
<Compile Include="EDMObjects\Designer\EDMView.cs" />
<Compile Include="EDMObjects\Designer\Common\IndexableUIBusinessTypeObservableCollection.cs" />
<Compile Include="EDMObjects\Designer\ChangeWatcher\IEDMDesignerChangeWatcherObserver.cs" />
<Compile Include="EDMObjects\Designer\ItemBase.cs" />
<Compile Include="EDMObjects\Designer\ITypeDesigner.cs" />
<Compile Include="EDMObjects\Designer\Common\UIBusinessType.cs" />
@ -145,6 +149,7 @@ @@ -145,6 +149,7 @@
<Compile Include="IO\CSDLIO.cs" />
<Compile Include="IO\DesignerIO.cs" />
<Compile Include="IO\EDMXIO.cs" />
<Compile Include="IO\EntityModelCodeGenerator.cs" />
<Compile Include="IO\ExtensionMethods.cs" />
<Compile Include="IO\IO.cs" />
<Compile Include="IO\MSLIO.cs" />
@ -167,6 +172,7 @@ @@ -167,6 +172,7 @@
<Compile Include="EDMObjects\SSDL\Property\Property.cs" />
<Compile Include="EDMObjects\SSDL\Property\StoreGeneratedPattern.cs" />
<Compile Include="EDMObjects\SSDL\SSDLContainer.cs" />
<Compile Include="ObjectModelConverters\ObjectModelConverterException.cs" />
<Compile Include="ObjectModelConverters\SSDLConverter.cs" />
<Compile Include="ObjectModelConverters\EDMConverter.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
@ -177,6 +183,9 @@ @@ -177,6 +183,9 @@
<DependentUpon>ChooseDatabaseObjectsUserControl.xaml</DependentUpon>
</Compile>
<Compile Include="Windows\EDMWizard\EDMWizardWindow.cs" />
<Compile Include="Windows\EDMWizard\EDMWizardErrorUserControl.xaml.cs">
<DependentUpon>EDMWizardErrorUserControl.xaml</DependentUpon>
</Compile>
</ItemGroup>
<ItemGroup>
<Page Include="Windows\EDMWizard\ChooseDatabaseConnectionUserControl.xaml">
@ -187,6 +196,10 @@ @@ -187,6 +196,10 @@
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="Windows\EDMWizard\EDMWizardErrorUserControl.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\..\..\..\src\Main\Base\Project\ICSharpCode.SharpDevelop.csproj">

205
src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core/IO/CSDLIO.cs

@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
using System;
using System.Linq;
using System.Xml.Linq;
using ICSharpCode.Data.Core.Common;
using ICSharpCode.Data.EDMDesigner.Core.EDMObjects.Common;
using ICSharpCode.Data.EDMDesigner.Core.EDMObjects.CSDL;
using ICSharpCode.Data.EDMDesigner.Core.EDMObjects.CSDL.Association;
@ -13,6 +14,7 @@ using ICSharpCode.Data.EDMDesigner.Core.EDMObjects.CSDL.Common; @@ -13,6 +14,7 @@ using ICSharpCode.Data.EDMDesigner.Core.EDMObjects.CSDL.Common;
using ICSharpCode.Data.EDMDesigner.Core.EDMObjects.CSDL.Function;
using ICSharpCode.Data.EDMDesigner.Core.EDMObjects.CSDL.Property;
using ICSharpCode.Data.EDMDesigner.Core.EDMObjects.CSDL.Type;
using System.Collections.Generic;
#endregion
@ -22,6 +24,8 @@ namespace ICSharpCode.Data.EDMDesigner.Core.IO @@ -22,6 +24,8 @@ namespace ICSharpCode.Data.EDMDesigner.Core.IO
{
#region Methods
#region Read
public static CSDLContainer ReadXElement(XElement edmxRuntime)
{
XElement schemaElement = edmxRuntime.Element(XName.Get("ConceptualModels", edmxNamespace.NamespaceName)).Element(XName.Get("Schema", csdlNamespace.NamespaceName));
@ -112,8 +116,6 @@ namespace ICSharpCode.Data.EDMDesigner.Core.IO @@ -112,8 +116,6 @@ namespace ICSharpCode.Data.EDMDesigner.Core.IO
return csdlContainer;
}
#endregion
private static EntityType ReadCSDLEntityType(XElement schemaElement, XElement entityContainerElement, XElement entityTypeElement, CSDLContainer container, string typeName, EntityType baseType)
{
var entityType = new EntityType { Name = typeName, BaseType = baseType };
@ -127,6 +129,7 @@ namespace ICSharpCode.Data.EDMDesigner.Core.IO @@ -127,6 +129,7 @@ namespace ICSharpCode.Data.EDMDesigner.Core.IO
ReadCSDLType(schemaElement, entityTypeElement, container, (TypeBase)entityType);
return entityType;
}
private static void ReadCSDLType(XElement schemaElement, XElement entityTypeElement, CSDLContainer container, TypeBase baseType)
{
if (baseType.Name == null)
@ -238,5 +241,203 @@ namespace ICSharpCode.Data.EDMDesigner.Core.IO @@ -238,5 +241,203 @@ namespace ICSharpCode.Data.EDMDesigner.Core.IO
return null;
return values[0];
}
#endregion
#region Write
public static XElement Write(CSDLContainer csdlContainer)
{
// Instantiate Schema
XElement schema = new XElement(csdlNamespace + "Schema",
new XAttribute("Namespace", csdlContainer.Namespace),
new XAttribute("Alias", csdlContainer.Alias),
new XAttribute(XNamespace.Xmlns + "annotation", csdlAnnotationNamespace.NamespaceName),
new XAttribute("xmlns", csdlNamespace.NamespaceName));
// EntityContainer
string entityContainerNamespace = string.Concat(csdlContainer.Namespace, ".");
XElement entityContainer = new XElement(csdlNamespace + "EntityContainer", new XAttribute("Name", csdlContainer.Name));
schema.Add(entityContainer);
// EntityContainer : EntitySets
foreach (EntityType entityType in csdlContainer.EntitySets)
{
XElement entitySetElement = new XElement(csdlNamespace + "EntitySet",
new XAttribute("Name", entityType.EntitySetName),
new XAttribute("EntityType", string.Concat(entityContainerNamespace, entityType.Name)));
//.AddAttribute(csdlCodeGenerationNamespace, "GetterAccess", entityType.EntitySetVisibility); // Not available in EF 4.0
entityContainer.Add(entitySetElement);
}
// EntityContainer : AssociationSets
foreach (Association association in csdlContainer.Associations)
{
XElement associationSetElement = new XElement(csdlNamespace + "AssociationSet",
new XAttribute("Name", association.AssociationSetName),
new XAttribute("Association", string.Concat(entityContainerNamespace, association.Name)));
associationSetElement.Add(
new XElement(csdlNamespace + "End", new XAttribute("Role", association.PropertyEnd1Role), new XAttribute("EntitySet", association.PropertyEnd1.EntityType.EntitySetName)),
new XElement(csdlNamespace + "End", new XAttribute("Role", association.PropertyEnd2Role), new XAttribute("EntitySet", association.PropertyEnd2.EntityType.EntitySetName)));
entityContainer.AddElement(associationSetElement);
}
// EntityContainer : FunctionImports
foreach (Function function in csdlContainer.Functions)
{
XElement functionElement = new XElement(csdlNamespace + "FunctionImport",
new XAttribute("Name", function.Name))
.AddAttribute("EntitySet", function.EntityType == null ? null : function.EntityType.EntitySetName)
.AddAttribute("ReturnType", function.ReturnType);
foreach (FunctionParameter functionParameter in function.Parameters)
{
functionElement.AddElement(new XElement(csdlNamespace + "Paramter",
new XAttribute("Name", functionParameter.Name),
new XAttribute("Type", functionParameter.Type))
.AddAttribute("MaxLength", functionParameter.MaxLength)
.AddAttribute("Mode", functionParameter.Mode)
.AddAttribute("Precision", functionParameter.Precision)
.AddAttribute("Scale", functionParameter.Scale));
}
entityContainer.AddElement(functionElement);
}
// ComplexTypes
foreach (ComplexType complexType in csdlContainer.ComplexTypes)
{
XElement complexTypeElement = new XElement(csdlNamespace + "ComplexType",
new XAttribute("Name", complexType.Name));
//.AddAttribute(new XAttribute(csdlCodeGenerationNamespace + "TypeAccess", complexType.Visibility)); // Not available in EF 4.0
complexTypeElement.Add(WriteScalarProperties(complexType));
complexTypeElement.Add(WriteComplexProperties(complexType, string.Concat(csdlContainer.Alias, ".")));
schema.AddElement(complexTypeElement);
}
// EntityTypes
foreach (EntityType entityType in csdlContainer.EntityTypes)
{
XElement entityTypeElement = new XElement(csdlNamespace + "EntityType")
.AddAttribute("Name", entityType.Name)
//.AddAttribute(csdlCodeGenerationNamespace, "TypeAccess", entityType.Visibility) // Not available in EF 4.0
.AddAttribute("BaseType", entityType.BaseType == null ? null : string.Concat(entityContainerNamespace, entityType.BaseType.Name))
.AddAttribute("Abstract", entityType.Abstract);
if (entityType.SpecificKeys.Any())
{
XElement keyElement = new XElement(csdlNamespace + "Key");
entityType.ScalarProperties.Where(sp => sp.IsKey).ForEach(scalarProperty =>
{
keyElement.AddElement(new XElement(csdlNamespace + "PropertyRef")
.AddAttribute("Name", scalarProperty.Name));
});
entityTypeElement.AddElement(keyElement);
}
entityTypeElement.Add(WriteScalarProperties(entityType));
entityTypeElement.Add(WriteComplexProperties(entityType, string.Concat(csdlContainer.Alias, ".")));
// EntityType : NavigationProperties
entityType.NavigationProperties.Where(np => np.Generate).ForEach(navigationProperty =>
{
entityTypeElement.AddElement(new XElement(csdlNamespace + "NavigationProperty")
.AddAttribute("Name", navigationProperty.Name)
.AddAttribute("Relationship", string.Concat(entityContainerNamespace, navigationProperty.Association.Name))
.AddAttribute("FromRole", navigationProperty.Association.GetRoleName(navigationProperty))
.AddAttribute("ToRole", navigationProperty.Association.GetRoleName(navigationProperty.Association.PropertiesEnd.First(role => role != navigationProperty))));
//.AddAttribute(csdlCodeGenerationNamespace, "GetterAccess", navigationProperty.GetVisibility) // Not available in EF 4.0
//.AddAttribute(csdlCodeGenerationNamespace, "SetterAccess", navigationProperty.SetVisibility));
});
schema.AddElement(entityTypeElement);
}
// Associations
foreach (Association association in csdlContainer.Associations)
{
XElement associationElement = new XElement(csdlNamespace + "Association")
.AddAttribute("Name", association.Name);
associationElement.AddElement(new XElement(csdlNamespace + "End")
.AddAttribute("Role", association.PropertyEnd1Role)
.AddAttribute("Type", string.Concat(entityContainerNamespace, association.PropertyEnd1.EntityType.Name))
.AddAttribute("Multiplicity", CardinalityStringConverter.CardinalityToString(association.PropertyEnd1.Cardinality)));
associationElement.AddElement(new XElement(csdlNamespace + "End")
.AddAttribute("Role", association.PropertyEnd2Role)
.AddAttribute("Type", string.Concat(entityContainerNamespace, association.PropertyEnd2.EntityType.Name))
.AddAttribute("Multiplicity", CardinalityStringConverter.CardinalityToString(association.PropertyEnd2.Cardinality)));
if (association.PrincipalRole != null)
{
XElement referentialConstraintElement = new XElement(csdlNamespace + "ReferentialConstraint");
XElement principalElement = (new XElement(csdlNamespace + "Principal")
.AddAttribute("Role", association.PrincipalRole));
foreach (ScalarProperty propertyRef in association.PrincipalProperties)
principalElement.AddElement(new XElement(csdlNamespace + "PropertyRef").AddAttribute("Name", propertyRef.Name));
XElement dependentElement = (new XElement(csdlNamespace + "Dependent")
.AddAttribute("Role", association.DependentRole));
foreach (ScalarProperty propertyRef in association.DependentProperties)
dependentElement.AddElement(new XElement(csdlNamespace + "PropertyRef").AddAttribute("Name", propertyRef.Name));
referentialConstraintElement.AddElement(principalElement);
referentialConstraintElement.AddElement(dependentElement);
associationElement.AddElement(referentialConstraintElement);
}
schema.AddElement(associationElement);
}
return schema;
}
private static IEnumerable<XElement> WriteScalarProperties(TypeBase type)
{
foreach (ScalarProperty scalarProperty in type.ScalarProperties)
{
yield return new XElement(csdlNamespace + "Property")
.AddAttribute("Name", scalarProperty.Name)
.AddAttribute("Type", scalarProperty.Type)
.AddAttribute("Collation", scalarProperty.Collation)
.AddAttribute("ConcurrencyMode", scalarProperty.ConcurrencyMode)
.AddAttribute("DefaultValue", scalarProperty.DefaultValue)
.AddAttribute("FixedLength", scalarProperty.FixedLength)
//.AddAttribute(csdlCodeGenerationNamespace, "GetterAccess", scalarProperty.GetVisibility) // Not available in EF 4.0
.AddAttribute("MaxLength", scalarProperty.MaxLength)
.AddAttribute("Nullable", scalarProperty.Nullable)
.AddAttribute("Precision", scalarProperty.Precision)
.AddAttribute("Scale", scalarProperty.Scale)
//.AddAttribute(csdlCodeGenerationNamespace, "SetterAccess", scalarProperty.SetVisibility) // Not available in EF 4.0
.AddAttribute("Unicode", scalarProperty.Unicode);
}
}
private static IEnumerable<XElement> WriteComplexProperties(TypeBase type, string csdlAlias)
{
foreach (ComplexProperty complexProperty in type.ComplexProperties)
{
yield return new XElement(csdlNamespace + "Property")
.AddAttribute("Name", complexProperty.Name)
.AddAttribute("Type", string.Concat(csdlAlias, complexProperty.ComplexType.Name))
.AddAttribute("Nullable", false);
//.AddAttribute(csdlCodeGenerationNamespace, "GetterAccess", complexProperty.GetVisibility); // Not available in EF 4.0
}
}
#endregion
#endregion
}
}

105
src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core/IO/DesignerIO.cs

@ -11,12 +11,17 @@ using System.Xml.Linq; @@ -11,12 +11,17 @@ using System.Xml.Linq;
using ICSharpCode.Data.EDMDesigner.Core.EDMObjects.Designer;
using ICSharpCode.Data.EDMDesigner.Core.EDMObjects.Designer.CSDL.Type;
using ICSharpCode.Data.EDMDesigner.Core.EDMObjects.Designer.CSDL;
using ICSharpCode.Data.EDMDesigner.Core.EDMObjects;
using ICSharpCode.Data.EDMDesigner.Core.EDMObjects.Designer.Common;
using ICSharpCode.Data.EDMDesigner.Core.EDMObjects.Common;
using ICSharpCode.Data.EDMDesigner.Core.EDMObjects.Designer.ChangeWatcher;
using System.Collections.Generic;
#endregion
namespace ICSharpCode.Data.EDMDesigner.Core.IO
{
public class DesignerIO
public class DesignerIO : IO
{
public static void Read(EDMView edmView, XElement designerViewsXElement, Func<UIEntityType, ITypeDesigner> createEntityDesignerFromUIType, Func<UIComplexType, ITypeDesigner> createComplexDesignerFromUIType)
{
@ -30,6 +35,8 @@ namespace ICSharpCode.Data.EDMDesigner.Core.IO @@ -30,6 +35,8 @@ namespace ICSharpCode.Data.EDMDesigner.Core.IO
public static DesignerView Read(EDMView edmView, Func<UIEntityType, ITypeDesigner> createEntityDesignerFromUIType, Func<UIComplexType, ITypeDesigner> createComplexDesignerFromUIType, XElement designerViewXElement)
{
EDMDesignerChangeWatcher.Init = true;
var designerView = new DesignerView()
{
Name = designerViewXElement.Attribute("Name").Value,
@ -41,7 +48,9 @@ namespace ICSharpCode.Data.EDMDesigner.Core.IO @@ -41,7 +48,9 @@ namespace ICSharpCode.Data.EDMDesigner.Core.IO
if (arrange != null)
designerView.ArrangeTypeDesigners = bool.Parse(arrange.Value);
foreach (var designerTypeXElement in designerViewXElement.Elements("DesignerType"))
IEnumerable<XElement> designerTypeXElements = designerViewXElement.Elements("DesignerType");
foreach (var designerTypeXElement in designerTypeXElements)
{
var name = designerTypeXElement.Attribute("Name").Value;
@ -76,27 +85,115 @@ namespace ICSharpCode.Data.EDMDesigner.Core.IO @@ -76,27 +85,115 @@ namespace ICSharpCode.Data.EDMDesigner.Core.IO
RoutedEventHandler loaded = null;
loaded = delegate
{
EDMDesignerChangeWatcher.Init = true;
typeDesigner.IsExpanded = bool.Parse(isExpandedAttribute.Value);
typeDesigner.Loaded -= loaded;
EDMDesignerChangeWatcher.Init = false;
};
typeDesigner.Loaded += loaded;
}
designerView.TypeDesignersLocations.Add(typeDesigner);
}
EDMDesignerChangeWatcher.Init = false;
return designerView;
}
public static XElement GenerateNewDesignerViewsFromCSDLView(CSDLView csdl)
public static XElement GenerateNewDesignerViewsFromCSDLView(EDMView edmView)
{
XElement designerView = new XElement("DesignerView", new XAttribute("Name", "View"), new XAttribute("Zoom", 100), new XAttribute("Arrange", true));
foreach (UIEntityType entityType in csdl.EntityTypes)
foreach (UIEntityType entityType in edmView.CSDL.EntityTypes)
{
designerView.Add(new XElement("DesignerType", new XAttribute("Name", entityType.Name), new XAttribute("Top", 0), new XAttribute("Left", 0), new XAttribute("IsExpanded", true)));
}
edmView.EDM.EDMXDesignerDiagrams = designerView.Elements();
return new XElement("DesignerViews", designerView);
}
public static XElement Write(EDMView edmView)
{
XElement connectionElement = null;
XElement optionsElement = null;
if (edmView.EDM.DesignerProperties == null || edmView.EDM.DesignerProperties.FirstOrDefault(dp => dp.Name == "MetadataArtifactProcessing") == null)
{
List<DesignerProperty> standardDesignerProperties = null;
if (edmView.EDM.DesignerProperties == null)
standardDesignerProperties = new List<DesignerProperty>();
else
standardDesignerProperties = edmView.EDM.DesignerProperties.ToList();
standardDesignerProperties.Add(new DesignerProperty() { Name = "MetadataArtifactProcessing", Value = "EmbedInOutputAssembly" });
edmView.EDM.DesignerProperties = standardDesignerProperties;
}
connectionElement = new XElement(edmxNamespace + "Connection");
XElement designerInfoPropertyElement1 = new XElement(edmxNamespace + "DesignerInfoPropertySet");
connectionElement.Add(designerInfoPropertyElement1);
foreach (DesignerProperty designerProperty in edmView.EDM.DesignerProperties)
{
designerInfoPropertyElement1.Add(new XElement(edmxNamespace + "DesignerProperty",
new XAttribute("Name", designerProperty.Name),
new XAttribute("Value", designerProperty.Value)));
}
optionsElement = new XElement(edmxNamespace + "Options");
XElement designerInfoPropertyElement2 = new XElement(edmxNamespace + "DesignerInfoPropertySet");
optionsElement.Add(designerInfoPropertyElement2);
foreach (DesignerProperty designerProperty in edmView.EDM.DesignerProperties)
{
designerInfoPropertyElement2.Add(new XElement(edmxNamespace + "DesignerProperty",
new XAttribute("Name", designerProperty.Name),
new XAttribute("Value", designerProperty.Value)));
}
XElement designerElement = new XElement(edmxNamespace + "Designer")
.AddElement(connectionElement)
.AddElement(optionsElement);
//if (edmView.EDM.EDMXDesignerDiagrams != null)
// designerElement.AddElement(new XElement(edmxNamespace + "Diagrams", edmView.EDM.EDMXDesignerDiagrams));
//else
designerElement.AddElement(new XElement(edmxNamespace + "Diagrams", Write(edmView.DesignerViews)));
return designerElement;
}
private static XElement Write(EventedObservableCollection<DesignerView> designerViews)
{
XElement designerViewsElement = new XElement("DesignerViews");
foreach (DesignerView designerView in designerViews)
designerViewsElement.Add(Write(designerView));
return designerViewsElement;
}
private static XElement Write(DesignerView designerView)
{
XElement designerViewElement = new XElement("DesignerView",
new XAttribute("Name", designerView.Name),
new XAttribute("Zoom", designerView.Zoom));
foreach (ITypeDesigner uiType in designerView)
{
designerViewElement.Add(new XElement("DesignerType",
new XAttribute("Name", uiType.UIType.Name),
new XAttribute("Left", uiType.Left),
new XAttribute("Top", uiType.Top),
new XAttribute("IsExpanded", uiType.IsExpanded)));
}
return designerViewElement;
}
}
}

122
src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core/IO/EDMXIO.cs

@ -12,6 +12,7 @@ using ICSharpCode.Data.EDMDesigner.Core.EDMObjects.SSDL; @@ -12,6 +12,7 @@ using ICSharpCode.Data.EDMDesigner.Core.EDMObjects.SSDL;
using ICSharpCode.Data.EDMDesigner.Core.EDMObjects.CSDL;
using ICSharpCode.Data.EDMDesigner.Core.EDMObjects.Designer.Common;
using System.IO;
using ICSharpCode.Data.EDMDesigner.Core.EDMObjects.Designer;
#endregion
@ -38,7 +39,7 @@ namespace ICSharpCode.Data.EDMDesigner.Core.IO @@ -38,7 +39,7 @@ namespace ICSharpCode.Data.EDMDesigner.Core.IO
private static EDM Read(XElement edmx, Action<XElement> readMoreAction)
{
XElement edmxRuntime = edmx.Element(XName.Get("Runtime", "http://schemas.microsoft.com/ado/2007/06/edmx"));
XElement edmxRuntime = edmx.Element(XName.Get("Runtime", edmxNamespace.NamespaceName));
SSDLContainer ssdlContainer = SSDLIO.ReadXElement(edmxRuntime);
CSDLContainer csdlContainer = CSDLIO.ReadXElement(edmxRuntime);
@ -55,13 +56,126 @@ namespace ICSharpCode.Data.EDMDesigner.Core.IO @@ -55,13 +56,126 @@ namespace ICSharpCode.Data.EDMDesigner.Core.IO
if (edmxDesigner != null)
{
edm.DesignerProperties = edmxDesigner.Element(XName.Get("Connection", edmxNamespace.NamespaceName)).Element(XName.Get("DesignerInfoPropertySet", edmxNamespace.NamespaceName)).Elements(XName.Get("DesignerProperty", edmxNamespace.NamespaceName)).Select(e => new DesignerProperty { Name = e.Attribute("Name").Value, Value = e.Attribute("Value").Value });
edm.EDMXDesignerDesignerProperties = edmxDesigner.Element(XName.Get("Options", edmxNamespace.NamespaceName)).Element(XName.Get("DesignerInfoPropertySet", edmxNamespace.NamespaceName)).Elements(XName.Get("DesignerProperty", edmxNamespace.NamespaceName)).Select(e => new DesignerProperty { Name = e.Attribute("Name").Value, Value = e.Attribute("Value").Value });
edm.EDMXDesignerDiagrams = edmxDesigner.Element(XName.Get("Diagrams", edmxNamespace.NamespaceName)).Elements(XName.Get("Diagram", edmxNamespace.NamespaceName));
if (edmxDesigner.Element(XName.Get("Connection", edmxNamespace.NamespaceName)) != null)
edm.DesignerProperties = edmxDesigner.Element(XName.Get("Connection", edmxNamespace.NamespaceName)).Element(XName.Get("DesignerInfoPropertySet", edmxNamespace.NamespaceName)).Elements(XName.Get("DesignerProperty", edmxNamespace.NamespaceName)).Select(e => new DesignerProperty { Name = e.Attribute("Name").Value, Value = e.Attribute("Value").Value });
if (edmxDesigner.Element(XName.Get("Options", edmxNamespace.NamespaceName)) != null)
edm.EDMXDesignerDesignerProperties = edmxDesigner.Element(XName.Get("Options", edmxNamespace.NamespaceName)).Element(XName.Get("DesignerInfoPropertySet", edmxNamespace.NamespaceName)).Elements(XName.Get("DesignerProperty", edmxNamespace.NamespaceName)).Select(e => new DesignerProperty { Name = e.Attribute("Name").Value, Value = e.Attribute("Value").Value });
if (edmxDesigner.Element(XName.Get("Diagrams", edmxNamespace.NamespaceName)) != null)
edm.EDMXDesignerDiagrams = edmxDesigner.Element(XName.Get("Diagrams", edmxNamespace.NamespaceName)).Elements(XName.Get("Diagram", edmxNamespace.NamespaceName));
}
readMoreAction(edmx);
return edm;
}
public enum EDMXSection
{
EDMX,
Runtime,
SSDL,
CSDL,
MSL,
Designer,
DesignerViews
}
public static XElement ReadSection(XDocument edmxDocument, EDMXSection section)
{
return ReadSection(edmxDocument.Root, section);
}
public static XElement ReadSection(XElement edmxElement, EDMXSection section)
{
if (section == EDMXSection.EDMX)
return edmxElement;
if (edmxElement == null)
throw new ArgumentException("Input file is not a valid EDMX file.");
if (section == EDMXSection.Designer || section == EDMXSection.DesignerViews)
{
XElement designerElement = edmxElement.Element(XName.Get("Designer", edmxNamespace.NamespaceName));
if (designerElement == null)
return null;
if (section == EDMXSection.Designer)
return designerElement;
else
{
XElement diagramsElement = designerElement.Element(XName.Get("Diagrams", edmxNamespace.NamespaceName));
if (diagramsElement == null)
throw new ArgumentException("Input file is not a valid EDMX file.");
return diagramsElement.Element(XName.Get("DesignerViews"));
}
}
XElement runtimeElement = edmxElement.Element(XName.Get("Runtime", edmxNamespace.NamespaceName));
if (runtimeElement == null)
throw new ArgumentException("Input file is not a valid EDMX file.");
if (section == EDMXSection.Runtime)
return runtimeElement;
switch (section)
{
case EDMXSection.SSDL:
XElement storageModelsElement = runtimeElement.Element(XName.Get("StorageModels", edmxNamespace.NamespaceName));
if (storageModelsElement == null)
throw new ArgumentException("Input file is not a valid EDMX file.");
return storageModelsElement;
case EDMXSection.CSDL:
XElement conceptualModelsElement = runtimeElement.Element(XName.Get("ConceptualModels", edmxNamespace.NamespaceName));
if (conceptualModelsElement == null)
throw new ArgumentException("Input file is not a valid EDMX file.");
return conceptualModelsElement;
case EDMXSection.MSL:
XElement mappingsElement = runtimeElement.Element(XName.Get("Mappings", edmxNamespace.NamespaceName));
if (mappingsElement == null)
throw new ArgumentException("Input file is not a valid EDMX file.");
return mappingsElement;
}
return null;
}
public static XDocument WriteXDocument(XDocument ssdlDocument, XDocument csdlDocument, XDocument mslDocument)
{
return WriteXDocument(ssdlDocument.Root, csdlDocument.Root, mslDocument.Root, null);
}
public static XDocument WriteXDocument(XElement ssdlElement, XElement csdlElement, XElement mslElement, XElement designerElement)
{
return new XDocument(new XDeclaration("1.0", "utf-8", null),
new XElement(edmxNamespace + "Edmx", new XAttribute("Version", "1.0"), new XAttribute(XNamespace.Xmlns + "edmx", edmxNamespace.NamespaceName),
new XElement(edmxNamespace + "Runtime",
new XElement(edmxNamespace + "StorageModels",
ssdlElement),
new XElement(edmxNamespace + "ConceptualModels",
csdlElement),
new XElement(edmxNamespace + "Mappings",
mslElement))).AddElement(designerElement));
}
public static XDocument WriteXDocument(EDMView edmView)
{
XElement ssdlElement = SSDLIO.WriteXElement(edmView.EDM.SSDLContainer);
XElement csdlElement = CSDLIO.Write(edmView.EDM.CSDLContainer);
XElement mslElement = MSLIO.Write(edmView.EDM);
XElement designerElement = DesignerIO.Write(edmView);
return WriteXDocument(ssdlElement, csdlElement, mslElement, designerElement);
}
}
}

51
src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core/IO/EntityModelCodeGenerator.cs

@ -0,0 +1,51 @@ @@ -0,0 +1,51 @@
#region Usings
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using ICSharpCode.SharpDevelop.Project;
using System.Data.Entity.Design;
using System.CodeDom;
using System.Data.Metadata.Edm;
using System.Xml.Linq;
using System.IO;
#endregion
namespace ICSharpCode.Data.EDMDesigner.Core.IO
{
public class EntityModelCodeGenerator : IO, ICustomTool
{
#region ICustomTool Member
public void GenerateCode(FileProjectItem item, CustomToolContext context)
{
LanguageOption languageToGenerateCode = LanguageOption.GenerateCSharpCode;
if (item.Project.Language != "C#")
languageToGenerateCode = LanguageOption.GenerateVBCode;
XDocument edmxDocument = XDocument.Load(item.FileName);
XElement conceptualModelsElement = EDMXIO.ReadSection(edmxDocument, EDMXIO.EDMXSection.CSDL);
if (conceptualModelsElement == null)
throw new ArgumentException("Input file is not a valid EDMX file.");
XDocument csdlDocument = new XDocument(new XDeclaration("1.0", "utf-8", null), conceptualModelsElement.Element(XName.Get("Schema", csdlNamespace.NamespaceName)));
string tempFileName = IO.GetTempFilenameWithExtension("csdl");
csdlDocument.Save(tempFileName);
string outputFileName = context.GetOutputFileName(item, "Designer");
EntityCodeGenerator entityCodeGenerator = new EntityCodeGenerator(languageToGenerateCode);
IList<EdmSchemaError> edmSchemaErrors = entityCodeGenerator.GenerateCode(tempFileName, outputFileName);
File.Delete(tempFileName);
context.EnsureOutputFileIsInProject(item, outputFileName);
}
#endregion
}
}

35
src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core/IO/IO.cs

@ -7,6 +7,7 @@ using System; @@ -7,6 +7,7 @@ using System;
using System.Linq;
using System.Xml.Linq;
using ICSharpCode.Data.EDMDesigner.Core.EDMObjects.Common;
using System.IO;
#endregion
@ -16,15 +17,16 @@ namespace ICSharpCode.Data.EDMDesigner.Core.IO @@ -16,15 +17,16 @@ namespace ICSharpCode.Data.EDMDesigner.Core.IO
{
#region Namespace declarations
protected static XNamespace edmxNamespace = "http://schemas.microsoft.com/ado/2007/06/edmx";
protected static XNamespace ssdlNamespace = "http://schemas.microsoft.com/ado/2006/04/edm/ssdl";
protected static XNamespace edmxNamespace = "http://schemas.microsoft.com/ado/2008/10/edmx";
protected static XNamespace ssdlNamespace = "http://schemas.microsoft.com/ado/2009/02/edm/ssdl";
protected static XNamespace storeNamespace = "http://schemas.microsoft.com/ado/2007/12/edm/EntityStoreSchemaGenerator";
protected static XNamespace csdlNamespace = "http://schemas.microsoft.com/ado/2006/04/edm";
protected static XNamespace csdlNamespace = "http://schemas.microsoft.com/ado/2008/09/edm";
protected static XNamespace csdlCodeGenerationNamespace = "http://schemas.microsoft.com/ado/2006/04/codegeneration";
protected static XNamespace csdlAnnotationNamespace = "http://schemas.microsoft.com/ado/2009/02/edm/annotation";
protected static XNamespace mslNamespace = "urn:schemas-microsoft-com:windows:storage:mapping:CS";
protected static XNamespace mslNamespace = "http://schemas.microsoft.com/ado/2008/09/mapping/cs";
#endregion
#region Helper functions
@ -108,6 +110,29 @@ namespace ICSharpCode.Data.EDMDesigner.Core.IO @@ -108,6 +110,29 @@ namespace ICSharpCode.Data.EDMDesigner.Core.IO
setAction(subElement.Value);
}
public static string GetTempFilename()
{
return Path.GetTempFileName();
}
public static string GetTempFilenameWithExtension(string filenamePrefix, string extension)
{
string tempFileAuto = GetTempFilename();
string tempFile =
Path.GetTempPath() +
filenamePrefix +
Path.GetFileNameWithoutExtension(tempFileAuto)
+ "." + extension;
return tempFile;
}
public static string GetTempFilenameWithExtension(string extension)
{
return GetTempFilenameWithExtension(string.Empty, extension);
}
#endregion
}
}

305
src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core/IO/MSLIO.cs

@ -15,6 +15,9 @@ using ICSharpCode.Data.EDMDesigner.Core.EDMObjects.MSL.Condition; @@ -15,6 +15,9 @@ using ICSharpCode.Data.EDMDesigner.Core.EDMObjects.MSL.Condition;
using ICSharpCode.Data.EDMDesigner.Core.EDMObjects.MSL.CUDFunction;
using ICSharpCode.Data.EDMDesigner.Core.EDMObjects.MSL.EntityType;
using ICSharpCode.Data.EDMDesigner.Core.EDMObjects.SSDL;
using ICSharpCode.Data.EDMDesigner.Core.EDMObjects;
using ICSharpCode.Data.EDMDesigner.Core.EDMObjects.CSDL.Association;
using ICSharpCode.Data.EDMDesigner.Core.EDMObjects.CSDL.Function;
#endregion
@ -23,7 +26,9 @@ namespace ICSharpCode.Data.EDMDesigner.Core.IO @@ -23,7 +26,9 @@ namespace ICSharpCode.Data.EDMDesigner.Core.IO
public class MSLIO : IO
{
#region Methods
#region Read
public static XDocument GenerateTypeMapping(XDocument mslDocument)
{
XElement mappingElement = mslDocument.Element(XName.Get("Mapping", mslNamespace.NamespaceName));
@ -259,5 +264,303 @@ namespace ICSharpCode.Data.EDMDesigner.Core.IO @@ -259,5 +264,303 @@ namespace ICSharpCode.Data.EDMDesigner.Core.IO
}
#endregion
#region Write
public static XElement Write(EDM edm)
{
CSDLContainer csdlContainer = edm.CSDLContainer;
string entityContainerNamespace = string.Concat(csdlContainer.Namespace, ".");
// Instantiate Mapping
XElement mapping = new XElement(mslNamespace + "Mapping",
new XAttribute("Space", "C-S"));
// EntityContainerMapping
XElement entityContainerMapping = new XElement(mslNamespace + "EntityContainerMapping",
new XAttribute("StorageEntityContainer", edm.SSDLContainer.Name),
new XAttribute("CdmEntityContainer", csdlContainer.Name));
foreach (EntityType entitySet in csdlContainer.EntitySets)
{
IEnumerable<EntityType> entityTypes = csdlContainer.EntityTypes.Where(entityType => entityType.EntitySetName == entitySet.EntitySetName);
// EntityContainerMapping : EntitySetMapping
XElement entitySetMappingElement = new XElement(mslNamespace + "EntitySetMapping",
new XAttribute("Name", entitySet.Name));
// EntityContainerMapping : EntitySetMapping : EntityTypeMapping
foreach (EntityType entityType in entityTypes)
{
XElement entityTypeMappingElement = new XElement(mslNamespace + "EntityTypeMapping",
new XAttribute("TypeName", string.Format("IsTypeOf({0}{1})", entityContainerNamespace, entityType.Name)));
// EntityContainerMapping : EntitySetMapping : EntityTypeMapping : MappingFragment
foreach (EDMObjects.SSDL.EntityType.EntityType table in entityType.Mapping.MappedSSDLTables)
{
XElement mappingFragmentElement = new XElement(mslNamespace + "MappingFragment",
new XAttribute("StoreEntitySet", table.EntitySetName));
IEnumerable<PropertyMapping> scalarMappings = entityType.Mapping.GetSpecificMappingForTable(table);
foreach (PropertyMapping scalarMapping in scalarMappings)
{
mappingFragmentElement.AddElement(new XElement(mslNamespace + "ScalarProperty",
new XAttribute("Name", scalarMapping.Property.Name),
new XAttribute("ColumnName", scalarMapping.Column.Name)));
}
mappingFragmentElement.Add(MappingComplexProperties(entityType, entityType.Mapping, table, entityContainerNamespace));
IEnumerable<ConditionMapping> conditionMappings = entityType.Mapping.ConditionsMapping.Where(condition => condition.Table == table);
foreach (ConditionMapping conditionMapping in conditionMappings)
{
XElement conditionElement = new XElement(mslNamespace + "Condition");
if (conditionMapping is ColumnConditionMapping)
conditionElement.AddAttribute("ColumnName", (conditionMapping as ColumnConditionMapping).Column.Name);
else if (conditionMapping is PropertyConditionMapping)
conditionElement.AddAttribute("Name", (conditionMapping as PropertyConditionMapping).CSDLProperty.Name);
mappingFragmentElement.Add(conditionElement.AddMappingConditionAttribute(conditionMapping));
}
entityTypeMappingElement.Add(mappingFragmentElement);
}
entitySetMappingElement.Add(entityTypeMappingElement);
}
// EntityContainerMapping : EntitySetMapping : CUDFunctionMapping
foreach (EntityType entityType in entityTypes)
{
entitySetMappingElement.Add(CUDFunctionMapping(entityType, entityContainerNamespace, string.Concat(edm.SSDLContainer.Namespace, ".")));
}
entityContainerMapping.Add(entitySetMappingElement);
}
// EntityContainerMapping : AssociationSetMappings
IEnumerable<Association> associations = csdlContainer.Associations.Where(association => association.Mapping.SSDLTableMapped != null);
foreach (Association association in associations)
{
XElement associationSetMappingElement = new XElement(mslNamespace + "AssociationSetMapping",
new XAttribute("Name", association.AssociationSetName),
new XAttribute("TypeName", string.Concat(entityContainerNamespace, association.Name)),
new XAttribute("StoreEntitySet", association.Mapping.SSDLTableMapped.Name));
XElement endPropertyElement1 = new XElement(mslNamespace + "EndProperty",
new XAttribute("Name", association.PropertyEnd1Role));
foreach (PropertyMapping navigationPropertyMapping in association.PropertyEnd1.Mapping)
{
endPropertyElement1.AddElement(new XElement(mslNamespace + "ScalarProperty",
new XAttribute("Name", navigationPropertyMapping.Property.Name),
new XAttribute("ColumnName", navigationPropertyMapping.Column.Name)));
}
XElement endPropertyElement2 = new XElement(mslNamespace + "EndProperty",
new XAttribute("Name", association.PropertyEnd2Role));
foreach (PropertyMapping navigationPropertyMapping in association.PropertyEnd2.Mapping)
{
endPropertyElement2.AddElement(new XElement(mslNamespace + "ScalarProperty",
new XAttribute("Name", navigationPropertyMapping.Property.Name),
new XAttribute("ColumnName", navigationPropertyMapping.Column.Name)));
}
associationSetMappingElement.Add(endPropertyElement1);
associationSetMappingElement.Add(endPropertyElement2);
entityContainerMapping.Add(associationSetMappingElement);
}
// EntityContainerMapping : Conditions
foreach (Function function in csdlContainer.Functions)
{
entityContainerMapping.Add(new XElement(mslNamespace + "FunctionImportMapping",
new XAttribute("FunctionImportName", function.Name),
new XAttribute("FunctionName", string.Format("{0}.{1}", edm.SSDLContainer.Namespace, function.SSDLFunction.Name))));
}
return mapping.AddElement(entityContainerMapping);
}
private static IEnumerable<XElement> MappingComplexProperties(TypeBase type, MappingBase mapping, EDMObjects.SSDL.EntityType.EntityType table, string entityContainerNamespace)
{
foreach (ComplexProperty complexProperty in type.AllComplexProperties)
{
ComplexPropertyMapping complexPropertyMapping = mapping.GetEntityTypeSpecificComplexPropertyMapping(complexProperty);
if (complexPropertyMapping != null)
{
XElement complexPropertyElement = new XElement(mslNamespace + "ComplexProperty",
new XAttribute("Name", complexProperty.Name));
IEnumerable<PropertyMapping> scalarMappings = complexPropertyMapping.GetSpecificMappingForTable(table);
foreach (PropertyMapping scalarMapping in scalarMappings)
{
complexPropertyElement.AddElement(new XElement(mslNamespace + "ScalarProperty",
new XAttribute("Name", scalarMapping.Property.Name),
new XAttribute("ColumnName", scalarMapping.Column.Name)));
}
foreach (ComplexProperty subComplexProperty in complexProperty.ComplexType.ComplexProperties)
{
complexPropertyElement.Add(MappingComplexProperties(complexProperty.ComplexType, complexPropertyMapping, table, entityContainerNamespace));
}
yield return complexPropertyElement;
}
}
}
private static XElement MappingColumnCondition(ColumnConditionMapping condition)
{
return new XElement(mslNamespace + "Condition", new XAttribute("ColumnName", condition.Column.Name)).AddMappingConditionAttribute(condition);
}
private static XElement CUDFunctionMapping(EntityType entityType, string entityContainerNamespace, string storeContainerNamespace)
{
EntityTypeMapping mapping = entityType.Mapping;
if (mapping.InsertFunctionMapping == null || mapping.UpdateFunctionMapping == null || mapping.DeleteFunctionMapping == null)
return null;
XElement modificationFunctionMapping = new XElement(mslNamespace + "ModificationFunctionMapping");
var insertFunction = mapping.InsertFunctionMapping;
if (insertFunction != null)
{
XElement insertFunctionElement = new XElement(mslNamespace + "InsertFunction",
new XAttribute("FunctionName", string.Concat(storeContainerNamespace, insertFunction.SSDLFunction.Name)));
insertFunctionElement.Add(CUDFunctionMappingAssociation(insertFunction));
insertFunctionElement.Add(CUDFunctionMappingParameters(insertFunction));
insertFunctionElement.Add(CUDFunctionMappingResults(insertFunction));
modificationFunctionMapping.AddElement(insertFunctionElement);
}
var updateFunction = mapping.UpdateFunctionMapping;
if (updateFunction != null)
{
XElement updateFunctionElement = new XElement(mslNamespace + "UpdateFunction",
new XAttribute("FunctionName", string.Concat(storeContainerNamespace, updateFunction.SSDLFunction.Name)));
updateFunctionElement.Add(CUDFunctionMappingAssociation(updateFunction));
updateFunctionElement.Add(CUDFunctionMappingParameters(updateFunction));
updateFunctionElement.Add(CUDFunctionMappingResults(updateFunction));
modificationFunctionMapping.AddElement(updateFunctionElement);
}
var deleteFunction = mapping.DeleteFunctionMapping;
if (deleteFunction != null)
{
XElement deleteFunctionElement = new XElement(mslNamespace + "DeleteFunction",
new XAttribute("FunctionName", string.Concat(storeContainerNamespace, deleteFunction.SSDLFunction.Name)));
deleteFunctionElement.Add(CUDFunctionMappingAssociation(deleteFunction));
deleteFunctionElement.Add(CUDFunctionMappingParameters(deleteFunction));
deleteFunctionElement.Add(CUDFunctionMappingResults(deleteFunction));
modificationFunctionMapping.AddElement(deleteFunctionElement);
}
return new XElement(mslNamespace + "EntityTypeMapping",
new XAttribute("TypeName", string.Concat(entityContainerNamespace, entityType.Name)),
modificationFunctionMapping);
}
private static IEnumerable<XElement> CUDFunctionMappingAssociation(CUDFunctionMapping functionMapping)
{
foreach (CUDFunctionAssociationMapping cudFunctionAssiociation in functionMapping.AssociationMappings)
{
XElement associationEndElement = new XElement(mslNamespace + "AssociationEnd",
new XAttribute("AssociationSet", cudFunctionAssiociation.Association.AssociationSetName),
new XAttribute("From", cudFunctionAssiociation.FromRole),
new XAttribute("To", cudFunctionAssiociation.ToRole));
associationEndElement.Add(CUDFunctionMappingScalarPropertiesParameters(cudFunctionAssiociation.AssociationPropertiesMapping));
yield return associationEndElement;
}
}
private static IEnumerable<XElement> CUDFunctionMappingParameters(CUDFunctionMapping functionMapping)
{
return CUDFunctionMappingParameters(functionMapping.ParametersMapping);
}
private static IEnumerable<XElement> CUDFunctionMappingParameters(EntityTypeCUDFunctionParametersMapping cudFunctionParameters)
{
List<XElement> complexProperties = new List<XElement>();
foreach (var complexParameter in cudFunctionParameters.ComplexPropertiesMapping)
{
XElement complexProperty = new XElement(mslNamespace + "Complexproperty",
new XAttribute("Name", complexParameter.Key.Name));
complexProperty.Add(CUDFunctionMappingParameters(complexParameter.Value));
}
return CUDFunctionMappingScalarPropertiesParameters(cudFunctionParameters).Union(complexProperties);
}
private static IEnumerable<XElement> CUDFunctionMappingScalarPropertiesParameters(CUDFunctionParametersMapping cudFunctionParameters)
{
foreach (var parameter in cudFunctionParameters)
{
yield return new XElement(mslNamespace + "ScalarProperty",
new XAttribute("Name", parameter.Key.Name),
new XAttribute("ParameterName", parameter.Value.SSDLFunctionParameter.Name))
.AddAttribute(null, "Version", parameter.Value.Version);
}
}
private static IEnumerable<XElement> CUDFunctionMappingResults(CUDFunctionMapping functionMapping)
{
foreach (var result in functionMapping.ResultsMapping)
{
yield return new XElement(mslNamespace + "ResultBinding",
new XAttribute("Name", result.Key.Name),
new XAttribute("ColumnName", result.Value));
}
}
#endregion
#endregion
}
#region Extension methods
internal static class MSLIOHelpers
{
public static XElement AddMappingConditionAttribute(this XElement element, ConditionMapping conditionMapping)
{
switch (conditionMapping.Operator)
{
case ConditionOperator.IsNotNull:
element.Add(new XAttribute("IsNull", false));
break;
case ConditionOperator.IsNull:
element.Add(new XAttribute("IsNull", true));
break;
case ConditionOperator.Equals:
element.Add(new XAttribute("Value", conditionMapping.Value));
break;
}
return element;
}
}
#endregion
}

48
src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core/IO/SSDLIO.cs

@ -22,7 +22,6 @@ namespace ICSharpCode.Data.EDMDesigner.Core.IO @@ -22,7 +22,6 @@ namespace ICSharpCode.Data.EDMDesigner.Core.IO
{
public class SSDLIO : IO
{
public static XDocument WriteXDocument(SSDLContainer ssdlContainer)
{
return new XDocument(new XDeclaration("1.0", "utf-8", null), WriteXElement(ssdlContainer));
@ -49,12 +48,12 @@ namespace ICSharpCode.Data.EDMDesigner.Core.IO @@ -49,12 +48,12 @@ namespace ICSharpCode.Data.EDMDesigner.Core.IO
{
XElement entitySet = new XElement(ssdlNamespace + "EntitySet",
new XAttribute("Name", entityType.EntitySetName), new XAttribute("EntityType", string.Concat(entityContainerNamespace, entityType.Name)))
.AddAttribute("Schema", entityType.Schema)
.AddAttribute(entityType.StoreType == StoreType.Views ? null : new XAttribute("Schema", entityType.Schema))
.AddAttribute("Table", entityType.Table)
.AddAttribute(storeNamespace, "Name", entityType.StoreName)
.AddAttribute(storeNamespace, "Schema", entityType.StoreSchema)
.AddAttribute(storeNamespace, "Type", entityType.StoreType)
.AddElement(string.IsNullOrEmpty(entityType.DefiningQuery) ? null : new XElement("DefiningQuery", entityType.DefiningQuery));
.AddElement(string.IsNullOrEmpty(entityType.DefiningQuery) ? null : new XElement(ssdlNamespace + "DefiningQuery", entityType.DefiningQuery));
entityContainer.Add(entitySet);
}
@ -67,7 +66,7 @@ namespace ICSharpCode.Data.EDMDesigner.Core.IO @@ -67,7 +66,7 @@ namespace ICSharpCode.Data.EDMDesigner.Core.IO
string role2Name = association.Role2.Name;
// If the assocation end properties are the same properties
// If the association end properties are the same properties
if (association.Role1.Name == association.Role2.Name && association.Role1.Type.Name == association.Role2.Type.Name)
role2Name += "1";
@ -87,7 +86,9 @@ namespace ICSharpCode.Data.EDMDesigner.Core.IO @@ -87,7 +86,9 @@ namespace ICSharpCode.Data.EDMDesigner.Core.IO
foreach (Property property in entityType.Properties)
{
if (property.IsKey)
// If we have a table then we set a key element if the current property is a primary key or part of a composite key.
// AND: If we have a view then we make a composite key of all non-nullable properties of the entity (VS2010 is also doing this).
if ((entityType.StoreType == StoreType.Tables && property.IsKey) || (entityType.StoreType == StoreType.Views && property.Nullable == false))
keys.Add(new XElement(ssdlNamespace + "PropertyRef", new XAttribute("Name", property.Name)));
}
@ -118,17 +119,17 @@ namespace ICSharpCode.Data.EDMDesigner.Core.IO @@ -118,17 +119,17 @@ namespace ICSharpCode.Data.EDMDesigner.Core.IO
{
string role2Name = association.Role2.Name;
// If the assocation end properties are the same properties
// If the association end properties are the same properties
if (association.Role1.Name == association.Role2.Name && association.Role1.Type.Name == association.Role2.Type.Name)
role2Name += "1";
XElement associationElement = new XElement(ssdlNamespace + "Association", new XAttribute("Name", association.Name),
new XElement(ssdlNamespace + "End", new XAttribute("Role", association.Role1.Name), new XAttribute("Type", string.Concat(entityContainerNamespace, association.Role1.Type.Name)), new XAttribute("Multiplicity", CardinalityStringConverter.CardinalityToSTring(association.Role1.Cardinality))),
new XElement(ssdlNamespace + "End", new XAttribute("Role", role2Name), new XAttribute("Type", string.Concat(entityContainerNamespace, association.Role2.Type.Name)), new XAttribute("Multiplicity", CardinalityStringConverter.CardinalityToSTring(association.Role2.Cardinality))));
new XElement(ssdlNamespace + "End", new XAttribute("Role", association.Role1.Name), new XAttribute("Type", string.Concat(entityContainerNamespace, association.Role1.Type.Name)), new XAttribute("Multiplicity", CardinalityStringConverter.CardinalityToString(association.Role1.Cardinality))),
new XElement(ssdlNamespace + "End", new XAttribute("Role", role2Name), new XAttribute("Type", string.Concat(entityContainerNamespace, association.Role2.Type.Name)), new XAttribute("Multiplicity", CardinalityStringConverter.CardinalityToString(association.Role2.Cardinality))));
string dependentRoleName = association.DependantRole.Name;
// If the assocation end properties are the same properties
// If the association end properties are the same properties
if (association.PrincipalRole.Name == association.DependantRole.Name && association.PrincipalRole.Type.Name == association.DependantRole.Type.Name)
dependentRoleName += "1";
@ -258,13 +259,38 @@ namespace ICSharpCode.Data.EDMDesigner.Core.IO @@ -258,13 +259,38 @@ namespace ICSharpCode.Data.EDMDesigner.Core.IO
{
isPrincipal = true;
association.PrincipalRole = role;
role.Properties = role.Type.Properties.Where(p => p.Name == principalElement.Element(XName.Get("PropertyRef", ssdlNamespace.NamespaceName)).Attribute("Name").Value).ToEventedObservableCollection();
EventedObservableCollection<Property> properties = new EventedObservableCollection<Property>();
foreach (XElement element in principalElement.Elements(XName.Get("PropertyRef", ssdlNamespace.NamespaceName)))
{
foreach (Property property in role.Type.Properties)
{
if (property.Name == element.Attribute("Name").Value)
properties.Add(property);
}
}
role.Properties = properties;
}
else
{
isPrincipal = false;
association.DependantRole = role;
role.Properties = role.Type.Properties.Where(p => p.Name == referentialConstraintElement.Element(XName.Get("Dependent", ssdlNamespace.NamespaceName)).Element(XName.Get("PropertyRef", ssdlNamespace.NamespaceName)).Attribute("Name").Value).ToEventedObservableCollection();
EventedObservableCollection<Property> properties = new EventedObservableCollection<Property>();
XElement dependentElement = referentialConstraintElement.Element(XName.Get("Dependent", ssdlNamespace.NamespaceName));
foreach (XElement element in dependentElement.Elements(XName.Get("PropertyRef", ssdlNamespace.NamespaceName)))
{
foreach (Property property in role.Type.Properties)
{
if (property.Name == element.Attribute("Name").Value)
properties.Add(property);
}
}
role.Properties = properties;
}
}
if (isPrincipal)

43
src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core/ObjectModelConverters/EDMConverter.cs

@ -42,14 +42,13 @@ namespace ICSharpCode.Data.EDMDesigner.Core.ObjectModelConverters @@ -42,14 +42,13 @@ namespace ICSharpCode.Data.EDMDesigner.Core.ObjectModelConverters
{
XDocument ssdlXDocument = GetSSDLXML(database, modelNamespace);
string ssdlTempFilename = GetTempFilenameWithExtension("ssdl");
string ssdlTempFilename = IO.IO.GetTempFilenameWithExtension("ssdl");
ssdlXDocument.Save(ssdlTempFilename);
FileInfo fileInfo = new FileInfo(ssdlTempFilename);
string filenameRump = Path.GetTempPath() + fileInfo.Name.Replace(fileInfo.Extension, string.Empty);
string edmGenPath = RuntimeEnvironment.GetRuntimeDirectory() + "\\EdmGen.exe";
edmGenPath = @"C:\Windows\Microsoft.NET\Framework\v3.5\EdmGen.exe";
Process process = new Process();
ProcessStartInfo processStartInfo = new ProcessStartInfo();
@ -68,49 +67,15 @@ namespace ICSharpCode.Data.EDMDesigner.Core.ObjectModelConverters @@ -68,49 +67,15 @@ namespace ICSharpCode.Data.EDMDesigner.Core.ObjectModelConverters
if (process.ExitCode != 0)
{
throw new Exception("An error occured during generating the EDMX file.", new Exception(outputMessage));
throw new ObjectModelConverterException(string.Format("An error occured during generating the EDMX file from \"{0}.ssdl\".", filenameRump),
outputMessage, ObjectModelConverterExceptionEnum.EDM);
}
XDocument csdlXDocument = XDocument.Load(filenameRump + ".csdl");
XDocument mslXDocument = XDocument.Load(filenameRump + ".msl");
mslXDocument = MSLIO.GenerateTypeMapping(mslXDocument);
XNamespace edmxNamespace = "http://schemas.microsoft.com/ado/2007/06/edmx";
XDocument edmXDocument = new XDocument(new XDeclaration("1.0", "utf-8", null),
new XElement(edmxNamespace + "Edmx", new XAttribute("Version", "1.0"), new XAttribute(XNamespace.Xmlns + "edmx", edmxNamespace.NamespaceName),
new XElement(edmxNamespace + "Runtime",
new XElement(edmxNamespace + "StorageModels",
ssdlXDocument.Root),
new XElement(edmxNamespace + "ConceptualModels",
csdlXDocument.Root),
new XElement(edmxNamespace + "Mappings",
mslXDocument.Root))));
return edmXDocument;
}
private static string GetTempFilename()
{
return Path.GetTempFileName();
}
private static string GetTempFilenameWithExtension(string filenamePrefix, string extension)
{
string tempFileAuto = GetTempFilename();
string tempFile =
Path.GetTempPath() +
filenamePrefix +
Path.GetFileNameWithoutExtension(tempFileAuto)
+ "." + extension;
return tempFile;
}
private static string GetTempFilenameWithExtension(string extension)
{
return GetTempFilenameWithExtension(string.Empty, extension);
return EDMXIO.WriteXDocument(ssdlXDocument, csdlXDocument, mslXDocument);
}
}
}

39
src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core/ObjectModelConverters/ObjectModelConverterException.cs

@ -0,0 +1,39 @@ @@ -0,0 +1,39 @@
#region Usings
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
#endregion
namespace ICSharpCode.Data.EDMDesigner.Core.ObjectModelConverters
{
public enum ObjectModelConverterExceptionEnum
{
CSDL,
EDM,
SSDL
}
public class ObjectModelConverterException : Exception
{
#region Constructor
public ObjectModelConverterException(string message, string detail, ObjectModelConverterExceptionEnum type) : base(message)
{
Detail = detail;
ExceptionType = type;
}
#endregion
#region Properties
public string FullMessage { get { return Message + "\n\nDetailed error message:\n" + Detail; } }
public string Detail { get; protected set; }
public ObjectModelConverterExceptionEnum ExceptionType { get; protected set; }
#endregion
}
}

4
src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core/ObjectModelConverters/SSDLConverter.cs

@ -78,7 +78,9 @@ namespace ICSharpCode.Data.EDMDesigner.Core.ObjectModelConverters @@ -78,7 +78,9 @@ namespace ICSharpCode.Data.EDMDesigner.Core.ObjectModelConverters
{
Name = table.TableName,
EntitySetName = table.TableName,
Schema = table.SchemaName
Schema = table.SchemaName,
StoreName = table.TableName,
StoreSchema = table.SchemaName
};
if (table is IView)

2
src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core/Windows/EDMWizard/ChooseDatabaseObjectsUserControl.xaml.cs

@ -52,7 +52,7 @@ namespace ICSharpCode.Data.EDMDesigner.Core.Windows.EDMWizard @@ -52,7 +52,7 @@ namespace ICSharpCode.Data.EDMDesigner.Core.Windows.EDMWizard
InitializeComponent();
}
public override void OnActivate()
public override void OnActivateFromPredecessor()
{
EDMWizardWindow edmWizardWindow = WizardWindow as EDMWizardWindow;
if (edmWizardWindow.SelectedDatabase != null)

14
src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core/Windows/EDMWizard/EDMWizardErrorUserControl.xaml

@ -0,0 +1,14 @@ @@ -0,0 +1,14 @@
<data:WizardErrorUserControl x:Class="ICSharpCode.Data.EDMDesigner.Core.Windows.EDMWizard.EDMWizardErrorUserControl" x:Name="This"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:data="http://icsharpcode.net/data">
<Grid Margin="5">
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition />
</Grid.RowDefinitions>
<TextBlock Margin="3">The following error(s) occured during generation of the Entity Data Model:</TextBlock>
<TextBox Grid.Row="1" Margin="3" Text="{Binding Path=Exception.FullMessage, ElementName=This, Mode=OneWay}" IsReadOnly="True" HorizontalScrollBarVisibility="Auto" VerticalScrollBarVisibility="Auto" />
</Grid>
</data:WizardErrorUserControl>

44
src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core/Windows/EDMWizard/EDMWizardErrorUserControl.xaml.cs

@ -0,0 +1,44 @@ @@ -0,0 +1,44 @@
// 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 System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
using ICSharpCode.Data.Core.UI.UserControls;
namespace ICSharpCode.Data.EDMDesigner.Core.Windows.EDMWizard
{
/// <summary>
/// Interaction logic for EDMWizardErrorUserControl.xaml
/// </summary>
public partial class EDMWizardErrorUserControl : WizardErrorUserControl
{
public override string Title
{
get
{
return "Error while generating Entity Model";
}
}
public EDMWizardErrorUserControl()
{
InitializeComponent();
}
public override void OnActivate()
{
}
}
}

24
src/AddIns/DisplayBindings/Data/ICSharpCode.Data.EDMDesigner.Core/Windows/EDMWizard/EDMWizardWindow.cs

@ -37,6 +37,7 @@ namespace ICSharpCode.Data.EDMDesigner.Core.Windows.EDMWizard @@ -37,6 +37,7 @@ namespace ICSharpCode.Data.EDMDesigner.Core.Windows.EDMWizard
private IDatabase _selectedDatabase = null;
private string _modelNamespace = string.Empty;
private string _objectContextName = string.Empty;
private string _projectStandardNamespace = string.Empty;
private OpenedFile _file = null;
private XDocument _edmxDocument = null;
@ -137,32 +138,17 @@ namespace ICSharpCode.Data.EDMDesigner.Core.Windows.EDMWizard @@ -137,32 +138,17 @@ namespace ICSharpCode.Data.EDMDesigner.Core.Windows.EDMWizard
#region Constructor
public EDMWizardWindow(OpenedFile file)
public EDMWizardWindow(OpenedFile file, string projectStandardNamespace)
{
Title = "Entity Framework Wizard";
Width = 640;
Height = 480;
WizardWindowInnards.WizardErrorUserControl = new EDMWizardErrorUserControl();
AddWizardUserControl<ChooseDatabaseConnectionUserControl>();
AddWizardUserControl<ChooseDatabaseObjectsUserControl>();
_file = file;
}
#endregion
#region Event handlers
private void btnNewConnection_Click(object sender, RoutedEventArgs e)
{
ConnectionWizardWindow connectionWizardWindow = new ConnectionWizardWindow();
connectionWizardWindow.Owner = this;
connectionWizardWindow.ShowDialog();
if (connectionWizardWindow.DialogResult.HasValue && connectionWizardWindow.DialogResult.Value)
{
_databases.Add(connectionWizardWindow.SelectedDatabase);
SelectedDatabase = connectionWizardWindow.SelectedDatabase;
}
_projectStandardNamespace = projectStandardNamespace;
}
#endregion
@ -173,7 +159,7 @@ namespace ICSharpCode.Data.EDMDesigner.Core.Windows.EDMWizard @@ -173,7 +159,7 @@ namespace ICSharpCode.Data.EDMDesigner.Core.Windows.EDMWizard
{
if (SelectedDatabase != null)
{
_edmxDocument = EDMConverter.CreateEDMXFromIDatabase(SelectedDatabase, ModelNamespace, "TestNamespace", ObjectContextName);
_edmxDocument = EDMConverter.CreateEDMXFromIDatabase(SelectedDatabase, ModelNamespace, _projectStandardNamespace, ObjectContextName);
}
}

23
src/AddIns/DisplayBindings/Data/ICSharpCode.Data.SQLServer/SQLServerDatabaseDriver.cs

@ -113,6 +113,7 @@ namespace ICSharpCode.Data.Core.DatabaseDrivers.SQLServer @@ -113,6 +113,7 @@ namespace ICSharpCode.Data.Core.DatabaseDrivers.SQLServer
1,2,3,4";
private const string _getViews = @"SELECT TABLE_SCHEMA, TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_TYPE='VIEW' AND TABLE_NAME<>'dtproperties' ORDER BY TABLE_SCHEMA, TABLE_NAME";
private const string _getViewDefiningQuery = @"EXEC sp_helptext '{0}'";
private const string _getProcedures = "SELECT ROUTINE_NAME, ROUTINE_SCHEMA, ROUTINE_BODY, DATA_TYPE, CHARACTER_MAXIMUM_LENGTH FROM INFORMATION_SCHEMA.ROUTINES WHERE ROUTINE_TYPE = 'PROCEDURE'";
private const string _getProcedureParameters = @"SELECT PARAMETER_NAME, DATA_TYPE, CHARACTER_MAXIMUM_LENGTH, PARAMETER_MODE, IS_RESULT FROM information_schema.PARAMETERS WHERE SPECIFIC_NAME = '{0}' AND SPECIFIC_SCHEMA = '{1}' AND SPECIFIC_CATALOG = '{2}'";
@ -360,9 +361,8 @@ namespace ICSharpCode.Data.Core.DatabaseDrivers.SQLServer @@ -360,9 +361,8 @@ namespace ICSharpCode.Data.Core.DatabaseDrivers.SQLServer
string schemaName = (string)dtViews.Rows[i]["TABLE_SCHEMA"];
string viewName = (string)dtViews.Rows[i]["TABLE_NAME"];
View view = new View() { SchemaName = schemaName, TableName = viewName };
View view = new View() { SchemaName = schemaName, TableName = viewName, Query = LoadViewQuery(sqlConnection, schemaName, viewName) };
LoadColumns(sqlConnection, view, TableType.View);
views.Add(view);
}
}
@ -370,6 +370,25 @@ namespace ICSharpCode.Data.Core.DatabaseDrivers.SQLServer @@ -370,6 +370,25 @@ namespace ICSharpCode.Data.Core.DatabaseDrivers.SQLServer
return views;
}
private string LoadViewQuery(SqlConnection sqlConnection, string schemaName, string tableName)
{
string definingQuery = string.Empty;
using (SqlDataAdapter dataAdapter =
new SqlDataAdapter(string.Format(_getViewDefiningQuery, schemaName + "." + tableName), sqlConnection))
{
DataTable dtQuery = new DataTable("Text");
dataAdapter.Fill(dtQuery);
for (int i = 0; i < dtQuery.Rows.Count; i++)
{
definingQuery += (string)dtQuery.Rows[i]["Text"];
}
}
return definingQuery;
}
public override DatabaseObjectsCollection<IProcedure> LoadProcedures(IDatabase database)
{
DatabaseObjectsCollection<IProcedure> procedures = new DatabaseObjectsCollection<IProcedure>(database);

4
src/AddIns/DisplayBindings/Data/ICSharpCode.Data.sln

@ -1,6 +1,6 @@ @@ -1,6 +1,6 @@

Microsoft Visual Studio Solution File, Format Version 11.00
# Visual Studio 10
# Visual Studio 2010
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "DatabaseDrivers", "DatabaseDrivers", "{C5FB6340-6A60-40EA-9C06-708BE0EC84F2}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Core", "Core", "{1F5B7C44-B137-4D74-A594-96EAC98890F8}"
@ -28,6 +28,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Data.Addin", "I @@ -28,6 +28,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Data.Addin", "I
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Data.DemoApp", "ICSharpCode.Data.DemoApp\ICSharpCode.Data.DemoApp.csproj", "{1EB79CD3-ECF1-420E-8A44-FA1EDD15390F}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{A3C49AAC-F616-4575-9522-E6A3ACA36884}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU

2
src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/ICSharpCode.Reports.Addin.csproj

@ -119,12 +119,14 @@ @@ -119,12 +119,14 @@
<Compile Include="Project\Designer\RootDesigner\ReportRootDesigner.cs" />
<Compile Include="Project\Designer\ShapeDesigner.cs" />
<Compile Include="Project\Designer\TableDesigner.cs" />
<Compile Include="Project\Dialogs\DataTypeStringConverter.cs" />
<Compile Include="Project\Dialogs\ExpressionEditor.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="Project\Dialogs\ExpressionEditor.Designer.cs">
<DependentUpon>ExpressionEditor.cs</DependentUpon>
</Compile>
<Compile Include="Project\Dialogs\FormatStringConverte.cs" />
<Compile Include="Project\Globals\FormsDesignerLoadException.cs" />
<Compile Include="Project\Globals\GlobalsDesigner.cs" />
<Compile Include="Project\Globals\StringWriterWithEncoding.cs" />

4
src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/Designer/TextBasedDesignerActionList.cs

@ -5,6 +5,8 @@ using System; @@ -5,6 +5,8 @@ using System;
using System.ComponentModel;
using System.ComponentModel.Design;
using ICSharpCode.Reports.Addin.Dialogs;
namespace ICSharpCode.Reports.Addin.Designer
{
/// <summary>
@ -74,6 +76,8 @@ namespace ICSharpCode.Reports.Addin.Designer @@ -74,6 +76,8 @@ namespace ICSharpCode.Reports.Addin.Designer
t.Commit();}
}
[TypeConverter(typeof(FormatStringConverter))]
public string FormatString
{
get {return this.Item.FormatString;}

2
src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/Designer/TextItemDesigner.cs

@ -87,7 +87,7 @@ namespace ICSharpCode.Reports.Addin.Designer @@ -87,7 +87,7 @@ namespace ICSharpCode.Reports.Addin.Designer
private void OnRunTextEditor (object sender,EventArgs e)
{
ITextEditorDialog ed = new TextEditorDialog (ctrl.Text,ctrl.Name);
IStringBasedEditorDialog ed = new TextEditorDialog (ctrl.Text,ctrl.Name);
if (ed.ShowDialog() == DialogResult.OK) {
ctrl.Text = ed.TextValue;
this.SetProperty ("Name",ed.TextValue);

43
src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/Dialogs/DataTypeStringConverter.cs

@ -0,0 +1,43 @@ @@ -0,0 +1,43 @@
/*
* Created by SharpDevelop.
* User: Peter Forstmeier
* Date: 22.09.2010
* Time: 19:23
*
* To change this template use Tools | Options | Coding | Edit Standard Headers.
*/
using System;
using System.ComponentModel;
using ICSharpCode.Reports.Core;
namespace ICSharpCode.Reports.Addin.Dialogs
{
/// <summary>
/// Description of DataTypeStringConverter.
/// </summary>
public class DataTypeStringConverter:StringConverter
{
public override bool GetStandardValuesSupported(ITypeDescriptorContext
context)
{
//true means show a combobox
return true;
}
public override bool GetStandardValuesExclusive(ITypeDescriptorContext
context)
{
//true will limit to list. false will show the list, but allow free-form entry
return true;
}
public override TypeConverter.StandardValuesCollection GetStandardValues(ITypeDescriptorContext context)
{
return new StandardValuesCollection(GlobalLists.DataTypeList());
}
}
}

48
src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/Dialogs/FormatStringConverte.cs

@ -0,0 +1,48 @@ @@ -0,0 +1,48 @@
/*
* Created by SharpDevelop.
* User: Peter Forstmeier
* Date: 22.09.2010
* Time: 19:12
*
* To change this template use Tools | Options | Coding | Edit Standard Headers.
*/
using System;
using System.ComponentModel;
using ICSharpCode.Reports.Core;
namespace ICSharpCode.Reports.Addin.Dialogs
{
/// <summary>
/// Description of StringConverter.
/// </summary>
public class FormatStringConverter:StringConverter
{
public override bool GetStandardValuesSupported(ITypeDescriptorContext
context)
{
//true means show a combobox
return true;
}
public override bool GetStandardValuesExclusive(ITypeDescriptorContext
context)
{
//true will limit to list. false will show the list, but allow free-form entry
return true;
}
public override TypeConverter.StandardValuesCollection GetStandardValues(ITypeDescriptorContext context)
{
// return new StandardValuesCollection(
// new string[] { "entry1", "entry2", "entry3" });
return new StandardValuesCollection(GlobalLists.Formats());
}
}
}

11
src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Project/ReportItems/BaseTextItem.cs

@ -9,6 +9,7 @@ using System.Drawing; @@ -9,6 +9,7 @@ using System.Drawing;
using ICSharpCode.Reports.Addin.Designer;
using ICSharpCode.Reports.Core;
using ICSharpCode.Reports.Core.BaseClasses.Printing;
using ICSharpCode.Reports.Addin.Dialogs;
namespace ICSharpCode.Reports.Addin
{
@ -84,6 +85,11 @@ namespace ICSharpCode.Reports.Addin @@ -84,6 +85,11 @@ namespace ICSharpCode.Reports.Addin
[Browsable(true),
Category("Appearance"),
Description("String to format Number's Date's etc")]
[DefaultValue("entry1")]
[TypeConverter(typeof(FormatStringConverter))]
public string FormatString {
get { return formatString; }
set {
@ -130,6 +136,11 @@ namespace ICSharpCode.Reports.Addin @@ -130,6 +136,11 @@ namespace ICSharpCode.Reports.Addin
Category("Databinding"),
Description("Datatype of the underlying Column")]
[DefaultValue("System.String")]
[TypeConverter(typeof(DataTypeStringConverter))]
public string DataType {get;set;}

2
src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Test/Dialogs/DummyEditorDialog.cs

@ -9,7 +9,7 @@ using ICSharpCode.Reports.Core; @@ -9,7 +9,7 @@ using ICSharpCode.Reports.Core;
namespace ICSharpCode.Reports.Addin.Test.Dialogs
{
public class DummyEditorDialog:ITextEditorDialog
public class DummyEditorDialog:IStringBasedEditorDialog
{
string textValue;

4
src/AddIns/Misc/Reports/ICSharpCode.Reports.Addin/Test/Dialogs/TextEditorDialogFixture.cs

@ -13,7 +13,7 @@ namespace ICSharpCode.Reports.Addin.Test.Dialogs @@ -13,7 +13,7 @@ namespace ICSharpCode.Reports.Addin.Test.Dialogs
[Test]
public void ConstructorWithEmptyString()
{
ITextEditorDialog ed = new DummyEditorDialog(String.Empty);
IStringBasedEditorDialog ed = new DummyEditorDialog(String.Empty);
Assert.AreEqual(ed.TextValue,String.Empty,"TextValue should be empty");
}
@ -21,7 +21,7 @@ namespace ICSharpCode.Reports.Addin.Test.Dialogs @@ -21,7 +21,7 @@ namespace ICSharpCode.Reports.Addin.Test.Dialogs
public void ConstructorWithText ()
{
string s = "myteststring";
ITextEditorDialog ed = new DummyEditorDialog(s);
IStringBasedEditorDialog ed = new DummyEditorDialog(s);
Assert.AreEqual (ed.TextValue,s);
}

4
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/ICSharpCode.Reports.Core.csproj

@ -79,6 +79,7 @@ @@ -79,6 +79,7 @@
</Compile>
<Compile Include="Project\BaseClasses\CurrentItem.cs" />
<Compile Include="Project\BaseClasses\GroupColumn.cs" />
<Compile Include="Project\BaseClasses\PageInfo.cs" />
<Compile Include="Project\BaseClasses\Printing\Layouter.cs" />
<Compile Include="Project\BaseClasses\Printing\MeasurementService.cs" />
<Compile Include="Project\BaseClasses\Printing\PrintHelper.cs" />
@ -116,6 +117,7 @@ @@ -116,6 +117,7 @@
</Compile>
<Compile Include="Project\Dialogs\EditorDialog.Designer.cs" />
<Compile Include="Project\Dialogs\GroupingCollectionEditor.cs" />
<Compile Include="Project\Dialogs\IStringBasedEditorDialog.cs" />
<Compile Include="Project\Dialogs\ParametersCollectionEditor.cs" />
<Compile Include="Project\Dialogs\ParameterDialog.cs" />
<Compile Include="Project\Dialogs\PreviewControl.cs">
@ -133,7 +135,6 @@ @@ -133,7 +135,6 @@
<Compile Include="Project\Exceptions\MissingDataSourceException.cs" />
<Compile Include="Project\Exceptions\MissingParentException.cs" />
<Compile Include="Project\Exceptions\ReportException.cs" />
<Compile Include="Project\Exceptions\UnknownFunctionException.cs" />
<Compile Include="Project\Exceptions\UnknownItemException.cs" />
<Compile Include="Project\Exceptions\WrongColumnException.cs" />
<Compile Include="Project\Exceptions\WrongSectionException.cs" />
@ -234,6 +235,7 @@ @@ -234,6 +235,7 @@
<Compile Include="Project\Expressions\SimpleExpressionEvaluator\Utilities\PropertyPath.cs" />
<Compile Include="Project\Expressions\SimpleExpressionEvaluator\Utilities\ReflectionExtensions.cs" />
<Compile Include="Project\Expressions\SimpleExpressionEvaluator\Utilities\TypeNormalizer.cs" />
<Compile Include="Project\Expressions\UnknownFunctionException.cs" />
<Compile Include="Project\Factories\ConnectionObjectFactory.cs" />
<Compile Include="Project\Factories\DataManagerFacrory.cs" />
<Compile Include="Project\Factories\DisplayNameAttribute.cs" />

65
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/BaseClasses/PageInfo.cs

@ -0,0 +1,65 @@ @@ -0,0 +1,65 @@
/*
* Created by SharpDevelop.
* User: Peter Forstmeier
* Date: 25.09.2010
* Time: 19:42
*
* To change this template use Tools | Options | Coding | Edit Standard Headers.
*/
using System;
using System.Collections;
using ICSharpCode.Reports.Core.Interfaces;
namespace ICSharpCode.Reports.Core.BaseClasses
{
/// <summary>
/// Description of PageInfo.
/// </summary>
public class PageInfo:IPageInfo
{
private Hashtable parameterHash;
public PageInfo(int pageNumber)
{
this.PageNumber = pageNumber;
}
public int PageNumber {get;set;}
public int TotalPages {get;set;}
public string ReportName {get;set;}
public string ReportFileName {get;set;}
public string ReportFolder {
get{
return System.IO.Path.GetDirectoryName(this.ReportFileName);
}
}
public DateTime ExecutionTime {get;set;}
public Hashtable ParameterHash{
get{
if (this.parameterHash == null) {
this.parameterHash = new Hashtable();
}
return parameterHash;
}
set {this.parameterHash = value;}
}
public IDataNavigator IDataNavigator {get;set;}
}
}

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

@ -108,8 +108,6 @@ namespace ICSharpCode.Reports.Core.BaseClasses.Printing @@ -108,8 +108,6 @@ namespace ICSharpCode.Reports.Core.BaseClasses.Printing
public static void InitPage (ISinglePage singlePage,ReportSettings reportSettings)
{
singlePage.StartRow = -1;
singlePage.EndRow = -1;
singlePage.ReportFileName = reportSettings.FileName;
singlePage.ReportName = reportSettings.ReportName;
singlePage.ParameterHash = reportSettings.ParameterCollection.CreateHash();

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

@ -110,27 +110,31 @@ namespace ICSharpCode.Reports.Core.BaseClasses.Printing @@ -110,27 +110,31 @@ namespace ICSharpCode.Reports.Core.BaseClasses.Printing
PrintHelper.AdjustChildLocation(item,offset);
BaseTextItem textItem = item as BaseTextItem;
//BaseTextItem textItem = item as BaseTextItem;
IReportExpression epr = item as IReportExpression;
string evaluatedValue = String.Empty;
if (epr != null) {
string sss = evaluator.Evaluate(epr.Expression);
if (!String.IsNullOrEmpty(sss)) {
textItem.Text = sss;
try {
if (!String.IsNullOrEmpty(epr.Expression))
{
evaluatedValue = evaluator.Evaluate(epr.Expression);
} else
{
evaluatedValue = evaluator.Evaluate(epr.Text);
}
epr.Text = evaluatedValue;
} catch (UnknownFunctionException ufe) {
epr.Text = GlobalValues.UnkownFunctionMessage(ufe.Message);
}
}
if (textItem != null) {
string str = textItem.Text;
textItem.Text = evaluator.Evaluate(textItem.Text);
textItem.Render(rpea);
textItem.Text = str;
} else {
item.Render (rpea);
}
item.Render (rpea);
item.Location = saveLocation;
}
@ -230,7 +234,7 @@ namespace ICSharpCode.Reports.Core.BaseClasses.Printing @@ -230,7 +234,7 @@ namespace ICSharpCode.Reports.Core.BaseClasses.Printing
public static IExpressionEvaluatorFacade SetupEvaluator ()
{
return new ExpressionEvaluatorFacade();
return new ExpressionEvaluatorFacade(null);
}
@ -243,9 +247,8 @@ namespace ICSharpCode.Reports.Core.BaseClasses.Printing @@ -243,9 +247,8 @@ namespace ICSharpCode.Reports.Core.BaseClasses.Printing
if (dataNavigator == null) {
throw new ArgumentNullException("dataNavigator");
}
IExpressionEvaluatorFacade evaluatorFacade = new ExpressionEvaluatorFacade();
evaluatorFacade.SinglePage = singlePage;
evaluatorFacade.SinglePage.IDataNavigator = dataNavigator;
singlePage.IDataNavigator = dataNavigator;
IExpressionEvaluatorFacade evaluatorFacade = new ExpressionEvaluatorFacade(singlePage);
return evaluatorFacade;
}

4
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/BaseClasses/SectionBounds.cs

@ -4,7 +4,8 @@ @@ -4,7 +4,8 @@
using System;
using System.Drawing;
namespace ICSharpCode.Reports.Core{
namespace ICSharpCode.Reports.Core.BaseClasses
{
/// <summary>
/// Description of Page.
/// </summary>
@ -21,7 +22,6 @@ namespace ICSharpCode.Reports.Core{ @@ -21,7 +22,6 @@ namespace ICSharpCode.Reports.Core{
Point DetailEnds {get;}
Rectangle DetailArea {get;}
Size PageSize {get;set;}
//int Gap {get;}
bool Landscape{get;}
}

51
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/BaseClasses/SinglePage.cs

@ -5,18 +5,19 @@ using System; @@ -5,18 +5,19 @@ using System;
using System.Collections;
using ICSharpCode.Reports.Core.Interfaces;
namespace ICSharpCode.Reports.Core
namespace ICSharpCode.Reports.Core.BaseClasses
{
/// <summary>
/// Description of AbstractPage.
/// </summary>
public class SinglePage : ISinglePage
public class SinglePage :PageInfo, ISinglePage
{
private SectionBounds sectionBounds;
private Hashtable parameterHash;
public SinglePage(SectionBounds sectionBounds, int pageNumber)
public SinglePage(SectionBounds sectionBounds, int pageNumber):base(pageNumber)
{
if (sectionBounds == null) {
throw new ArgumentNullException("sectionBounds");
@ -61,47 +62,5 @@ namespace ICSharpCode.Reports.Core @@ -61,47 +62,5 @@ namespace ICSharpCode.Reports.Core
set { this.sectionBounds = value; }
}
public int StartRow {get;set;}
public int EndRow {get;set;}
public int PageNumber {get;set;}
public int TotalPages {get;set;}
public string ReportName {get;set;}
public string ReportFileName {get;set;}
public string ReportFolder {
get{
return System.IO.Path.GetDirectoryName(this.ReportFileName);
}
}
public DateTime ExecutionTime {get;set;}
public Hashtable ParameterHash{
get{
if (this.parameterHash == null) {
this.parameterHash = new Hashtable();
}
return parameterHash;
}
set {this.parameterHash = value;}
}
public IDataNavigator IDataNavigator {get;set;}
}
}

1
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/BaseItems/IExpression.cs

@ -11,5 +11,6 @@ namespace ICSharpCode.Reports.Core @@ -11,5 +11,6 @@ namespace ICSharpCode.Reports.Core
public interface IReportExpression
{
string Expression {get;set;}
string Text {get;set;}
}
}

2
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Dialogs/DefaultTextEditor.cs

@ -24,7 +24,7 @@ namespace ICSharpCode.Reports.Core @@ -24,7 +24,7 @@ namespace ICSharpCode.Reports.Core
s = value.ToString();
}
ITextEditorDialog ed = new TextEditorDialog (s,"ReportSettings");
IStringBasedEditorDialog ed = new TextEditorDialog (s,"ReportSettings");
if (ed.ShowDialog() == DialogResult.OK) {
return ed.TextValue;
} else {

8
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Dialogs/EditorDialog.cs

@ -11,15 +11,9 @@ namespace ICSharpCode.Reports.Core @@ -11,15 +11,9 @@ namespace ICSharpCode.Reports.Core
/// Description of EditorDialog.
/// </summary>
///
public interface ITextEditorDialog
{
DialogResult ShowDialog();
string TextValue {get;}
}
public partial class TextEditorDialog : Form,ITextEditorDialog
public partial class TextEditorDialog : Form,IStringBasedEditorDialog
{
string textValue;

24
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Dialogs/IStringBasedEditorDialog.cs

@ -0,0 +1,24 @@ @@ -0,0 +1,24 @@
/*
* Erstellt mit SharpDevelop.
* Benutzer: Forstmeier
* Datum: 09.04.2007
* Zeit: 17:01
*
* Sie können diese Vorlage unter Extras > Optionen > Codeerstellung > Standardheader ändern.
*/
using System;
using System.Windows.Forms;
namespace ICSharpCode.Reports.Core
{
/// <summary>
/// Description of EditorDialog.
/// </summary>
///
public interface IStringBasedEditorDialog
{
DialogResult ShowDialog();
string TextValue {get;}
}
}

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

@ -3,6 +3,7 @@ @@ -3,6 +3,7 @@
using System;
using System.Drawing;
using ICSharpCode.Reports.Core.BaseClasses;
using ICSharpCode.Reports.Core.BaseClasses.Printing;
using ICSharpCode.Reports.Core.Interfaces;
using ICSharpCode.Reports.Expressions.ReportingLanguage;
@ -194,13 +195,14 @@ namespace ICSharpCode.Reports.Core.Exporter @@ -194,13 +195,14 @@ namespace ICSharpCode.Reports.Core.Exporter
p.TotalPages = this.Pages.Count;
}
IExpressionEvaluatorFacade evaluatorFacade = new ExpressionEvaluatorFacade();
this.singlePage.IDataNavigator = navigator;
IExpressionEvaluatorFacade evaluatorFacade = new ExpressionEvaluatorFacade(this.singlePage);
foreach (ExporterPage p in this.pages)
{
this.singlePage = p;
evaluatorFacade.SinglePage = this.singlePage;
evaluatorFacade.SinglePage.IDataNavigator = navigator;
// evaluatorFacade.SinglePage = this.singlePage;
// evaluatorFacade.SinglePage.IDataNavigator = navigator;
EvaluateRecursive(evaluatorFacade,p.Items);
}
}
@ -219,7 +221,18 @@ namespace ICSharpCode.Reports.Core.Exporter @@ -219,7 +221,18 @@ namespace ICSharpCode.Reports.Core.Exporter
}
ExportText et = be as ExportText;
if (et != null) {
et.Text = evaluatorFassade.Evaluate(et.Text);
try{
et.Text = evaluatorFassade.Evaluate(et.Text);
}
catch (UnknownFunctionException ufe)
{
et.Text = GlobalValues.UnkownFunctionMessage(ufe.Message);
}
finally
{
}
}
}
}

1
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/Converters/BaseConverter.cs

@ -3,6 +3,7 @@ @@ -3,6 +3,7 @@
using System;
using System.Drawing;
using ICSharpCode.Reports.Core.BaseClasses;
using ICSharpCode.Reports.Core.BaseClasses.Printing;
using ICSharpCode.Reports.Core.Events;
using ICSharpCode.Reports.Core.Interfaces;

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

@ -65,8 +65,6 @@ namespace ICSharpCode.Reports.Core.Exporter @@ -65,8 +65,6 @@ namespace ICSharpCode.Reports.Core.Exporter
Rectangle pageBreakRect = Rectangle.Empty;
Console.WriteLine("datanav currentrow {0}",base.DataNavigator.CurrentRow);
do {
PrintHelper.AdjustSectionLocation (section);

13
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/DataPageBuilder.cs

@ -50,9 +50,6 @@ namespace ICSharpCode.Reports.Core.Exporter @@ -50,9 +50,6 @@ namespace ICSharpCode.Reports.Core.Exporter
protected override void BuildNewPage ()
{
base.BuildNewPage();
if (this.dataNavigator != null) {
this.SinglePage.StartRow = this.dataNavigator.CurrentRow +1;
}
this.BuildReportHeader();
this.BuildPageHeader();
@ -61,18 +58,9 @@ namespace ICSharpCode.Reports.Core.Exporter @@ -61,18 +58,9 @@ namespace ICSharpCode.Reports.Core.Exporter
#endregion
private void SetPageFull()
{
if (this.dataNavigator != null) {
this.SinglePage.EndRow = this.dataNavigator.CurrentRow;
}
}
private void OnPageFull(object sender, NewPageEventArgs e)
{
this.SinglePage.Items.AddRange(e.ItemsList);
SetPageFull();
PageBreak();
}
@ -136,7 +124,6 @@ namespace ICSharpCode.Reports.Core.Exporter @@ -136,7 +124,6 @@ namespace ICSharpCode.Reports.Core.Exporter
convertedList = baseConverter.Convert(section,item);
base.SinglePage.Items.AddRange(convertedList);
SetPageFull();
}
}
}

1
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exporter/ExporterPage.cs

@ -2,6 +2,7 @@ @@ -2,6 +2,7 @@
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
using System;
using ICSharpCode.Reports.Core.BaseClasses;
namespace ICSharpCode.Reports.Core.Exporter
{

14
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Expressions/ExpressionEvaluatorFacade.cs

@ -2,6 +2,7 @@ @@ -2,6 +2,7 @@
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
using System;
using ICSharpCode.Reports.Core;
using ICSharpCode.Reports.Core.Interfaces;
using SimpleExpressionEvaluator;
using SimpleExpressionEvaluator.Evaluation;
@ -16,15 +17,17 @@ namespace ICSharpCode.Reports.Expressions.ReportingLanguage @@ -16,15 +17,17 @@ namespace ICSharpCode.Reports.Expressions.ReportingLanguage
{
private ReportingLanguageCompiler compiler;
private ExpressionContext context;
private ISinglePage singlePage;
private IPageInfo singlePage;
public ExpressionEvaluatorFacade()
public ExpressionEvaluatorFacade(IPageInfo pageInfo)
{
compiler = new ReportingLanguageCompiler();
this.context = new ExpressionContext(null);
context.ResolveUnknownVariable += VariableStore;
context.ResolveMissingFunction += FunctionStore;
SinglePage = pageInfo;
compiler.SinglePage = pageInfo;
}
@ -49,6 +52,7 @@ namespace ICSharpCode.Reports.Expressions.ReportingLanguage @@ -49,6 +52,7 @@ namespace ICSharpCode.Reports.Expressions.ReportingLanguage
return false;
}
private void FunctionStore (object sender,SimpleExpressionEvaluator.Evaluation.UnknownFunctionEventArgs e)
{
@ -59,9 +63,7 @@ namespace ICSharpCode.Reports.Expressions.ReportingLanguage @@ -59,9 +63,7 @@ namespace ICSharpCode.Reports.Expressions.ReportingLanguage
if (path != null) {
searchObj = e.ContextObject;
} else {
throw new InvalidOperationException("A function specified in the expression (" + e.FunctionName +
") does not exist.");
throw new UnknownFunctionException(e.FunctionName);
}
e.Function = functionArgs => path.Evaluate(searchObj);
}
@ -81,7 +83,7 @@ namespace ICSharpCode.Reports.Expressions.ReportingLanguage @@ -81,7 +83,7 @@ namespace ICSharpCode.Reports.Expressions.ReportingLanguage
}
public ISinglePage SinglePage {
public IPageInfo SinglePage {
get { return singlePage; }
set {
singlePage = value;

2
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Expressions/IExpressionEvaluatorFacade.cs

@ -13,6 +13,6 @@ namespace ICSharpCode.Reports.Expressions.ReportingLanguage @@ -13,6 +13,6 @@ namespace ICSharpCode.Reports.Expressions.ReportingLanguage
public interface IExpressionEvaluatorFacade
{
string Evaluate (string expression);
ISinglePage SinglePage {get;set;}
IPageInfo SinglePage {get;set;}
}
}

4
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Expressions/ReportingLanguage/ReportingLanguageCompiler.cs

@ -17,7 +17,7 @@ namespace ICSharpCode.Reports.Expressions.ReportingLanguage @@ -17,7 +17,7 @@ namespace ICSharpCode.Reports.Expressions.ReportingLanguage
/// </summary>
public class ReportingLanguageCompiler:SimpleExpressionLanguageCompiler
{
private ISinglePage singlePage;
private IPageInfo singlePage;
private ReportingLanguage reportingLanguage;
private Compiler compiler;
@ -299,7 +299,7 @@ namespace ICSharpCode.Reports.Expressions.ReportingLanguage @@ -299,7 +299,7 @@ namespace ICSharpCode.Reports.Expressions.ReportingLanguage
}
public ISinglePage SinglePage {
public IPageInfo SinglePage {
get { return singlePage; }
set { singlePage = value; }
}

2
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Expressions/SimpleExpressionEvaluator/Compilation/Functions/ReportingService/FieldReference.cs

@ -7,8 +7,8 @@ @@ -7,8 +7,8 @@
* To change this template use Tools | Options | Coding | Edit Standard Headers.
*/
using System;
using ICSharpCode.Reports.Core;
using ICSharpCode.Reports.Core.BaseClasses;
using ICSharpCode.Reports.Core.Interfaces;
using SimpleExpressionEvaluator.Compilation.Functions.AggregateFunctions;
using SimpleExpressionEvaluator.Utilities;

6
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Exceptions/UnknownFunctionException.cs → src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Expressions/UnknownFunctionException.cs

@ -5,7 +5,9 @@ using System; @@ -5,7 +5,9 @@ using System;
using System.Runtime.Serialization;
using System.Security.Permissions;
namespace ICSharpCode.Reports.Core
using SimpleExpressionEvaluator.Evaluation;
namespace ICSharpCode.Reports.Expressions.ReportingLanguage
{
/// <summary>
/// Description of UnknownFunctionException.
@ -39,4 +41,6 @@ namespace ICSharpCode.Reports.Core @@ -39,4 +41,6 @@ namespace ICSharpCode.Reports.Core
base.GetObjectData(info, context);
}
}
}

14
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Globals/GlobalLists.cs

@ -54,6 +54,20 @@ namespace ICSharpCode.Reports.Core @@ -54,6 +54,20 @@ namespace ICSharpCode.Reports.Core
#endregion
#region DataTypes
public static string[] DataTypeList ()
{
return (string[])MyDataTypeList.Clone();
}
private static readonly string[] MyDataTypeList = new string[] {
"System.String",
"System.DateTime",
"System.Decimal",
"System.Int"};
#endregion
#region Aggregates
public static string[] AggregateFunctions ()

6
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Globals/GlobalValues.cs

@ -263,6 +263,12 @@ namespace ICSharpCode.Reports.Core { @@ -263,6 +263,12 @@ namespace ICSharpCode.Reports.Core {
}
}
public static string UnkownFunctionMessage (string functionName)
{
return String.Format(System.Globalization.CultureInfo.InvariantCulture,
"!! Can't find <{0}> !! ",functionName);
}
#endregion
#region Color's

1
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Interfaces/IItemConverter.cs

@ -3,6 +3,7 @@ @@ -3,6 +3,7 @@
using System;
using System.Drawing;
using ICSharpCode.Reports.Core.BaseClasses;
using ICSharpCode.Reports.Core.Events;
using ICSharpCode.Reports.Core.Exporter;

18
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Interfaces/ISinglePage.cs

@ -3,18 +3,13 @@ @@ -3,18 +3,13 @@
using System;
using ICSharpCode.Reports.Core;
using ICSharpCode.Reports.Core.BaseClasses;
namespace ICSharpCode.Reports.Core.Interfaces
{
public interface ISinglePage
public interface IPageInfo
{
void CalculatePageBounds(IReportModel reportModel);
SectionBounds SectionBounds {get;set;}
int StartRow {get;set;}
int EndRow {get;set;}
int PageNumber {get;set;}
int TotalPages {get;set;}
string ReportName {get;set;}
@ -24,4 +19,11 @@ namespace ICSharpCode.Reports.Core.Interfaces @@ -24,4 +19,11 @@ namespace ICSharpCode.Reports.Core.Interfaces
System.Collections.Hashtable ParameterHash {get;set;}
IDataNavigator IDataNavigator {get;set;}
}
public interface ISinglePage:IPageInfo
{
void CalculatePageBounds(IReportModel reportModel);
SectionBounds SectionBounds {get;set;}
}
}

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

@ -68,7 +68,6 @@ namespace ICSharpCode.Reports.Core @@ -68,7 +68,6 @@ namespace ICSharpCode.Reports.Core
this.CurrentSection.Location.Y);
tableContainer.Items.SortByLocation();
rpea.SinglePage.StartRow = this.dataNavigator.CurrentRow;
Size rs = Size.Empty;
foreach (BaseRowItem row in tableContainer.Items)
@ -102,7 +101,6 @@ namespace ICSharpCode.Reports.Core @@ -102,7 +101,6 @@ namespace ICSharpCode.Reports.Core
do {
if (PrintHelper.IsPageFull(new Rectangle(currentPosition,row.Size),this.SectionBounds)) {
tableContainer.Location = saveLocation;
rpea.SinglePage.EndRow = this.dataNavigator.CurrentRow;
AbstractRenderer.PageBreak(rpea);
return;
}

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

@ -6,6 +6,7 @@ using System.Drawing; @@ -6,6 +6,7 @@ using System.Drawing;
using System.Drawing.Printing;
using System.Globalization;
using ICSharpCode.Reports.Core.BaseClasses;
using ICSharpCode.Reports.Core.BaseClasses.Printing;
using ICSharpCode.Reports.Core.Interfaces;
using ICSharpCode.Reports.Expressions.ReportingLanguage;

1
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Test/ICSharpCode.Reports.Core.Test/Printing/SectionBoundFixture.cs

@ -3,6 +3,7 @@ @@ -3,6 +3,7 @@
using System;
using System.Drawing;
using ICSharpCode.Reports.Core.BaseClasses;
using ICSharpCode.Reports.Core.Test.TestHelpers;
using NUnit.Framework;

1
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Test/ICSharpCode.Reports.Core.Test/Printing/SinglePageFixture.cs

@ -3,6 +3,7 @@ @@ -3,6 +3,7 @@
using System;
using System.Drawing;
using ICSharpCode.Reports.Core.BaseClasses;
using ICSharpCode.Reports.Core.Interfaces;
using NUnit.Framework;

4
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Test/ICSharpCode.Reports.Core.Test/ReportingLanguage/ExpressionEvaluatorFixture.cs

@ -15,7 +15,7 @@ namespace ICSharpCode.Reports.Core.Test.ReportingLanguage @@ -15,7 +15,7 @@ namespace ICSharpCode.Reports.Core.Test.ReportingLanguage
[Test]
public void Can_Init_ExpressionEvaluatorFassade()
{
IExpressionEvaluatorFacade f = new ExpressionEvaluatorFacade();
IExpressionEvaluatorFacade f = new ExpressionEvaluatorFacade(null);
Assert.IsNotNull (f);
}
@ -40,7 +40,7 @@ namespace ICSharpCode.Reports.Core.Test.ReportingLanguage @@ -40,7 +40,7 @@ namespace ICSharpCode.Reports.Core.Test.ReportingLanguage
public override void Setup()
{
Sut = new ExpressionEvaluatorFacade();
Sut = new ExpressionEvaluatorFacade(null);
}

8
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Test/ICSharpCode.Reports.Core.Test/ReportingLanguage/IntegrationTests/AggregateFunctionsFixture.cs

@ -4,11 +4,12 @@ @@ -4,11 +4,12 @@
using System;
using System.Data;
using System.Windows.Forms;
using System.Xml;
using ICSharpCode.Reports.Core.BaseClasses;
using ICSharpCode.Reports.Core.Test.TestHelpers;
using ICSharpCode.Reports.Expressions.ReportingLanguage;
using NUnit.Framework;
using System.Xml;
namespace ICSharpCode.Reports.Core.Test.ReportingLanguage.IntegrationTests
{
@ -139,9 +140,10 @@ namespace ICSharpCode.Reports.Core.Test.ReportingLanguage.IntegrationTests @@ -139,9 +140,10 @@ namespace ICSharpCode.Reports.Core.Test.ReportingLanguage.IntegrationTests
[TestFixtureSetUp]
public void Init()
{
this.evaluator = new ExpressionEvaluatorFacade();
this.singlePage = TestHelper.CreateSinglePage();
this.evaluator.SinglePage = this.singlePage;
this.evaluator = new ExpressionEvaluatorFacade(this.singlePage);
AggregateFuctionHelper ah = new AggregateFuctionHelper();
this.testTable = ah.AggregateTable;

6
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Test/ICSharpCode.Reports.Core.Test/ReportingLanguage/IntegrationTests/AggregateFunctionsFromIListFixture.cs

@ -3,6 +3,7 @@ @@ -3,6 +3,7 @@
using System;
using System.Data;
using ICSharpCode.Reports.Core.BaseClasses;
using ICSharpCode.Reports.Core.Test.TestHelpers;
using ICSharpCode.Reports.Expressions.ReportingLanguage;
using NUnit.Framework;
@ -135,10 +136,9 @@ namespace ICSharpCode.Reports.Core.Test.ReportingLanguage.IntegrationTests @@ -135,10 +136,9 @@ namespace ICSharpCode.Reports.Core.Test.ReportingLanguage.IntegrationTests
[TestFixtureSetUp]
public void Init()
{
this.evaluator = new ExpressionEvaluatorFacade();
this.singlePage = TestHelper.CreateSinglePage();
this.evaluator.SinglePage = this.singlePage;
this.singlePage = TestHelper.CreateSinglePage();
this.evaluator = new ExpressionEvaluatorFacade(this.singlePage);
AggregateFuctionHelper ah = new AggregateFuctionHelper();

6
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Test/ICSharpCode.Reports.Core.Test/ReportingLanguage/IntegrationTests/ConcatFieldsFixture.cs

@ -3,6 +3,7 @@ @@ -3,6 +3,7 @@
using System;
using System.Data;
using ICSharpCode.Reports.Core.BaseClasses;
using ICSharpCode.Reports.Core.Test.TestHelpers;
using ICSharpCode.Reports.Expressions.ReportingLanguage;
using NUnit.Framework;
@ -76,10 +77,9 @@ namespace ICSharpCode.Reports.Core.Test.ReportingLanguage.IntegrationTests @@ -76,10 +77,9 @@ namespace ICSharpCode.Reports.Core.Test.ReportingLanguage.IntegrationTests
[TestFixtureSetUp]
public void Init()
{
this.evaluator = new ExpressionEvaluatorFacade();
this.singlePage = TestHelper.CreateSinglePage();
this.evaluator.SinglePage = this.singlePage;
this.evaluator = new ExpressionEvaluatorFacade(this.singlePage);
AggregateFuctionHelper ah = new AggregateFuctionHelper();
this.testTable = ah.AggregateTable;

4
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Test/ICSharpCode.Reports.Core.Test/ReportingLanguage/IntegrationTests/FieldReferenceFixture.cs

@ -39,8 +39,8 @@ namespace ICSharpCode.Reports.Core.Test.ReportingLanguage.IntegrationTests @@ -39,8 +39,8 @@ namespace ICSharpCode.Reports.Core.Test.ReportingLanguage.IntegrationTests
[TestFixtureSetUp]
public void Init()
{
this.evaluator = new ExpressionEvaluatorFacade();
this.evaluator.SinglePage = TestHelper.CreateSinglePage();
this.evaluator = new ExpressionEvaluatorFacade(TestHelper.CreateSinglePage());
// this.evaluator.SinglePage = TestHelper.CreateSinglePage();
}
}
}

7
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Test/ICSharpCode.Reports.Core.Test/ReportingLanguage/IntegrationTests/GlobalFunctions.cs

@ -2,6 +2,7 @@ @@ -2,6 +2,7 @@
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
using System;
using ICSharpCode.Reports.Core.BaseClasses;
using ICSharpCode.Reports.Expressions.ReportingLanguage;
using NUnit.Framework;
using SimpleExpressionEvaluator;
@ -95,7 +96,7 @@ namespace ICSharpCode.Reports.Core.Test.ReportingLanguage.IntegrationTests @@ -95,7 +96,7 @@ namespace ICSharpCode.Reports.Core.Test.ReportingLanguage.IntegrationTests
[Test]
[ExpectedException(typeof(InvalidOperationException))]
[ExpectedException(typeof(UnknownFunctionException))]
public void Throw_On_UnknownFunction()
{
const string expression = "=TotalWrongFunction()";
@ -107,8 +108,8 @@ namespace ICSharpCode.Reports.Core.Test.ReportingLanguage.IntegrationTests @@ -107,8 +108,8 @@ namespace ICSharpCode.Reports.Core.Test.ReportingLanguage.IntegrationTests
public void Init()
{
this.singlePage = TestHelper.CreateSinglePage();
this.evaluator = new ExpressionEvaluatorFacade();
this.evaluator.SinglePage = this.singlePage;
this.evaluator = new ExpressionEvaluatorFacade(this.singlePage);
// this.evaluator.SinglePage = this.singlePage;
}
}
}

2
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Test/ICSharpCode.Reports.Core.Test/ReportingLanguage/IntegrationTests/SimpleCompilerFixture.cs

@ -78,7 +78,7 @@ namespace ICSharpCode.Reports.Core.Test.ReportingLanguage @@ -78,7 +78,7 @@ namespace ICSharpCode.Reports.Core.Test.ReportingLanguage
[SetUp]
public void Init()
{
this.evaluator = new ExpressionEvaluatorFacade();
this.evaluator = new ExpressionEvaluatorFacade(null);
}
#endregion

1
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Test/ICSharpCode.Reports.Core.Test/ReportingLanguage/TestHelper.cs

@ -2,6 +2,7 @@ @@ -2,6 +2,7 @@
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
using System;
using ICSharpCode.Reports.Core.BaseClasses;
namespace ICSharpCode.Reports.Core.Test.ReportingLanguage
{

Loading…
Cancel
Save