[MonoDevelop] syntax definition of "addin.xml"

Michael Hutchinson m.j.hutchinson at gmail.com
Mon Jan 11 01:32:32 EST 2010


On Mon, Jan 11, 2010 at 1:13 AM, Vasili I. Galchin <vigalchin at gmail.com> wrote:
> ok .... I understand where you are going ....
>
> in concrete terms ... let's take C# binding ... for projects and
> compilation nodes what are corresponding C# functions?

/MonoDevelop/ProjectModel/LanguageBindings is where the language
binding class is registered. That class handles compilation and has
some optional things like refactoring. The class is
MonoDevelop.CSharp.CSharpLanguageBinding.

That class uses a couple of new classes for holding C# project
settings, and these are also registered at the
/MonoDevelop/ProjectModel/SerializableClasses
extension point so they can be deserialized from loaded C# projects.

The mimetype is registered at /MonoDevelop/Core/MimeTypes, no code needed.

The project flavor GUID, msbbuild import and project extension (for
MSBuild/VS compatibility) is registered at
/MonoDevelop/ProjectModel/MSBuildItemTypes. The only class there is
the resourceHandler, which I think is optional.

File and project templates are defined at
/MonoDevelop/Ide/FileTemplates and /MonoDevelop/Ide/ProjectTemplates.
These simply refer to the resource IDs of the template files *.xpt.xml
and *.xft.xml that are embedded into the dll. No code.

/MonoDevelop/Ide/FileFilters registers file filters to appears in the
combo in the "open file" dialog. No code.

The /MonoDevelop/ProjectModel/Gui/ItemOptionPanels/* extensions insert
options panels for the "project options" dialog. Again, these refer to
classes that you can find in the addin's source.

-- 
Michael Hutchinson
http://mjhutchinson.com


More information about the Monodevelop-list mailing list