Browse Source

Fixed SD2-1621 - WinForms designer: events are not created in source code

git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@5552 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
pull/1/head
Daniel Grunwald 16 years ago
parent
commit
80c40eb5c0
  1. 7
      src/AddIns/DisplayBindings/FormsDesigner/Project/Src/DesignerViewContent.cs
  2. 8
      src/Main/Base/Project/Src/Commands/AutostartCommands.cs
  3. 10
      src/Main/Base/Project/Src/Gui/AbstractViewContent.cs
  4. 4
      src/Main/Base/Project/Src/Gui/WorkbenchSingleton.cs

7
src/AddIns/DisplayBindings/FormsDesigner/Project/Src/DesignerViewContent.cs

@ -123,10 +123,7 @@ namespace ICSharpCode.FormsDesigner @@ -123,10 +123,7 @@ namespace ICSharpCode.FormsDesigner
this.sourceCodeStorage = new DesignerSourceCodeStorage();
this.resourceStore = new ResourceStore(this);
// null check is required to support running in unit test mode
if (WorkbenchSingleton.Workbench != null) {
this.IsActiveViewContentChanged += this.IsActiveViewContentChangedHandler;
}
this.IsActiveViewContentChanged += this.IsActiveViewContentChangedHandler;
FileService.FileRemoving += this.FileServiceFileRemoving;
ICSharpCode.SharpDevelop.Debugging.DebuggerService.DebugStarting += this.DebugStarting;
@ -140,7 +137,7 @@ namespace ICSharpCode.FormsDesigner @@ -140,7 +137,7 @@ namespace ICSharpCode.FormsDesigner
if (generator == null)
throw new ArgumentNullException("generator");
this.loaderProvider = loaderProvider;
this.loaderProvider = loaderProvider;
this.generator = generator;
this.generator.Attach(this);

8
src/Main/Base/Project/Src/Commands/AutostartCommands.cs

@ -9,6 +9,7 @@ using System; @@ -9,6 +9,7 @@ using System;
using System.Collections.Generic;
using System.IO;
using System.Windows.Forms;
using System.Windows.Interop;
using ICSharpCode.Core;
using ICSharpCode.Core.WinForms;
@ -30,9 +31,16 @@ namespace ICSharpCode.SharpDevelop.Commands @@ -30,9 +31,16 @@ namespace ICSharpCode.SharpDevelop.Commands
{
app = new App();
System.Windows.Forms.Integration.WindowsFormsHost.EnableWindowsFormsInterop();
ComponentDispatcher.ThreadIdle -= ComponentDispatcher_ThreadIdle; // ensure we don't register twice
ComponentDispatcher.ThreadIdle += ComponentDispatcher_ThreadIdle;
WorkbenchSingleton.InitializeWorkbench(new WpfWorkbench(), new AvalonDockLayout());
}
static void ComponentDispatcher_ThreadIdle(object sender, EventArgs e)
{
System.Windows.Forms.Application.RaiseIdle(e);
}
public void Run(IList<string> fileList)
{
bool didLoadSolutionOrFile = false;

10
src/Main/Base/Project/Src/Gui/AbstractViewContent.cs

@ -477,7 +477,10 @@ namespace ICSharpCode.SharpDevelop.Gui @@ -477,7 +477,10 @@ namespace ICSharpCode.SharpDevelop.Gui
if (!registeredOnViewContentChange) {
// register WorkbenchSingleton.Workbench.ActiveViewContentChanged only on demand
wasActiveViewContent = IsActiveViewContent;
WorkbenchSingleton.Workbench.ActiveViewContentChanged += OnActiveViewContentChanged;
// null check is required to support running in unit test mode
if (WorkbenchSingleton.Workbench != null) {
WorkbenchSingleton.Workbench.ActiveViewContentChanged += OnActiveViewContentChanged;
}
registeredOnViewContentChange = true;
}
isActiveViewContentChanged += value;
@ -490,7 +493,10 @@ namespace ICSharpCode.SharpDevelop.Gui @@ -490,7 +493,10 @@ namespace ICSharpCode.SharpDevelop.Gui
void UnregisterOnActiveViewContentChanged()
{
if (registeredOnViewContentChange) {
WorkbenchSingleton.Workbench.ActiveViewContentChanged -= OnActiveViewContentChanged;
// null check is required to support running in unit test mode
if (WorkbenchSingleton.Workbench != null) {
WorkbenchSingleton.Workbench.ActiveViewContentChanged -= OnActiveViewContentChanged;
}
registeredOnViewContentChange = false;
}
}

4
src/Main/Base/Project/Src/Gui/WorkbenchSingleton.cs

@ -100,6 +100,10 @@ namespace ICSharpCode.SharpDevelop.Gui @@ -100,6 +100,10 @@ namespace ICSharpCode.SharpDevelop.Gui
Debug.WriteLine("ActiveWorkbenchWindowChanged to " + workbench.ActiveWorkbenchWindow);
LoggingService.Debug("ActiveWorkbenchWindowChanged to " + workbench.ActiveWorkbenchWindow);
};
System.Windows.Forms.Application.Idle += delegate {
LoggingService.Debug("Idle");
};
}
/// <summary>

Loading…
Cancel
Save