diff --git a/PrismLibrary.sln b/PrismLibrary.sln index c7a3e60aba..c16390cab7 100644 --- a/PrismLibrary.sln +++ b/PrismLibrary.sln @@ -99,6 +99,8 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Prism.Maui.Tests", "tests\M EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Prism.DryIoc.Maui.Tests", "tests\Maui\Prism.DryIoc.Maui.Tests\Prism.DryIoc.Maui.Tests.csproj", "{8711D306-1118-4A11-9399-EF14AA13015E}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Prism.Events", "src\Prism.Events\Prism.Events.csproj", "{8610485A-BE9F-4938-86D4-E9F1FA1739A0}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -421,6 +423,18 @@ Global {8711D306-1118-4A11-9399-EF14AA13015E}.Release|x64.Build.0 = Release|Any CPU {8711D306-1118-4A11-9399-EF14AA13015E}.Release|x86.ActiveCfg = Release|Any CPU {8711D306-1118-4A11-9399-EF14AA13015E}.Release|x86.Build.0 = Release|Any CPU + {8610485A-BE9F-4938-86D4-E9F1FA1739A0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {8610485A-BE9F-4938-86D4-E9F1FA1739A0}.Debug|Any CPU.Build.0 = Debug|Any CPU + {8610485A-BE9F-4938-86D4-E9F1FA1739A0}.Debug|x64.ActiveCfg = Debug|Any CPU + {8610485A-BE9F-4938-86D4-E9F1FA1739A0}.Debug|x64.Build.0 = Debug|Any CPU + {8610485A-BE9F-4938-86D4-E9F1FA1739A0}.Debug|x86.ActiveCfg = Debug|Any CPU + {8610485A-BE9F-4938-86D4-E9F1FA1739A0}.Debug|x86.Build.0 = Debug|Any CPU + {8610485A-BE9F-4938-86D4-E9F1FA1739A0}.Release|Any CPU.ActiveCfg = Release|Any CPU + {8610485A-BE9F-4938-86D4-E9F1FA1739A0}.Release|Any CPU.Build.0 = Release|Any CPU + {8610485A-BE9F-4938-86D4-E9F1FA1739A0}.Release|x64.ActiveCfg = Release|Any CPU + {8610485A-BE9F-4938-86D4-E9F1FA1739A0}.Release|x64.Build.0 = Release|Any CPU + {8610485A-BE9F-4938-86D4-E9F1FA1739A0}.Release|x86.ActiveCfg = Release|Any CPU + {8610485A-BE9F-4938-86D4-E9F1FA1739A0}.Release|x86.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -466,6 +480,7 @@ Global {540CEEC1-D541-4614-BF0B-18056A83E434} = {00FFDC13-7397-46F1-897E-A62A7575D28A} {7A1E157F-D4CD-4E6B-9CE3-1894EB2A15A7} = {540CEEC1-D541-4614-BF0B-18056A83E434} {8711D306-1118-4A11-9399-EF14AA13015E} = {540CEEC1-D541-4614-BF0B-18056A83E434} + {8610485A-BE9F-4938-86D4-E9F1FA1739A0} = {F3664D7A-6FF5-4D1F-9F5F-26EE87F032D3} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {C7433AE2-B1A0-4C1A-887E-5CAA7AAF67A6} diff --git a/PrismLibrary_Core.slnf b/PrismLibrary_Core.slnf index 7244cad2a2..d870bc04cf 100644 --- a/PrismLibrary_Core.slnf +++ b/PrismLibrary_Core.slnf @@ -5,6 +5,7 @@ "src\\Containers\\Prism.DryIoc.Shared\\Prism.DryIoc.Shared.shproj", "src\\Containers\\Prism.Unity.Shared\\Prism.Unity.Shared.shproj", "src\\Prism.Core\\Prism.Core.csproj", + "src\\Prism.Events\\Prism.Events.csproj", "tests\\Containers\\Prism.Container.DryIoc.Tests\\Prism.Ioc.DryIoc.Tests.csproj", "tests\\Containers\\Prism.Container.Shared\\Prism.Ioc.Shared.shproj", "tests\\Containers\\Prism.Container.Unity.Tests\\Prism.Ioc.Unity.Tests.csproj", diff --git a/PrismLibrary_Forms.slnf b/PrismLibrary_Forms.slnf index c9684aa116..42c38975c8 100644 --- a/PrismLibrary_Forms.slnf +++ b/PrismLibrary_Forms.slnf @@ -9,6 +9,7 @@ "src\\Forms\\Prism.Forms\\Prism.Forms.csproj", "src\\Forms\\Prism.Unity.Forms\\Prism.Unity.Forms.csproj", "src\\Prism.Core\\Prism.Core.csproj", + "src\\Prism.Events\\Prism.Events.csproj", "tests\\Containers\\Prism.Container.DryIoc.Tests\\Prism.Ioc.DryIoc.Tests.csproj", "tests\\Containers\\Prism.Container.Shared\\Prism.Ioc.Shared.shproj", "tests\\Containers\\Prism.Container.Unity.Tests\\Prism.Ioc.Unity.Tests.csproj", diff --git a/PrismLibrary_Maui.slnf b/PrismLibrary_Maui.slnf index 08f3985beb..0248af8dfc 100644 --- a/PrismLibrary_Maui.slnf +++ b/PrismLibrary_Maui.slnf @@ -7,6 +7,7 @@ "src\\Maui\\Prism.Maui.Rx\\Prism.Maui.Rx.csproj", "src\\Maui\\Prism.Maui\\Prism.Maui.csproj", "src\\Prism.Core\\Prism.Core.csproj", + "src\\Prism.Events\\Prism.Events.csproj", "tests\\Containers\\Prism.Container.DryIoc.Tests\\Prism.Ioc.DryIoc.Tests.csproj", "tests\\Containers\\Prism.Container.Shared\\Prism.Ioc.Shared.shproj", "tests\\Maui\\Prism.DryIoc.Maui.Tests\\Prism.DryIoc.Maui.Tests.csproj", @@ -14,4 +15,4 @@ "tests\\Prism.Core.Tests\\Prism.Core.Tests.csproj" ] } -} \ No newline at end of file +} diff --git a/PrismLibrary_Uno.slnf b/PrismLibrary_Uno.slnf index cb1dcdc35d..3438a423d2 100644 --- a/PrismLibrary_Uno.slnf +++ b/PrismLibrary_Uno.slnf @@ -5,6 +5,7 @@ "src\\Containers\\Prism.DryIoc.Shared\\Prism.DryIoc.Shared.shproj", "src\\Containers\\Prism.Unity.Shared\\Prism.Unity.Shared.shproj", "src\\Prism.Core\\Prism.Core.csproj", + "src\\Prism.Events\\Prism.Events.csproj", "src\\Uno\\Prism.DryIoc.Uno\\Prism.DryIoc.Uno.WinUI.csproj", "src\\Uno\\Prism.Uno\\Prism.Uno.WinUI.csproj", "tests\\Containers\\Prism.Container.DryIoc.Tests\\Prism.Ioc.DryIoc.Tests.csproj", diff --git a/PrismLibrary_Wpf.slnf b/PrismLibrary_Wpf.slnf index d77d7ec491..b988d35c28 100644 --- a/PrismLibrary_Wpf.slnf +++ b/PrismLibrary_Wpf.slnf @@ -5,6 +5,7 @@ "src\\Containers\\Prism.DryIoc.Shared\\Prism.DryIoc.Shared.shproj", "src\\Containers\\Prism.Unity.Shared\\Prism.Unity.Shared.shproj", "src\\Prism.Core\\Prism.Core.csproj", + "src\\Prism.Events\\Prism.Events.csproj", "src\\Wpf\\Prism.DryIoc.Wpf\\Prism.DryIoc.Wpf.csproj", "src\\Wpf\\Prism.Unity.Wpf\\Prism.Unity.Wpf.csproj", "src\\Wpf\\Prism.Wpf\\Prism.Wpf.csproj", diff --git a/e2e/Forms/HelloWorld.sln b/e2e/Forms/HelloWorld.sln index 8e343dd7a7..0a48d3732d 100644 --- a/e2e/Forms/HelloWorld.sln +++ b/e2e/Forms/HelloWorld.sln @@ -1,4 +1,4 @@ -Microsoft Visual Studio Solution File, Format Version 12.00 +Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio Version 16 VisualStudioVersion = 16.0.29709.97 MinimumVisualStudioVersion = 10.0.40219.1 @@ -45,6 +45,8 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution ..\..\Packages.props = ..\..\Packages.props EndProjectSection EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Prism.Events", "..\..\src\Prism.Events\Prism.Events.csproj", "{31BAD7FA-1135-41E4-BE75-EA5AB1C96310}" +EndProject Global GlobalSection(SharedMSBuildProjectFiles) = preSolution ..\..\src\Containers\Prism.DryIoc.Shared\Prism.DryIoc.Shared.projitems*{6e7ec81d-da39-4c4f-a898-0148558c34f4}*SharedItemsImports = 13 @@ -797,6 +799,54 @@ Global {53FF796C-02CA-4276-B3F9-207E5ABC67EB}.Release|x64.Build.0 = Release|Any CPU {53FF796C-02CA-4276-B3F9-207E5ABC67EB}.Release|x86.ActiveCfg = Release|Any CPU {53FF796C-02CA-4276-B3F9-207E5ABC67EB}.Release|x86.Build.0 = Release|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.Ad-Hoc|Any CPU.ActiveCfg = Debug|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.Ad-Hoc|Any CPU.Build.0 = Debug|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.Ad-Hoc|ARM.ActiveCfg = Debug|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.Ad-Hoc|ARM.Build.0 = Debug|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.Ad-Hoc|iPhone.ActiveCfg = Debug|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.Ad-Hoc|iPhone.Build.0 = Debug|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Debug|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.Ad-Hoc|iPhoneSimulator.Build.0 = Debug|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.Ad-Hoc|x64.ActiveCfg = Debug|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.Ad-Hoc|x64.Build.0 = Debug|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.Ad-Hoc|x86.ActiveCfg = Debug|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.Ad-Hoc|x86.Build.0 = Debug|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.AppStore|Any CPU.ActiveCfg = Debug|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.AppStore|Any CPU.Build.0 = Debug|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.AppStore|ARM.ActiveCfg = Debug|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.AppStore|ARM.Build.0 = Debug|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.AppStore|iPhone.ActiveCfg = Debug|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.AppStore|iPhone.Build.0 = Debug|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.AppStore|iPhoneSimulator.ActiveCfg = Debug|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.AppStore|iPhoneSimulator.Build.0 = Debug|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.AppStore|x64.ActiveCfg = Debug|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.AppStore|x64.Build.0 = Debug|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.AppStore|x86.ActiveCfg = Debug|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.AppStore|x86.Build.0 = Debug|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.Debug|Any CPU.Build.0 = Debug|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.Debug|ARM.ActiveCfg = Debug|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.Debug|ARM.Build.0 = Debug|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.Debug|iPhone.ActiveCfg = Debug|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.Debug|iPhone.Build.0 = Debug|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.Debug|x64.ActiveCfg = Debug|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.Debug|x64.Build.0 = Debug|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.Debug|x86.ActiveCfg = Debug|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.Debug|x86.Build.0 = Debug|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.Release|Any CPU.ActiveCfg = Release|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.Release|Any CPU.Build.0 = Release|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.Release|ARM.ActiveCfg = Release|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.Release|ARM.Build.0 = Release|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.Release|iPhone.ActiveCfg = Release|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.Release|iPhone.Build.0 = Release|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.Release|iPhoneSimulator.Build.0 = Release|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.Release|x64.ActiveCfg = Release|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.Release|x64.Build.0 = Release|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.Release|x86.ActiveCfg = Release|Any CPU + {31BAD7FA-1135-41E4-BE75-EA5AB1C96310}.Release|x86.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/e2e/Maui/PrismMauiDemo.sln b/e2e/Maui/PrismMauiDemo.sln index f12319d995..44bc5dff8c 100644 --- a/e2e/Maui/PrismMauiDemo.sln +++ b/e2e/Maui/PrismMauiDemo.sln @@ -29,6 +29,8 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Prism.Maui.Tests", "..\..\t EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Prism.Core.Tests", "..\..\tests\Prism.Core.Tests\Prism.Core.Tests.csproj", "{E0F13AA9-8083-47CA-B10D-93C5285D1505}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Prism.Events", "..\..\src\Prism.Events\Prism.Events.csproj", "{5623CB62-59C1-49BC-BB16-4C5D63D82DAC}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -76,6 +78,10 @@ Global {E0F13AA9-8083-47CA-B10D-93C5285D1505}.Debug|Any CPU.Build.0 = Debug|Any CPU {E0F13AA9-8083-47CA-B10D-93C5285D1505}.Release|Any CPU.ActiveCfg = Release|Any CPU {E0F13AA9-8083-47CA-B10D-93C5285D1505}.Release|Any CPU.Build.0 = Release|Any CPU + {5623CB62-59C1-49BC-BB16-4C5D63D82DAC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {5623CB62-59C1-49BC-BB16-4C5D63D82DAC}.Debug|Any CPU.Build.0 = Debug|Any CPU + {5623CB62-59C1-49BC-BB16-4C5D63D82DAC}.Release|Any CPU.ActiveCfg = Release|Any CPU + {5623CB62-59C1-49BC-BB16-4C5D63D82DAC}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/e2e/Uno/HelloWorld.sln b/e2e/Uno/HelloWorld.sln index 77fdde9a62..40a132df35 100644 --- a/e2e/Uno/HelloWorld.sln +++ b/e2e/Uno/HelloWorld.sln @@ -1,4 +1,4 @@ -Microsoft Visual Studio Solution File, Format Version 12.00 +Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio Version 17 VisualStudioVersion = 17.2.32210.308 MinimumVisualStudioVersion = 15.0.26124.0 @@ -39,6 +39,8 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "modules", "modules", "{F67B EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ModuleA", "ModuleA\ModuleA.csproj", "{5AD22541-BC5D-45E0-9C95-87B51300FF1C}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Prism.Events", "..\..\src\Prism.Events\Prism.Events.csproj", "{ABC0F8AF-6FED-4C3E-80B3-54F1A7CC5930}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -396,6 +398,34 @@ Global {5AD22541-BC5D-45E0-9C95-87B51300FF1C}.Release|x64.Build.0 = Release|Any CPU {5AD22541-BC5D-45E0-9C95-87B51300FF1C}.Release|x86.ActiveCfg = Release|Any CPU {5AD22541-BC5D-45E0-9C95-87B51300FF1C}.Release|x86.Build.0 = Release|Any CPU + {ABC0F8AF-6FED-4C3E-80B3-54F1A7CC5930}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {ABC0F8AF-6FED-4C3E-80B3-54F1A7CC5930}.Debug|Any CPU.Build.0 = Debug|Any CPU + {ABC0F8AF-6FED-4C3E-80B3-54F1A7CC5930}.Debug|ARM.ActiveCfg = Debug|Any CPU + {ABC0F8AF-6FED-4C3E-80B3-54F1A7CC5930}.Debug|ARM.Build.0 = Debug|Any CPU + {ABC0F8AF-6FED-4C3E-80B3-54F1A7CC5930}.Debug|ARM64.ActiveCfg = Debug|Any CPU + {ABC0F8AF-6FED-4C3E-80B3-54F1A7CC5930}.Debug|ARM64.Build.0 = Debug|Any CPU + {ABC0F8AF-6FED-4C3E-80B3-54F1A7CC5930}.Debug|iPhone.ActiveCfg = Debug|Any CPU + {ABC0F8AF-6FED-4C3E-80B3-54F1A7CC5930}.Debug|iPhone.Build.0 = Debug|Any CPU + {ABC0F8AF-6FED-4C3E-80B3-54F1A7CC5930}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU + {ABC0F8AF-6FED-4C3E-80B3-54F1A7CC5930}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU + {ABC0F8AF-6FED-4C3E-80B3-54F1A7CC5930}.Debug|x64.ActiveCfg = Debug|Any CPU + {ABC0F8AF-6FED-4C3E-80B3-54F1A7CC5930}.Debug|x64.Build.0 = Debug|Any CPU + {ABC0F8AF-6FED-4C3E-80B3-54F1A7CC5930}.Debug|x86.ActiveCfg = Debug|Any CPU + {ABC0F8AF-6FED-4C3E-80B3-54F1A7CC5930}.Debug|x86.Build.0 = Debug|Any CPU + {ABC0F8AF-6FED-4C3E-80B3-54F1A7CC5930}.Release|Any CPU.ActiveCfg = Release|Any CPU + {ABC0F8AF-6FED-4C3E-80B3-54F1A7CC5930}.Release|Any CPU.Build.0 = Release|Any CPU + {ABC0F8AF-6FED-4C3E-80B3-54F1A7CC5930}.Release|ARM.ActiveCfg = Release|Any CPU + {ABC0F8AF-6FED-4C3E-80B3-54F1A7CC5930}.Release|ARM.Build.0 = Release|Any CPU + {ABC0F8AF-6FED-4C3E-80B3-54F1A7CC5930}.Release|ARM64.ActiveCfg = Release|Any CPU + {ABC0F8AF-6FED-4C3E-80B3-54F1A7CC5930}.Release|ARM64.Build.0 = Release|Any CPU + {ABC0F8AF-6FED-4C3E-80B3-54F1A7CC5930}.Release|iPhone.ActiveCfg = Release|Any CPU + {ABC0F8AF-6FED-4C3E-80B3-54F1A7CC5930}.Release|iPhone.Build.0 = Release|Any CPU + {ABC0F8AF-6FED-4C3E-80B3-54F1A7CC5930}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU + {ABC0F8AF-6FED-4C3E-80B3-54F1A7CC5930}.Release|iPhoneSimulator.Build.0 = Release|Any CPU + {ABC0F8AF-6FED-4C3E-80B3-54F1A7CC5930}.Release|x64.ActiveCfg = Release|Any CPU + {ABC0F8AF-6FED-4C3E-80B3-54F1A7CC5930}.Release|x64.Build.0 = Release|Any CPU + {ABC0F8AF-6FED-4C3E-80B3-54F1A7CC5930}.Release|x86.ActiveCfg = Release|Any CPU + {ABC0F8AF-6FED-4C3E-80B3-54F1A7CC5930}.Release|x86.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/e2e/Wpf/HelloWorld.sln b/e2e/Wpf/HelloWorld.sln index 87b12ac3f9..b4014da1bb 100644 --- a/e2e/Wpf/HelloWorld.sln +++ b/e2e/Wpf/HelloWorld.sln @@ -23,6 +23,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HelloWorld.Core", "HelloWor EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Modules", "Modules", "{63541838-3D6A-4F2E-92EF-AC4953BB9B9B}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Prism.Events", "..\..\src\Prism.Events\Prism.Events.csproj", "{E35BF062-652E-4520-8DD8-55DC80012D57}" +EndProject Global GlobalSection(SharedMSBuildProjectFiles) = preSolution ..\..\src\Containers\Prism.DryIoc.Shared\Prism.DryIoc.Shared.projitems*{a0842858-bfd5-41ae-bde7-cbd870bc9900}*SharedItemsImports = 5 @@ -65,6 +67,10 @@ Global {F9541A8C-42DD-4340-AB57-54C7AAAC1BCC}.Debug|Any CPU.Build.0 = Debug|Any CPU {F9541A8C-42DD-4340-AB57-54C7AAAC1BCC}.Release|Any CPU.ActiveCfg = Release|Any CPU {F9541A8C-42DD-4340-AB57-54C7AAAC1BCC}.Release|Any CPU.Build.0 = Release|Any CPU + {E35BF062-652E-4520-8DD8-55DC80012D57}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {E35BF062-652E-4520-8DD8-55DC80012D57}.Debug|Any CPU.Build.0 = Debug|Any CPU + {E35BF062-652E-4520-8DD8-55DC80012D57}.Release|Any CPU.ActiveCfg = Release|Any CPU + {E35BF062-652E-4520-8DD8-55DC80012D57}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/src/Prism.Core/Prism.Core.csproj b/src/Prism.Core/Prism.Core.csproj index 9071e9b5d5..6d1702cb32 100644 --- a/src/Prism.Core/Prism.Core.csproj +++ b/src/Prism.Core/Prism.Core.csproj @@ -8,11 +8,14 @@ Prism is a fully open source version of the Prism guidance originally produced by Microsoft Patterns & Practices. Prism provides an implementation of a collection of design patterns that are helpful in writing well structured and maintainable XAML applications, including MVVM, dependency injection, commanding, event aggregation, and more. Prism's core functionality is a shared code base in a Portable Class Library targeting these platforms; WPF, and Xamarin Forms. Features that need to be platform specific are implemented in the respective libraries for the target platform. - prism;wpf;xamarin;mvvm;xaml + prism;wpf;xamarin;dotnet maui;maui;uno;unoplatform;mvvm;xaml + + + diff --git a/src/Prism.Core/Properties/Resources.Designer.cs b/src/Prism.Core/Properties/Resources.Designer.cs index 4d780329ad..73c1c2683b 100644 --- a/src/Prism.Core/Properties/Resources.Designer.cs +++ b/src/Prism.Core/Properties/Resources.Designer.cs @@ -10,7 +10,6 @@ namespace Prism.Properties { using System; - using System.Reflection; /// @@ -20,7 +19,7 @@ namespace Prism.Properties { // class via a tool like ResGen or Visual Studio. // To add or remove a member, edit your .ResX file then rerun ResGen // with the /str option, or rebuild your VS project. - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "15.0.0.0")] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "17.0.0.0")] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] internal class Resources { @@ -40,7 +39,7 @@ internal Resources() { internal static global::System.Resources.ResourceManager ResourceManager { get { if (object.ReferenceEquals(resourceMan, null)) { - global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Prism.Properties.Resources", typeof(Resources).GetTypeInfo().Assembly); + global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Prism.Properties.Resources", typeof(Resources).Assembly); resourceMan = temp; } return resourceMan; @@ -142,15 +141,6 @@ internal static string DuplicatedModule { } } - /// - /// Looks up a localized string similar to To use the UIThread option for subscribing, the EventAggregator must be constructed on the UI thread.. - /// - internal static string EventAggregatorNotConstructedOnUIThread { - get { - return ResourceManager.GetString("EventAggregatorNotConstructedOnUIThread", resourceCulture); - } - } - /// /// Looks up a localized string similar to An exception occurred while initializing module '{0}'. /// - The exception message was: {2} @@ -186,15 +176,6 @@ internal static string FailedToRetrieveModule { } } - /// - /// Looks up a localized string similar to Invalid Delegate Reference Type Exception. - /// - internal static string InvalidDelegateRerefenceTypeException { - get { - return ResourceManager.GetString("InvalidDelegateRerefenceTypeException", resourceCulture); - } - } - /// /// Looks up a localized string similar to The entity does not contain a property with that name. /// diff --git a/src/Prism.Core/Properties/Resources.resx b/src/Prism.Core/Properties/Resources.resx index f09e113bae..13680eed5a 100644 --- a/src/Prism.Core/Properties/Resources.resx +++ b/src/Prism.Core/Properties/Resources.resx @@ -144,9 +144,6 @@ A duplicated module with name {0} has been found by the loader. - - To use the UIThread option for subscribing, the EventAggregator must be constructed on the UI thread. - An exception occurred while initializing module '{0}'. - The exception message was: {2} @@ -164,9 +161,6 @@ Failed to load type for module {0}. Error was: {1}. - - Invalid Delegate Reference Type Exception - The entity does not contain a property with that name diff --git a/src/Prism.Core/Events/BackgroundEventSubscription.cs b/src/Prism.Events/BackgroundEventSubscription.cs similarity index 100% rename from src/Prism.Core/Events/BackgroundEventSubscription.cs rename to src/Prism.Events/BackgroundEventSubscription.cs diff --git a/src/Prism.Core/Events/DataEventArgs.cs b/src/Prism.Events/DataEventArgs.cs similarity index 100% rename from src/Prism.Core/Events/DataEventArgs.cs rename to src/Prism.Events/DataEventArgs.cs diff --git a/src/Prism.Core/Events/DelegateReference.cs b/src/Prism.Events/DelegateReference.cs similarity index 100% rename from src/Prism.Core/Events/DelegateReference.cs rename to src/Prism.Events/DelegateReference.cs diff --git a/src/Prism.Core/Events/DispatcherEventSubscription.cs b/src/Prism.Events/DispatcherEventSubscription.cs similarity index 100% rename from src/Prism.Core/Events/DispatcherEventSubscription.cs rename to src/Prism.Events/DispatcherEventSubscription.cs diff --git a/src/Prism.Core/Events/EventAggregator.cs b/src/Prism.Events/EventAggregator.cs similarity index 100% rename from src/Prism.Core/Events/EventAggregator.cs rename to src/Prism.Events/EventAggregator.cs diff --git a/src/Prism.Core/Events/EventBase.cs b/src/Prism.Events/EventBase.cs similarity index 100% rename from src/Prism.Core/Events/EventBase.cs rename to src/Prism.Events/EventBase.cs diff --git a/src/Prism.Core/Events/EventSubscription.cs b/src/Prism.Events/EventSubscription.cs similarity index 99% rename from src/Prism.Core/Events/EventSubscription.cs rename to src/Prism.Events/EventSubscription.cs index 9cdf0ae9cf..86b6e7f247 100644 --- a/src/Prism.Core/Events/EventSubscription.cs +++ b/src/Prism.Events/EventSubscription.cs @@ -1,6 +1,6 @@ using System; using System.Globalization; -using Prism.Properties; +using Prism.Events.Properties; namespace Prism.Events { diff --git a/src/Prism.Core/Events/IDelegateReference.cs b/src/Prism.Events/IDelegateReference.cs similarity index 100% rename from src/Prism.Core/Events/IDelegateReference.cs rename to src/Prism.Events/IDelegateReference.cs diff --git a/src/Prism.Core/Events/IEventAggregator.cs b/src/Prism.Events/IEventAggregator.cs similarity index 100% rename from src/Prism.Core/Events/IEventAggregator.cs rename to src/Prism.Events/IEventAggregator.cs diff --git a/src/Prism.Core/Events/IEventSubscription.cs b/src/Prism.Events/IEventSubscription.cs similarity index 100% rename from src/Prism.Core/Events/IEventSubscription.cs rename to src/Prism.Events/IEventSubscription.cs diff --git a/src/Prism.Events/Prism.Events.csproj b/src/Prism.Events/Prism.Events.csproj new file mode 100644 index 0000000000..1f79b157b9 --- /dev/null +++ b/src/Prism.Events/Prism.Events.csproj @@ -0,0 +1,16 @@ + + + + netstandard2.0;net47;net6.0 + + + Prism.Events is a library that facilitates communication between loosely coupled components in an application. It provides an event aggregator service that allows publishers and subscribers to interact through events without direct references. With multicast publish/subscribe functionality, multiple publishers can raise the same event, and multiple subscribers can listen to it, enabling flexible and efficient communication. + prism;wpf;xamarin;dotnet maui;maui;uno;unoplatform;events;event aggregator;ieventaggregator;pubsubevent + + + + + + + + diff --git a/src/Prism.Events/Properties/AssemblyInfo.cs b/src/Prism.Events/Properties/AssemblyInfo.cs new file mode 100644 index 0000000000..8c114539a1 --- /dev/null +++ b/src/Prism.Events/Properties/AssemblyInfo.cs @@ -0,0 +1,3 @@ +using System; + +[assembly: CLSCompliant(true)] diff --git a/src/Prism.Events/Properties/Resources.Designer.cs b/src/Prism.Events/Properties/Resources.Designer.cs new file mode 100644 index 0000000000..cc5581cb5d --- /dev/null +++ b/src/Prism.Events/Properties/Resources.Designer.cs @@ -0,0 +1,81 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Runtime Version:4.0.30319.42000 +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +namespace Prism.Events.Properties { + using System; + + + /// + /// A strongly-typed resource class, for looking up localized strings, etc. + /// + // This class was auto-generated by the StronglyTypedResourceBuilder + // class via a tool like ResGen or Visual Studio. + // To add or remove a member, edit your .ResX file then rerun ResGen + // with the /str option, or rebuild your VS project. + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "17.0.0.0")] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + internal class Resources { + + private static global::System.Resources.ResourceManager resourceMan; + + private static global::System.Globalization.CultureInfo resourceCulture; + + [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] + internal Resources() { + } + + /// + /// Returns the cached ResourceManager instance used by this class. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Resources.ResourceManager ResourceManager { + get { + if (object.ReferenceEquals(resourceMan, null)) { + global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Prism.Events.Properties.Resources", typeof(Resources).Assembly); + resourceMan = temp; + } + return resourceMan; + } + } + + /// + /// Overrides the current thread's CurrentUICulture property for all + /// resource lookups using this strongly typed resource class. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Globalization.CultureInfo Culture { + get { + return resourceCulture; + } + set { + resourceCulture = value; + } + } + + /// + /// Looks up a localized string similar to To use the UIThread option for subscribing, the EventAggregator must be constructed on the UI thread.. + /// + internal static string EventAggregatorNotConstructedOnUIThread { + get { + return ResourceManager.GetString("EventAggregatorNotConstructedOnUIThread", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Invalid Delegate Reference Type Exception. + /// + internal static string InvalidDelegateRerefenceTypeException { + get { + return ResourceManager.GetString("InvalidDelegateRerefenceTypeException", resourceCulture); + } + } + } +} diff --git a/src/Prism.Events/Properties/Resources.resx b/src/Prism.Events/Properties/Resources.resx new file mode 100644 index 0000000000..772e08c167 --- /dev/null +++ b/src/Prism.Events/Properties/Resources.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + To use the UIThread option for subscribing, the EventAggregator must be constructed on the UI thread. + + + Invalid Delegate Reference Type Exception + + \ No newline at end of file diff --git a/src/Prism.Core/Events/PubSubEvent.cs b/src/Prism.Events/PubSubEvent.cs similarity index 99% rename from src/Prism.Core/Events/PubSubEvent.cs rename to src/Prism.Events/PubSubEvent.cs index 22b0b53e3f..0a1312805e 100644 --- a/src/Prism.Core/Events/PubSubEvent.cs +++ b/src/Prism.Events/PubSubEvent.cs @@ -1,6 +1,6 @@ using System; using System.Linq; -using Prism.Properties; +using Prism.Events.Properties; namespace Prism.Events { diff --git a/src/Prism.Core/Events/SubscriptionToken.cs b/src/Prism.Events/SubscriptionToken.cs similarity index 100% rename from src/Prism.Core/Events/SubscriptionToken.cs rename to src/Prism.Events/SubscriptionToken.cs diff --git a/src/Prism.Core/Events/ThreadOption.cs b/src/Prism.Events/ThreadOption.cs similarity index 100% rename from src/Prism.Core/Events/ThreadOption.cs rename to src/Prism.Events/ThreadOption.cs diff --git a/src/Prism.Core/Events/WeakDelegatesManager.cs b/src/Prism.Events/WeakDelegatesManager.cs similarity index 100% rename from src/Prism.Core/Events/WeakDelegatesManager.cs rename to src/Prism.Events/WeakDelegatesManager.cs