Index: Application/Application.Ringtoets/App.xaml.cs =================================================================== diff -u -r14f616f114b9b1a4355e2333bfd348b8e4aae01f -rbc238ea43fae81b8a49aa2bdb2c8349815c46039 --- Application/Application.Ringtoets/App.xaml.cs (.../App.xaml.cs) (revision 14f616f114b9b1a4355e2333bfd348b8e4aae01f) +++ Application/Application.Ringtoets/App.xaml.cs (.../App.xaml.cs) (revision bc238ea43fae81b8a49aa2bdb2c8349815c46039) @@ -10,6 +10,7 @@ using System.Windows; using System.Windows.Controls.Primitives; using System.Windows.Forms; +using Core.Common.Base; using Core.Common.Controls.Swf; using Core.Common.Gui; using Core.Common.Gui.Forms.MainWindow; @@ -128,6 +129,15 @@ Resources.Add(SystemParameters.MenuPopupAnimationKey, PopupAnimation.None); + var applicationCore = new ApplicationCore(); + + gui.ApplicationCore.AddPlugin(new CommonToolsApplicationPlugin()); +#if INCLUDE_DEMOPROJECT + gui.ApplicationCore.AddPlugin(new SharpMapGisApplicationPlugin()); +#endif + gui.ApplicationCore.AddPlugin(new RingtoetsApplicationPlugin()); + gui.ApplicationCore.AddPlugin(new PipingApplicationPlugin()); + var settings = new GuiCoreSettings { StartPageUrl = "http://www.helpdeskwater.nl", @@ -140,7 +150,7 @@ ManualFilePath = "Ringtoets_Manual.pdf" }; - gui = new RingtoetsGui(settings) + gui = new RingtoetsGui(applicationCore, settings) { Plugins = { @@ -155,13 +165,6 @@ } }; - gui.ApplicationCore.AddPlugin(new CommonToolsApplicationPlugin()); -#if INCLUDE_DEMOPROJECT - gui.ApplicationCore.AddPlugin(new SharpMapGisApplicationPlugin()); -#endif - gui.ApplicationCore.AddPlugin(new RingtoetsApplicationPlugin()); - gui.ApplicationCore.AddPlugin(new PipingApplicationPlugin()); - var mainWindow = new MainWindow(gui); gui.MainWindow = mainWindow; Index: Core/Common/src/Core.Common.Base/ApplicationCore.cs =================================================================== diff -u -rd992a9538644381321f71d536c9ea85813d4c443 -rbc238ea43fae81b8a49aa2bdb2c8349815c46039 --- Core/Common/src/Core.Common.Base/ApplicationCore.cs (.../ApplicationCore.cs) (revision d992a9538644381321f71d536c9ea85813d4c443) +++ Core/Common/src/Core.Common.Base/ApplicationCore.cs (.../ApplicationCore.cs) (revision bc238ea43fae81b8a49aa2bdb2c8349815c46039) @@ -1,35 +1,19 @@ using System; using System.Collections.Generic; using System.Linq; -using Core.Common.Base.Workflow; using Core.Common.Utils.Reflection; namespace Core.Common.Base { public class ApplicationCore : IDisposable { - private readonly ActivityRunner activityRunner; private readonly List plugins; public ApplicationCore() { plugins = new List(); - activityRunner = new ActivityRunner(); - - if (RunningActivityLogAppender.Instance != null) - { - RunningActivityLogAppender.Instance.ActivityRunner = ActivityRunner; - } } - public IActivityRunner ActivityRunner - { - get - { - return activityRunner; - } - } - public void AddPlugin(ApplicationPlugin applicationPlugin) { plugins.Add(applicationPlugin); @@ -50,11 +34,6 @@ { RemovePlugin(plugin); } - - if (RunningActivityLogAppender.Instance != null) - { - RunningActivityLogAppender.Instance.ActivityRunner = null; - } } public IEnumerable GetSupportedFileImporters(object target) Index: Core/Common/src/Core.Common.Gui/Forms/MainWindow/MainWindow.xaml.cs =================================================================== diff -u -rd626df632ea0fa550e1e0811dce714b9486ee926 -rbc238ea43fae81b8a49aa2bdb2c8349815c46039 --- Core/Common/src/Core.Common.Gui/Forms/MainWindow/MainWindow.xaml.cs (.../MainWindow.xaml.cs) (revision d626df632ea0fa550e1e0811dce714b9486ee926) +++ Core/Common/src/Core.Common.Gui/Forms/MainWindow/MainWindow.xaml.cs (.../MainWindow.xaml.cs) (revision bc238ea43fae81b8a49aa2bdb2c8349815c46039) @@ -651,7 +651,7 @@ } var appHasProject = Gui.Project != null; - var isActivityRunning = Gui.ApplicationCore.ActivityRunner.IsRunning; + var isActivityRunning = Gui.ActivityRunner.IsRunning; // filemenu items dependent on existence of project and if processes are running /* Index: Core/Common/src/Core.Common.Gui/GuiCommandHandler.cs =================================================================== diff -u -rd992a9538644381321f71d536c9ea85813d4c443 -rbc238ea43fae81b8a49aa2bdb2c8349815c46039 --- Core/Common/src/Core.Common.Gui/GuiCommandHandler.cs (.../GuiCommandHandler.cs) (revision d992a9538644381321f71d536c9ea85813d4c443) +++ Core/Common/src/Core.Common.Gui/GuiCommandHandler.cs (.../GuiCommandHandler.cs) (revision bc238ea43fae81b8a49aa2bdb2c8349815c46039) @@ -336,7 +336,7 @@ private void ProjectCollectionChanged(object sender, NotifyCollectionChangingEventArgs e) { // Don't remove views during run-time of models: - if (gui.ApplicationCore.ActivityRunner.IsRunning) + if (gui.ActivityRunner.IsRunning) { return; } Index: Core/Common/src/Core.Common.Gui/GuiImportHandler.cs =================================================================== diff -u -rd992a9538644381321f71d536c9ea85813d4c443 -rbc238ea43fae81b8a49aa2bdb2c8349815c46039 --- Core/Common/src/Core.Common.Gui/GuiImportHandler.cs (.../GuiImportHandler.cs) (revision d992a9538644381321f71d536c9ea85813d4c443) +++ Core/Common/src/Core.Common.Gui/GuiImportHandler.cs (.../GuiImportHandler.cs) (revision bc238ea43fae81b8a49aa2bdb2c8349815c46039) @@ -123,7 +123,7 @@ { get { - return gui.ApplicationCore.ActivityRunner; + return gui.ActivityRunner; } } Index: Core/Common/src/Core.Common.Gui/IGui.cs =================================================================== diff -u -rb13a656f78f98541b955433ea4074da47b57f8bc -rbc238ea43fae81b8a49aa2bdb2c8349815c46039 --- Core/Common/src/Core.Common.Gui/IGui.cs (.../IGui.cs) (revision b13a656f78f98541b955433ea4074da47b57f8bc) +++ Core/Common/src/Core.Common.Gui/IGui.cs (.../IGui.cs) (revision bc238ea43fae81b8a49aa2bdb2c8349815c46039) @@ -9,14 +9,15 @@ using System.Collections.Generic; using System.Configuration; using Core.Common.Base; +using Core.Common.Base.Workflow; using Core.Common.Gui.Forms.MainWindow; namespace Core.Common.Gui { /// /// Provides graphical user interface logic required to work with an application. /// - public interface IGui + public interface IGui : IDisposable { #region Public properties @@ -28,11 +29,16 @@ #region Public Properties /// - /// Gets or sets Application wrapped by the current Gui. + /// Gets the of the . /// - ApplicationCore ApplicationCore { get; set; } + ApplicationCore ApplicationCore { get; } /// + /// Gets the of the . + /// + IActivityRunner ActivityRunner { get; } + + /// /// Gets or sets the project of the . /// Project Project { get; set; } Index: Core/Common/src/Core.Common.Gui/RingtoetsGui.cs =================================================================== diff -u -rd626df632ea0fa550e1e0811dce714b9486ee926 -rbc238ea43fae81b8a49aa2bdb2c8349815c46039 --- Core/Common/src/Core.Common.Gui/RingtoetsGui.cs (.../RingtoetsGui.cs) (revision d626df632ea0fa550e1e0811dce714b9486ee926) +++ Core/Common/src/Core.Common.Gui/RingtoetsGui.cs (.../RingtoetsGui.cs) (revision bc238ea43fae81b8a49aa2bdb2c8349815c46039) @@ -45,8 +45,8 @@ private readonly IList commands = new List(); - private ApplicationCore applicationCore; private MainWindow mainWindow; + private readonly ApplicationCore applicationCore; private object selection; @@ -61,12 +61,13 @@ private bool runFinished; private bool isExiting; private Project project; + private IActivityRunner activityRunner; private ContextMenuItemFactory contextMenuItemFactory; private bool userSettingsDirty; private ApplicationSettingsBase userSettings; - public RingtoetsGui(GuiCoreSettings fixedSettings = null) + public RingtoetsGui(ApplicationCore applicationCore = null, GuiCoreSettings fixedSettings = null) { // error detection code, make sure we use only a single instance of RingtoetsGui at a time if (instance != null) @@ -75,14 +76,14 @@ throw new InvalidOperationException(Resources.RingtoetsGui_Only_a_single_instance_of_Ringtoets_is_allowed_at_the_same_time_per_process_Make_sure_that_the_previous_instance_was_disposed_correctly_stack_trace + instanceCreationStackTrace); } + ApplicationCore = applicationCore ?? new ApplicationCore(); FixedSettings = fixedSettings ?? new GuiCoreSettings(); instance = this; instanceCreationStackTrace = new StackTrace().ToString(); ViewPropertyEditor.Gui = this; Plugins = new List(); - ApplicationCore = new ApplicationCore(); UserSettings = Settings.Default; @@ -94,6 +95,8 @@ ProjectOpened += ApplicationProjectOpened; contextMenuItemFactory = new ContextMenuItemFactory(this); + + ActivityRunner = new ActivityRunner(); } public bool SkipDialogsOnExit { get; set; } @@ -102,28 +105,34 @@ public string ProjectFilePath { get; set; } - public ApplicationCore ApplicationCore + public ApplicationCore ApplicationCore { get; private set; } + + public IActivityRunner ActivityRunner { get { - return applicationCore; + return activityRunner; } - set + private set { - if (applicationCore != null) + if (activityRunner != null) { - ApplicationCore.ActivityRunner.IsRunningChanged -= ActivityRunnerIsRunningChanged; - ApplicationCore.ActivityRunner.ActivityCompleted -= ActivityRunnerActivityCompleted; + activityRunner.IsRunningChanged -= ActivityRunnerIsRunningChanged; + activityRunner.ActivityCompleted -= ActivityRunnerActivityCompleted; } - applicationCore = value; + activityRunner = value; - if (applicationCore != null) + if (RunningActivityLogAppender.Instance != null) { - // subscribe to application events so that we can handle opening, closing, renamig of views on project changes - ApplicationCore.ActivityRunner.IsRunningChanged += ActivityRunnerIsRunningChanged; - ApplicationCore.ActivityRunner.ActivityCompleted += ActivityRunnerActivityCompleted; + RunningActivityLogAppender.Instance.ActivityRunner = value; } + + if (activityRunner != null) + { + activityRunner.IsRunningChanged += ActivityRunnerIsRunningChanged; + activityRunner.ActivityCompleted += ActivityRunnerActivityCompleted; + } } } @@ -393,12 +402,13 @@ try { - if (ApplicationCore != null) + if (ActivityRunner != null) { - if (ApplicationCore.ActivityRunner.IsRunning) + if (ActivityRunner.IsRunning) { - ApplicationCore.ActivityRunner.CancelAll(); - while (ApplicationCore.ActivityRunner.IsRunning) + ActivityRunner.CancelAll(); + + while (ActivityRunner.IsRunning) { Application.DoEvents(); } @@ -409,6 +419,8 @@ { Project = null; + ActivityRunner = null; + if (ToolWindowViews != null) { ToolWindowViews.Clear(); @@ -475,8 +487,6 @@ } RemoveLogging(); - - ApplicationCore = null; } } @@ -589,7 +599,7 @@ return; } - if (!ApplicationCore.ActivityRunner.IsRunning) + if (!ActivityRunner.IsRunning) { ResumeUI(); } @@ -629,18 +639,18 @@ progressDialog = new ProgressDialog(); progressDialog.CancelClicked += delegate { - ApplicationCore.ActivityRunner.CancelAll(); + ActivityRunner.CancelAll(); // wait until all import activities are finished - while (ApplicationCore.ActivityRunner.IsRunning) + while (ActivityRunner.IsRunning) { Application.DoEvents(); } }; - progressDialog.Data = ApplicationCore.ActivityRunner.Activities; + progressDialog.Data = ActivityRunner.Activities; } - if (ApplicationCore.ActivityRunner.IsRunning) + if (ActivityRunner.IsRunning) { if (!progressDialog.Visible) { Index: Core/Common/test/Core.Common.Integration.Tests/Ringtoets/Application.Ringtoets/GuiImportHandlerTest.cs =================================================================== diff -u -rd992a9538644381321f71d536c9ea85813d4c443 -rbc238ea43fae81b8a49aa2bdb2c8349815c46039 --- Core/Common/test/Core.Common.Integration.Tests/Ringtoets/Application.Ringtoets/GuiImportHandlerTest.cs (.../GuiImportHandlerTest.cs) (revision d992a9538644381321f71d536c9ea85813d4c443) +++ Core/Common/test/Core.Common.Integration.Tests/Ringtoets/Application.Ringtoets/GuiImportHandlerTest.cs (.../GuiImportHandlerTest.cs) (revision bc238ea43fae81b8a49aa2bdb2c8349815c46039) @@ -29,10 +29,12 @@ MessageBox.CustomMessageBox = messageBox; messageBox.Expect(mb => mb.Show(null, null, MessageBoxButtons.OK)).Return(DialogResult.OK).IgnoreArguments() .Repeat.Once(); - messageBox.Replay(); - gui.ApplicationCore = new ApplicationCore(); + var applicationCore = new ApplicationCore(); + gui.Expect(g => g.ApplicationCore).Return(applicationCore).Repeat.Any(); + mocks.ReplayAll(); + var importHandler = new GuiImportHandler(gui); var item = importHandler.GetSupportedImporterForTargetType(typeof(Int64)); @@ -74,14 +76,13 @@ targetItemImporter.Expect(fi => fi.Name).Return("2").Repeat.Any(); targetItemImporter.Expect(fi => fi.CanImportOn(null)).IgnoreArguments().Return(true).Repeat.Any(); - mocks.ReplayAll(); - var applicationCore = new ApplicationCore(); + gui.Expect(g => g.ApplicationCore).Return(applicationCore).Repeat.Any(); + mocks.ReplayAll(); + applicationCore.AddPlugin(plugin); - gui.ApplicationCore = applicationCore; - var guiImportHandler = new GuiImportHandler(gui); var one = (long) 1.0; Index: Core/Common/test/Core.Common.Integration.Tests/Ringtoets/Application.Ringtoets/RingtoetsGuiIntegrationTest.cs =================================================================== diff -u -rcefa4b33b2ee1f5073bc18d6b769ceaf7c727f66 -rbc238ea43fae81b8a49aa2bdb2c8349815c46039 --- Core/Common/test/Core.Common.Integration.Tests/Ringtoets/Application.Ringtoets/RingtoetsGuiIntegrationTest.cs (.../RingtoetsGuiIntegrationTest.cs) (revision cefa4b33b2ee1f5073bc18d6b769ceaf7c727f66) +++ Core/Common/test/Core.Common.Integration.Tests/Ringtoets/Application.Ringtoets/RingtoetsGuiIntegrationTest.cs (.../RingtoetsGuiIntegrationTest.cs) (revision bc238ea43fae81b8a49aa2bdb2c8349815c46039) @@ -68,10 +68,10 @@ Action onShown = delegate { var testActivity = new TestActivity(); - gui.ApplicationCore.ActivityRunner.Enqueue(testActivity); + gui.ActivityRunner.Enqueue(testActivity); try { - while (!gui.ApplicationCore.ActivityRunner.IsRunningActivity(testActivity)) + while (!gui.ActivityRunner.IsRunningActivity(testActivity)) { Thread.Sleep(0); } @@ -85,7 +85,7 @@ testActivity.Done = true; } - while (gui.ApplicationCore.ActivityRunner.IsRunningActivity(testActivity)) + while (gui.ActivityRunner.IsRunningActivity(testActivity)) { Thread.Sleep(0); } Index: Core/Common/test/Core.Common.Tests/Gui/RingtoetsGuiTests.cs =================================================================== diff -u -rc621c8ee0e3f645a82baedf1654f4d58d1632348 -rbc238ea43fae81b8a49aa2bdb2c8349815c46039 --- Core/Common/test/Core.Common.Tests/Gui/RingtoetsGuiTests.cs (.../RingtoetsGuiTests.cs) (revision c621c8ee0e3f645a82baedf1654f4d58d1632348) +++ Core/Common/test/Core.Common.Tests/Gui/RingtoetsGuiTests.cs (.../RingtoetsGuiTests.cs) (revision bc238ea43fae81b8a49aa2bdb2c8349815c46039) @@ -1,7 +1,5 @@ using Core.Common.Base; using Core.Common.Gui; -using Core.Common.TestUtils; -using log4net.Core; using NUnit.Framework; using Rhino.Mocks; @@ -10,34 +8,6 @@ [TestFixture] public class RingtoetsGuiTests { - private RingtoetsGui gui; - - [TestFixtureSetUp] - public void TestFixtureSetUp() - { - LogHelper.ConfigureLogging(); - } - - [TestFixtureTearDown] - public void TestFixtureTearDown() - { - LogHelper.ResetLogging(); - } - - [SetUp] - public void SetUp() - { - LogHelper.SetLoggingLevel(Level.Error); - - gui = new RingtoetsGui(); - } - - [TearDown] - public void TearDown() - { - gui.Dispose(); - } - [Test] public void DisposingGuiDisposesApplication() { @@ -49,7 +19,7 @@ mocks.ReplayAll(); - gui.ApplicationCore = applicationCore; + var gui = new RingtoetsGui(applicationCore); // Call gui.Dispose(); @@ -61,7 +31,10 @@ [Test] public void CheckViewPropertyEditorIsInitialized() { - Assert.NotNull(ViewPropertyEditor.Gui); + using (var gui = new RingtoetsGui()) + { + Assert.NotNull(ViewPropertyEditor.Gui); + } } } } \ No newline at end of file Index: Core/Plugins/src/Core.Plugins.SharpMapGis.Gui/SharpMapGisGuiPlugin.cs =================================================================== diff -u -rd121feba5299c86d7ac04a366ee869b163e43ec7 -rbc238ea43fae81b8a49aa2bdb2c8349815c46039 --- Core/Plugins/src/Core.Plugins.SharpMapGis.Gui/SharpMapGisGuiPlugin.cs (.../SharpMapGisGuiPlugin.cs) (revision d121feba5299c86d7ac04a366ee869b163e43ec7) +++ Core/Plugins/src/Core.Plugins.SharpMapGis.Gui/SharpMapGisGuiPlugin.cs (.../SharpMapGisGuiPlugin.cs) (revision bc238ea43fae81b8a49aa2bdb2c8349815c46039) @@ -137,9 +137,9 @@ gui.DocumentViews.ChildViewChanged += DocumentViewsActiveViewChanged; gui.ProjectClosing += ApplicationProjectClosing; - if (gui.ApplicationCore.ActivityRunner != null) + if (gui.ActivityRunner != null) { - gui.ApplicationCore.ActivityRunner.ActivityCompleted += ActivityRunnerOnActivityCompleted; + gui.ActivityRunner.ActivityCompleted += ActivityRunnerOnActivityCompleted; } } @@ -156,12 +156,11 @@ } gui.ProjectClosing -= ApplicationProjectClosing; - var applicationCore = gui.ApplicationCore; if (gui.ApplicationCore != null) { - if (applicationCore.ActivityRunner != null) + if (gui.ActivityRunner != null) { - applicationCore.ActivityRunner.ActivityCompleted -= ActivityRunnerOnActivityCompleted; + gui.ActivityRunner.ActivityCompleted -= ActivityRunnerOnActivityCompleted; } } } Index: Core/Plugins/test/Core.Plugins.CommonTools.Tests/CommonToolsGuiPluginTest.cs =================================================================== diff -u -r48fe36c87dd40ff715adf4c0cf393f7390e6c993 -rbc238ea43fae81b8a49aa2bdb2c8349815c46039 --- Core/Plugins/test/Core.Plugins.CommonTools.Tests/CommonToolsGuiPluginTest.cs (.../CommonToolsGuiPluginTest.cs) (revision 48fe36c87dd40ff715adf4c0cf393f7390e6c993) +++ Core/Plugins/test/Core.Plugins.CommonTools.Tests/CommonToolsGuiPluginTest.cs (.../CommonToolsGuiPluginTest.cs) (revision bc238ea43fae81b8a49aa2bdb2c8349815c46039) @@ -2,7 +2,6 @@ using Core.Common.Base; using Core.Common.Controls.Swf.Charting; using Core.Common.Gui; -using Core.Common.Gui.Forms; using Core.Common.Gui.Forms.MainWindow; using Core.Plugins.CommonTools.Gui; using Core.Plugins.CommonTools.Gui.Forms.Charting; @@ -21,13 +20,14 @@ public void ChartLegendViewIsUpdatedForCurrentActiveView() { var gui = mocks.Stub(); - gui.ApplicationCore = mocks.Stub(); + var applicationCore = mocks.Stub(); var pluginGui = new CommonToolsGuiPlugin(); var mainWindow = mocks.Stub(); var toolWindowViews = new TestViewList(); var documentViews = new TestViewList(); var chartView = new ChartView(); + gui.Expect(g => g.ApplicationCore).Return(applicationCore).Repeat.Any(); gui.Expect(g => g.DocumentViews).Return(documentViews).Repeat.Any(); gui.Expect(g => g.ToolWindowViews).Return(toolWindowViews).Repeat.Any(); gui.Expect(g => g.MainWindow).Return(mainWindow).Repeat.Any(); Index: Core/Plugins/test/Core.Plugins.ProjectExplorer.Tests/ProjectExplorerPluginGuiTest.cs =================================================================== diff -u -rcefa4b33b2ee1f5073bc18d6b769ceaf7c727f66 -rbc238ea43fae81b8a49aa2bdb2c8349815c46039 --- Core/Plugins/test/Core.Plugins.ProjectExplorer.Tests/ProjectExplorerPluginGuiTest.cs (.../ProjectExplorerPluginGuiTest.cs) (revision cefa4b33b2ee1f5073bc18d6b769ceaf7c727f66) +++ Core/Plugins/test/Core.Plugins.ProjectExplorer.Tests/ProjectExplorerPluginGuiTest.cs (.../ProjectExplorerPluginGuiTest.cs) (revision bc238ea43fae81b8a49aa2bdb2c8349815c46039) @@ -1,6 +1,5 @@ -using System.Collections.Generic; -using System.Collections.Specialized; -using System.Configuration; +using System; +using System.Collections.Generic; using Core.Common.Base; using Core.Common.Controls; using Core.Common.Gui; @@ -25,19 +24,21 @@ gui = mocks.Stub(); var project = new Project(); - var settings = mocks.Stub(); var plugin = mocks.Stub(); var pluginGui = mocks.Stub(); projectExplorerPluginGui = new ProjectExplorerGuiPlugin { Gui = gui }; - settings["showHiddenDataItems"] = true; - - Expect.Call(gui.UserSettings).Return(settings); - Expect.Call(gui.ToolWindowViews).Return(mocks.Stub()); - Expect.Call(gui.DocumentViews).Return(mocks.Stub()); + gui.Expect(g => g.SelectionChanged += Arg>.Is.Anything).Repeat.Any(); + gui.Expect(g => g.SelectionChanged -= Arg>.Is.Anything).Repeat.Any(); + gui.Expect(g => g.ProjectOpened += Arg>.Is.Anything).Repeat.Any(); + gui.Expect(g => g.ProjectOpened -= Arg>.Is.Anything).Repeat.Any(); + gui.Expect(g => g.ProjectClosing += Arg>.Is.Anything).Repeat.Any(); + gui.Expect(g => g.ProjectClosing -= Arg>.Is.Anything).Repeat.Any(); + Expect.Call(gui.ToolWindowViews).Return(mocks.Stub()).Repeat.Any(); + Expect.Call(gui.DocumentViews).Return(mocks.Stub()).Repeat.Any(); Expect.Call(gui.Plugins).Return(new List { projectExplorerPluginGui, pluginGui @@ -52,13 +53,12 @@ mockNodePresenter }); - mocks.ReplayAll(); - applicationCore = new ApplicationCore(); + gui.Expect(g => g.ApplicationCore).Return(applicationCore).Repeat.Any(); - applicationCore.AddPlugin(plugin); + mocks.ReplayAll(); - gui.ApplicationCore = applicationCore; + gui.ApplicationCore.AddPlugin(plugin); } [TearDown] Index: Core/Plugins/test/Core.Plugins.ProjectExplorer.Tests/ProjectTreeViewTest.cs =================================================================== diff -u -rcefa4b33b2ee1f5073bc18d6b769ceaf7c727f66 -rbc238ea43fae81b8a49aa2bdb2c8349815c46039 --- Core/Plugins/test/Core.Plugins.ProjectExplorer.Tests/ProjectTreeViewTest.cs (.../ProjectTreeViewTest.cs) (revision cefa4b33b2ee1f5073bc18d6b769ceaf7c727f66) +++ Core/Plugins/test/Core.Plugins.ProjectExplorer.Tests/ProjectTreeViewTest.cs (.../ProjectTreeViewTest.cs) (revision bc238ea43fae81b8a49aa2bdb2c8349815c46039) @@ -16,16 +16,14 @@ var gui = mocks.Stub(); var documentViews = mocks.Stub(); var settings = mocks.Stub(); + var applicationCore = new ApplicationCore(); + Expect.Call(gui.ApplicationCore).Return(applicationCore).Repeat.Any(); Expect.Call(gui.UserSettings).Return(settings).Repeat.Any(); Expect.Call(gui.DocumentViews).Return(documentViews).Repeat.Any(); mocks.ReplayAll(); - var applicationCore = new ApplicationCore(); - - gui.ApplicationCore = applicationCore; - var pluginGui = new ProjectExplorerGuiPlugin { Gui = gui Index: Core/Plugins/test/Core.Plugins.SharpMapGis.Tests/Forms/MapLegendViewTest.cs =================================================================== diff -u -rd121feba5299c86d7ac04a366ee869b163e43ec7 -rbc238ea43fae81b8a49aa2bdb2c8349815c46039 --- Core/Plugins/test/Core.Plugins.SharpMapGis.Tests/Forms/MapLegendViewTest.cs (.../MapLegendViewTest.cs) (revision d121feba5299c86d7ac04a366ee869b163e43ec7) +++ Core/Plugins/test/Core.Plugins.SharpMapGis.Tests/Forms/MapLegendViewTest.cs (.../MapLegendViewTest.cs) (revision bc238ea43fae81b8a49aa2bdb2c8349815c46039) @@ -112,13 +112,15 @@ { var project = new Project(); var gui = mocks.Stub(); + var applicationCore = new ApplicationCore(); //create stubbed version of plugingui SharpMapGisGuiPlugin guiPlugin = new SharpMapGisGuiPlugin(); IGisGuiService gisService = mocks.Stub(); guiPlugin.GisGuiService = gisService; + Expect.Call(gui.ApplicationCore).Return(applicationCore).Repeat.Any(); Expect.Call(gui.Plugins).Return(new[] { guiPlugin @@ -130,10 +132,6 @@ mocks.ReplayAll(); - var applicationCore = new ApplicationCore(); - - gui.ApplicationCore = applicationCore; - guiPlugin.Gui = gui; guiPlugin.Activate(); Index: Core/Plugins/test/Core.Plugins.SharpMapGis.Tests/Forms/MapTreeViewNodePresenterTest.cs =================================================================== diff -u -r48fe36c87dd40ff715adf4c0cf393f7390e6c993 -rbc238ea43fae81b8a49aa2bdb2c8349815c46039 --- Core/Plugins/test/Core.Plugins.SharpMapGis.Tests/Forms/MapTreeViewNodePresenterTest.cs (.../MapTreeViewNodePresenterTest.cs) (revision 48fe36c87dd40ff715adf4c0cf393f7390e6c993) +++ Core/Plugins/test/Core.Plugins.SharpMapGis.Tests/Forms/MapTreeViewNodePresenterTest.cs (.../MapTreeViewNodePresenterTest.cs) (revision bc238ea43fae81b8a49aa2bdb2c8349815c46039) @@ -48,7 +48,7 @@ var applicationCore = mocks.Stub(); tv = mocks.Stub(); - gui.ApplicationCore = applicationCore; + Expect.Call(gui.ApplicationCore).Return(applicationCore).Repeat.Any(); Expect.Call(gui.Plugins).Return(new List { guiPlugin Index: Core/Plugins/test/Core.Plugins.SharpMapGis.Tests/SharpMapGisGuiPluginTest.cs =================================================================== diff -u -rd121feba5299c86d7ac04a366ee869b163e43ec7 -rbc238ea43fae81b8a49aa2bdb2c8349815c46039 --- Core/Plugins/test/Core.Plugins.SharpMapGis.Tests/SharpMapGisGuiPluginTest.cs (.../SharpMapGisGuiPluginTest.cs) (revision d121feba5299c86d7ac04a366ee869b163e43ec7) +++ Core/Plugins/test/Core.Plugins.SharpMapGis.Tests/SharpMapGisGuiPluginTest.cs (.../SharpMapGisGuiPluginTest.cs) (revision bc238ea43fae81b8a49aa2bdb2c8349815c46039) @@ -21,11 +21,13 @@ var gui = mocks.Stub(); var viewManager = mocks.Stub(); var project = new Project(); + var applicationCore = new ApplicationCore(); var sharpMapGisPluginGui = new SharpMapGisGuiPlugin { Gui = gui }; + Expect.Call(gui.ApplicationCore).Return(applicationCore).Repeat.Any(); Expect.Call(gui.ToolWindowViews).Return(viewManager).Repeat.Any(); Expect.Call(gui.DocumentViews).Return(viewManager).Repeat.Any(); Expect.Call(gui.Plugins).Return(new[] @@ -42,10 +44,6 @@ mocks.ReplayAll(); - var applicationCore = new ApplicationCore(); - - gui.ApplicationCore = applicationCore; - sharpMapGisPluginGui.Gui = gui; sharpMapGisPluginGui.InitializeMapLegend(); Index: Ringtoets/Demo/test/Ringtoets.Demo.Test/Commands/AddNewDemoDikeAssessmentSectionCommandTest.cs =================================================================== diff -u -red0b4ea830beb801bcc0e3eb5b28993001ed2981 -rbc238ea43fae81b8a49aa2bdb2c8349815c46039 --- Ringtoets/Demo/test/Ringtoets.Demo.Test/Commands/AddNewDemoDikeAssessmentSectionCommandTest.cs (.../AddNewDemoDikeAssessmentSectionCommandTest.cs) (revision ed0b4ea830beb801bcc0e3eb5b28993001ed2981) +++ Ringtoets/Demo/test/Ringtoets.Demo.Test/Commands/AddNewDemoDikeAssessmentSectionCommandTest.cs (.../AddNewDemoDikeAssessmentSectionCommandTest.cs) (revision bc238ea43fae81b8a49aa2bdb2c8349815c46039) @@ -34,19 +34,19 @@ { // Setup var mocks = new MockRepository(); - var guiMock = mocks.Stub(); + var applicationCore = new ApplicationCore(); + Expect.Call(guiMock.ApplicationCore).Return(applicationCore).Repeat.Any(); + var observerMock = mocks.StrictMock(); observerMock.Expect(o => o.UpdateObserver()); mocks.ReplayAll(); var project = new Project(); - var applicationCore = new ApplicationCore(); guiMock.Project = project; - guiMock.ApplicationCore = applicationCore; var command = new AddNewDemoDikeAssessmentSectionCommand { Index: Ringtoets/Demo/test/Ringtoets.Demo.Test/Commands/AddNewDemoDuneAssessmentSectionCommandTest.cs =================================================================== diff -u -rd121feba5299c86d7ac04a366ee869b163e43ec7 -rbc238ea43fae81b8a49aa2bdb2c8349815c46039 --- Ringtoets/Demo/test/Ringtoets.Demo.Test/Commands/AddNewDemoDuneAssessmentSectionCommandTest.cs (.../AddNewDemoDuneAssessmentSectionCommandTest.cs) (revision d121feba5299c86d7ac04a366ee869b163e43ec7) +++ Ringtoets/Demo/test/Ringtoets.Demo.Test/Commands/AddNewDemoDuneAssessmentSectionCommandTest.cs (.../AddNewDemoDuneAssessmentSectionCommandTest.cs) (revision bc238ea43fae81b8a49aa2bdb2c8349815c46039) @@ -30,19 +30,19 @@ { // Setup var mocks = new MockRepository(); - var guiMock = mocks.Stub(); + var applicationCore = new ApplicationCore(); + Expect.Call(guiMock.ApplicationCore).Return(applicationCore).Repeat.Any(); + var observerMock = mocks.StrictMock(); observerMock.Expect(o => o.UpdateObserver()); mocks.ReplayAll(); var project = new Project(); - var applicationCore = new ApplicationCore(); guiMock.Project = project; - guiMock.ApplicationCore = applicationCore; var command = new AddNewDemoDuneAssessmentSectionCommand { Index: Ringtoets/Integration/test/Ringtoets.Integration.Plugin.Test/RingtoetsGuiPluginTest.cs =================================================================== diff -u -ra85e384df91356b2c2716591531a863e01da876b -rbc238ea43fae81b8a49aa2bdb2c8349815c46039 --- Ringtoets/Integration/test/Ringtoets.Integration.Plugin.Test/RingtoetsGuiPluginTest.cs (.../RingtoetsGuiPluginTest.cs) (revision a85e384df91356b2c2716591531a863e01da876b) +++ Ringtoets/Integration/test/Ringtoets.Integration.Plugin.Test/RingtoetsGuiPluginTest.cs (.../RingtoetsGuiPluginTest.cs) (revision bc238ea43fae81b8a49aa2bdb2c8349815c46039) @@ -53,16 +53,15 @@ { // setup var mocks = new MockRepository(); + var applicationCore = new ApplicationCore(); var guiStub = mocks.DynamicMultiMock(typeof(IGui), typeof(IContextMenuProvider)); guiStub.Expect(gs => gs.CommandHandler).Return(mocks.Stub()).Repeat.Twice(); + Expect.Call(guiStub.ApplicationCore).Return(applicationCore).Repeat.Any(); + mocks.ReplayAll(); - var applicationCore = new ApplicationCore(); - - guiStub.ApplicationCore = applicationCore; - using (var guiPlugin = new RingtoetsGuiPlugin { Gui = guiStub Index: Ringtoets/Piping/src/Ringtoets.Piping.Plugin/PipingGuiPlugin.cs =================================================================== diff -u -rfb32e3411873a7b4c567792b9f335eba462e2702 -rbc238ea43fae81b8a49aa2bdb2c8349815c46039 --- Ringtoets/Piping/src/Ringtoets.Piping.Plugin/PipingGuiPlugin.cs (.../PipingGuiPlugin.cs) (revision fb32e3411873a7b4c567792b9f335eba462e2702) +++ Ringtoets/Piping/src/Ringtoets.Piping.Plugin/PipingGuiPlugin.cs (.../PipingGuiPlugin.cs) (revision bc238ea43fae81b8a49aa2bdb2c8349815c46039) @@ -34,12 +34,12 @@ { yield return new PipingCalculationContextNodePresenter { - RunActivityAction = Gui.ApplicationCore.ActivityRunner.Enqueue + RunActivityAction = Gui.ActivityRunner.Enqueue }; yield return new PipingInputContextNodePresenter(); yield return new PipingFailureMechanismNodePresenter { - RunActivityAction = Gui.ApplicationCore.ActivityRunner.Enqueue + RunActivityAction = Gui.ActivityRunner.Enqueue }; yield return new PipingSurfaceLineCollectionNodePresenter { Index: Ringtoets/Piping/test/Ringtoets.Piping.Plugin.Test/PipingGuiPluginTest.cs =================================================================== diff -u -r161a620dbf1cc69c7d860cc123c66419c207236e -rbc238ea43fae81b8a49aa2bdb2c8349815c46039 --- Ringtoets/Piping/test/Ringtoets.Piping.Plugin.Test/PipingGuiPluginTest.cs (.../PipingGuiPluginTest.cs) (revision 161a620dbf1cc69c7d860cc123c66419c207236e) +++ Ringtoets/Piping/test/Ringtoets.Piping.Plugin.Test/PipingGuiPluginTest.cs (.../PipingGuiPluginTest.cs) (revision bc238ea43fae81b8a49aa2bdb2c8349815c46039) @@ -1,6 +1,7 @@ using System; using System.Linq; using Core.Common.Base; +using Core.Common.Base.Workflow; using Core.Common.Controls; using Core.Common.Gui; using NUnit.Framework; @@ -78,16 +79,16 @@ { // setup var mocks = new MockRepository(); + var applicationCore = new ApplicationCore(); + var activityRunner = new ActivityRunner(); var guiStub = mocks.Stub(); guiStub.CommandHandler = mocks.Stub(); + Expect.Call(guiStub.ApplicationCore).Return(applicationCore).Repeat.Any(); + Expect.Call(guiStub.ActivityRunner).Return(activityRunner).Repeat.Any(); mocks.ReplayAll(); - var applicationCore = new ApplicationCore(); - - guiStub.ApplicationCore = applicationCore; - using (var guiPlugin = new PipingGuiPlugin { Gui = guiStub