Author: lluis
Date: 2007-05-04 09:40:08 -0400 (Fri, 04 May 2007)
New Revision: 76681
Modified:
trunk/monodevelop/Core/src/MonoDevelop.Projects/ChangeLog
trunk/monodevelop/Core/src/MonoDevelop.Projects/Makefile.am
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.Ambience/AmbienceService.cs
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.Extensions/DataTypeCodon.cs
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.Extensions/FileFilterCodon.cs
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.Extensions/FileFormatCodon.cs
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.Extensions/ItemPropertyCodon.cs
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.Extensions/LanguageBindingCodon.cs
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.Extensions/ProjectBindingCodon.cs
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.Parser/CodeCompletionDatabase.cs
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.Parser/DatabaseGeneratorTool.cs
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.Parser/DefaultParserService.cs
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.addin.xml
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.mdp
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects/BuildTool.cs
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects/LanguageBindingService.cs
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects/Project.cs
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects/ProjectConvertTool.cs
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects/ProjectService.cs
Log:
* MonoDevelop.Projects/ProjectService.cs,
MonoDevelop.Projects/LanguageBindingService.cs,
MonoDevelop.Projects/ProjectConvertTool.cs,
MonoDevelop.Projects/BuildTool.cs, MonoDevelop.Projects/Project.cs,
MonoDevelop.Projects.Ambience/AmbienceService.cs,
MonoDevelop.Projects.addin.xml, MonoDevelop.Projects.mdp,
Makefile.am, MonoDevelop.Projects.Parser/DatabaseGeneratorTool.cs,
MonoDevelop.Projects.Parser/DefaultParserService.cs,
MonoDevelop.Projects.Parser/CodeCompletionDatabase.cs,
MonoDevelop.Projects.Extensions/FileFormatCodon.cs,
MonoDevelop.Projects.Extensions/DataTypeCodon.cs,
MonoDevelop.Projects.Extensions/LanguageBindingCodon.cs,
MonoDevelop.Projects.Extensions/ProjectBindingCodon.cs,
MonoDevelop.Projects.Extensions/ItemPropertyCodon.cs,
MonoDevelop.Projects.Extensions/FileFilterCodon.cs: Migration to
Mono.Addins.
Modified: trunk/monodevelop/Core/src/MonoDevelop.Projects/ChangeLog
===================================================================
--- trunk/monodevelop/Core/src/MonoDevelop.Projects/ChangeLog 2007-05-04
13:39:44 UTC (rev 76680)
+++ trunk/monodevelop/Core/src/MonoDevelop.Projects/ChangeLog 2007-05-04
13:40:08 UTC (rev 76681)
@@ -1,3 +1,22 @@
+2007-05-04 Lluis Sanchez Gual <[EMAIL PROTECTED]>
+
+ * MonoDevelop.Projects/ProjectService.cs,
+ MonoDevelop.Projects/LanguageBindingService.cs,
+ MonoDevelop.Projects/ProjectConvertTool.cs,
+ MonoDevelop.Projects/BuildTool.cs, MonoDevelop.Projects/Project.cs,
+ MonoDevelop.Projects.Ambience/AmbienceService.cs,
+ MonoDevelop.Projects.addin.xml, MonoDevelop.Projects.mdp,
+ Makefile.am, MonoDevelop.Projects.Parser/DatabaseGeneratorTool.cs,
+ MonoDevelop.Projects.Parser/DefaultParserService.cs,
+ MonoDevelop.Projects.Parser/CodeCompletionDatabase.cs,
+ MonoDevelop.Projects.Extensions/FileFormatCodon.cs,
+ MonoDevelop.Projects.Extensions/DataTypeCodon.cs,
+ MonoDevelop.Projects.Extensions/LanguageBindingCodon.cs,
+ MonoDevelop.Projects.Extensions/ProjectBindingCodon.cs,
+ MonoDevelop.Projects.Extensions/ItemPropertyCodon.cs,
+ MonoDevelop.Projects.Extensions/FileFilterCodon.cs: Migration to
+ Mono.Addins.
+
2007-05-03 Jeffrey Stedfast <[EMAIL PROTECTED]>
* MonoDevelop.Projects.CodeGeneration/BaseRefactorer.cs
Modified: trunk/monodevelop/Core/src/MonoDevelop.Projects/Makefile.am
===================================================================
--- trunk/monodevelop/Core/src/MonoDevelop.Projects/Makefile.am 2007-05-04
13:39:44 UTC (rev 76680)
+++ trunk/monodevelop/Core/src/MonoDevelop.Projects/Makefile.am 2007-05-04
13:40:08 UTC (rev 76681)
@@ -7,6 +7,7 @@
$(MONODOC_LIBS) \
-r:$(top_builddir)/build/bin/Mono.Cecil.dll \
-r:$(top_builddir)/build/bin/MonoDevelop.Core.dll \
+ -r:$(top_builddir)/contrib/Mono.Addins.dll \
-r:Mono.Posix \
-r:System \
-r:System.Drawing \
@@ -27,7 +28,6 @@
MonoDevelop.Projects.Documentation/IDocumentationService.cs \
MonoDevelop.Projects.Extensions/DataTypeCodon.cs \
MonoDevelop.Projects.Extensions/FileFilterCodon.cs \
- MonoDevelop.Projects.Extensions/FileFormatCodon.cs \
MonoDevelop.Projects.Extensions/ItemPropertyCodon.cs \
MonoDevelop.Projects.Extensions/LanguageBindingCodon.cs \
MonoDevelop.Projects.Extensions/ProjectBindingCodon.cs \
Modified:
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects/BuildTool.cs
===================================================================
---
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects/BuildTool.cs
2007-05-04 13:39:44 UTC (rev 76680)
+++
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects/BuildTool.cs
2007-05-04 13:40:08 UTC (rev 76681)
@@ -30,8 +30,9 @@
using System;
using System.IO;
using MonoDevelop.Projects;
-using MonoDevelop.Core.AddIns;
+using Mono.Addins;
using MonoDevelop.Core.ProgressMonitoring;
+using MonoDevelop.Core;
namespace MonoDevelop.Projects
{
Modified:
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects/LanguageBindingService.cs
===================================================================
---
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects/LanguageBindingService.cs
2007-05-04 13:39:44 UTC (rev 76680)
+++
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects/LanguageBindingService.cs
2007-05-04 13:40:08 UTC (rev 76681)
@@ -19,7 +19,7 @@
using MonoDevelop.Projects.Parser;
using MonoDevelop.Core;
-using MonoDevelop.Core.AddIns;
+using Mono.Addins;
namespace MonoDevelop.Projects
{
@@ -119,13 +119,13 @@
{
base.InitializeService ();
bindings = new List<LanguageBindingCodon> ();
- Runtime.AddInService.RegisterExtensionItemListener
("/SharpDevelop/Workbench/LanguageBindings", OnExtensionChanged);
+ AddinManager.AddExtensionNodeHandler
("/SharpDevelop/Workbench/LanguageBindings", OnExtensionChanged);
}
- void OnExtensionChanged (ExtensionAction action, object item)
+ void OnExtensionChanged (object s, ExtensionNodeEventArgs args)
{
- if (action == ExtensionAction.Add) {
- bindings.Add ((LanguageBindingCodon) item);
+ if (args.Change == ExtensionChange.Add) {
+ bindings.Add ((LanguageBindingCodon)
args.ExtensionNode);
// Make sure the langs list is re-created
langs = null;
Modified:
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects/Project.cs
===================================================================
---
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects/Project.cs
2007-05-04 13:39:44 UTC (rev 76680)
+++
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects/Project.cs
2007-05-04 13:40:08 UTC (rev 76681)
@@ -19,7 +19,7 @@
using MonoDevelop.Core;
using MonoDevelop.Core.Execution;
using MonoDevelop.Core.Properties;
-using MonoDevelop.Core.AddIns;
+using Mono.Addins;
using MonoDevelop.Projects.Ambience;
using MonoDevelop.Projects.Serialization;
Modified:
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects/ProjectConvertTool.cs
===================================================================
---
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects/ProjectConvertTool.cs
2007-05-04 13:39:44 UTC (rev 76680)
+++
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects/ProjectConvertTool.cs
2007-05-04 13:40:08 UTC (rev 76681)
@@ -2,7 +2,6 @@
using System;
using System.IO;
using MonoDevelop.Core;
-using MonoDevelop.Core.AddIns;
using MonoDevelop.Core.ProgressMonitoring;
namespace MonoDevelop.Projects
Modified:
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects/ProjectService.cs
===================================================================
---
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects/ProjectService.cs
2007-05-04 13:39:44 UTC (rev 76680)
+++
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects/ProjectService.cs
2007-05-04 13:40:08 UTC (rev 76681)
@@ -20,9 +20,9 @@
using MonoDevelop.Core.Properties;
using MonoDevelop.Core;
+using Mono.Addins;
using MonoDevelop.Core.ProgressMonitoring;
using MonoDevelop.Core.Execution;
-using MonoDevelop.Core.AddIns;
using MonoDevelop.Projects.Extensions;
namespace MonoDevelop.Projects
@@ -298,58 +298,55 @@
{
base.InitializeService();
- Runtime.AddInService.RegisterExtensionItemListener
("/SharpDevelop/Workbench/ProjectFileFormats", OnFormatExtensionChanged);
- Runtime.AddInService.RegisterExtensionItemListener
("/SharpDevelop/Workbench/SerializableClasses", OnSerializableExtensionChanged);
- Runtime.AddInService.RegisterExtensionItemListener
("/SharpDevelop/Workbench/Serialization/ExtendedProperties",
OnPropertiesExtensionChanged);
- Runtime.AddInService.RegisterExtensionItemListener
("/SharpDevelop/Workbench/ProjectBindings", OnProjectsExtensionChanged);
+ AddinManager.AddExtensionNodeHandler
("/SharpDevelop/Workbench/ProjectFileFormats", OnFormatExtensionChanged);
+ AddinManager.AddExtensionNodeHandler
("/SharpDevelop/Workbench/SerializableClasses", OnSerializableExtensionChanged);
+ AddinManager.AddExtensionNodeHandler
("/SharpDevelop/Workbench/Serialization/ExtendedProperties",
OnPropertiesExtensionChanged);
+ AddinManager.AddExtensionNodeHandler
("/SharpDevelop/Workbench/ProjectBindings", OnProjectsExtensionChanged);
UpdateExtensions ();
- Runtime.AddInService.ExtensionChanged +=
OnExtensionChanged;
+ AddinManager.ExtensionChanged += OnExtensionChanged;
}
- void OnFormatExtensionChanged (ExtensionAction action, object
item)
+ void OnFormatExtensionChanged (object s, ExtensionNodeEventArgs
args)
{
- if (action == ExtensionAction.Add) {
- FileFormatCodon codon = (FileFormatCodon) item;
- if (codon.FileFormat != null)
- formatManager.RegisterFileFormat
(codon.FileFormat);
- }
+ if (args.Change == ExtensionChange.Add)
+ formatManager.RegisterFileFormat ((IFileFormat)
args.ExtensionObject);
}
- void OnSerializableExtensionChanged (ExtensionAction action,
object item)
+ void OnSerializableExtensionChanged (object s,
ExtensionNodeEventArgs args)
{
- if (action == ExtensionAction.Add) {
- Type t = ((DataTypeCodon)item).Type;
+ if (args.Change == ExtensionChange.Add) {
+ Type t =
((DataTypeCodon)args.ExtensionNode).Class;
if (t == null) {
- throw new UserException ("Type '" +
((DataTypeCodon)item).Class + "' not found. It could not be registered as a
serializable type.");
+ throw new UserException ("Type '" +
((DataTypeCodon)args.ExtensionNode).Class + "' not found. It could not be
registered as a serializable type.");
}
DataContext.IncludeType (t);
}
}
- void OnPropertiesExtensionChanged (ExtensionAction action,
object item)
+ void OnPropertiesExtensionChanged (object s,
ExtensionNodeEventArgs args)
{
- if (action == ExtensionAction.Add) {
- ItemPropertyCodon cls = (ItemPropertyCodon)
item;
- if (cls.ClassType != null && cls.PropertyType
!= null)
- DataContext.RegisterProperty
(cls.ClassType, cls.PropertyName, cls.PropertyType);
+ if (args.Change == ExtensionChange.Add) {
+ ItemPropertyCodon cls = (ItemPropertyCodon)
args.ExtensionNode;
+ if (cls.Class != null && cls.PropertyType !=
null)
+ DataContext.RegisterProperty
(cls.Class, cls.PropertyName, cls.PropertyType);
}
}
- void OnProjectsExtensionChanged (ExtensionAction action, object
item)
+ void OnProjectsExtensionChanged (object s,
ExtensionNodeEventArgs args)
{
- if (action == ExtensionAction.Add)
- projectBindings.Add (item);
+ if (args.Change == ExtensionChange.Add)
+ projectBindings.Add (args.ExtensionNode);
}
- void OnExtensionChanged (string path)
+ void OnExtensionChanged (object s, ExtensionEventArgs args)
{
- if (path ==
"/SharpDevelop/Workbench/ProjectServiceExtensions")
+ if (args.PathChanged
("/SharpDevelop/Workbench/ProjectServiceExtensions"))
UpdateExtensions ();
}
void UpdateExtensions ()
{
- ProjectServiceExtension[] extensions =
(ProjectServiceExtension[]) Runtime.AddInService.GetTreeItems
("/SharpDevelop/Workbench/ProjectServiceExtensions",
typeof(ProjectServiceExtension));
+ ProjectServiceExtension[] extensions =
(ProjectServiceExtension[]) AddinManager.GetExtensionObjects
("/SharpDevelop/Workbench/ProjectServiceExtensions",
typeof(ProjectServiceExtension));
for (int n=0; n<extensions.Length - 1; n++)
extensions [n].Next = extensions [n + 1];
Modified:
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.Ambience/AmbienceService.cs
===================================================================
---
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.Ambience/AmbienceService.cs
2007-05-04 13:39:44 UTC (rev 76680)
+++
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.Ambience/AmbienceService.cs
2007-05-04 13:40:08 UTC (rev 76681)
@@ -9,7 +9,7 @@
using System.Collections;
using MonoDevelop.Core;
-using MonoDevelop.Core.AddIns;
+using Mono.Addins;
using MonoDevelop.Core.Properties;
namespace MonoDevelop.Projects.Ambience
@@ -53,25 +53,24 @@
public string[] AvailableAmbiences {
get {
- IAddInTreeNode ambiencesNode =
Runtime.AddInService.GetTreeNode("/SharpDevelop/Workbench/Ambiences");
- string[] availableAmbiences = new
string[ambiencesNode.ChildNodes.Count];
+ ExtensionNodeList ambiencesNodes =
AddinManager.GetExtensionNodes ("/SharpDevelop/Workbench/Ambiences");
+ string[] availableAmbiences = new string
[ambiencesNodes.Count];
int index = 0;
- foreach(string ambienceName in
ambiencesNode.ChildNodes.Keys)
- availableAmbiences[index++] =
ambienceName;
+ foreach (ExtensionNode node in ambiencesNodes)
+ availableAmbiences [index++] = node.Id;
return availableAmbiences;
}
}
- public Ambience AmbienceFromName(string name)
+ public Ambience AmbienceFromName (string name)
{
Ambience amb = (Ambience) ambiences [name];
- if (amb == null) {
- IAddInTreeNode node =
Runtime.AddInService.GetTreeNode("/SharpDevelop/Workbench/Ambiences");
-
- if(node.ChildNodes.Contains(name)) {
- amb =
(Ambience)node.BuildChildItem(name, this);
+ if (amb == null) {
+ TypeExtensionNode node = (TypeExtensionNode)
AddinManager.GetExtensionNode ("/SharpDevelop/Workbench/Ambiences/" + name);
+ if (node != null) {
+ amb = (Ambience) node.CreateInstance ();
} else {
amb = GenericAmbience;
}
Modified:
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.Extensions/DataTypeCodon.cs
===================================================================
---
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.Extensions/DataTypeCodon.cs
2007-05-04 13:39:44 UTC (rev 76680)
+++
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.Extensions/DataTypeCodon.cs
2007-05-04 13:40:08 UTC (rev 76681)
@@ -31,21 +31,18 @@
using System;
using System.Collections;
using System.ComponentModel;
-using MonoDevelop.Core.AddIns;
+using Mono.Addins;
-namespace MonoDevelop.Projects
+namespace MonoDevelop.Projects.Extensions
{
- [CodonNameAttribute("DataType")]
[Description ("A type name.")]
- public class DataTypeCodon: ClassCodon
+ public class DataTypeCodon: ExtensionNode
{
- public DataTypeCodon()
- {
- }
+ [NodeAttribute ("class", true)]
+ string typeName;
- public override object BuildItem (object owner, ArrayList
subItems, ConditionCollection conditions)
- {
- return this;
+ public Type Class {
+ get { return Addin.GetType (typeName, true); }
}
}
}
Modified:
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.Extensions/FileFilterCodon.cs
===================================================================
---
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.Extensions/FileFilterCodon.cs
2007-05-04 13:39:44 UTC (rev 76680)
+++
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.Extensions/FileFilterCodon.cs
2007-05-04 13:40:08 UTC (rev 76681)
@@ -10,21 +10,20 @@
using System.ComponentModel;
using MonoDevelop.Core.Properties;
-using MonoDevelop.Core.AddIns;
+using Mono.Addins;
using MonoDevelop.Core;
namespace MonoDevelop.Projects.Extensions
{
- [CodonNameAttribute("FileFilter")]
[Description ("A file filter to be used in the Open File dialog.")]
- internal class FileFilterCodon : AbstractCodon
+ internal class FileFilterCodon : TypeExtensionNode
{
[Description ("Display name of the filter.")]
- [XmlMemberAttribute ("_label", IsRequired=true)]
- string filtername = null;
+ [NodeAttribute ("_label", true)]
+ string filtername = null;
[Description ("Extensions to use as filter.")]
- [XmlMemberArrayAttribute("extensions", IsRequired=true)]
+ [NodeAttribute("extensions", true)]
string[] extensions = null;
public string FilterName {
@@ -45,16 +44,9 @@
}
}
- /// <summary>
- /// Creates an item with the specified sub items. And the
current
- /// Condition status for this item.
- /// </summary>
- public override object BuildItem(object owner, ArrayList
subItems, ConditionCollection conditions)
+ public override object CreateInstance ()
{
- if (subItems.Count > 0) {
- throw new ApplicationException("more than one
level of file filters don't make sense!");
- }
- return Runtime.StringParserService.Parse(filtername) +
"|" + String.Join(";", extensions);
+ return Runtime.StringParserService.Parse (filtername) +
"|" + String.Join(";", extensions);
}
}
}
Modified:
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.Extensions/FileFormatCodon.cs
===================================================================
---
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.Extensions/FileFormatCodon.cs
2007-05-04 13:39:44 UTC (rev 76680)
+++
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.Extensions/FileFormatCodon.cs
2007-05-04 13:40:08 UTC (rev 76681)
@@ -33,7 +33,7 @@
using System.Collections;
using System.ComponentModel;
-using MonoDevelop.Core.AddIns;
+using Mono.Addins;
using MonoDevelop.Projects;
namespace MonoDevelop.Projects.Extensions
Modified:
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.Extensions/ItemPropertyCodon.cs
===================================================================
---
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.Extensions/ItemPropertyCodon.cs
2007-05-04 13:39:44 UTC (rev 76680)
+++
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.Extensions/ItemPropertyCodon.cs
2007-05-04 13:40:08 UTC (rev 76681)
@@ -29,42 +29,33 @@
using System;
using System.Collections;
using System.ComponentModel;
-using MonoDevelop.Core.AddIns;
+using Mono.Addins;
-namespace MonoDevelop.Projects
+namespace MonoDevelop.Projects.Extensions
{
- [Description ("A custom property. The type specified in the 'class'
property is the type to which the property has to be added. Only types which
implement IExtendedDataItem can be extended in this way.")]
- [CodonNameAttribute("ItemProperty")]
- public class ItemPropertyCodon: ClassCodon
+ public class ItemPropertyCodon: DataTypeCodon
{
[Description ("Name of the property.")]
- [XmlMemberAttribute("name", IsRequired=true)]
+ [NodeAttribute("name", true)]
string propName;
[Description ("Full name of the property type.")]
- [XmlMemberAttribute("type", IsRequired=true)]
+ [NodeAttribute("type", true)]
string propType;
- Type cls, type;
+ Type type;
public Type PropertyType {
- get { return type; }
+ get {
+ if (type == null)
+ type = Addin.GetType (propType);
+ return type;
+ }
}
public string PropertyName {
get { return propName; }
}
-
- public Type ClassType {
- get { return cls; }
- }
-
- public override object BuildItem(object owner, ArrayList
subItems, ConditionCollection conditions)
- {
- cls = AddIn.GetType (Class);
- type = AddIn.GetType (propType);
- return this;
- }
}
}
Modified:
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.Extensions/LanguageBindingCodon.cs
===================================================================
---
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.Extensions/LanguageBindingCodon.cs
2007-05-04 13:39:44 UTC (rev 76680)
+++
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.Extensions/LanguageBindingCodon.cs
2007-05-04 13:40:08 UTC (rev 76681)
@@ -10,21 +10,18 @@
using System.Diagnostics;
using System.ComponentModel;
-using MonoDevelop.Core.AddIns;
+using Mono.Addins;
using MonoDevelop.Projects;
namespace MonoDevelop.Projects.Extensions
{
[Description ("A language binding. The specified class must implement
MonoDevelop.Projects.ILanguageBinding")]
- [CodonNameAttribute("LanguageBinding")]
- internal class LanguageBindingCodon : ClassCodon
+ internal class LanguageBindingCodon : TypeExtensionNode
{
[Description ("File extensions supported by this binding (to be
shown in the Open File dialog)")]
- [XmlMemberArrayAttribute("supportedextensions")]
+ [NodeAttribute("supportedextensions")]
string[] supportedExtensions;
- ILanguageBinding languageBinding;
-
public string[] Supportedextensions {
get {
return supportedExtensions;
@@ -36,24 +33,8 @@
public ILanguageBinding LanguageBinding {
get {
- return languageBinding;
+ return (ILanguageBinding) GetInstance ();
}
}
-
- /// <summary>
- /// Creates an item with the specified sub items. And the
current
- /// Condition status for this item.
- /// </summary>
- public override object BuildItem(object owner, ArrayList
subItems, ConditionCollection conditions)
- {
-// if (subItems == null || subItems.Count > 0) {
-// throw new ApplicationException("Tried to buil a
command with sub commands, please check the XML definition.");
-// }
- Debug.Assert(Class != null && Class.Length > 0);
-
- languageBinding =
(ILanguageBinding)AddIn.CreateObject(Class);
-
- return this;
- }
}
}
Modified:
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.Extensions/ProjectBindingCodon.cs
===================================================================
---
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.Extensions/ProjectBindingCodon.cs
2007-05-04 13:39:44 UTC (rev 76680)
+++
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.Extensions/ProjectBindingCodon.cs
2007-05-04 13:40:08 UTC (rev 76681)
@@ -33,25 +33,16 @@
using System.Collections;
using System.ComponentModel;
-using MonoDevelop.Core.AddIns;
+using Mono.Addins;
using MonoDevelop.Projects;
namespace MonoDevelop.Projects.Extensions
{
[Description ("A project binding. The specified class must implement
MonoDevelop.Projects.IProjectBinding.")]
- [CodonNameAttribute ("ProjectBinding")]
- internal class ProjectBindingCodon : ClassCodon
+ internal class ProjectBindingCodon : TypeExtensionNode
{
- IProjectBinding projectBinding;
-
public IProjectBinding ProjectBinding {
- get { return projectBinding; }
+ get { return (IProjectBinding) base.GetInstance (); }
}
-
- public override object BuildItem (object owner, ArrayList
subItems, ConditionCollection conditions)
- {
- projectBinding = (IProjectBinding) AddIn.CreateObject
(Class);
- return this;
- }
}
}
Modified:
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.Parser/CodeCompletionDatabase.cs
===================================================================
---
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.Parser/CodeCompletionDatabase.cs
2007-05-04 13:39:44 UTC (rev 76680)
+++
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.Parser/CodeCompletionDatabase.cs
2007-05-04 13:40:08 UTC (rev 76681)
@@ -40,7 +40,7 @@
using MonoDevelop.Core.Properties;
using MonoDevelop.Core;
-using MonoDevelop.Core.AddIns;
+using Mono.Addins;
using MonoDevelop.Projects;
using MonoDevelop.Projects.Parser;
using System.Reflection;
Modified:
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.Parser/DatabaseGeneratorTool.cs
===================================================================
---
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.Parser/DatabaseGeneratorTool.cs
2007-05-04 13:39:44 UTC (rev 76680)
+++
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.Parser/DatabaseGeneratorTool.cs
2007-05-04 13:40:08 UTC (rev 76681)
@@ -27,7 +27,8 @@
//
using System;
-using MonoDevelop.Core.AddIns;
+using Mono.Addins;
+using MonoDevelop.Core;
namespace MonoDevelop.Projects.Parser
{
Modified:
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.Parser/DefaultParserService.cs
===================================================================
---
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.Parser/DefaultParserService.cs
2007-05-04 13:39:44 UTC (rev 76680)
+++
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.Parser/DefaultParserService.cs
2007-05-04 13:40:08 UTC (rev 76681)
@@ -23,7 +23,7 @@
using MonoDevelop.Core;
using MonoDevelop.Core.Properties;
using MonoDevelop.Core.ProgressMonitoring;
-using MonoDevelop.Core.AddIns;
+using Mono.Addins;
using MonoDevelop.Projects;
using MonoDevelop.Projects.Utility;
using MonoDevelop.Projects.Text;
Modified:
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.addin.xml
===================================================================
---
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.addin.xml
2007-05-04 13:39:44 UTC (rev 76680)
+++
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.addin.xml
2007-05-04 13:40:08 UTC (rev 76681)
@@ -1,4 +1,5 @@
-<AddIn id = "MonoDevelop.Projects"
+<Addin id = "Projects"
+ namespace = "MonoDevelop"
name = "MonoDevelop Project Services"
author = "Todd Berman, John Luke, John Bou Antoun, Lluis Sanchez
Gual, Christian Hergert, Mike Krueger"
copyright = "GPL"
@@ -13,9 +14,73 @@
</Runtime>
<Dependencies>
- <AddIn id="MonoDevelop.Core" version="0.13.0"/>
+ <Addin id="Core" version="0.13.0"/>
</Dependencies>
+
+ <!-- Extension points -->
+
+ <ExtensionPoint path = "/SharpDevelop/Workbench/Ambiences" name =
"Language ambiences">
+ <Description>Language ambiences. Specified classes must
implement IAmbience.</Description>
+ <ExtensionNode name="Class" />
+ </ExtensionPoint>
+
+ <ExtensionPoint path = "/SharpDevelop/Workbench/ProjectBindings" name =
"Project bindings">
+ <Description>Project bindings</Description>
+ <ExtensionNode name="ProjectBinding"
type="MonoDevelop.Projects.Extensions.ProjectBindingCodon">
+ <Description>A project binding. The specified class
must implement MonoDevelop.Projects.IProjectBinding.</Description>
+ </ExtensionNode>
+ </ExtensionPoint>
+
+ <ExtensionPoint path = "/SharpDevelop/Workbench/ProjectFileFormats"
name = "File format handlers">
+ <Description>File format handlers for projects and
solutions</Description>
+ <ExtensionNode name="FileFormat">
+ <Description>A file format handler. The specified class
must implement MonoDevelop.Projects.IFileFormat.</Description>
+ </ExtensionNode>
+ </ExtensionPoint>
+
+ <ExtensionPoint path = "/SharpDevelop/Workbench/SerializableClasses"
name = "Serializable classes">
+ <Description>Classes to be registered for
serialization.</Description>
+ <ExtensionNode name="DataType"
type="MonoDevelop.Projects.Extensions.DataTypeCodon">
+ <Description>A type name.</Description>
+ </ExtensionNode>
+ </ExtensionPoint>
+
+ <ExtensionPoint path =
"/SharpDevelop/Workbench/Serialization/ExtendedProperties" name = "Serializable
classes">
+ <Description>Custom properties for projects and other
types.</Description>
+ <ExtensionNode name="ItemProperty"
type="MonoDevelop.Projects.Extensions.ItemPropertyCodon">
+ <Description>A custom property. The type specified in
the 'class' property is the type to which the property has to be added. Only
types which implement IExtendedDataItem can be extended in this
way.</Description>
+ </ExtensionNode>
+ </ExtensionPoint>
+
+ <ExtensionPoint path = "/SharpDevelop/Workbench/DeployHandlers" name =
"Deployment handlers">
+ <Description>Deployment handlers. Specified classes must
implement IDeployHandler.</Description>
+ <ExtensionNode name="Class">
+ <Description>A class which implements
IDeployHandler.</Description>
+ </ExtensionNode>
+ </ExtensionPoint>
+
+ <ExtensionPoint path = "/SharpDevelop/Workbench/DeployFileCopiers" name
= "File copiers">
+ <Description>File copiers for deployment handlers. Specified
classes must implement IDeployFileCopier.</Description>
+ <ExtensionNode name="Class">
+ <Description>A class which implements
IDeployFileCopier.</Description>
+ </ExtensionNode>
+ </ExtensionPoint>
+
+ <ExtensionPoint path =
"/SharpDevelop/Workbench/ProjectServiceExtensions" name = "Project service
extensions">
+ <Description>Project service extensions. Specified classes must
be a subclass of ProjectServiceExtension</Description>
+ <ExtensionNode name="Class">
+ <Description>A subclass of
ProjectServiceExtension.</Description>
+ </ExtensionNode>
+ </ExtensionPoint>
+
+ <ExtensionPoint path = "/SharpDevelop/Workbench/LanguageBindings" name
= "Language bindings">
+ <Description>Language bindings.</Description>
+ <ExtensionNode name="LanguageBinding"
type="MonoDevelop.Projects.Extensions.LanguageBindingCodon"/>
+ </ExtensionPoint>
+
+ <!-- Extensions -->
+
<Extension path = "/Workspace/Services">
<Class id = "ProjectService"
class = "MonoDevelop.Projects.ProjectService"/>
@@ -29,30 +94,30 @@
class = "MonoDevelop.Projects.Ambience.AmbienceService"/>
</Extension>
- <Extension path = "/Workspace/Applications">
- <Class id = "build" class = "MonoDevelop.Projects.BuildTool"
description = "Project build tool"/>
- <Class id = "dbgen" class =
"MonoDevelop.Projects.Parser.DatabaseGeneratorTool" description = "Parser
database generation tool"/>
- <Class id = "project-export" class =
"MonoDevelop.Projects.ProjectConvertTool" description = "Project conversion
tool"/>
+ <Extension path = "/System/Applications">
+ <Application id = "build" class =
"MonoDevelop.Projects.BuildTool" description = "Project build tool"/>
+ <Application id = "dbgen" class =
"MonoDevelop.Projects.Parser.DatabaseGeneratorTool" description = "Parser
database generation tool"/>
+ <Application id = "project-export" class =
"MonoDevelop.Projects.ProjectConvertTool" description = "Project conversion
tool"/>
</Extension>
- <Extension path = "/SharpDevelop/Workbench/Ambiences"
extension-nodes="Class" description="Language ambiences.|Specified classes must
implement IAmbience.">
+ <Extension path = "/SharpDevelop/Workbench/Ambiences">
<Class id = ".NET"
class = "MonoDevelop.Projects.Ambience.NetAmbience"/>
</Extension>
- <Extension path = "/SharpDevelop/Workbench/ProjectBindings"
extension-nodes="ProjectBinding" description="Project bindings.">
+ <Extension path = "/SharpDevelop/Workbench/ProjectBindings">
<ProjectBinding id = "DotNet" class =
"MonoDevelop.Projects.DotNetProjectBinding" />
<ProjectBinding id = "GenericProject" class =
"MonoDevelop.Projects.GenericProjectBinding" />
</Extension>
- <Extension path = "/SharpDevelop/Workbench/ProjectFileFormats"
extension-nodes="FileFormat" description="File format handlers for projects and
solutions.">
+ <Extension path = "/SharpDevelop/Workbench/ProjectFileFormats">
<FileFormat id="MonoDevelopFileFormat"
class="MonoDevelop.Projects.MonoDevelopFileFormat"/>
<FileFormat id="SharpDevelopFileFormat"
class="MonoDevelop.Projects.SharpDevelopFileFormat"/>
</Extension>
- <Extension path = "/SharpDevelop/Workbench/SerializableClasses"
extension-nodes="Class" description="Classes to be registered for
serialization.">
+ <Extension path = "/SharpDevelop/Workbench/SerializableClasses">
<DataType class = "MonoDevelop.Projects.Combine" />
<DataType class = "MonoDevelop.Projects.Project" />
<DataType class = "MonoDevelop.Projects.DotNetProject" />
@@ -60,18 +125,12 @@
<DataType class =
"MonoDevelop.Projects.GenericProjectConfiguration" />
</Extension>
- <Extension path =
"/SharpDevelop/Workbench/Serialization/ExtendedProperties"
extension-nodes="ItemProperty" description="Custom properties for projects and
other types.">
+ <Extension path =
"/SharpDevelop/Workbench/Serialization/ExtendedProperties">
</Extension>
- <Extension path = "/SharpDevelop/Workbench/BuildPipeline"
extension-nodes="Class" description="Custom build steps. Specified classes must
implement IBuildStep">
- <Class id = "PreBuildStep" class =
"MonoDevelop.Projects.Project+PreBuildStep" />
- <Class id = "MainBuildStep" class =
"MonoDevelop.Projects.Project+MainBuildStep" />
- <Class id = "PostBuildStep" class =
"MonoDevelop.Projects.Project+PostBuildStep" />
- </Extension>
-
- <Extension path = "/SharpDevelop/Workbench/ProjectServiceExtensions"
extension-nodes="Class" description="Project service extensions. Specified
classes must be a subclass of ProjectServiceExtension.">
+ <Extension path = "/SharpDevelop/Workbench/ProjectServiceExtensions">
<Class id="InitialStep" class =
"MonoDevelop.Projects.ProjectServiceExtension" />
<Class id="MidStep" class =
"MonoDevelop.Projects.ProjectServiceExtension" />
<Class id="FinalStep" class =
"MonoDevelop.Projects.ProjectServiceExtension" />
</Extension>
-</AddIn>
+</Addin>
Modified:
trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.mdp
===================================================================
--- trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.mdp
2007-05-04 13:39:44 UTC (rev 76680)
+++ trunk/monodevelop/Core/src/MonoDevelop.Projects/MonoDevelop.Projects.mdp
2007-05-04 13:40:08 UTC (rev 76681)
@@ -47,7 +47,6 @@
<File name="./MonoDevelop.Projects/ProjectRenameEventArgs.cs"
subtype="Code" buildaction="Compile" />
<File name="./MonoDevelop.Projects/ProjectService.cs" subtype="Code"
buildaction="Compile" />
<File name="./MonoDevelop.Projects.Extensions/ItemPropertyCodon.cs"
subtype="Code" buildaction="Compile" />
- <File name="./MonoDevelop.Projects.Extensions/FileFormatCodon.cs"
subtype="Code" buildaction="Compile" />
<File name="./MonoDevelop.Projects.Utility/Comparers.cs" subtype="Code"
buildaction="Compile" />
<File name="./MonoDevelop.Projects.Utility/DiffUtility.cs" subtype="Code"
buildaction="Compile" />
<File name="./MonoDevelop.Projects.Utility/SortUtility.cs" subtype="Code"
buildaction="Compile" />
@@ -149,8 +148,6 @@
<File name="./MonoDevelop.Projects/ProjectFileEventArgs.cs" subtype="Code"
buildaction="Compile" />
<File name="./MonoDevelop.Projects/ProjectReference.cs" subtype="Code"
buildaction="Compile" />
<File name="./MonoDevelop.Projects/ProjectReferenceEventArgs.cs"
subtype="Code" buildaction="Compile" />
- <File name="./MonoDevelop.Projects/TypelibImporter.cs" subtype="Code"
buildaction="Compile" />
- <File name="./MonoDevelop.Projects/UnknownProjectVersionException.cs"
subtype="Code" buildaction="Compile" />
<File name="./MonoDevelop.Projects/ProjectFileCollection.cs"
subtype="Code" buildaction="Compile" />
<File name="./MonoDevelop.Projects/ProjectReferenceCollection.cs"
subtype="Code" buildaction="Compile" />
<File name="./MonoDevelop.Projects.Serialization/ArrayHandler.cs"
subtype="Code" buildaction="Compile" />
@@ -189,7 +186,6 @@
<File name="./MonoDevelop.Projects.Text/TextFile.cs" subtype="Code"
buildaction="Compile" />
<File name="./MonoDevelop.Projects/ProjectCreateInformation.cs"
subtype="Code" buildaction="Compile" />
<File name="./MonoDevelop.Projects/IProjectBinding.cs" subtype="Code"
buildaction="Compile" />
- <File name="./MonoDevelop.Projects.Extensions/ProjectBindingCodon.cs"
subtype="Code" buildaction="Compile" />
<File name="./MonoDevelop.Projects/DefaultCompilerResult.cs"
subtype="Code" buildaction="Compile" />
<File name="./MonoDevelop.Projects.Extensions/FileFilterCodon.cs"
subtype="Code" buildaction="Compile" />
<File name="./MonoDevelop.Projects/ICompilerResult.cs" subtype="Code"
buildaction="Compile" />
@@ -201,12 +197,10 @@
<File name="./MonoDevelop.Projects/ConfigurationEventHandler.cs"
subtype="Code" buildaction="Compile" />
<File name="./MonoDevelop.Projects/ExecutionContext.cs" subtype="Code"
buildaction="Compile" />
<File name="./MonoDevelop.Projects/BuildTool.cs" subtype="Code"
buildaction="Compile" />
- <File name="./MonoDevelop.Projects/ProjectsServices.cs" subtype="Code"
buildaction="Compile" />
<File name="./MonoDevelop.Projects.Parser/GenericParameter.cs"
subtype="Code" buildaction="Compile" />
<File name="./MonoDevelop.Projects.Parser/ReturnTypeList.cs"
subtype="Code" buildaction="Compile" />
<File name="./MonoDevelop.Projects.Parser/GenericParameterList.cs"
subtype="Code" buildaction="Compile" />
<File name="./MonoDevelop.Projects.Extensions/DataTypeCodon.cs"
subtype="Code" buildaction="Compile" />
- <File name="./MonoDevelop.Projects/UnknownCombineEntry.cs" subtype="Code"
buildaction="Compile" />
<File name="./MonoDevelop.Projects.Parser/PersistentGenericParamater.cs"
subtype="Code" buildaction="Compile" />
<File name="./MonoDevelop.Projects.Text/TextEncoding.cs" subtype="Code"
buildaction="Compile" />
<File name="./ChangeLog" subtype="Code" buildaction="Nothing" />
@@ -228,11 +222,16 @@
<File name="./MonoDevelop.Projects/GenericProjectBinding.cs"
subtype="Code" buildaction="Compile" />
<File name="./AssemblyInfo.cs" subtype="Code" buildaction="Compile" />
<File name="./MonoDevelop.Projects.dll.config" subtype="Code"
buildaction="FileCopy" />
+ <File name="./MonoDevelop.Projects.Extensions/ProjectBindingCodon.cs"
subtype="Code" buildaction="Compile" />
<File name="./MonoDevelop.Projects/CustomCommandExtension.cs"
subtype="Code" buildaction="Compile" />
<File name="./MonoDevelop.Projects/ProjectConvertTool.cs" subtype="Code"
buildaction="Compile" />
<File name="./MonoDevelop.Projects/MonoDevelopFileFormat.cs"
subtype="Code" buildaction="Compile" />
+ <File name="./MonoDevelop.Projects/DefaultFileFormat.cs" subtype="Code"
buildaction="Compile" />
+ <File name="./MonoDevelop.Projects/ProjectsServices.cs" subtype="Code"
buildaction="Compile" />
<File name="./MonoDevelop.Projects/SharpDevelopFileFormat.cs"
subtype="Code" buildaction="Compile" />
- <File name="./MonoDevelop.Projects/DefaultFileFormat.cs" subtype="Code"
buildaction="Compile" />
+ <File name="./MonoDevelop.Projects/TypelibImporter.cs" subtype="Code"
buildaction="Compile" />
+ <File name="./MonoDevelop.Projects/UnknownCombineEntry.cs" subtype="Code"
buildaction="Compile" />
+ <File name="./MonoDevelop.Projects/UnknownProjectVersionException.cs"
subtype="Code" buildaction="Compile" />
</Contents>
<References>
<ProjectReference type="Gac" localcopy="False" refto="monodoc,
Version=1.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756" />
@@ -241,6 +240,7 @@
<ProjectReference type="Gac" localcopy="False" refto="Mono.Posix,
Version=2.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756" />
<ProjectReference type="Project" localcopy="False"
refto="MonoDevelop.Core" />
<ProjectReference type="Assembly" localcopy="False"
refto="../../../build/bin/Mono.Cecil.dll" />
+ <ProjectReference type="Assembly" localcopy="True"
refto="../../../contrib/Mono.Addins.dll" />
<ProjectReference type="Gac" localcopy="True" refto="System.Drawing,
Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
</References>
<MonoDevelop.Autotools.MakefileInfo IntegrationEnabled="True"
RelativeMakefileName="./Makefile.am" BuildTargetName="" CleanTargetName=""
SyncReferences="True" IsAutotoolsProject="True"
RelativeConfigureInPath="../../../">
_______________________________________________
Mono-patches maillist - [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches