Author: mkrueger
Date: 2008-02-06 08:39:08 -0500 (Wed, 06 Feb 2008)
New Revision: 95022
Modified:
trunk/monodevelop/main/src/core/MonoDevelop.Ide/ChangeLog
trunk/monodevelop/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui/DisplayBindingService.cs
Log:
* MonoDevelop.Ide.Gui/DisplayBindingService.cs: Fixed bug in display
binding service.
Modified: trunk/monodevelop/main/src/core/MonoDevelop.Ide/ChangeLog
===================================================================
--- trunk/monodevelop/main/src/core/MonoDevelop.Ide/ChangeLog 2008-02-06
13:24:30 UTC (rev 95021)
+++ trunk/monodevelop/main/src/core/MonoDevelop.Ide/ChangeLog 2008-02-06
13:39:08 UTC (rev 95022)
@@ -1,3 +1,8 @@
+2008-02-06 Mike Krüger <[EMAIL PROTECTED]>
+
+ * MonoDevelop.Ide.Gui/DisplayBindingService.cs: Fixed bug in display
binding
+ service.
+
2008-02-05 Michael Hutchinson <[EMAIL PROTECTED]>
* MonoDevelop.Ide.Gui/ProjectOperations.cs: End build and run operations
Modified:
trunk/monodevelop/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui/DisplayBindingService.cs
===================================================================
---
trunk/monodevelop/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui/DisplayBindingService.cs
2008-02-06 13:24:30 UTC (rev 95021)
+++
trunk/monodevelop/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui/DisplayBindingService.cs
2008-02-06 13:39:08 UTC (rev 95022)
@@ -42,17 +42,10 @@
public class DisplayBindingService
{
readonly static string displayBindingPath =
"/MonoDevelop/Ide/DisplayBindings";
- List<DisplayBindingCodon> bindings = null;
-
- public DisplayBindingService ()
- {
- bindings = new List<DisplayBindingCodon> ();
- AddinManager.AddExtensionNodeHandler
(displayBindingPath, OnExtensionChanged);
- }
public IDisplayBinding LastBinding {
get {
- return bindings[0].DisplayBinding;
+ return
((DisplayBindingCodon)AddinManager.GetExtensionNodes
(displayBindingPath)[0]).DisplayBinding;
}
}
@@ -64,7 +57,7 @@
public IDisplayBinding GetBindingForMimeType (string mimeType)
{
- foreach (DisplayBindingCodon binding in bindings) {
+ foreach (DisplayBindingCodon binding in
AddinManager.GetExtensionNodes (displayBindingPath)) {
if (binding.DisplayBinding != null &&
binding.DisplayBinding.CanCreateContentForMimeType (mimeType)) {
return binding.DisplayBinding;
}
@@ -74,13 +67,12 @@
public IDisplayBinding[] GetBindingsForMimeType (string
mimeType)
{
- ArrayList list = new ArrayList ();
- foreach (DisplayBindingCodon binding in bindings) {
- if (binding.DisplayBinding != null &&
binding.DisplayBinding.CanCreateContentForMimeType (mimeType)) {
- list.Add (binding.DisplayBinding);
- }
+ List<IDisplayBinding> result = new
List<IDisplayBinding> ();
+ foreach (DisplayBindingCodon binding in
AddinManager.GetExtensionNodes (displayBindingPath)) {
+ if (binding.DisplayBinding != null &&
binding.DisplayBinding.CanCreateContentForMimeType (mimeType))
+ result.Add (binding.DisplayBinding);
}
- return (IDisplayBinding[]) list.ToArray
(typeof(IDisplayBinding));
+ return result.ToArray ();
}
internal DisplayBindingCodon GetCodonPerFileName(string
filename)
@@ -90,14 +82,13 @@
vfsname = vfsname.Replace ("#", "%23");
vfsname = vfsname.Replace ("?", "%3F");
string mimetype =
IdeApp.Services.PlatformService.GetMimeTypeForUri (vfsname);
-
- foreach (DisplayBindingCodon binding in bindings) {
+ foreach (DisplayBindingCodon binding in
AddinManager.GetExtensionNodes (displayBindingPath)) {
if (binding.DisplayBinding != null &&
binding.DisplayBinding.CanCreateContentForFile(filename)) {
return binding;
}
}
if (!filename.StartsWith ("http")) {
- foreach (DisplayBindingCodon binding in
bindings) {
+ foreach (DisplayBindingCodon binding in
AddinManager.GetExtensionNodes (displayBindingPath)) {
if (binding.DisplayBinding != null &&
binding.DisplayBinding.CanCreateContentForMimeType (mimetype)) {
return binding;
}
@@ -108,19 +99,11 @@
internal void AttachSubWindows(IWorkbenchWindow workbenchWindow)
{
- foreach (DisplayBindingCodon binding in bindings) {
+ foreach (DisplayBindingCodon binding in
AddinManager.GetExtensionNodes (displayBindingPath)) {
if (binding.SecondaryDisplayBinding != null &&
binding.SecondaryDisplayBinding.CanAttachTo(workbenchWindow.ViewContent)) {
workbenchWindow.AttachSecondaryViewContent(binding.SecondaryDisplayBinding.CreateSecondaryViewContent(workbenchWindow.ViewContent));
}
}
}
-
- void OnExtensionChanged (object s, ExtensionNodeEventArgs args)
- {
- if (args.Change == ExtensionChange.Add)
- bindings.Add
((DisplayBindingCodon)args.ExtensionNode);
- else
- bindings.Remove
((DisplayBindingCodon)args.ExtensionNode);
- }
}
}
_______________________________________________
Mono-patches maillist - [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches