Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/monodevelop.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Hutchinson <m.j.hutchinson@gmail.com>2014-07-03 23:57:18 +0400
committerMichael Hutchinson <m.j.hutchinson@gmail.com>2014-07-03 23:57:18 +0400
commitc4f7804fda12518d69c2db3766afcfecdfb5fdc2 (patch)
tree216cb7f77dd746da92b9aaeb656a8eb1e6a2e253
parent3e79e5ea9b967926a5ae0709485f0b4cb596897f (diff)
parent5d5dde2d5992f2b89ccc22c4cdce670d9ea6f07a (diff)
Merge branch 'aspnet-awesome'
Conflicts: version-checks
-rw-r--r--.gitignore8
-rw-r--r--main/Main.sln46
-rw-r--r--main/configure.in4
-rw-r--r--main/src/addins/AspNet/ChangeLog3357
-rw-r--r--main/src/addins/AspNet/CodeTemplates/CSharp/AddController/ControllerWithEmptyReadAndWriteActions.tt (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/CodeTemplates/CSharp/AddController/ControllerWithEmptyReadAndWriteActions.tt)0
-rw-r--r--main/src/addins/AspNet/CodeTemplates/CSharp/AddController/Empty.tt (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/CodeTemplates/CSharp/AddController/Empty.tt)0
-rw-r--r--main/src/addins/AspNet/CodeTemplates/CSharp/AddView/Aspx/Empty.tt (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/CodeTemplates/CSharp/AddView/Aspx/Empty.tt)3
-rw-r--r--main/src/addins/AspNet/CodeTemplates/CSharp/AddView/Razor/Empty.tt (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/CodeTemplates/CSharp/AddView/Razor/Empty.tt)0
-rw-r--r--main/src/addins/AspNet/Commands/AddControllerDialog.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Gui/AddControllerDialog.cs)59
-rw-r--r--main/src/addins/AspNet/Commands/AddViewDialog.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Gui/AddViewDialog.cs)210
-rw-r--r--main/src/addins/AspNet/Commands/AddViewFromControllerCommandHandler.cs133
-rw-r--r--main/src/addins/AspNet/Commands/AspNetCommands.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetCommands.cs)12
-rw-r--r--main/src/addins/AspNet/Commands/GoToControllerCommandHandler.cs66
-rw-r--r--main/src/addins/AspNet/Commands/GoToViewCommandHandler.cs76
-rw-r--r--main/src/addins/AspNet/Commands/MvcCommandsCommonHandler.cs60
-rw-r--r--main/src/addins/AspNet/Execution/AspNetExecutionCommand.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetExecutionCommand.cs)9
-rw-r--r--main/src/addins/AspNet/Execution/AspNetExecutionHandler.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetExecutionHandler.cs)5
-rw-r--r--main/src/addins/AspNet/Execution/BrowserLauncher.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Gui/BrowserLauncher.cs)8
-rw-r--r--main/src/addins/AspNet/Execution/LineInterceptingTextWriter.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/LineInterceptingTextWriter.cs)15
-rw-r--r--main/src/addins/AspNet/Execution/XspBrowserLauncherConsole.cs90
-rw-r--r--main/src/addins/AspNet/Execution/XspOptionsPanel.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Gui/XspOptionsPanel.cs)9
-rw-r--r--main/src/addins/AspNet/Execution/XspOptionsPanelWidget.cs202
-rw-r--r--main/src/addins/AspNet/Execution/XspParameters.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/XspParameters.cs)24
-rw-r--r--main/src/addins/AspNet/Html/BaseHtmlEditorExtension.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Gui/BaseHtmlEditorExtension.cs)21
-rw-r--r--main/src/addins/AspNet/Html/DocTypeCompletionData.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.Html/DocTypeCompletionData.cs)2
-rw-r--r--main/src/addins/AspNet/Html/DocTypeExtensionNode.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.Html/DocTypeExtensionNode.cs)4
-rw-r--r--main/src/addins/AspNet/Html/ElementTypes.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.Html/ElementTypes.cs)4
-rw-r--r--main/src/addins/AspNet/Html/HtmlEditorExtension.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Gui/HtmlEditorExtension.cs)16
-rw-r--r--main/src/addins/AspNet/Html/HtmlParser.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.Html/HtmlParser.cs)18
-rw-r--r--main/src/addins/AspNet/Html/HtmlPathCompletion.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.Html/PathCompletion.cs)20
-rw-r--r--main/src/addins/AspNet/Html/HtmlSchema.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.Html/HtmlSchema.cs)4
-rw-r--r--main/src/addins/AspNet/Html/HtmlSchemaService.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.Html/HtmlSchemaService.cs)10
-rw-r--r--main/src/addins/AspNet/Html/Parser/HtmlClosingTagState.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.StateEngine/HtmlClosingTagState.cs)15
-rw-r--r--main/src/addins/AspNet/Html/Parser/HtmlScriptBodyState.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.StateEngine/HtmlScriptBodyState.cs)17
-rw-r--r--main/src/addins/AspNet/Html/Parser/HtmlTagState.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.StateEngine/HtmlTagState.cs)32
-rw-r--r--[-rwxr-xr-x]main/src/addins/AspNet/Html/Schemas/W3C-License.html (renamed from main/src/addins/MonoDevelop.XmlEditor/schemas/W3C-License.html)2
-rw-r--r--[-rwxr-xr-x]main/src/addins/AspNet/Html/Schemas/readme.txt (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/Schemas/readme.txt)0
-rw-r--r--main/src/addins/AspNet/Html/Schemas/xhtml1-frameset.xsd (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/Schemas/xhtml1-frameset.xsd)0
-rw-r--r--main/src/addins/AspNet/Html/Schemas/xhtml1-strict.xsd (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/Schemas/xhtml1-strict.xsd)0
-rw-r--r--main/src/addins/AspNet/Html/Schemas/xhtml1-transitional.xsd (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/Schemas/xhtml1-transitional.xsd)0
-rw-r--r--main/src/addins/AspNet/Makefile.am7
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/AddinInfo.cs20
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/AspMvcProject.cs288
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/AspMvcProjectBinding.cs129
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/AssemblyInfo.cs9
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/ChangeLog393
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/CommandHandlers.cs155
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Makefile.am4
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/MonoDevelop.AspNet.Mvc.addin.xml202
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/MonoDevelop.AspNet.Mvc.csproj339
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/StateEngine/RazorDom.cs202
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/Common/HomeControllerTest.cs28
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/Common/Index.cshtml1
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/Controller.xft.xml46
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/EmptyProjectMvc3.xpt.xml57
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/GlobalAsax.xft.xml62
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/ProjectMvc3.xpt.xml97
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/ProjectMvc3WithUnitTest.xpt.xml126
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/WebConfigApp.xft.xml143
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/WebConfigViews.xft.xml59
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/gtk-gui/MonoDevelop.AspNet.Mvc.Gui.AddControllerDialog.cs122
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/gtk-gui/MonoDevelop.AspNet.Mvc.Gui.AddViewDialog.cs368
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/gtk-gui/generated.cs29
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/gtk-gui/gui.stetic638
-rwxr-xr-xmain/src/addins/AspNet/MonoDevelop.AspNet.Mvc/lib/System.Web.Mvc.dllbin519168 -> 0 bytes
-rwxr-xr-xmain/src/addins/AspNet/MonoDevelop.AspNet.Mvc/lib/System.Web.Razor.dllbin275456 -> 0 bytes
-rwxr-xr-xmain/src/addins/AspNet/MonoDevelop.AspNet.Mvc/lib/System.Web.WebPages.Razor.dllbin33792 -> 0 bytes
-rwxr-xr-xmain/src/addins/AspNet/MonoDevelop.AspNet.Mvc/lib/System.Web.WebPages.dllbin204800 -> 0 bytes
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/lib/md-aspnet.snkbin596 -> 0 bytes
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet.csproj499
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet/ChangeLog3359
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/AspNetDeployServiceExtension.cs70
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/WebDeployCommands.cs55
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/WebDeployLaunchDialog.cs130
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/WebDeployOptionsPanel.cs54
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/WebDeployOptionsPanelWidget.cs135
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/WebDeployResolver.cs52
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/WebDeployService.cs148
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/WebDeployTarget.cs105
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/WebDeployTargetCollection.cs146
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/WebDeployTargetEditor.cs64
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/WebDeployWindow.cs167
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Gui/AspNetConfigurationPanel.cs62
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Gui/AspNetConfigurationPanelWidget.cs32
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Gui/AspProjectDom.cs84
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Gui/XspOptionsPanelWidget.cs119
-rwxr-xr-xmain/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs450
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Parser/MemberListVisitor.cs205
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Parser/Regexes.cs63
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Parser/WebFormReferenceManager.cs181
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.StateEngine/AspNetDom.cs271
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.addin.xml263
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.csproj322
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetFileDescriptionTemplate.cs145
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs99
-rwxr-xr-xmain/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/WebTypeManager.cs449
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.Html/HtmlCompletionDataProvider.cs76
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet/Templates/MasterPage-CodeBehindNonPartial.xft.xml54
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebControl-CodeBehindNonPartial.xft.xml41
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebForm-CodeBehindNonPartial.xft.xml52
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet/gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployLaunchDialog.cs120
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet/gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployOptionsPanelWidget.cs96
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet/gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployTargetEditor.cs180
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet/gtk-gui/MonoDevelop.AspNet.Deployment.WebTargetEditor.cs22
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet/gtk-gui/MonoDevelop.AspNet.Gui.AspNetConfigurationPanelWidget.cs78
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet/gtk-gui/MonoDevelop.AspNet.Gui.XspOptionsPanelWidget.cs406
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet/gtk-gui/generated.cs116
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet/gtk-gui/gui.stetic1137
-rw-r--r--main/src/addins/AspNet/ProjectPad/AspNetFolderNodeBuilderExtension.cs44
-rw-r--r--main/src/addins/AspNet/ProjectPad/AspNetFolderNodeCommandHandler.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Gui/FolderNodeBuilderExtension.cs)168
-rw-r--r--main/src/addins/AspNet/ProjectPad/AspNetProjectNodeBuilderExtension.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/WebTargetEditor.cs)26
-rw-r--r--main/src/addins/AspNet/ProjectPad/AspNetProjectNodeCommandHandler.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/ProjectFolderNodeBuilderExtension.cs)81
-rw-r--r--main/src/addins/AspNet/Projects/AspMvcProject.cs173
-rw-r--r--main/src/addins/AspNet/Projects/AspMvcProjectConfiguration.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/AspMvcProjectConfiguration.cs)2
-rw-r--r--main/src/addins/AspNet/Projects/AspNetAppProject.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetAppProject.cs)462
-rw-r--r--main/src/addins/AspNet/Projects/AspNetAppProjectBinding.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetAppProjectBinding.cs)2
-rw-r--r--main/src/addins/AspNet/Projects/AspNetAppProjectConfiguration.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetAppProjectConfiguration.cs)16
-rw-r--r--main/src/addins/AspNet/Projects/AspNetMSBuildImportProvider.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetMSBuildImportProvider.cs)7
-rw-r--r--main/src/addins/AspNet/Projects/AspNetMvcFileTemplateCondition.cs72
-rw-r--r--main/src/addins/AspNet/Projects/MvcTextTemplateHost.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/TextTemplating/MvcTextTemplateHost.cs)6
-rw-r--r--main/src/addins/AspNet/Projects/WebSubtype.cs59
-rw-r--r--main/src/addins/AspNet/Properties/AddinInfo.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/AddinInfo.cs)9
-rw-r--r--main/src/addins/AspNet/Properties/AssemblyInfo.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/AssemblyInfo.cs)0
-rw-r--r--main/src/addins/AspNet/Properties/MonoDevelop.AspNet.addin.xml394
-rw-r--r--main/src/addins/AspNet/Razor/Dom/RazorCodeBlock.cs57
-rw-r--r--main/src/addins/AspNet/Razor/Dom/RazorCodeFragment.cs86
-rw-r--r--main/src/addins/AspNet/Razor/Dom/RazorComment.cs62
-rw-r--r--main/src/addins/AspNet/Razor/Dom/RazorDirective.cs58
-rw-r--r--main/src/addins/AspNet/Razor/Dom/RazorExplicitExpression.cs61
-rw-r--r--main/src/addins/AspNet/Razor/Dom/RazorExpression.cs47
-rw-r--r--main/src/addins/AspNet/Razor/Dom/RazorImplicitExpression.cs61
-rw-r--r--main/src/addins/AspNet/Razor/Dom/RazorStatement.cs57
-rw-r--r--main/src/addins/AspNet/Razor/EditorParserFixed/BackgroundParser.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorEditorParserFixed/BackgroundParser.cs)2
-rw-r--r--main/src/addins/AspNet/Razor/EditorParserFixed/CommonResources.Designer.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorEditorParserFixed/CommonResources.Designer.cs)2
-rw-r--r--main/src/addins/AspNet/Razor/EditorParserFixed/DisposableAction.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorEditorParserFixed/DisposableAction.cs)2
-rw-r--r--main/src/addins/AspNet/Razor/EditorParserFixed/RazorEditorParser.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorEditorParserFixed/RazorEditorParser.cs)2
-rw-r--r--main/src/addins/AspNet/Razor/EditorParserFixed/RazorEditorTrace.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorEditorParserFixed/RazorEditorTrace.cs)2
-rw-r--r--main/src/addins/AspNet/Razor/EditorParserFixed/RazorResources.Designer.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorEditorParserFixed/RazorResources.Designer.cs)2
-rw-r--r--main/src/addins/AspNet/Razor/Generator/FileUtil.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorGenerator/FileUtil.cs)2
-rw-r--r--main/src/addins/AspNet/Razor/Generator/MarkupRewriter.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorGenerator/MarkupRewriter.cs)2
-rw-r--r--main/src/addins/AspNet/Razor/Generator/PreprocessedAttributeBlockCodeGenerator.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorGenerator/PreprocessedAttributeBlockCodeGenerator.cs)2
-rw-r--r--main/src/addins/AspNet/Razor/Generator/PreprocessedAttributeRewriter.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorGenerator/PreprocessedAttributeRewriter.cs)2
-rw-r--r--main/src/addins/AspNet/Razor/Generator/PreprocessedCSharpRazorCodeParser.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorGenerator/PreprocessedCSharpRazorCodeParser.cs)2
-rw-r--r--main/src/addins/AspNet/Razor/Generator/PreprocessedDynamicAttributeBlockCodeGenerator.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorGenerator/PreprocessedDynamicAttributeBlockCodeGenerator.cs)2
-rw-r--r--main/src/addins/AspNet/Razor/Generator/PreprocessedLiteralAttributeCodeGenerator.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorGenerator/PreprocessedLiteralAttributeCodeGenerator.cs)2
-rw-r--r--main/src/addins/AspNet/Razor/Generator/PreprocessedRazorHost.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorGenerator/PreprocessedRazorHost.cs)2
-rw-r--r--main/src/addins/AspNet/Razor/Generator/PreprocessedTemplateCodeTransformer.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorGenerator/PreprocessedTemplateCodeTransformer.cs)2
-rw-r--r--main/src/addins/AspNet/Razor/Generator/RazorTemplatePreprocessor.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorGenerator/RazorTemplatePreprocessor.cs)2
-rw-r--r--main/src/addins/AspNet/Razor/Generator/RazorWriterHelper.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorGenerator/RazorWriterHelper.cs)2
-rw-r--r--main/src/addins/AspNet/Razor/Generator/RewritingRazorTemplateEngine.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorGenerator/RewritingRazorTemplateEngine.cs)2
-rw-r--r--main/src/addins/AspNet/Razor/IRazorCompletionBuilder.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Completion/IRazorCompletionBuilder.cs)6
-rw-r--r--main/src/addins/AspNet/Razor/Parser/RazorCodeBlockState.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/StateEngine/RazorCodeBlockState.cs)7
-rw-r--r--main/src/addins/AspNet/Razor/Parser/RazorCodeFragmentState.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/StateEngine/RazorCodeFragmentState.cs)19
-rw-r--r--main/src/addins/AspNet/Razor/Parser/RazorCommentState.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/StateEngine/RazorCommentState.cs)7
-rw-r--r--main/src/addins/AspNet/Razor/Parser/RazorDirectiveState.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/StateEngine/RazorDirectiveState.cs)7
-rw-r--r--main/src/addins/AspNet/Razor/Parser/RazorExpressionState.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/StateEngine/RazorExpressionState.cs)7
-rw-r--r--main/src/addins/AspNet/Razor/Parser/RazorOutlineNode.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Parser/OutlineNode.cs)18
-rw-r--r--main/src/addins/AspNet/Razor/Parser/RazorRootState.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/StateEngine/RazorFreeState.cs)14
-rw-r--r--main/src/addins/AspNet/Razor/Parser/RazorSpeculativeState.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/StateEngine/RazorSpeculativeState.cs)13
-rw-r--r--main/src/addins/AspNet/Razor/Parser/RazorState.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/StateEngine/RazorState.cs)10
-rw-r--r--main/src/addins/AspNet/Razor/Parser/RazorStatementState.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/StateEngine/RazorStatementState.cs)13
-rw-r--r--main/src/addins/AspNet/Razor/Parser/RazorSymbols.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Parser/RazorSymbols.cs)17
-rw-r--r--main/src/addins/AspNet/Razor/Parser/RazorUtils.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Parser/RazorUtils.cs)2
-rw-r--r--main/src/addins/AspNet/Razor/Parser/StateEngineService.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/StateEngine/StateEngineService.cs)11
-rw-r--r--main/src/addins/AspNet/Razor/Razor-templates.xml (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Razor-templates.xml)0
-rw-r--r--main/src/addins/AspNet/Razor/RazorCSharpEditorExtension.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Gui/RazorCSharpEditorExtension.cs)44
-rw-r--r--main/src/addins/AspNet/Razor/RazorCSharpFormatter.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Formatting/RazorCSharpFormatter.cs)10
-rw-r--r--main/src/addins/AspNet/Razor/RazorCSharpParsedDocument.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Parser/RazorCSharpParsedDocument.cs)5
-rw-r--r--main/src/addins/AspNet/Razor/RazorCSharpParser.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Parser/RazorCSharpParser.cs)58
-rw-r--r--main/src/addins/AspNet/Razor/RazorCompletion.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Completion/RazorCompletion.cs)9
-rw-r--r--main/src/addins/AspNet/Razor/RazorPageInfo.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Parser/RazorPageInfo.cs)11
-rw-r--r--main/src/addins/AspNet/Razor/RazorSyntaxMode.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorSyntaxMode.cs)4
-rw-r--r--main/src/addins/AspNet/Templates/Mvc/Controller.xft.xml39
-rw-r--r--main/src/addins/AspNet/Templates/Mvc/GlobalAsax.xft.xml (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/GlobalAsaxMvc3.xft.xml)136
-rw-r--r--main/src/addins/AspNet/Templates/Mvc/LayoutPage.xft.xml (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/LayoutPage.xft.xml)10
-rw-r--r--main/src/addins/AspNet/Templates/Mvc/PartialViewPageRazor.xft.xml (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/PartialViewPageRazor.xft.xml)8
-rw-r--r--main/src/addins/AspNet/Templates/Mvc/UserControl.xft.xml (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/UserControl.xft.xml)20
-rw-r--r--main/src/addins/AspNet/Templates/Mvc/ViewContentPage.xft.xml (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/ViewContentPage.xft.xml)10
-rw-r--r--main/src/addins/AspNet/Templates/Mvc/ViewMasterPage.xft.xml (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/ViewMasterPage.xft.xml)20
-rw-r--r--main/src/addins/AspNet/Templates/Mvc/ViewPage.xft.xml (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/ViewPage.xft.xml)23
-rw-r--r--main/src/addins/AspNet/Templates/Mvc/ViewPageRazor.xft.xml (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/ViewPageRazor.xft.xml)10
-rw-r--r--main/src/addins/AspNet/Templates/Mvc/WebConfigApp.xft.xml (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/WebConfigAppMvc3.xft.xml)302
-rw-r--r--main/src/addins/AspNet/Templates/Mvc/WebConfigViews.xft.xml (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/WebConfigViewsMvc3.xft.xml)157
-rw-r--r--main/src/addins/AspNet/Templates/MvcCommon/Error.cshtml (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/Common/Error.cshtml)0
-rw-r--r--main/src/addins/AspNet/Templates/MvcCommon/HomeController.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/Common/HomeController.cs)7
-rw-r--r--main/src/addins/AspNet/Templates/MvcCommon/HomeControllerTest.cs35
-rw-r--r--main/src/addins/AspNet/Templates/MvcCommon/Index.cshtml1
-rw-r--r--main/src/addins/AspNet/Templates/MvcCommon/ViewPageRazor.cshtml (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/Common/ViewPageRazor.cshtml)0
-rw-r--r--main/src/addins/AspNet/Templates/MvcCommon/_Layout.cshtml (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/Common/_Layout.cshtml)0
-rw-r--r--main/src/addins/AspNet/Templates/MvcCommon/_ViewStart.cshtml (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/Common/_ViewStart.cshtml)0
-rw-r--r--main/src/addins/AspNet/Templates/PreprocessedRazorTemplate.xft.xml (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/PreprocessedRazorTemplate.xft.xml)0
-rw-r--r--main/src/addins/AspNet/Templates/Projects/EmptyMvcProject.xpt.xml (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/EmptyProject.xpt.xml)14
-rw-r--r--main/src/addins/AspNet/Templates/Projects/EmptyProject.xpt.xml (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebApplication-Empty.xpt.xml)6
-rw-r--r--main/src/addins/AspNet/Templates/Projects/MvcProject.xpt.xml (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/ProjectMvc3Razor.xpt.xml)160
-rw-r--r--main/src/addins/AspNet/Templates/Projects/MvcProjectWithUnitTest.xpt.xml (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/ProjectMvc3RazorWithUnitTest.xpt.xml)216
-rw-r--r--main/src/addins/AspNet/Templates/Projects/MvcRazorProject.xpt.xml (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/Project.xpt.xml)53
-rw-r--r--main/src/addins/AspNet/Templates/Projects/MvcRazorProjectWithUnitTest.xpt.xml (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/ProjectWithUnitTest.xpt.xml)51
-rw-r--r--main/src/addins/AspNet/Templates/Projects/WebApplication.xpt.xml (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebApplication.xpt.xml)37
-rw-r--r--main/src/addins/AspNet/Templates/WebConfig-Application.xft.xml (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebConfig-Application.xft.xml)13
-rw-r--r--main/src/addins/AspNet/Templates/WebConfig-SubDir.xft.xml (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebConfig-SubDir.xft.xml)11
-rw-r--r--main/src/addins/AspNet/Templates/WebForms/GlobalAsax-CodeBehind.xft.xml (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/Templates/GlobalAsax-CodeBehind.xft.xml)14
-rw-r--r--main/src/addins/AspNet/Templates/WebForms/GlobalAsax-Empty.xft.xml (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/Templates/GlobalAsax-Empty.xft.xml)19
-rw-r--r--main/src/addins/AspNet/Templates/WebForms/MasterPage-CodeBehind.xft.xml (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/Templates/MasterPage-CodeBehind.xft.xml)32
-rw-r--r--main/src/addins/AspNet/Templates/WebForms/MasterPage-Empty.xft.xml (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/Templates/MasterPage-Empty.xft.xml)23
-rw-r--r--main/src/addins/AspNet/Templates/WebForms/NestedMasterPage-CodeBehind.xft.xml (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/Templates/NestedMasterPage-CodeBehind.xft.xml)21
-rw-r--r--main/src/addins/AspNet/Templates/WebForms/NestedMasterPage.xft.xml (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/Templates/NestedMasterPage.xft.xml)13
-rw-r--r--main/src/addins/AspNet/Templates/WebForms/WebContentForm-CodeBehind.xft.xml (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebContentForm-CodeBehind.xft.xml)20
-rw-r--r--main/src/addins/AspNet/Templates/WebForms/WebContentForm.xft.xml (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebContentForm.xft.xml)12
-rw-r--r--main/src/addins/AspNet/Templates/WebForms/WebControl-CodeBehind.xft.xml (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebControl-CodeBehind.xft.xml)32
-rw-r--r--main/src/addins/AspNet/Templates/WebForms/WebControl-Empty.xft.xml (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebControl-Empty.xft.xml)15
-rw-r--r--main/src/addins/AspNet/Templates/WebForms/WebForm-CodeBehind.xft.xml (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebForm-CodeBehind.xft.xml)36
-rw-r--r--main/src/addins/AspNet/Templates/WebForms/WebForm-Empty.xft.xml (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebForm-Empty.xft.xml)17
-rw-r--r--main/src/addins/AspNet/Templates/WebForms/WebHandler-CodeBehind.xft.xml (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebHandler-CodeBehind.xft.xml)20
-rw-r--r--main/src/addins/AspNet/Templates/WebForms/WebHandler-Empty.xft.xml (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebHandler-Empty.xft.xml)17
-rw-r--r--main/src/addins/AspNet/Templates/WebForms/WebService-CodeBehind.xft.xml (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebService-CodeBehind.xft.xml)21
-rw-r--r--main/src/addins/AspNet/Templates/WebForms/WebService-Empty.xft.xml (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebService-Empty.xft.xml)21
-rw-r--r--main/src/addins/AspNet/Test/Test.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/Test/Test.cs)0
-rw-r--r--main/src/addins/AspNet/Tests/Html/HtmlImplicitClosingTests.cs (renamed from main/tests/UnitTests/MonoDevelop.Xml.StateEngine/HtmlImplicitClosingTests.cs)14
-rw-r--r--main/src/addins/AspNet/Tests/Html/HtmlParsingTests.cs (renamed from main/tests/UnitTests/MonoDevelop.Xml.StateEngine/HtmlParsingTests.cs)18
-rw-r--r--main/src/addins/AspNet/Tests/MonoDevelop.AspNet.Tests.csproj124
-rw-r--r--main/src/addins/AspNet/Tests/Razor/Dom/RazorCodeBlockParsingTests.cs (renamed from main/tests/UnitTests/MonoDevelop.AspNet.Mvc.StateEngine/RazorCodeBlockParsingTests.cs)13
-rw-r--r--main/src/addins/AspNet/Tests/Razor/Dom/RazorCodeFragmentsParsingTests.cs (renamed from main/tests/UnitTests/MonoDevelop.AspNet.Mvc.StateEngine/RazorCodeFragmentsParsingTests.cs)4
-rw-r--r--main/src/addins/AspNet/Tests/Razor/Dom/RazorCommentParsingTests.cs (renamed from main/tests/UnitTests/MonoDevelop.AspNet.Mvc.StateEngine/RazorCommentParsingTests.cs)12
-rw-r--r--main/src/addins/AspNet/Tests/Razor/Dom/RazorDirectivesParsingTests.cs (renamed from main/tests/UnitTests/MonoDevelop.AspNet.Mvc.StateEngine/RazorDirectivesParsingTests.cs)34
-rw-r--r--main/src/addins/AspNet/Tests/Razor/Dom/RazorExplicitExpressionsParsingTests.cs (renamed from main/tests/UnitTests/MonoDevelop.AspNet.Mvc.StateEngine/RazorExplicitExpressionsParsingTests.cs)11
-rw-r--r--main/src/addins/AspNet/Tests/Razor/Dom/RazorImplicitExpressionsParsingTests.cs (renamed from main/tests/UnitTests/MonoDevelop.AspNet.Mvc.StateEngine/RazorImplicitExpressionsParsingTests.cs)19
-rw-r--r--main/src/addins/AspNet/Tests/Razor/Dom/RazorParsingTests.cs (renamed from main/tests/UnitTests/MonoDevelop.AspNet.Mvc.StateEngine/RazorParsingTests.cs)12
-rw-r--r--main/src/addins/AspNet/Tests/Razor/Dom/RazorStatementsParsingTests.cs (renamed from main/tests/UnitTests/MonoDevelop.AspNet.Mvc.StateEngine/RazorStatementsParsingTests.cs)27
-rw-r--r--main/src/addins/AspNet/Tests/Razor/RazorCompletionTesting.cs (renamed from main/tests/UnitTests/MonoDevelop.AspNet.Mvc.Completion/RazorCompletionTesting.cs)23
-rw-r--r--main/src/addins/AspNet/Tests/Razor/RazorCompletionTests.cs (renamed from main/tests/UnitTests/MonoDevelop.AspNet.Mvc.Completion/CompletionTests.cs)5
-rw-r--r--main/src/addins/AspNet/Tests/WebForms/WebFormsCompletionTests.cs (renamed from main/tests/UnitTests/MonoDevelop.AspNet/AspNetCompletionTests.cs)55
-rw-r--r--main/src/addins/AspNet/Tests/WebForms/WebFormsParsingTests.cs (renamed from main/tests/UnitTests/MonoDevelop.Xml.StateEngine/AspNetParsingTests.cs)37
-rw-r--r--main/src/addins/AspNet/Tests/WebForms/WebFormsTesting.cs (renamed from main/tests/UnitTests/MonoDevelop.AspNet/AspNetTesting.cs)32
-rw-r--r--main/src/addins/AspNet/WebForms/Dom/WebFormsBindingExpression.cs62
-rw-r--r--main/src/addins/AspNet/WebForms/Dom/WebFormsDirective.cs108
-rw-r--r--main/src/addins/AspNet/WebForms/Dom/WebFormsDomExtensions.cs72
-rw-r--r--main/src/addins/AspNet/WebForms/Dom/WebFormsExpression.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/RemoveXPathHighlightingCommand.cs)43
-rw-r--r--main/src/addins/AspNet/WebForms/Dom/WebFormsHtmlEncodedExpression.cs63
-rw-r--r--main/src/addins/AspNet/WebForms/Dom/WebFormsRenderBlock.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Completion/SimpleLists.cs)51
-rw-r--r--main/src/addins/AspNet/WebForms/Dom/WebFormsRenderExpression.cs61
-rw-r--r--main/src/addins/AspNet/WebForms/Dom/WebFormsResourceExpression.cs62
-rw-r--r--main/src/addins/AspNet/WebForms/Dom/WebFormsServerComment.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/OpenXPathQueryPadCommand.cs)62
-rw-r--r--main/src/addins/AspNet/WebForms/ILanguageCompletionBuilder.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Gui/ILanguageCompletionBuilder.cs)41
-rw-r--r--main/src/addins/AspNet/WebForms/MasterContentFileDescriptionTemplate.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/MasterContentFileDescriptionTemplate.cs)19
-rw-r--r--main/src/addins/AspNet/WebForms/Parser/WebFormsAttributeValueState.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.StateEngine/AspNetAttributeValueState.cs)16
-rw-r--r--main/src/addins/AspNet/WebForms/Parser/WebFormsDirectiveAttributeState.cs47
-rw-r--r--main/src/addins/AspNet/WebForms/Parser/WebFormsDirectiveState.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.StateEngine/AspNetDirectiveState.cs)39
-rw-r--r--main/src/addins/AspNet/WebForms/Parser/WebFormsExpressionState.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.StateEngine/AspNetExpressionState.cs)23
-rw-r--r--main/src/addins/AspNet/WebForms/Parser/WebFormsRootState.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.StateEngine/AspNetFreeState.cs)42
-rw-r--r--main/src/addins/AspNet/WebForms/Parser/WebFormsServerCommentState.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.StateEngine/AspNetServerCommentState.cs)14
-rw-r--r--main/src/addins/AspNet/WebForms/SuggestedHandlerCompletionData.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Parser/SuggestedHandlerCompletionData.cs)12
-rw-r--r--[-rwxr-xr-x]main/src/addins/AspNet/WebForms/WebFormsCodeBehind.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/CodeBehind.cs)35
-rw-r--r--main/src/addins/AspNet/WebForms/WebFormsCodeBehindTypeNameCache.cs61
-rw-r--r--main/src/addins/AspNet/WebForms/WebFormsDirectiveCompletion.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Parser/Directive.cs)36
-rw-r--r--[-rwxr-xr-x]main/src/addins/AspNet/WebForms/WebFormsEditorExtension.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs)241
-rw-r--r--main/src/addins/AspNet/WebForms/WebFormsMemberListBuilder.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Parser/MemberListBuilder.cs)22
-rw-r--r--main/src/addins/AspNet/WebForms/WebFormsPageInfo.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Parser/PageInfo.cs)181
-rw-r--r--main/src/addins/AspNet/WebForms/WebFormsParsedDocument.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Parser/AspNetParsedDocument.cs)17
-rw-r--r--main/src/addins/AspNet/WebForms/WebFormsParser.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Parser/AspNetParser.cs)22
-rw-r--r--main/src/addins/AspNet/WebForms/WebFormsRegistrationCache.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/RegistrationCache.cs)116
-rw-r--r--main/src/addins/AspNet/WebForms/WebFormsSyntaxMode.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetSyntaxMode.cs)18
-rw-r--r--main/src/addins/AspNet/WebForms/WebFormsToolboxLoader.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetToolboxLoader.cs)16
-rw-r--r--main/src/addins/AspNet/WebForms/WebFormsToolboxNode.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetToolboxNode.cs)42
-rw-r--r--main/src/addins/AspNet/WebForms/WebFormsToolboxProvider.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetToolboxProvider.cs)8
-rw-r--r--main/src/addins/AspNet/WebForms/WebFormsTypeContext.cs648
-rw-r--r--main/src/addins/AspNet/packages.config6
-rw-r--r--main/src/addins/CSharpBinding/AspNet/ASPNetReferenceFinder.cs9
-rw-r--r--main/src/addins/CSharpBinding/AspNet/AspLanguageBuilder.cs39
-rw-r--r--main/src/addins/CSharpBinding/AspNet/CSharpBinding.AspNet.csproj23
-rw-r--r--main/src/addins/CSharpBinding/AspNet/ExtensionModel.addin.xml3
-rw-r--r--main/src/addins/CSharpBinding/AspNet/RazorCSharpCompletionBuilder.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Completion/RazorCSharpCompletionBuilder.cs)10
-rw-r--r--main/src/addins/CSharpBinding/Autotools/Autotools.csproj5
-rw-r--r--main/src/addins/Makefile.am2
-rw-r--r--main/src/addins/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft.AspNet/AspNetSoftDebuggerEngine.cs17
-rw-r--r--main/src/addins/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft.AspNet/MonoDevelop.Debugger.Soft.AspNet.csproj20
-rw-r--r--main/src/addins/MonoDevelop.Debugger.Win32/MonoDevelop.Debugger.Win32/CorDebuggerEngine.cs7
-rw-r--r--main/src/addins/MonoDevelop.Debugger.Win32/MonoDevelop.Debugger.Win32/MonoDevelop.Debugger.Win32.csproj10
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/AUTHORS15
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/COPYING504
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/ChangeLog2030
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/Makefile.am1
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XDom.cs636
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XState.cs84
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XmlParser.cs299
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.XPath/XPathHistoryList.cs96
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.XPath/XPathNamespaceList.cs96
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.XPath/XPathNodeMatch.cs184
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.XPath/XPathNodeTextMarker.cs82
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.XPath/XPathQueryPad.cs131
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.XPath/XPathQueryPadOptions.cs94
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.XPath/XPathQueryWidget.cs515
-rwxr-xr-xmain/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/EncodedStringWriter.cs64
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/OpenStylesheetCommand.cs59
-rwxr-xr-xmain/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/QualifiedNameCollection.cs288
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlCompletionListWindow.cs417
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlEditorCommandBase.cs24
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlEditorView.cs138
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlEditorViewContent.cs614
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlNamespace.cs82
-rwxr-xr-xmain/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlParser.cs704
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/README79
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/TODO64
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/Tests/AssemblyInfo.cs32
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/Tests/ChangeLog86
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/Tests/FindSchemaObject/AttributeGroupReferenceSelectedTestFixture.cs55
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/Tests/FindSchemaObject/AttributeReferenceSelectedTestFixture.cs70
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/Tests/FindSchemaObject/AttributeSelectedTestFixture.cs40
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/Tests/FindSchemaObject/AttributeTypeSelectedTestFixture.cs68
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/Tests/FindSchemaObject/ElementReferenceSelectedTestFixture.cs78
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/Tests/FindSchemaObject/ElementReferenceWithPrefixSelectedTestFixture.cs76
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/Tests/FindSchemaObject/ElementSelectedTestFixture.cs49
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/Tests/FindSchemaObject/ElementTypeSelectedTestFixture.cs54
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/Tests/FindSchemaObject/ElementTypeWithPrefixSelectedTestFixture.cs57
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/Tests/FindSchemaObject/GroupReferenceSelectedTestFixture.cs89
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/Tests/MimeTypeHandledTests.cs37
-rwxr-xr-xmain/src/addins/MonoDevelop.XmlEditor/Tests/Parser/ActiveElementStartPathTestFixture.cs106
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/Tests/Parser/ActiveElementUnderCursorTests.cs161
-rwxr-xr-xmain/src/addins/MonoDevelop.XmlEditor/Tests/Parser/AttributeNameTestFixture.cs89
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/Tests/Parser/AttributeNameUnderCursorTests.cs72
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/Tests/Parser/AttributeValueUnderCursorTests.cs67
-rwxr-xr-xmain/src/addins/MonoDevelop.XmlEditor/Tests/Parser/InsideAttributeValueTestFixture.cs100
-rwxr-xr-xmain/src/addins/MonoDevelop.XmlEditor/Tests/Parser/NamespaceDeclarationTestFixture.cs112
-rwxr-xr-xmain/src/addins/MonoDevelop.XmlEditor/Tests/Parser/ParentElementPathTestFixture.cs62
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/GetSchemaFromFileNameTestFixture.cs46
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/Tests/XPathQuery/RunXPathQueryTests.cs169
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/Tests/XPathQuery/XPathHistoryListTests.cs107
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/Tests/XPathQuery/XPathNamespaceListTests.cs130
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/Tests/XPathQuery/XmlNamespaceTests.cs18
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/Tests/XPathQuery/XmlNamespaceToStringTests.cs50
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/gtk-gui/MonoDevelop.Xml.Formatting.XmlFormattingPolicyPanelWidget.cs159
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/gtk-gui/MonoDevelop.XmlEditor.Gui.XmlEditorOptionsPanelWidget.cs67
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/gtk-gui/MonoDevelop.XmlEditor.Gui.XmlSchemasPanelWidget.cs179
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/gtk-gui/generated.cs81
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/gtk-gui/gui.stetic491
-rw-r--r--main/src/addins/VersionControl/MonoDevelop.VersionControl/gtk-gui/generated.cs165
-rw-r--r--main/src/addins/Web/Makefile.am2
-rw-r--r--main/src/addins/Xml/Completion/EmptyXmlCompletionProvider.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Completion/EmptyXmlCompletionProvider.cs)11
-rw-r--r--main/src/addins/Xml/Completion/ILazilyLoadedProvider.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Completion/ILazilyLoadedProvider.cs)2
-rw-r--r--main/src/addins/Xml/Completion/IXmlCompletionProvider.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Completion/IXmlCompletionProvider.cs)3
-rw-r--r--main/src/addins/Xml/Completion/InferredXmlCompletionProvider.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Completion/InferredXmlCompletionProvider.cs)12
-rw-r--r--main/src/addins/Xml/Completion/LocalOnlyXmlResolver.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Completion/LocalOnlyXmlResolver.cs)2
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Completion/QualifiedName.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/QualifiedName.cs)2
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Completion/XmlCompletionData.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Completion/XmlCompletionData.cs)16
-rw-r--r--main/src/addins/Xml/Completion/XmlCompletionDataList.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Completion/XmlCompletionDataList.cs)2
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Completion/XmlElementPath.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlElementPath.cs)67
-rw-r--r--main/src/addins/Xml/Completion/XmlMultipleClosingTagCompletionData.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Completion/XmlMultipleClosingTagCompletionData.cs)12
-rw-r--r--main/src/addins/Xml/Completion/XmlNamespacePrefixMap.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Completion/XmlNamespacePrefixMap.cs)2
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Completion/XmlSchemaCompletionData.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Completion/XmlSchemaCompletionData.cs)14
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Completion/XmlSchemaCompletionDataCollection.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Completion/XmlSchemaCompletionDataCollection.cs)2
-rw-r--r--main/src/addins/Xml/Completion/XmlTagCompletionData.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Completion/XmlTagCompletionData.cs)2
-rw-r--r--main/src/addins/Xml/Dom/IAttributedXObject.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/IAspNetLanguageBinding.cs)25
-rw-r--r--main/src/addins/Xml/Dom/INamedXObject.cs (renamed from main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/AspMvcCommands.cs)65
-rw-r--r--main/src/addins/Xml/Dom/XAttribute.cs74
-rw-r--r--main/src/addins/Xml/Dom/XAttributeCollection.cs122
-rw-r--r--main/src/addins/Xml/Dom/XCData.cs44
-rw-r--r--main/src/addins/Xml/Dom/XClosingTag.cs60
-rw-r--r--main/src/addins/Xml/Dom/XComment.cs44
-rw-r--r--main/src/addins/Xml/Dom/XContainer.cs83
-rw-r--r--main/src/addins/Xml/Dom/XDocType.cs76
-rw-r--r--main/src/addins/Xml/Dom/XDocument.cs51
-rw-r--r--main/src/addins/Xml/Dom/XElement.cs144
-rw-r--r--main/src/addins/Xml/Dom/XName.cs103
-rw-r--r--main/src/addins/Xml/Dom/XNode.cs40
-rw-r--r--main/src/addins/Xml/Dom/XObject.cs110
-rw-r--r--main/src/addins/Xml/Dom/XProcessingInstruction.cs44
-rw-r--r--main/src/addins/Xml/Editor/BaseXmlEditorExtension.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Gui/BaseXmlEditorExtension.cs)182
-rw-r--r--main/src/addins/Xml/Editor/XmlCommands.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/Commands.cs)13
-rw-r--r--main/src/addins/Xml/Editor/XmlDocumentParser.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlDocumentParser.cs)13
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Editor/XmlEditorOptions.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlEditorOptions.cs)78
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Editor/XmlEditorOptionsPanel.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Gui/XmlEditorOptionsPanel.cs)10
-rw-r--r--main/src/addins/Xml/Editor/XmlEditorOptionsPanelWidget.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Gui/XmlEditorOptionsPanelWidget.cs)27
-rw-r--r--main/src/addins/Xml/Editor/XmlEditorService.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlEditorService.cs)50
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Editor/XmlFileAssociation.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlFileAssociation.cs)4
-rw-r--r--main/src/addins/Xml/Editor/XmlFileAssociationManager.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlFileAssociationManager.cs)5
-rw-r--r--main/src/addins/Xml/Editor/XmlFileAssociationNode.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlFileAssociationNode.cs)2
-rw-r--r--main/src/addins/Xml/Editor/XmlParsedDocument.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XmlParsedDocument.cs)5
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Editor/XmlSchemaManager.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlSchemaManager.cs)12
-rw-r--r--main/src/addins/Xml/Editor/XmlSchemaNode.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlSchemaNode.cs)2
-rw-r--r--main/src/addins/Xml/Editor/XmlSchemasPanel.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Gui/XmlSchemasPanel.cs)4
-rw-r--r--main/src/addins/Xml/Editor/XmlSchemasPanelWidget.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Gui/XmlSchemasPanelWidget.cs)71
-rw-r--r--main/src/addins/Xml/Editor/XmlTextEditorExtension.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlTextEditorExtension.cs)75
-rw-r--r--main/src/addins/Xml/Formatting/MonoXmlPolicy.xml (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.Formatting/MonoXmlPolicy.xml)0
-rw-r--r--main/src/addins/Xml/Formatting/XmlFormatter.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.Formatting/XmlFormatter.cs)0
-rw-r--r--main/src/addins/Xml/Formatting/XmlFormatterWriter.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.Formatting/XmlFormatterWriter.cs)2
-rw-r--r--main/src/addins/Xml/Formatting/XmlFormattingPolicy.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.Formatting/XmlFormattingPolicy.cs)0
-rw-r--r--main/src/addins/Xml/Formatting/XmlFormattingPolicyPanel.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.Formatting/XmlFormattingPolicyPanel.cs)0
-rw-r--r--main/src/addins/Xml/Formatting/XmlFormattingPolicyPanelWidget.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.Formatting/XmlFormattingPolicyPanelWidget.cs)95
-rw-r--r--main/src/addins/Xml/MSBuild/MSBuildDocumentParser.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.MSBuild/MSBuildDocumentParser.cs)4
-rw-r--r--main/src/addins/Xml/MSBuild/MSBuildElement.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.MSBuild/MSBuildElement.cs)2
-rw-r--r--main/src/addins/Xml/MSBuild/MSBuildResolveContext.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.MSBuild/MSBuildResolveContext.cs)7
-rw-r--r--main/src/addins/Xml/MSBuild/MSBuildTextEditorExtension.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.MSBuild/MSBuildTextEditorExtension.cs)13
-rw-r--r--main/src/addins/Xml/Makefile.am (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/Makefile.am)0
-rw-r--r--main/src/addins/Xml/MonoDevelop.Xml.csproj (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.csproj)187
-rw-r--r--main/src/addins/Xml/Parser/XmlAttributeState.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XmlAttributeState.cs)17
-rw-r--r--main/src/addins/Xml/Parser/XmlAttributeValueState.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XmlAttributeValueState.cs)9
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Parser/XmlCDataState.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XmlCDataState.cs)12
-rw-r--r--main/src/addins/Xml/Parser/XmlChar.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XmlChar.cs)2
-rw-r--r--main/src/addins/Xml/Parser/XmlClosingTagState.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XmlClosingTagState.cs)13
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Parser/XmlCommentState.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XmlCommentState.cs)12
-rw-r--r--main/src/addins/Xml/Parser/XmlDocTypeState.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XmlDocTypeState.cs)13
-rw-r--r--main/src/addins/Xml/Parser/XmlNameState.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XmlNameState.cs)12
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Parser/XmlParser.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/Parser.cs)69
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Parser/XmlParserState.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/State.cs)30
-rw-r--r--main/src/addins/Xml/Parser/XmlProcessingInstructionState.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XmlProcessingInstructionState.cs)12
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Parser/XmlRootState.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XmlFreeState.cs)31
-rw-r--r--main/src/addins/Xml/Parser/XmlTagState.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XmlTagState.cs)11
-rw-r--r--main/src/addins/Xml/Properties/AddinInfo.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/AddinInfo.cs)5
-rw-r--r--main/src/addins/Xml/Properties/AssemblyInfo.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/AssemblyInfo.cs)0
-rw-r--r--main/src/addins/Xml/Properties/MonoDevelop.XmlEditor.addin.xml (renamed from main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.addin.xml)81
-rw-r--r--main/src/addins/Xml/Tests/CompletionData/XmlCompletionDataImageTestFixture.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/CompletionData/XmlCompletionDataImageTestFixture.cs)4
-rw-r--r--main/src/addins/Xml/Tests/CompletionData/XmlCompletionDataStringTestFixture.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/CompletionData/XmlCompletionDataStringTestFixture.cs)4
-rw-r--r--main/src/addins/Xml/Tests/MonoDevelop.Xml.Tests.csproj (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/MonoDevelop.XmlEditor.Tests.csproj)53
-rw-r--r--main/src/addins/Xml/Tests/Parser/ActiveElementStartPathTestFixture.cs95
-rw-r--r--main/src/addins/Xml/Tests/Parser/ActiveElementUnderCursorTests.cs157
-rw-r--r--main/src/addins/Xml/Tests/Parser/AttributeNameTestFixture.cs98
-rw-r--r--main/src/addins/Xml/Tests/Parser/AttributeNameUnderCursorTests.cs56
-rw-r--r--main/src/addins/Xml/Tests/Parser/AttributeValueUnderCursorTests.cs68
-rw-r--r--main/src/addins/Xml/Tests/Parser/InsideAttributeValueTestFixture.cs109
-rw-r--r--main/src/addins/Xml/Tests/Parser/NamespaceDeclarationTestFixture.cs109
-rw-r--r--main/src/addins/Xml/Tests/Parser/ParentElementPathTestFixture.cs57
-rw-r--r--main/src/addins/Xml/Tests/Parser/ParsingTests.cs (renamed from main/tests/UnitTests/MonoDevelop.Xml.StateEngine/ParsingTests.cs)37
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Tests/Parser/QualifiedNameTestFixture.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Parser/QualifiedNameTestFixture.cs)4
-rw-r--r--main/src/addins/Xml/Tests/Parser/TestXmlParser.cs (renamed from main/tests/UnitTests/MonoDevelop.Xml.StateEngine/TestParser.cs)65
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Tests/Paths/NoElementPathTestFixture.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Paths/NoElementPathTestFixture.cs)4
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Tests/Paths/SingleElementPathTestFixture.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Paths/SingleElementPathTestFixture.cs)14
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Tests/Paths/TwoElementPathTestFixture.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Paths/TwoElementPathTestFixture.cs)32
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Tests/Resources/XMLSchema.xsd (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Resources/XMLSchema.xsd)0
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Tests/Resources/xhtml1-strict-modified.xsd (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Resources/xhtml1-strict-modified.xsd)0
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Tests/Schema/AbstractElementTestFixture.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/AbstractElementTestFixture.cs)6
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Tests/Schema/AllElementTestFixture.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/AllElementTestFixture.cs)6
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Tests/Schema/AttributeAnnotationTestFixture.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/AttributeAnnotationTestFixture.cs)4
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Tests/Schema/AttributeGroupRefTestFixture.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/AttributeGroupRefTestFixture.cs)4
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Tests/Schema/AttributeRefTestFixture.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/AttributeRefTestFixture.cs)4
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Tests/Schema/AttributeValueAnnotationTestFixture.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/AttributeValueAnnotationTestFixture.cs)4
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Tests/Schema/ChildElementAttributesTestFixture.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/ChildElementAttributesTestFixture.cs)4
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Tests/Schema/ChoiceTestFixture.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/ChoiceTestFixture.cs)4
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Tests/Schema/ComplexContentExtensionTestFixture.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/ComplexContentExtensionTestFixture.cs)4
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Tests/Schema/DuplicateElementTestFixture.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/DuplicateElementTestFixture.cs)4
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Tests/Schema/ElementAnnotationTestFixture.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/ElementAnnotationTestFixture.cs)4
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Tests/Schema/ElementRefAnnotationTestFixture.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/ElementRefAnnotationTestFixture.cs)4
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Tests/Schema/ElementWithAttributeSchemaTestFixture.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/ElementWithAttributeSchemaTestFixture.cs)4
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Tests/Schema/EnumAttributeValueTestFixture.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/EnumAttributeValueTestFixture.cs)4
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Tests/Schema/ExtensionElementTestFixture.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/ExtensionElementTestFixture.cs)6
-rw-r--r--main/src/addins/Xml/Tests/Schema/FindAttributeFromComplexTypeTestFixture.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/FindAttributeFromComplexTypeTestFixture.cs)4
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Tests/Schema/GroupRefCompositorTestFixture.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/GroupRefCompositorTestFixture.cs)4
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Tests/Schema/GroupRefTestFixture.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/GroupRefTestFixture.cs)4
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Tests/Schema/Includes/AttributeGroupRefSchemaIncludeTestFixture.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Schema.Includes/AttributeGroupRefSchemaIncludeTestFixture.cs)8
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Tests/Schema/Includes/TwoElementSchemaIncludeTestFixture.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Schema.Includes/TwoElementSchemaIncludeTestFixture.cs)8
-rw-r--r--main/src/addins/Xml/Tests/Schema/MissingSchemaElementTestFixture.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/MissingSchemaElementTestFixture.cs)4
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Tests/Schema/NamespaceCompletionTestFixture.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/NamespaceCompletionTestFixture.cs)4
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Tests/Schema/NestedAttributeGroupRefTestFixture.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/NestedAttributeGroupRefTestFixture.cs)4
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Tests/Schema/NestedChoiceTestFixture.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/NestedChoiceTestFixture.cs)4
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Tests/Schema/NestedElementSchemaTestFixture.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/NestedElementSchemaTestFixture.cs)4
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Tests/Schema/NestedSequenceTestFixture.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/NestedSequenceTestFixture.cs)4
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Tests/Schema/ReferencedElementsTestFixture.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/ReferencedElementsTestFixture.cs)4
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Tests/Schema/RestrictionElementTestFixture.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/RestrictionElementTestFixture.cs)6
-rw-r--r--main/src/addins/Xml/Tests/Schema/SchemaAssociationTests.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/SchemaAssociationTests.cs)5
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Tests/Schema/SchemaTestFixtureBase.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/SchemaTestFixtureBase.cs)4
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Tests/Schema/SequencedChoiceTestFixture.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/SequencedChoiceTestFixture.cs)4
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Tests/Schema/SimpleContentWithAttributeTestFixture.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/SimpleContentWithAttributeTestFixture.cs)4
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Tests/Schema/SingleElementSchemaTestFixture.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/SingleElementSchemaTestFixture.cs)4
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Tests/Schema/TwoElementSchemaTestFixture.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/TwoElementSchemaTestFixture.cs)3
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Tests/Schema/Uri/GetUriTestFixture.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Schema.Uri/GetUriTestFixture.cs)4
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Tests/Schema/XhtmlStrictSchemaTestFixture.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/XhtmlStrictSchemaTestFixture.cs)7
-rw-r--r--main/src/addins/Xml/Tests/Schema/XmlSchemaNamespaceTests.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/XmlSchemaNamespaceTests.cs)4
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Tests/Schema/XsdSchemaTestFixture.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/XsdSchemaTestFixture.cs)7
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Tests/Utils/ResourceManager.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Utils/ResourceManager.cs)2
-rw-r--r--[-rwxr-xr-x]main/src/addins/Xml/Tests/Utils/SchemaIncludeTestFixtureHelper.cs (renamed from main/src/addins/MonoDevelop.XmlEditor/Tests/Utils/SchemaIncludeTestFixtureHelper.cs)4
-rw-r--r--main/src/addins/Xml/icons/light/prefs-xml-16.png (renamed from main/src/addins/MonoDevelop.XmlEditor/icons/light/prefs-xml-16.png)bin422 -> 422 bytes
-rw-r--r--main/src/addins/Xml/icons/light/prefs-xml-16@2x.png (renamed from main/src/addins/MonoDevelop.XmlEditor/icons/light/prefs-xml-16@2x.png)bin917 -> 917 bytes
-rw-r--r--main/src/addins/Xml/icons/light/prefs-xml-schemas-16.png (renamed from main/src/addins/MonoDevelop.XmlEditor/icons/light/prefs-xml-schemas-16.png)bin422 -> 422 bytes
-rw-r--r--main/src/addins/Xml/icons/light/prefs-xml-schemas-16@2x.png (renamed from main/src/addins/MonoDevelop.XmlEditor/icons/light/prefs-xml-schemas-16@2x.png)bin917 -> 917 bytes
-rw-r--r--main/src/addins/Xml/schemas/MonoDevelopAddIn.xsd (renamed from main/src/addins/MonoDevelop.XmlEditor/schemas/MonoDevelopAddIn.xsd)0
-rwxr-xr-xmain/src/addins/Xml/schemas/W3C-License.html (renamed from main/src/addins/AspNet/MonoDevelop.AspNet/Schemas/W3C-License.html)0
-rwxr-xr-xmain/src/addins/Xml/schemas/XMLSchema.xsd (renamed from main/src/addins/MonoDevelop.XmlEditor/schemas/XMLSchema.xsd)0
-rwxr-xr-xmain/src/addins/Xml/schemas/appconfig.xsd (renamed from main/src/addins/MonoDevelop.XmlEditor/schemas/appconfig.xsd)0
-rwxr-xr-xmain/src/addins/Xml/schemas/manifest.xsd (renamed from main/src/addins/MonoDevelop.XmlEditor/schemas/manifest.xsd)0
-rwxr-xr-xmain/src/addins/Xml/schemas/nant.xsd (renamed from main/src/addins/MonoDevelop.XmlEditor/schemas/nant.xsd)0
-rwxr-xr-xmain/src/addins/Xml/schemas/readme.txt (renamed from main/src/addins/MonoDevelop.XmlEditor/schemas/readme.txt)0
-rwxr-xr-xmain/src/addins/Xml/schemas/xslt.xsd (renamed from main/src/addins/MonoDevelop.XmlEditor/schemas/xslt.xsd)0
-rw-r--r--main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CodeCompletion/CompletionData.cs5
-rw-r--r--main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CodeCompletion/TooltipInformation.cs10
-rw-r--r--main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CodeCompletion/TooltipInformationWindow.cs16
-rw-r--r--main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CustomTools/CustomToolService.cs51
-rw-r--r--main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CustomTools/MSBuildCustomTool.cs55
-rw-r--r--main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Projects/NewFileDialog.cs1
-rw-r--r--main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.csproj1
-rw-r--r--main/tests/Makefile.am3
-rw-r--r--main/tests/UnitTests/MonoDevelop.CSharpBinding/TestDocument.cs5
-rw-r--r--main/tests/UnitTests/UnitTests.csproj44
-rwxr-xr-xversion-checks2
491 files changed, 12389 insertions, 26993 deletions
diff --git a/.gitignore b/.gitignore
index 63bab9e283..a83a4ae599 100644
--- a/.gitignore
+++ b/.gitignore
@@ -26,6 +26,7 @@ obj/
/main/src/addins/MonoDevelop.Debugger.Win32/CorApi2/bin
/main/src/core/MonoDevelop.Core/BuildVariables.cs
/scripts/configure.exe
+/main/packages
#VS writes these sometimes even when it doesn't change anything
/main/_UpgradeReport_Files
@@ -49,6 +50,7 @@ autom4te.cache/
*.tar.gz
tarballs/
test-results/
+Thumbs.db
#Mac bundle stuff
*.dmg
@@ -76,7 +78,7 @@ test-results/
/main/man/Makefile
/main/build/MacOSX/Makefile
/main/build/Makefile
-main/external/Makefile
+/main/external/Makefile
/main/contrib/Makefile
/main/contrib/Mono.Cecil/Makefile
/main/contrib/ICSharpCode.NRefactory.CSharp/Makefile
@@ -85,8 +87,6 @@ main/external/Makefile
/main/po/Makefile
/main/src/Makefile
/main/src/addins/AspNet/Makefile
-/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Makefile
-/main/src/addins/AspNet/MonoDevelop.AspNet/Makefile
/main/src/addins/CBinding/Makefile
/main/src/addins/CSharpBinding/AspNet/Makefile
/main/src/addins/CSharpBinding/Autotools/Makefile
@@ -122,7 +122,7 @@ main/external/Makefile
/main/src/addins/MonoDevelop.RegexToolkit/Makefile
/main/src/addins/MonoDevelop.SourceEditor2/Makefile
/main/src/addins/MonoDevelop.WebReferences/Makefile
-/main/src/addins/MonoDevelop.XmlEditor/Makefile
+/main/src/addins/Xml/Makefile
/main/src/addins/MonoDeveloperExtensions/Makefile
/main/src/addins/MonoDeveloperExtensions/NUnit/Makefile
/main/src/addins/NUnit/Makefile
diff --git a/main/Main.sln b/main/Main.sln
index 03caa07ca6..5c7760290b 100644
--- a/main/Main.sln
+++ b/main/Main.sln
@@ -109,11 +109,11 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MonoDevelop.Deployment", "s
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MonoDevelop.Deployment.Linux", "src\addins\Deployment\MonoDevelop.Deployment.Linux\MonoDevelop.Deployment.Linux.csproj", "{BA9020AD-A2D1-47C8-9A7C-756162C38296}"
EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "MonoDevelop.XmlEditor", "MonoDevelop.XmlEditor", "{2A39DAE0-09B8-481E-950D-DF9DE0E87208}"
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Xml", "Xml", "{2A39DAE0-09B8-481E-950D-DF9DE0E87208}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MonoDevelop.XmlEditor.Tests", "src\addins\MonoDevelop.XmlEditor\Tests\MonoDevelop.XmlEditor.Tests.csproj", "{8E47B77A-A649-494C-9BF2-B845E39CADE9}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MonoDevelop.Xml.Tests", "src\addins\Xml\Tests\MonoDevelop.Xml.Tests.csproj", "{8E47B77A-A649-494C-9BF2-B845E39CADE9}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MonoDevelop.XmlEditor", "src\addins\MonoDevelop.XmlEditor\MonoDevelop.XmlEditor.csproj", "{86DFC74A-B0B6-4C73-9E05-9098DA8FA5F1}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MonoDevelop.Xml", "src\addins\Xml\MonoDevelop.Xml.csproj", "{86DFC74A-B0B6-4C73-9E05-9098DA8FA5F1}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "MonoDevelop.NUnit", "MonoDevelop.NUnit", "{DE462010-393D-4655-A42C-2C78BB14D2FA}"
EndProject
@@ -127,9 +127,9 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MonoDevelop.Refactoring", "
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "AspNet", "AspNet", "{0ADCD824-2506-4A61-9B88-ABF1D5267CE8}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MonoDevelop.AspNet", "src\addins\AspNet\MonoDevelop.AspNet\MonoDevelop.AspNet.csproj", "{1CF94D07-5480-4D10-A3CD-2EBD5E87B02E}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MonoDevelop.AspNet", "src\addins\AspNet\MonoDevelop.AspNet.csproj", "{1CF94D07-5480-4D10-A3CD-2EBD5E87B02E}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MonoDevelop.AspNet.Mvc", "src\addins\AspNet\MonoDevelop.AspNet.Mvc\MonoDevelop.AspNet.Mvc.csproj", "{B32AD0DD-5247-437B-A2EF-1A4676C1B072}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MonoDevelop.AspNet.Tests", "src\addins\AspNet\Tests\MonoDevelop.AspNet.Tests.csproj", "{BEFADF93-EE92-4806-9C0B-937B25311C95}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "TextTemplating", "TextTemplating", "{68F63ACB-A9B2-468F-B365-0F41F0D5F1DA}"
EndProject
@@ -1436,22 +1436,6 @@ Global
{B257A1A3-78DF-4F00-8053-D32A8B1EB679}.ReleaseMac|Any CPU.Build.0 = Release|x86
{B257A1A3-78DF-4F00-8053-D32A8B1EB679}.ReleaseWin32|Any CPU.ActiveCfg = Release|x86
{B257A1A3-78DF-4F00-8053-D32A8B1EB679}.ReleaseWin32|Any CPU.Build.0 = Release|x86
- {B32AD0DD-5247-437B-A2EF-1A4676C1B072}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {B32AD0DD-5247-437B-A2EF-1A4676C1B072}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {B32AD0DD-5247-437B-A2EF-1A4676C1B072}.DebugGnome|Any CPU.ActiveCfg = Debug|Any CPU
- {B32AD0DD-5247-437B-A2EF-1A4676C1B072}.DebugGnome|Any CPU.Build.0 = Debug|Any CPU
- {B32AD0DD-5247-437B-A2EF-1A4676C1B072}.DebugMac|Any CPU.ActiveCfg = Debug|Any CPU
- {B32AD0DD-5247-437B-A2EF-1A4676C1B072}.DebugMac|Any CPU.Build.0 = Debug|Any CPU
- {B32AD0DD-5247-437B-A2EF-1A4676C1B072}.DebugWin32|Any CPU.ActiveCfg = Debug|Any CPU
- {B32AD0DD-5247-437B-A2EF-1A4676C1B072}.DebugWin32|Any CPU.Build.0 = Debug|Any CPU
- {B32AD0DD-5247-437B-A2EF-1A4676C1B072}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {B32AD0DD-5247-437B-A2EF-1A4676C1B072}.Release|Any CPU.Build.0 = Release|Any CPU
- {B32AD0DD-5247-437B-A2EF-1A4676C1B072}.ReleaseGnome|Any CPU.ActiveCfg = Release|Any CPU
- {B32AD0DD-5247-437B-A2EF-1A4676C1B072}.ReleaseGnome|Any CPU.Build.0 = Release|Any CPU
- {B32AD0DD-5247-437B-A2EF-1A4676C1B072}.ReleaseMac|Any CPU.ActiveCfg = Release|Any CPU
- {B32AD0DD-5247-437B-A2EF-1A4676C1B072}.ReleaseMac|Any CPU.Build.0 = Release|Any CPU
- {B32AD0DD-5247-437B-A2EF-1A4676C1B072}.ReleaseWin32|Any CPU.ActiveCfg = Release|Any CPU
- {B32AD0DD-5247-437B-A2EF-1A4676C1B072}.ReleaseWin32|Any CPU.Build.0 = Release|Any CPU
{B7C1673E-5124-4BE5-8D21-EC8B12F85B6B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{B7C1673E-5124-4BE5-8D21-EC8B12F85B6B}.DebugGnome|Any CPU.ActiveCfg = Debug|Any CPU
{B7C1673E-5124-4BE5-8D21-EC8B12F85B6B}.DebugMac|Any CPU.ActiveCfg = Debug|Any CPU
@@ -1492,6 +1476,22 @@ Global
{BA9020AD-A2D1-47C8-9A7C-756162C38296}.ReleaseMac|Any CPU.Build.0 = Release|Any CPU
{BA9020AD-A2D1-47C8-9A7C-756162C38296}.ReleaseWin32|Any CPU.ActiveCfg = Release|Any CPU
{BA9020AD-A2D1-47C8-9A7C-756162C38296}.ReleaseWin32|Any CPU.Build.0 = Release|Any CPU
+ {BEFADF93-EE92-4806-9C0B-937B25311C95}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {BEFADF93-EE92-4806-9C0B-937B25311C95}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {BEFADF93-EE92-4806-9C0B-937B25311C95}.DebugGnome|Any CPU.ActiveCfg = Debug|Any CPU
+ {BEFADF93-EE92-4806-9C0B-937B25311C95}.DebugGnome|Any CPU.Build.0 = Debug|Any CPU
+ {BEFADF93-EE92-4806-9C0B-937B25311C95}.DebugMac|Any CPU.ActiveCfg = Debug|Any CPU
+ {BEFADF93-EE92-4806-9C0B-937B25311C95}.DebugMac|Any CPU.Build.0 = Debug|Any CPU
+ {BEFADF93-EE92-4806-9C0B-937B25311C95}.DebugWin32|Any CPU.ActiveCfg = Debug|Any CPU
+ {BEFADF93-EE92-4806-9C0B-937B25311C95}.DebugWin32|Any CPU.Build.0 = Debug|Any CPU
+ {BEFADF93-EE92-4806-9C0B-937B25311C95}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {BEFADF93-EE92-4806-9C0B-937B25311C95}.Release|Any CPU.Build.0 = Release|Any CPU
+ {BEFADF93-EE92-4806-9C0B-937B25311C95}.ReleaseGnome|Any CPU.ActiveCfg = Release|Any CPU
+ {BEFADF93-EE92-4806-9C0B-937B25311C95}.ReleaseGnome|Any CPU.Build.0 = Release|Any CPU
+ {BEFADF93-EE92-4806-9C0B-937B25311C95}.ReleaseMac|Any CPU.ActiveCfg = Release|Any CPU
+ {BEFADF93-EE92-4806-9C0B-937B25311C95}.ReleaseMac|Any CPU.Build.0 = Release|Any CPU
+ {BEFADF93-EE92-4806-9C0B-937B25311C95}.ReleaseWin32|Any CPU.ActiveCfg = Release|Any CPU
+ {BEFADF93-EE92-4806-9C0B-937B25311C95}.ReleaseWin32|Any CPU.Build.0 = Release|Any CPU
{BFE8691A-D323-4622-9021-7B8B27F81599}.Debug|Any CPU.ActiveCfg = Debug|x86
{BFE8691A-D323-4622-9021-7B8B27F81599}.Debug|Any CPU.Build.0 = Debug|x86
{BFE8691A-D323-4622-9021-7B8B27F81599}.DebugGnome|Any CPU.ActiveCfg = Debug|x86
@@ -1998,7 +1998,7 @@ Global
{A7A4246D-CEC4-42DF-A3C1-C31B9F51C4EC} = {DE462010-393D-4655-A42C-2C78BB14D2FA}
{0AF16AF1-0876-413E-9803-08BD33C19E00} = {DE462010-393D-4655-A42C-2C78BB14D2FA}
{1CF94D07-5480-4D10-A3CD-2EBD5E87B02E} = {0ADCD824-2506-4A61-9B88-ABF1D5267CE8}
- {B32AD0DD-5247-437B-A2EF-1A4676C1B072} = {0ADCD824-2506-4A61-9B88-ABF1D5267CE8}
+ {BEFADF93-EE92-4806-9C0B-937B25311C95} = {0ADCD824-2506-4A61-9B88-ABF1D5267CE8}
{A2364D6A-00EF-417C-80A6-815726C70032} = {68F63ACB-A9B2-468F-B365-0F41F0D5F1DA}
{D1D35409-C814-47F6-B038-B9B5BF0FE490} = {68F63ACB-A9B2-468F-B365-0F41F0D5F1DA}
{8CCA39DD-8412-4547-BE7F-0C3D3ACC6FAC} = {68F63ACB-A9B2-468F-B365-0F41F0D5F1DA}
@@ -2111,7 +2111,7 @@ Global
$12.scope = image/svg+xml
$0.XmlFormattingPolicy = $13
$13.inheritsSet = null
- $13.scope = image/svg+xml
+ $13.scope = image/svgxml
outputpath = build\bin\
MakePkgConfig = False
MakeLibPC = True
diff --git a/main/configure.in b/main/configure.in
index 94e9d58d08..293933bd8e 100644
--- a/main/configure.in
+++ b/main/configure.in
@@ -312,8 +312,6 @@ src/addins/TextTemplating/TextTransform/Makefile
src/addins/TextTemplating/MonoDevelop.TextTemplating/Makefile
src/addins/TextTemplating/Mono.TextTemplating.Tests/Makefile
src/addins/AspNet/Makefile
-src/addins/AspNet/MonoDevelop.AspNet/Makefile
-src/addins/AspNet/MonoDevelop.AspNet.Mvc/Makefile
src/addins/MonoDevelop.Autotools/Makefile
src/addins/MonoDevelop.DesignerSupport/Makefile
src/addins/MonoDevelop.WebReferences/Makefile
@@ -332,7 +330,7 @@ src/addins/WindowsPlatform/WindowsAPICodePack/Shell/Makefile
src/addins/WindowsPlatform/WindowsPlatform/Makefile
src/addins/MonoDevelop.AssemblyBrowser/Makefile
src/addins/MonoDevelop.SourceEditor2/Makefile
-src/addins/MonoDevelop.XmlEditor/Makefile
+src/addins/Xml/Makefile
src/addins/MonoDevelop.Refactoring/Makefile
src/addins/MonoDevelop.Debugger/Makefile
src/addins/MonoDevelop.Debugger.Gdb/Makefile
diff --git a/main/src/addins/AspNet/ChangeLog b/main/src/addins/AspNet/ChangeLog
index ee5e8af19b..4b94c7347a 100644
--- a/main/src/addins/AspNet/ChangeLog
+++ b/main/src/addins/AspNet/ChangeLog
@@ -1,6 +1,3359 @@
-2009-08-12 Michael Hutchinson <mhutchinson@novell.com>
+2010-07-21 Mike Krüger <mkrueger@novell.com>
+
+ * Makefile.am:
+ * MonoDevelop.AspNet.csproj:
+ * MonoDevelop.AspNet/WebTypeManager.cs:
+ * MonoDevelop.AspNet/AspNetAppProject.cs: Track API changes.
+
+2010-07-21 Mike Krüger <mkrueger@novell.com>
+
+ * MonoDevelop.AspNet/AspNetSyntaxMode.cs: Track API changes.
+
+2010-07-18 Mike Krüger <mkrueger@novell.com>
+
+ * MonoDevelop.AspNet/AspNetToolboxNode.cs:
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Track API
+ changes.-
+
+2010-07-18 Mike Krüger <mkrueger@novell.com>
+
+ * MonoDevelop.AspNet/AspNetToolboxNode.cs:
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs:
+ * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Use
+ TextEditorData infrastructure.
+
+2010-07-18 Mike Krüger <mkrueger@novell.com>
+
+ * MonoDevelop.AspNet.Gui/HtmlEditorExtension.cs:
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Track API
+ changes.
+
+2010-07-17 Mike Krüger <mkrueger@novell.com>
+
+ * MonoDevelop.AspNet/AspNetSyntaxMode.cs: Track API changes.
+
+2010-07-17 Mike Krüger <mkrueger@novell.com>
+
+ * MonoDevelop.AspNet/AspNetSyntaxMode.cs: Changed
+ highlighting.
+
+2010-07-16 Mike Krüger <mkrueger@novell.com>
+
+ * MonoDevelop.AspNet/AspNetSyntaxMode.cs: Track API changes.
+
+2010-07-15 Mike Krüger <mkrueger@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Fixed 'Bug
+ 621658 - Parameter hints disappear afterkeystroke'.
+
+2010-07-15 Mike Krüger <mkrueger@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs:
+ * MonoDevelop.AspNet.Gui/ILanguageCompletionBuilder.cs: Worked
+ on 'Bug 621658 - Parameter hints disappear afterkeystroke'.
+
+2010-07-13 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetSyntaxMode.cs: Added styles for
+ templated regions in files, e.g. ASP.NET and T4.
+
+2010-07-12 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.Html/HtmlParser.cs:
+ * MonoDevelop.AspNet/CodeBehind.cs:
+ * MonoDevelop.AspNet/AspNetAppProject.cs:
+ * MonoDevelop.AspNet.Parser/AspNetParser.cs:
+ * MonoDevelop.AspNet/AspNetParserService.cs:
+ * MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs: Track
+ ProjectDomService/Parser API.
+
+ * MonoDevelop.AspNet.addin.xml: Track ProjectDomService/Parser
+ API. Also, treat spark files as html.
+
+2010-07-11 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspProjectDom.cs: Workaround for gmcs
+ bug.
+
+2010-06-16 Mike Krüger <mkrueger@novell.com>
+
+ * MonoDevelop.AspNet/AspNetSyntaxMode.cs: Fixed 'Bug 611859 -
+ aspx highlighting issues'.
+
+2010-06-14 Lluis Sanchez Gual <lluis@novell.com>
+
+ * MonoDevelop.AspNet/AspNetExecutionHandler.cs: Track api
+ changes.
+
+2010-06-07 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetFileDescriptionTemplate.cs: Track
+ SingleFileDescription template API.
+
+2010-06-04 Mike Krüger <mkrueger@novell.com>
+
+ * MonoDevelop.AspNet/AspNetSyntaxMode.cs: Fixed 'Bug 611558 -
+ Phantom text in editor after typing </script>'.
+
+2010-06-04 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Partial
+ support for HTML encoded expressions and script blocks.
+
+2010-06-04 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.StateEngine/AspNetDom.cs:
+ * MonoDevelop.AspNet.StateEngine/AspNetExpressionState.cs: Add
+ support for HTML encoded expressions in the state engine.
+
+ * MonoDevelop.AspNet.StateEngine/HtmlTagState.cs:
+ * MonoDevelop.AspNet.StateEngine/HtmlScriptBodyState.cs:
+ Support for HTML script blocks.
+
+ * Makefile.am:
+ * MonoDevelop.AspNet.csproj: Added file to project.
+
+2010-06-02 Mike Krüger <mkrueger@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs:
+ * MonoDevelop.AspNet.Gui/ILanguageCompletionBuilder.cs: Worked
+ on ASP.NET completion.
+
+2010-05-31 Lluis Sanchez Gual <lluis@novell.com>
+
+ * MonoDevelop.AspNet.csproj: Don't require a specific M.A
+ version.
+
+2010-05-30 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/CodeBehind.cs: Moved duplicate field
+ elimination code into re-usable method.
+
+ * MonoDevelop.AspNet.Gui/AspProjectDom.cs:
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs:
+ * MonoDevelop.AspNet.Gui/ILanguageCompletionBuilder.cs: Added
+ support for CodeBeside members in embedded completion.
+
+ * MonoDevelop.AspNet.Parser/MemberListVisitor.cs: Collect
+ locations of items.
+
+2010-05-29 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Makefile.am:
+ * MonoDevelop.AspNet.csproj:
+ * MonoDevelop.AspNet/AspNetAppProject.cs:
+ * MonoDevelop.AspNet/RegistrationCache.cs:
+ * MonoDevelop.AspNet/ProjectRegisteredControls.cs: Change the
+ file info caches so that they don't constantly stat the
+ disk. Instead, they use the project file events to flush
+ items.
+
+2010-05-29 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/ProjectRegisteredControls.cs: Fix control
+ registration.
+
+ * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Use
+ directory for config search, not filename.
+
+2010-05-28 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs: Get the web.config
+ name from the project. Fixes Bug 610066 - Adding a reference
+ to an ASP.NET MVC project causes Web.config to be renamed
+ "web.config".
+
+
+2010-05-28 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Parser/PageInfo.cs: More granular version
+ of the NRE fix.
+
+2010-05-28 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Parser/PageInfo.cs: Fix an NRE.
+
+2010-05-28 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/WebTypeManager.cs: Cache ProjectDoms.
+
+2010-05-28 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Makefile.am:
+ * MonoDevelop.AspNet.csproj: Added AspProjectDom to project.
+
+ * MonoDevelop.AspNet.Gui/ILanguageCompletionBuilder.cs:
+ DocumentInfo now contains the usings, ProjectDoms, script
+ region list, class name, base type.
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Only
+ rebuild the DocumentInfo when we get a new
+ AspNetParsedDocument, not on every keystroke. Track APIs.
+
+ * MonoDevelop.AspNet.Gui/AspProjectDom.cs: Moved from
+ DomWrapper in AspNetCompletion.cs.
+
+ * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Added
+ APIs for getting the usings and ProjectDoms for the
+ document.
+
+2010-05-28 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs: Missed a file in
+ previous commit.
+
+2010-05-28 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs:
+ * MonoDevelop.AspNet.Gui/ILanguageCompletionBuilder.cs: Pass
+ the full list of usings to the ILanguageCompletionBuilder.
+
+ * MonoDevelop.AspNet/WebTypeManager.cs:
+ * MonoDevelop.AspNet/ProjectRegisteredControls.cs:
+ Registration cache now tracks imports and assembly
+ registrations.
+
+ * Makefile.am:
+ * MonoDevelop.AspNet.csproj: Add Sysytem.Xml.Linq reference.
+
+2010-05-28 Lluis Sanchez Gual <lluis@novell.com>
+
+ * MonoDevelop.Html/PathCompletion.cs:
+ * MonoDevelop.AspNet/MasterContentFileDescriptionTemplate.cs:
+ Fix incorrect use of ShowCustomDialog/RunCustomDialog.
+
+2010-05-27 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/CodeBehind.cs:
+ * MonoDevelop.AspNet.Parser/MemberListVisitor.cs:
+ * MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs: Fixed Bug
+ 524051 - .as?x.designer.cs code generated by MonoDevelop
+ includes fields already present in the main class.
+
+2010-05-27 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/CodeBehind.cs:
+ * MonoDevelop.AspNet/WebTypeManager.cs:
+ * MonoDevelop.AspNet/AspNetToolboxNode.cs:
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs:
+ * MonoDevelop.AspNet.Parser/WebFormReferenceManager.cs:
+ * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Move
+ all the WebTypeManager static utility-type methods onto a
+ WebTypeContext class. Reduces arguments and will make it
+ easier to cache stuff.
+
+2010-05-26 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/WebTypeManager.cs: Added method for
+ getting the IType for an HTML control.
+
+ * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Added
+ method for looking up IType of arbitrary tag.
+
+2010-05-26 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProjectBinding.cs: Fix creating
+ ASP.NET single file projects. Fixes Bug 603521 - Command
+ errors opening aspx file.
+
+2010-05-21 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Deployment/WebDeployService.cs:
+ * MonoDevelop.AspNet.Deployment/WebDeployOptionsPanelWidget.cs:
+ Clean up dialog placement.
+
+2010-05-19 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Make
+ prefix generation and directive insertion APIs more
+ flexible.
+
+ * MonoDevelop.AspNet.Parser/PageInfo.cs: Make it possible to
+ inject directives to an existing info.
+
+ * Makefile.am:
+ * MonoDevelop.AspNet.csproj:
+ * MonoDevelop.AspNet.Parser/PageDirectiveVisitor.cs: Removed
+ unneeded class.
+
+ * MonoDevelop.AspNet/AspNetToolboxNode.cs: Use new
+ ItextToolboxItem and DocumentReferenceManager APIs to insert
+ new directives into the DOM only when the item is actually
+ inserted into the editor. Fixes Bug 543721 - Auto-added
+ control directives sometimes fail.
+
+2010-05-18 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Parser/PageInfo.cs:
+ * MonoDevelop.AspNet.Parser/AspNetParser.cs:
+ * MonoDevelop.AspNet.Parser.Dom/RootNode.cs:
+ * MonoDevelop.AspNet.Parser/AspNetParsedDocument.cs: Collect
+ more information from the document for C# completion.
+
+2010-05-18 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Makefile.am:
+ * gtk-gui/gui.stetic:
+ * MonoDevelop.AspNet.csproj:
+ * MonoDevelop.AspNet/CodeBehind.cs:
+ * MonoDevelop.AspNet.Parser/Document.cs:
+ * MonoDevelop.AspNet.Parser/PageInfo.cs:
+ * MonoDevelop.AspNet/AspNetAppProject.cs:
+ * MonoDevelop.AspNet/AspNetSyntaxMode.cs:
+ * MonoDevelop.AspNet/AspNetToolboxNode.cs:
+ * MonoDevelop.AspNet.Parser/AspNetParser.cs:
+ * MonoDevelop.AspNet.Parser.Dom/RootNode.cs:
+ * MonoDevelop.AspNet/AspNetToolboxProvider.cs:
+ * MonoDevelop.AspNet.Parser/PageInfoVisitor.cs:
+ * MonoDevelop.AspNet.Parser/MemberListVisitor.cs:
+ * MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs:
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs:
+ * MonoDevelop.AspNet.Parser/AspNetParsedDocument.cs:
+ * MonoDevelop.AspNet.Parser/PageDirectiveVisitor.cs:
+ * MonoDevelop.AspNet.Parser/WebFormReferenceManager.cs:
+ * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs:
+ * MonoDevelop.AspNet/MasterContentFileDescriptionTemplate.cs:
+ Heavy refactoring and tidying of ASP.NET parser code to
+ support future changes.
+
+2010-05-12 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs:
+ * MonoDevelop.AspNet/AspNetAppProjectConfiguration.cs: Fix Bug
+ 602154 - bin/ directory not created when building ASP.Net
+ Web Application template.
+
+2010-05-11 Mike Krüger <mkrueger@novell.com>
+
+ * MonoDevelop.Html/PathCompletion.cs:
+ * MonoDevelop.Html/DocTypeCompletionData.cs:
+ * MonoDevelop.AspNet.Gui/BaseHtmlEditorExtension.cs:
+ * MonoDevelop.AspNet.Parser/SuggestedHandlerCompletionData.cs:
+ Track API changes.
+
+2010-05-07 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs:
+ * MonoDevelop.AspNet/AspNetExecutionHandler.cs: Fix checks to
+ allow .NET 4.
+
+2010-04-28 Mike Krüger <mkrueger@novell.com>
+
+ * MonoDevelop.Html/PathCompletion.cs:
+ * MonoDevelop.Html/DocTypeCompletionData.cs:
+ * MonoDevelop.AspNet.Parser/SuggestedHandlerCompletionData.cs:
+ Track API changes.
+
+2010-04-26 Mike Krüger <mkrueger@novell.com>
+
+ * MonoDevelop.AspNet/AspNetSyntaxMode.cs:
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Worked on
+ ASP.NET highlighting.
+
+2010-04-21 Mike Krüger <mkrueger@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Worked on
+ ASP.NET completion.
+
+2010-04-20 Mike Krüger <mkrueger@novell.com>
+
+ * MonoDevelop.AspNet.Gui/ILanguageCompletionBuilder.cs:
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Worked on
+ ASP.NET completion.
+
+2010-04-20 Mike Krüger <mkrueger@novell.com>
+
+ * MonoDevelop.AspNet.Gui/ILanguageCompletionBuilder.cs: fixed
+ ASP.NET completion.
+
+2010-04-19 Mike Krüger <mkrueger@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs:
+ * MonoDevelop.AspNet.Gui/ILanguageCompletionBuilder.cs: Worked
+ on ASP.NET completion.
+
+2010-03-22 Lluis Sanchez Gual <lluis@novell.com>
+
+ * AssemblyInfo.cs:
+ * MonoDevelop.AspNet.addin.xml: Bumped MD version.
+
+2010-03-17 Lluis Sanchez Gual <lluis@novell.com>
+
+ * MonoDevelop.AspNet.csproj: Remove import off mono.addins
+ targets.
+
+2010-03-17 Lluis Sanchez Gual <lluis@novell.com>
+
+ * Makefile.am:
+ * gtk-gui/gui.stetic:
+ * MonoDevelop.AspNet.csproj:
+ * MonoDevelop.AspNet.addin.xml:
+ * MonoDevelop.Html/PathCompletion.cs:
+ * MonoDevelop.AspNet/XspParameters.cs:
+ * MonoDevelop.AspNet/WebTypeManager.cs:
+ * MonoDevelop.Html/HtmlSchemaService.cs:
+ * MonoDevelop.AspNet.Parser/Document.cs:
+ * MonoDevelop.AspNet/AspNetAppProject.cs:
+ * MonoDevelop.AspNet.Parser/Directive.cs:
+ * MonoDevelop.AspNet/AspNetToolboxNode.cs:
+ * MonoDevelop.AspNet.Gui/BrowserLauncher.cs:
+ * MonoDevelop.AspNet.Gui/XspOptionsPanel.cs:
+ * MonoDevelop.Html/DocTypeCompletionData.cs:
+ * MonoDevelop.AspNet.Completion/SimpleLists.cs:
+ * MonoDevelop.Html/HtmlCompletionDataProvider.cs:
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs:
+ * MonoDevelop.AspNet.Gui/BaseHtmlEditorExtension.cs:
+ * MonoDevelop.AspNet.Deployment/WebDeployService.cs:
+ * MonoDevelop.AspNet.Deployment/WebDeployCommands.cs:
+ * MonoDevelop.AspNet.Gui/AspNetConfigurationPanel.cs:
+ * MonoDevelop.AspNet/AspNetAppProjectConfiguration.cs:
+ * MonoDevelop.AspNet.Gui/ILanguageCompletionBuilder.cs:
+ * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs:
+ * MonoDevelop.AspNet.Deployment/WebDeployLaunchDialog.cs:
+ * MonoDevelop.AspNet.Deployment/WebDeployOptionsPanel.cs:
+ * MonoDevelop.AspNet/ProjectFolderNodeBuilderExtension.cs:
+ * MonoDevelop.AspNet/MasterContentFileDescriptionTemplate.cs:
+ * MonoDevelop.AspNet.Parser/SuggestedHandlerCompletionData.cs:
+ Merged MD.Projects into MD.Core, and MD.Projects.Gui,
+ MD.Core.Gui and MD.Components into MD.Ide.
+
+2010-03-03 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Parser/Directive.cs:
+ * MonoDevelop.AspNet.Deployment/AspNetDeployServiceExtension.cs:
+ Track ProjectFile Link API.
+
+2010-02-18 Lluis Sanchez Gual <lluis@novell.com>
+
+ * MonoDevelop.Html/PathCompletion.cs:
+ * MonoDevelop.Html/DocTypeCompletionData.cs:
+ * MonoDevelop.AspNet.Parser/SuggestedHandlerCompletionData.cs:
+ Track api changes.
+
+2010-02-16 Lluis Sanchez Gual <lluis@novell.com>
+
+ * MonoDevelop.AspNet.addin.xml: Added some conditions to avoid
+ early loading of extensions.
+
+ * MonoDevelop.AspNet.Gui/HtmlEditorExtension.cs:
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: File
+ extensions are now declared in the node metadata.
+
+2010-01-28 Lluis Sanchez Gual <lluis@novell.com>
+
+ * gtk-gui/generated.cs:
+ * gtk-gui/MonoDevelop.AspNet.Gui.XspOptionsPanelWidget.cs:
+ * gtk-gui/MonoDevelop.AspNet.Deployment.WebTargetEditor.cs:
+ * gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployTargetEditor.cs:
+ * gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployLaunchDialog.cs:
+ * gtk-gui/MonoDevelop.AspNet.Gui.AspNetConfigurationPanelWidget.cs:
+ * gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployOptionsPanelWidget.cs:
+ Flush.
+
+2010-01-28 Lluis Sanchez Gual <lluis@novell.com>
+
+ * MonoDevelop.AspNet/AspNetMSBuildImportProvider.cs: Track api
+ changes.
+
+2010-01-27 Mike Krüger <mkrueger@novell.com>
+
+ * MonoDevelop.Html/PathCompletion.cs:
+ * MonoDevelop.Html/DocTypeCompletionData.cs:
+ * MonoDevelop.AspNet.Parser/SuggestedHandlerCompletionData.cs:
+ Track API changes.
+
+2010-01-14 Lluis Sanchez Gual <lluis@novell.com>
+
+ * MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs: Implement
+ the new SupportsItem method.
+
+2010-01-08 Mike Krüger <mkrueger@novell.com>
+
+ * MonoDevelop.AspNet/LineInterceptingTextWriter.cs: fixed
+ possible null ref.
+
+2010-01-07 mkrueger <${AuthorEmail}>
+
+ * MonoDevelop.AspNet/LineInterceptingTextWriter.cs: Fixed null
+ reference exception.
+
+2009-12-11 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetExecutionHandler.cs: Use "xsp1" not
+ "xsp", but include a fallback so that it still works without
+ wrapper scripts, as xsp1 is xsp.exe.
+
+2009-12-07 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Makefile.am:
+ * MonoDevelop.AspNet.csproj:
+ * MonoDevelop.AspNet/AspNetAppProject.cs:
+ * MonoDevelop.AspNet/LineInterceptingTextWriter.cs: Move the
+ LineInterceptingTextWriter to another file and make it
+ public. Implement proper support for crlf.
+
+2009-12-07 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs: Scan a few more
+ output lines to check whether xsp has started.
+
+2009-12-04 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs:
+ * MonoDevelop.AspNet.Gui/BrowserLauncher.cs: Scan xsp output
+ for "Listening on port: " to detect when it's started,
+ instead of polling the server.
+
+2009-12-02 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Deployment/WebDeployService.cs: Name
+ threads to make debugging easier.
+
+2009-12-02 Mike Krüger <mkrueger@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs:
+ * MonoDevelop.AspNet.Gui/ILanguageCompletionBuilder.cs: Worked
+ on ASP.NET code completion.
+
+2009-12-01 Mike Krüger <mkrueger@novell.com>
+
+ * Makefile.am:
+ * MonoDevelop.AspNet.csproj:
+ * MonoDevelop.AspNet.addin.xml:
+ * MonoDevelop.AspNet.Parser.Dom/RootNode.cs:
+ * MonoDevelop.AspNet.Parser.Dom/ExpressionNode.cs:
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs:
+ * MonoDevelop.AspNet.Gui/ILanguageCompletionBuilder.cs: Worked
+ on ASP.NET code completion.
+
+2009-12-01 Lluis Sanchez Gual <lluis@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs:
+ * MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs:
+ * MonoDevelop.AspNet.Deployment/WebDeployService.cs:
+ * MonoDevelop.AspNet.Deployment/AspNetDeployServiceExtension.cs:
+ Introduced the ConfigurationSelector class to all methods
+ that previously took a configuration name as string. This
+ eliminates the ambiguity between solution configuration
+ names and project configuration names.
+
+2009-11-20 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs: Track API. Set
+ UserAssemblyPaths. Get correct configuration.
+
+ * MonoDevelop.AspNet/AspNetExecutionCommand.cs: Add property
+ for list of user assemblies.
+
+2009-11-19 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Fix bad
+ flags manipulation. Fixes Bug 556514 - asp.net Autogenerated
+ function are not public.
+
+2009-11-11 Lluis Sanchez Gual <lluis@novell.com>
+
+ * MonoDevelop.AspNet/CodeBehind.cs: Strip the implicit
+ namespace from the generated compilation unit. Required for
+ VB.
+
+2009-11-11 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProjectConfiguration.cs:
+ Simplify creation of new ASP.NET MVC configurations.
+
+2009-11-09 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.csproj: Wire the soft debug addin into
+ the build.
+
+2009-10-30 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/BrowserLauncher.cs: Fake a
+ IProcessAsyncOperation so that is can be returned from an
+ execution handler.
+
+2009-10-30 Lluis Sanchez Gual <lluis@novell.com>
+
+ * AssemblyInfo.cs:
+ * MonoDevelop.AspNet.addin.xml: Bump MD version.
+
+2009-10-29 Lluis Sanchez Gual <lluis@novell.com>
+
+ * gtk-gui/generated.cs:
+ * gtk-gui/MonoDevelop.AspNet.Gui.XspOptionsPanelWidget.cs:
+ * gtk-gui/MonoDevelop.AspNet.Deployment.WebTargetEditor.cs:
+ * gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployTargetEditor.cs:
+ * gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployLaunchDialog.cs:
+ * gtk-gui/MonoDevelop.AspNet.Gui.AspNetConfigurationPanelWidget.cs:
+ * gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployOptionsPanelWidget.cs:
+ Flush.
+
+2009-10-09 Mike Krüger <mkrueger@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Track
+ namespace renamings.
+
+2009-10-08 Ankit Jain <jankit@novell.com>
+
+ * MonoDevelop.AspNet.csproj: Mark *-sharp references,
+ with SpecificVersion=false. Import md.targets .
+
+2009-10-07 Lluis Sanchez Gual <lluis@novell.com>
+
+ * AssemblyInfo.cs:
+ * MonoDevelop.AspNet.addin.xml: Bump MD version.
+
+2009-10-06 Michael Hutchinson <mhutchinson@novell.com>
* Makefile.am:
- * MonoDevelop.AspNet.Mvc: Include the ASP.NET MVC and
+ * MonoDevelop.AspNet.csproj: Update.
+
+ * MonoDevelop.Html/PathCompletion.cs: Creates completion lists
+ for picking file paths.
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs:
+ * MonoDevelop.AspNet.Gui/BaseHtmlEditorExtension.cs: Tweak API
+ so classes can return completion lists instead of modifying
+ one they're given.
+
+ * MonoDevelop.AspNet.Parser/Directive.cs: Complete paths for
+ register src and for masterpagefile. Finally fix the
+ register directive attribute completion too.
+
+2009-10-02 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs:
+ * MonoDevelop.Html/DocTypeCompletionData.cs:
+ * MonoDevelop.AspNet/ProjectRegisteredControls.cs:
+ * MonoDevelop.AspNet.Parser/WebFormReferenceManager.cs: Use
+ ordinal string compares where appropriate.
+
+2009-10-02 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Take
+ tag name into account when resolving type from control
+ registration directives. Only compare prefix once per
+ directive, and use case-insensitive ordinal comparisons.
+ Fixes bug #543727.
+
+2009-10-01 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/WebTypeManager.cs:
+ * MonoDevelop.AspNet/AspNetAppProject.cs: Resolve user
+ controls from referenced projects. Fixes "Bug 519651 -
+ Custom Controls cannot be registered in ASP.NET pages".
+
+2009-09-30 Michael Hutchinson <mhutchinson@novell.com>
+
+ * gtk-gui/gui.stetic:
+ * gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployLaunchDialog.cs:
+ Enable horizontal scroll so the dialog doesn't get
+ oversized.
+
+2009-09-21 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Tidy up a
+ few things, and fix some FIXMEs.
+
+2009-09-21 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/CodeBehind.cs:
+ * MonoDevelop.AspNet/AspNetAppProject.cs: Add a cache for
+ codebehind type names.
+
+ * MonoDevelop.AspNet/ProjectRegisteredControls.cs: Factor out
+ FileInfoCache from the control registration cache, so we can
+ use it for a type name cache.
+
+ * MonoDevelop.AspNet/WebTypeManager.cs: Type UserControls with
+ the type of this CodeBehind, if it can be looked up.
+
+ * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Fix a
+ couple of small bugs in UserControl type lookups.
+
+2009-09-21 Lluis Sanchez Gual <lluis@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs: Found a better way
+ of removing the encoding declaration from the header.
+
+2009-09-21 Lluis Sanchez Gual <lluis@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs: Omit the xml
+ declaration when saving the .config file, because it is
+ declaring the utf-16 encoding, which wrong when saving the
+ content to a utf-8 file. Fixes bug #537846 - Editing
+ .aspx-files throws 'Error in text editor extension
+ chain'-exception.
+
+2009-09-16 Lluis Sanchez Gual <lluis@novell.com>
+
+ * MonoDevelop.AspNet\AspNetExecutionHandler.cs: Set DEVPATH to
+ the path of xsp. Required on Windows, so that .NET can find
+ Mono.Web.
+
+ * MonoDevelop.AspNet\AspNetAppProject.cs: Moved the XSP check
+ to the execution handler.
+
+2009-09-12 Mike Krüger <mkrueger@novell.com>
+
+ * MonoDevelop.Html/DocTypeCompletionData.cs:
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs:
+ * MonoDevelop.AspNet.Parser/SuggestedHandlerCompletionData.cs:
+ Track API changes.
+
+2009-09-01 Lluis Sanchez Gual <lluis@novell.com>
+
+ * MonoDevelop.AspNet.csproj: Don't require a specific version
+ for Mono.Addins.
+
+2009-08-26 Lluis Sanchez Gual <lluis@novell.com>
+
+ * gtk-gui/gui.stetic: Update gtk# dependency.
+
+2009-08-20 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs:
+ * MonoDevelop.AspNet/AspNetExecutionCommand.cs:
+ * MonoDevelop.AspNet/AspNetExecutionHandler.cs: Run xsp on the
+ correct target runtime. Support using a bundled xsp if it
+ doesn't exist in the target runtime.
+
+2009-08-19 Lluis Sanchez Gual <lluis@novell.com>
+
+ * Makefile.am:
+ * MonoDevelop.AspNet.csproj:
+ * MonoDevelop.AspNet.addin.xml:
+ * MonoDevelop.AspNet/AspNetMSBuildImportProvider.cs: Use the
+ new extension point for generating msbuild imports.
+
+2009-08-13 Lluis Sanchez Gual <lluis@novell.com>
+
+ * MonoDevelop.AspNet/WebTypeManager.cs:
+ * MonoDevelop.AspNet/AspNetAppProject.cs:
+ * MonoDevelop.AspNet/AspNetToolboxLoader.cs:
+ * MonoDevelop.AspNet/AspNetToolboxProvider.cs: Use the new
+ AssemblyContext class to query and resolve assemblies.
+
+2009-08-12 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.csproj: Include the ASP.NET MVC and
TextTemplating addins in the main solution and build.
+2009-08-10 Lluis Sanchez Gual <lluis@novell.com>
+
+ * AspNetAddIn.csproj: Don't local-copy project references.
+
+2009-08-06 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProjectConfiguration.cs:
+ Override and implement CopyFrom. Should allow the config
+ editing panel to store values.
+
+2009-08-04 Lluis Sanchez Gual <lluis@novell.com>
+
+ * AspNetAddIn.csproj: Don't local copy assemblies.
+
+2009-07-31 Lluis Sanchez Gual <lluis@novell.com>
+
+ * gtk-gui/MonoDevelop.AspNet.Gui.AspNetConfigurationPanelWidget.cs:
+ Flush.
+
+2009-07-31 Lluis Sanchez Gual <lluis@novell.com>
+
+ * gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployTargetEditor.cs:
+ * gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployLaunchDialog.cs:
+ Flush.
+
+2009-07-28 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetConfigurationPanel.cs:
+ * MonoDevelop.AspNet.Gui/AspNetConfigurationPanelWidget.cs:
+ Remove unnecessary field.
+
+2009-07-28 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Makefile.am:
+ * gtk-gui/gui.stetic:
+ * AspNetAddIn.csproj:
+ * MonoDevelop.AspNet.Gui/AspNetFileSelector.cs:
+ * gtk-gui/MonoDevelop.AspNet.Gui.AspNetFileSelector.cs:
+ * MonoDevelop.AspNet/MasterContentFileDescriptionTemplate.cs:
+ Move AspNetFileSelector to
+ MonoDevelop.Project.Gui.Dialogs.ProjectFileSelectorDialog.
+
+2009-07-24 Lluis Sanchez Gual <lluis@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProjectBinding.cs: Track api
+ changes. Patch by Viktoria Dudka.
+
+2009-07-17 Mike Krüger <mkrueger@novell.com>
+
+ * Makefile.am:
+ * AspNetAddIn.csproj: Fixed build.
+
+2009-07-16 Mike Krüger <mkrueger@novell.com>
+
+ * Makefile.am:
+ * AspNetAddIn.csproj:
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Started to
+ work on ASP.NET code completion.
+
+2009-07-15 Mike Krüger <mkrueger@novell.com>
+
+ * MonoDevelop.AspNet/AspNetSyntaxMode.cs: Worked on
+ highlighting support for code blocks.
+
+2009-07-14 Mike Krüger <mkrueger@novell.com>
+
+ * Makefile.am:
+ * AspNetAddIn.csproj:
+ * MonoDevelop.AspNet.addin.xml:
+ * MonoDevelop.AspNet/AspNetSyntaxMode.cs: Added ASP.NET C#
+ region syntax highlighting.
+
+2009-07-06 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs: Properly map the
+ configuration name to a configuration.
+
+2009-07-06 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Templates/WebForm-Empty.xft.xml:
+ * Templates/WebApplication.xpt.xml:
+ * Templates/MasterPage-Empty.xft.xml:
+ * Templates/WebForm-CodeBehind.xft.xml:
+ * Templates/MasterPage-CodeBehind.xft.xml:
+ * Templates/WebForm-CodeBehindNonPartial.xft.xml:
+ * Templates/MasterPage-CodeBehindNonPartial.xft.xml: Make head
+ tag into server tag so that theming works. Patch from
+ Alfredo De Vito.
+
+2009-07-02 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/CodeBehind.cs: Move CodeBehindWriter from
+ MonoDevelop.AspNet to MonoDevelop.DesignerSupport.
+
+2009-06-23 Lluis Sanchez Gual <lluis@novell.com>
+
+ * MonoDevelop.AspNet/AspNetToolboxNode.cs:
+ * MonoDevelop.AspNet.Gui/BrowserLauncher.cs:
+ * MonoDevelop.AspNet.Gui/AspNetFileSelector.cs: Use the new
+ DesktopService instead of PlatformService.
+
+2009-06-15 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/WebTypeManager.cs: Track assembly lookup
+ APIs. Fix bad logic that could cause NRE.
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs:
+ * MonoDevelop.AspNet/AspNetToolboxLoader.cs:
+ * MonoDevelop.AspNet/AspNetToolboxProvider.cs: Track assembly
+ lookup APIs.
+
+2009-05-21 Lluis Sanchez Gual <lluis@novell.com>
+
+ * MonoDevelop.AspNet/AspNetFileDescriptionTemplate.cs:
+ * MonoDevelop.AspNet/MasterContentFileDescriptionTemplate.cs:
+ Track api changes.
+
+2009-05-19 Lluis Sanchez Gual <lluis@novell.com>
+
+ * MonoDevelop.AspNet\CodeBehind.cs:
+ * MonoDevelop.AspNet\AspNetAppProject.cs:
+ * MonoDevelop.AspNet.Gui\AspNetFileSelector.cs:
+ * MonoDevelop.AspNet\ProjectFolderNodeBuilderExtension.cs: Use
+ the new FilePath class for handling file and directory
+ paths.
+
+2009-04-27 Lluis Sanchez Gual <lluis@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs:
+ * MonoDevelop.AspNet/AspNetExecutionCommand.cs: Added
+ TargetRuntime parameter to AspNetExecutionComand.
+
+2009-04-27 Mike Krüger <mkrueger@novell.com>
+
+ * MonoDevelop.AspNet/AspNetFileDescriptionTemplate.cs: Track
+ API changes.
+
+2009-04-23 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/CodeBehind.cs: Notify fileservice when a
+ file that isn't open has been changed. Fixes "Bug 496278 -
+ C# completion doesn't update when designer codebehind is
+ updated".
+
+2009-04-23 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Templates/WebContentForm-CodeBehind.xft.xml: Fix the
+ DependsOn value. Thanks to Dax@daxxfiles.net for the patch.
+
+2009-04-20 Lluis Sanchez Gual <lluis@novell.com>
+
+ * Makefile.am:
+ * AspNetAddIn.csproj:
+ * MonoDevelop.AspNet.addin.xml:
+ * MonoDevelop.AspNet/AspNetAppProject.cs:
+ * MonoDevelop.AspNet/AspNetExecutionHandler.cs:
+ * MonoDevelop.AspNet/AspNetExecutionCommand.cs: Use an
+ IExecutionHandler and an ExecutionCommand to handle the
+ execution of asp.net projects. This will allow supporting
+ special execution modes such as debug or profile.
+
+2009-04-20 Mike Krüger <mkrueger@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetFileSelector.cs: Renamed
+ PixbufService to ImageService.
+
+2009-04-20 Mike Krüger <mkrueger@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetFileSelector.cs: Track API
+ changes.
+
+
+2009-04-17 Mike Kestner <mkestner@novell.com>
+
+ * AspNetAddin.csproj: don't require specific gtk-sharp version.
+
+2009-04-17 Mike Krüger <mkrueger@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetFileSelector.cs: Removed icon
+ service.
+
+2009-04-16 Lluis Sanchez Gual <lluis@novell.com>
+
+ * MonoDevelop.AspNet/WebTypeManager.cs:
+ * MonoDevelop.AspNet/AspNetAppProject.cs:
+ * MonoDevelop.AspNet/AspNetToolboxNode.cs:
+ * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Moved
+ SystemAssemblyService and related classes to the namespace
+ MonoDevelop.Core.Assemblies.
+
+2009-04-15 Lluis Sanchez Gual <lluis@novell.com>
+
+ * AssemblyInfo.cs:
+ * MonoDevelop.AspNet.addin.xml: Bump MD version.
+
+2009-04-15 Lluis Sanchez Gual <lluis@novell.com>
+
+ * MonoDevelop.AspNet/WebTypeManager.cs:
+ * MonoDevelop.AspNet/AspNetAppProject.cs:
+ * MonoDevelop.AspNet/AspNetToolboxNode.cs:
+ * MonoDevelop.AspNet/AspNetToolboxLoader.cs:
+ * MonoDevelop.AspNet/AspNetToolboxProvider.cs:
+ * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Track
+ api changes to support multiple target runtimes.
+
+2009-04-09 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/MasterContentFileDescriptionTemplate.cs:
+ Add a using.
+
+2009-03-20 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs: Fix output directory
+ for newly created projects, since DotNetProject changes it
+ during project creation.
+
+2009-03-17 Mike Krüger <mkrueger@novell.com>
+
+ * MonoDevelop.Html/HtmlParser.cs:
+ * MonoDevelop.AspNet.Parser/AspNetParser.cs:
+ * MonoDevelop.AspNet/MasterContentFileDescriptionTemplate.cs:
+ Track API changes.
+
+2009-03-16 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs: Migrate bad output
+ directories from MD1 format. Set proper output directory for
+ new configurations.
+
+ * MonoDevelop.AspNet/AspNetAppProjectConfiguration.cs: Remove
+ output directory hacks.
+
+2009-03-13 Andrés G. Aragoneses <aaragoneses@novell.com>
+
+ * gtk-gui/gui.stetic:
+ * gtk-gui/MonoDevelop.AspNet.Deployment.WebTargetEditor.cs:
+ Making some strings not translatable.
+
+2009-03-11 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/CodeBehind.cs: Work around text editor
+ bug (#484574) that caused modifications to open files not to
+ be saved. Only try to save files that we've modified.
+
+ * MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs: Force type
+ database to update during build. Fixes "Bug 484122 -
+ [Regression] Default C# Asp.Net template fails to compile".
+ Remove dead code.
+
+2009-03-06 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetFileSelector.cs: Show
+ directories that contain project files, even if the
+ directories aren't explicitly in the project. Don't
+ duplicate directories that have children that are explictly
+ in the project.
+
+2009-03-06 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Don't crash
+ on documents without doctypes. Better root element
+ completion for web controls and master children.
+
+2009-03-04 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs:
+ * MonoDevelop.AspNet.Gui/BaseHtmlEditorExtension.cs: Track
+ doctype parsing changes. Fix jumping to selections.
+
+2009-03-04 Lluis Sanchez Gual <lluis@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs: Changed the way
+ execution handlers work. We are not using platform ids
+ anymore. Instead, we use command strings when looking for
+ execution handlers. IExecutionHandlerFactory has been
+ removed and now everything is handled by IExecutionHandler,
+ which has a new CanExecute method. This model is more simple
+ and more generic.
+
+2009-02-27 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/ProjectFolderNodeBuilderExtension.cs:
+ Save the project after adding a special folder.
+
+2009-02-27 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/ProjectFolderNodeBuilderExtension.cs:
+ More efficient query for existing folders. Attach node
+ builder to more limited range of node types. Show special
+ folders even if they exist in the project, or users might
+ get confused when the menu vanishes.
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs: Slim down the list
+ of special folders to ones for web apps rather than sites.
+ Make virtual.
+
+ * MonoDevelop.AspNet.addin.xml: Remove unused attribute.
+
+2009-02-24 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/CodeBehind.cs:
+ * MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs: Move
+ codebehind generation code from VerifyCodeBehindBuildStep to
+ CodeBehind and refactor it into something more re-usable.
+
+2009-02-24 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs: Fix swapped
+ parameters in ResolveVirtualPath.
+
+ * MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs: Generate
+ strongly typed master accessor property if the MasterType
+ directive is present.
+
+2009-02-24 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Parser/PageInfo.cs: More properties in
+ ToString.
+
+ * MonoDevelop.AspNet.Parser/PageInfoVisitor.cs: Ignore case of
+ MasterType directive.
+
+2009-02-24 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Templates/WebContentForm.xft.xml:
+ * Templates/NestedMasterPage.xft.xml:
+ * Templates/WebContentForm-CodeBehind.xft.xml:
+ * Templates/NestedMasterPage-CodeBehind.xft.xml: Fix
+ MasterPageFile attribute name.
+
+2009-02-24 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Parser/Directive.cs: Add completion for
+ MasterType directive.
+
+2009-02-24 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetFileSelector.cs: Diplay project
+ tree and its icons correctly.
+
+2009-02-24 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/MasterContentFileDescriptionTemplate.cs:
+ Add new template type that allows user to pick a master page
+ and stubs out content regions.
+
+ * Makefile.am:
+ * gtk-gui/gui.stetic:
+ * AspNetAddIn.csproj:
+ * MonoDevelop.AspNet.addin.xml: Updated.
+
+ * Templates/MasterPage-Empty.xft.xml:
+ * Templates/MasterPage-CodeBehind.xft.xml:
+ * Templates/MasterPage-CodeBehindNonPartial.xft.xml: Correct
+ names.
+
+ * Templates/WebContentForm.xft.xml:
+ * Templates/NestedMasterPage.xft.xml:
+ * Templates/WebContentForm-CodeBehind.xft.xml:
+ * Templates/NestedMasterPage-CodeBehind.xft.xml: New
+ templates.
+
+ * MonoDevelop.AspNet.Gui/AspNetFileSelector.cs:
+ * gtk-gui/MonoDevelop.AspNet.Gui.AspNetFileSelector.cs: Added
+ a UI for picking a master page.
+
+ * MonoDevelop.AspNet.Parser/ContentPlaceHolderVisitor.cs: A
+ visitor for finding the contentplaceholder ids of a master
+ page.
+
+2009-02-24 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs: Add methods for
+ handling virtual paths.
+
+ * MonoDevelop.AspNet.Parser/PageInfo.cs:
+ * MonoDevelop.AspNet.Parser/PageInfoVisitor.cs: Capture
+ MasterPageType info.
+
+2009-02-23 Lluis Sanchez Gual <lluis@novell.com>
+
+ * MonoDevelop.AspNet.addin.xml: Track merge of the project pad
+ context menu.
+
+2009-02-20 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetFileDescriptionTemplate.cs: Track
+ API.
+
+2009-02-20 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs: Add an attempt at
+ resolving assemblies from bin.
+
+2009-02-20 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/WebTypeManager.cs:
+ * MonoDevelop.AspNet/AspNetAppProject.cs:
+ * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Track
+ assembly database API behaviour. Improve assembly resolution
+ error handling. Fixes "Bug 477476 - Template for ASP.Net Web
+ Application doesn't work by default." and restores ASP.NET
+ code completion and codebehind generation.
+
+2009-02-11 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/HtmlEditorExtension.cs:
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Track API.
+
+2009-02-08 Michael Hutchinson <mhutchinson@novell.com>
+
+ * AspNetAddIn.csproj: Copy schemas to output directory.
+
+2009-02-07 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Remove
+ unnecessary "base" instance access, as csc doesn't like it.
+
+2009-02-06 Lluis Sanchez Gual <lluis@novell.com>
+
+ * AspNetAddIn.mdp:
+ * AspNetAddIn.csproj: Migrated to MSBuild file format.
+
+2009-02-04 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Track
+ BindingService API.
+
+2009-02-03 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Allow
+ forced completion for fields/properties in expressions.
+
+ * MonoDevelop.AspNet.StateEngine/AspNetFreeState.cs: Add
+ rollback so that expressions can be differentiated. Fixes
+ field/property completion in expressions.
+
+2009-02-03 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Parser/SuggestedHandlerCompletionData.cs:
+ Track BindingService API. Fixes event completion bugs.
+
+2009-02-03 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/WebTypeManager.cs:
+ * MonoDevelop.AspNet/ProjectRegisteredControls.cs:
+ * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs:
+ Implement full type lookup and listing mechanisms for
+ controls registered in web.config. Enables full code
+ completion for these controls. Fixes "Bug 470488 - Controls
+ registered in web.config do not have code completion".
+
+2009-02-03 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs: Add a
+ ControlRegistrationCache to the project to cache web.config
+ control registrations.
+
+ * MonoDevelop.AspNet/ProjectRegisteredControls.cs: Use a
+ custom class for encapsulating registration info instead of
+ TagPrefixInfo, so we can attach extra data.
+
+ * MonoDevelop.AspNet/WebTypeManager.cs: Use project's
+ ControlRegistrationCache for type lookups.
+
+2009-02-03 Lluis Sanchez Gual <lluis@novell.com>
+
+ * AssemblyInfo.cs:
+ * MonoDevelop.AspNet.addin.xml: Bump MD version.
+
+2009-02-03 Lluis Sanchez Gual <lluis@novell.com>
+
+ * gtk-gui/generated.cs:
+ * gtk-gui/MonoDevelop.AspNet.Gui.XspOptionsPanelWidget.cs:
+ * gtk-gui/MonoDevelop.AspNet.Deployment.WebTargetEditor.cs:
+ * gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployTargetEditor.cs:
+ * gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployLaunchDialog.cs:
+ * gtk-gui/MonoDevelop.AspNet.Gui.AspNetConfigurationPanelWidget.cs:
+ *
+ gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployOptionsPanelWidget.cs:
+ Flush.
+
+2009-01-30 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetFileDescriptionTemplate.cs: Propagate a
+ policy parent SolutionItem through project/file creation so that
+ policies can always be resolved correctly.
+
+2009-01-29 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Makefile.am:
+ * AspNetAddIn.mdp:
+ * MonoDevelop.AspNet/ProjectRegisteredControls.cs: Add a class to load
+ and cache control registrations from web.config files. It's intended
+ to be bound to the AspNetAppProject, for documents to look to for
+ completion and resolving types.
+
+2009-01-28 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/WebTypeManager.cs: Don't pass a null
+ TargetFramework to SystemAssemblySevice, or it explodes. Propagate
+ project info to the web.config handler so that it can resolve
+ assemblies with the correct TargetFramework.
+
+2009-01-28 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: If the
+ special-casing of the asp prefix to System.Web.dll fails to resolve
+ the type, do a full lookup. Fixes the asp prefix with other controls,
+ as is common with e.g. System.Web.Extensions.
+
+2009-01-28 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Parser/MemberListVisitor.cs: Log type resolution
+ errors to the document's error list.
+
+ * MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs: Make sure the
+ member list is initialised before outputting errors, so that type
+ resolution errors show up in the error pad. Treat them as warnings
+ until we can be 100% sure that they're not mistakes on MD's part.
+
+2009-01-21 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs: Execute xsp in the project's
+ BaseDirectory, not the SourceDirectory, since the bin directory is
+ already assumed to be in BaseDirectory, and SourceDirectory seems to
+ be obsolete. Fixes running ASP.NET csproj projects in certain
+ circumstances.
+
+2009-01-21 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/BaseHtmlEditorExtension.cs: Remove closing tag
+ completion as the base class handles it now.
+
+2009-01-16 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs:
+ * MonoDevelop.AspNet/AspNetAppProjectBinding.cs:
+ * MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs:
+ * MonoDevelop.AspNet.Parser/AspNetParsedDocument.cs:
+ * MonoDevelop.AspNet.MD1Serialization/MD1AspNetCustomDataItem.cs: Track
+ DetermineWebSubtype API.
+
+ * Templates/WebForm-Empty.xft.xml:
+ * Templates/WebApplication.xpt.xml:
+ * Templates/WebControl-Empty.xft.xml:
+ * Templates/WebHandler-Empty.xft.xml:
+ * Templates/GlobalAsax-Empty.xft.xml:
+ * Templates/WebService-Empty.xft.xml:
+ * Templates/MasterPage-Empty.xft.xml:
+ * Templates/WebConfig-SubDir.xft.xml:
+ * Templates/WebForm-CodeBehind.xft.xml:
+ * Templates/WebConfig-Application.xft.xml:
+ * Templates/MasterPage-CodeBehind.xft.xml:
+ * Templates/WebHandler-CodeBehind.xft.xml:
+ * Templates/WebService-CodeBehind.xft.xml:
+ * Templates/GlobalAsax-CodeBehind.xft.xml:
+ * Templates/WebControl-CodeBehind.xft.xml:
+ * Templates/WebForm-CodeBehindNonPartial.xft.xml:
+ * Templates/MasterPage-CodeBehindNonPartial.xft.xml:
+ * Templates/WebControl-CodeBehindNonPartial.xft.xml: Don't explicitly
+ set a build action, since it was wrong for MSBuild files, and the
+ default works fine.
+
+2009-01-16 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Deployment/AspNetDeployServiceExtension.cs: Deploy
+ all files marked as "Content" rather than all ASP.NET files.
+
+2009-01-16 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs: Add JavaScript to WebSubType.
+
+2009-01-16 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs: Add css, xhtml, html, htm to
+ the WebSubTypes enum. This means that their default build action is
+ "Content", so they get deployed by default. Should fix "Bug 466855 -
+ CSS files in App_Themes/theme_name/ are not deployed".
+
+2009-01-14 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs: Don't try to update web.config
+ when references are removed during project loading. Fixes "Bug 465852
+ - MonoDevelop 2.0 (trunk) does not load ASP.NET projects from 1.0."
+
+2008-12-12 Lluis Sanchez Gual <lluis@novell.com>
+
+ * AspNetAddIn.mdp: All projects now require fx 3.5.
+
+2008-12-11 Lluis Sanchez Gual <lluis@novell.com>
+
+ * MonoDevelop.AspNet/WebTypeManager.cs:
+ * MonoDevelop.AspNet/AspNetAppProject.cs:
+ * MonoDevelop.AspNet/AspNetToolboxNode.cs:
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs:
+ * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Track API
+ changes.
+
+2008-12-09 Lluis Sanchez Gual <lluis@novell.com>
+
+ * AspNetAddIn.mdp: Don't require a specific version of Mono.Addins.
+
+2008-12-05 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Ignore
+ PersistChildrenAttribute, as it does more harm than good. It's
+ essentially the opposite of ParseChildrenAttribute, but it's often
+ incorrectly set, whereas ParseChildrenAttribute is almost invariably
+ correct. Also, assume that any property tagged with a
+ TemplateContainerAttribute has an InnerProperty persistence mode.
+
+2008-12-05 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Add TODO markers for
+ ParseChildrenAttribute.ChildControlType support.
+
+2008-12-04 Lluis Sanchez Gual <lluis@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs: Implemented CanExecute.
+
+ * MonoDevelop.AspNet.Gui/BrowserLauncher.cs: Track api changes.
+
+2008-12-04 Lluis Sanchez Gual <lluis@novell.com>
+
+ * Makefile.am: Make it work for parallel build.
+
+2008-12-03 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.addin.xml: Set correct packing for Web deployment
+ panel.
+
+2008-12-03 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.addin.xml: Move options panels to more appropriate
+ categories.
+
+ * gtk-gui/gui.stetic: Flush.
+
+2008-12-02 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Makefile.am:
+ * AspNetAddIn.mdp:
+ * AssemblyInfo.cs: Add AssemblyInfo.cs files that are autogenerated from
+ the addin manifests.
+
+2008-11-27 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Use
+ DocumentationService to look up class documentation lazily.
+
+2008-11-26 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs: If project's CompileTarget
+ isn't "Library", automatically fix it, since older versions of MD did
+ not set it correctly.
+
+2008-11-25 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.Html/HtmlParser.cs: Implement multiple root element
+ validation since parser no longer handles this.
+
+2008-11-19 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Improve accuracy of
+ completions for controls' children. Add support for completing
+ properties' childen.
+
+ * MonoDevelop.AspNet/WebTypeManager.cs:
+ * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Extend lookup
+ methods to be able to look for types other than Control.
+
+2008-11-18 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.StateEngine/HtmlTagState.cs: Improve error location
+ precision for implicitly self-closing tags.
+
+2008-11-18 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Improve element
+ completion.
+
+ * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Make
+ AspTagCompletionData public.
+
+ * MonoDevelop.AspNet.Gui/BaseHtmlEditorExtension.cs: Expose methods to
+ subclass.
+
+2008-11-18 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Use ASP.NET
+ serialisation attributes to improve completion. Display properties as
+ children when appropriate; don't display properties as attributes or
+ controls as children when inappropriate.
+
+ * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Add a shortcut
+ for HTML controls.
+
+2008-11-17 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Templates/WebApplication.xpt.xml: Fix case of asp:button.
+
+ * MonoDevelop.AspNet/WebTypeManager.cs: Make sure all type name lookups
+ are case insensitive (seems that MonoDevelop's defaults changed).
+ Fixes Bug 445850 - [Regression] The C# Asp Web application template
+ fails to compile .
+
+ * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Trivial 1.1 to
+ 2.0 API update.
+
+2008-11-14 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.StateEngine/HtmlTagState.cs:
+ * MonoDevelop.AspNet.StateEngine/HtmlClosingTagState.cs: Implement new
+ parser states that handle implicit tag closing for HTML.
+
+ * Makefile.am:
+ * AspNetAddIn.mdp: Updated.
+
+ * MonoDevelop.Html/HtmlParser.cs:
+ * MonoDevelop.AspNet.Gui/BaseHtmlEditorExtension.cs:
+ * MonoDevelop.AspNet.StateEngine/AspNetFreeState.cs: Use the new HTML
+ parsing states.
+
+ * MonoDevelop.Html/ElementTypes.cs: Lookups to determine if an HTML tags
+ is block/inline/empty/paragraph.
+
+2008-11-14 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/BaseHtmlEditorExtension.cs: Flag schema for
+ update when doctype changes.
+
+2008-11-14 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/WebTypeManager.cs: Use project to resolve target
+ .NET version for assemblies.
+
+ * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Resolve types
+ of items from register directives. Lazy-load descriptions.
+
+2008-11-13 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/WebTypeManager.cs:
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs:
+ * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Include
+ controls referenced by Register directives when listing tags.
+
+2008-11-13 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.addin.xml: Specify position for build step.
+
+ * MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs: Enable designer class
+ updating for UserControls and MasterPages.
+
+2008-11-13 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/BaseHtmlEditorExtension.cs: Split out the HTML
+ editor extension. Add document outlining.
+
+ * Makefile.am:
+ * AspNetAddIn.mdp: Updated.
+
+ * MonoDevelop.AspNet.addin.xml:
+ * MonoDevelop.Html/HtmlParser.cs: Added an HTML parser.
+
+ * MonoDevelop.AspNet.Gui/HtmlEditorExtension.cs: Split out the HTML
+ editor extension. Add document outlining. Mostly extracted from
+ Moonlight addin.
+
+2008-11-12 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Makefile.am:
+ * AspNetAddIn.mdp:
+ * MonoDevelop.AspNet.Gui/HtmlTextEditorExtension.cs:
+ * MonoDevelop.AspNet.Gui/BaseHtmlEditorExtension.cs: Renamed file.
+
+2008-11-12 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs:
+ * MonoDevelop.AspNet.Gui/HtmlTextEditorExtension.cs: Move re-usable HTML
+ editing into base class in preparation for other changes.
+
+2008-11-12 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/HtmlTextEditorExtension.cs: Tidy up
+ doctype->schema resolution code, and only try to resolve doctype when
+ it changes. Use case-insensitive completion.
+
+2008-11-11 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Track fix in text
+ editor's completion line/col indexing. It's now 1-indexed, as it
+ should be. Fix attribute value type resolution fallback.
+
+ * MonoDevelop.AspNet.Parser/Document.cs: Comment out some noisy debug
+ code.
+
+2008-11-06 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs: Use new API; move default
+ build action code into GetDefaultBuildAction override.
+
+2008-11-05 Lluis Sanchez Gual <lluis@novell.com>
+
+ * MonoDevelop.AspNet.addin.xml: Bump MD version.
+
+2008-11-04 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs: Override new
+ IsLibraryBasedProjectType property, consolidating code in base class.
+
+2008-11-03 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs: Set CompileTarget to library
+ on base class, not just overriding the values on the property. Fixes
+ Bug 436275 - MD ASP.Net project does not build in VS2005.
+
+2008-11-02 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs: Track MD core API to re-enable
+ running of ASP.NET projects.
+
+2008-10-28 Mike Krüger <mkrueger@novell.com>
+
+ * MonoDevelop.AspNet.addin.xml: fixed 'Bug 399737 - Code completion
+ busted for referenced assemblies that are not in GAC, are outside of
+ the solution, and which are referenced by other non-GAC outside
+ referenced assemblies'.
+
+2008-10-27 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Fix directive name
+ completion triggering.
+
+2008-10-24 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.StateEngine/AspNetDom.cs:
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs:
+ * MonoDevelop.AspNet.StateEngine/AspNetDirectiveState.cs:
+ * MonoDevelop.AspNet.StateEngine/AspNetExpressionState.cs:
+ * MonoDevelop.AspNet.StateEngine/AspNetServerCommentState.cs: Changed
+ Xml StateEngine from offset-based positions to line/column positions.
+
+2008-10-22 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs: Better default build action
+ for auto-added codebehind files.
+
+2008-10-22 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/CodeBehind.cs:
+ * MonoDevelop.AspNet/AspNetAppProject.cs:
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Moved
+ codebehind/designer lookup functionality to
+ MonoDevelop.DesignerSupport.
+
+2008-10-16 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Add simple
+ field/property completions in render and databinding expressions.
+
+2008-10-16 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Finally fix event
+ handler completion with the new MD Code DOM.
+
+2008-10-16 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Makefile.am:
+ * AspNetAddIn.mdp: Updated.
+
+ * MonoDevelop.AspNet.addin.xml: Enable HtmlEditorExtension for HTML
+ completion.
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs:
+ * MonoDevelop.AspNet.Gui/HtmlTextEditorExtension.cs: Refactor HTML
+ completion from AspNetEditorExtension into an HtmlEditorExtension
+ base class.
+
+2008-10-16 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Completion/SimpleLists.cs: Remove unused methods.
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Move code to base
+ class. Implement more directive completions.
+
+ * MonoDevelop.AspNet.Parser/Directive.cs: Change API to alter lists
+ instead of creating them.
+
+2008-10-15 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Move more into the
+ base class. Implement directive name completion.
+
+ * MonoDevelop.AspNet.Parser/Directive.cs: Remove unused parameters.
+
+2008-10-15 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Parser.Internal/AspParser.cs: Improve error
+ reporting.
+
+2008-10-14 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Track API. Work
+ around some bugs in directive completion until they're fixed
+ properly.
+
+ * Makefile.am:
+ * AspNetAddIn.mdp: Updated.
+
+ * MonoDevelop.AspNet.Completion/SimpleLists.cs: Add utility methods for
+ simple completion lists with default values.
+
+ * MonoDevelop.AspNet.Parser/Directive.cs: Add attribute completion for
+ all directives. Some work towards completing directive names and
+ values.
+
+ * MonoDevelop.AspNet.Parser/AspNetParsedDocument.cs: Add a WebSubType
+ property.
+
+2008-10-13 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Parser/Directive.cs: Add more attributes.
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Remove code that's
+ moved to base class.
+
+2008-10-09 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Parser/Directive.cs:
+ * MonoDevelop.Html/HtmlCompletionDataProvider.cs:
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs:
+ * MonoDevelop.Html/DocTypeCompletionDataProvider.cs: Track APIs.
+
+ * Makefile.am:
+ * AspNetAddIn.mdp: Updated.
+
+2008-10-09 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.Html/DocTypeCompletionData.cs:
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs:
+ * MonoDevelop.AspNet.Parser/SuggestedHandlerCompletionData.cs: Track
+ CompletionData API.
+
+2008-10-08 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Parser/Directive.cs: Track API.
+
+ * Makefile.am:
+ * AspNetAddIn.mdp: Updated.
+
+ * MonoDevelop.AspNet.Parser/SimpleCompletionData.cs: Moved to
+ MonoDevelop.Projects.Gui.
+
+ * MonoDevelop.AspNet.Parser/AspNetCompilationUnit.cs: Not needed;
+ deleted.
+
+2008-10-07 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.Html/DocTypeCompletionData.cs:
+ * MonoDevelop.AspNet.Parser/SimpleCompletionData.cs:
+ * MonoDevelop.AspNet.Parser/SuggestedHandlerCompletionData.cs: Track
+ API.
+
+2008-10-03 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Moved lots of code
+ down to the BaseXmlEditorExtension.
+ * AspNetAddIn.mdp, Makefile.am: Updated.
+ * MonoDevelop.AspNet.Parser/AspNetParsedDocument.cs: Renamed. Add
+ NonSerializable flag.
+
+2008-10-03 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs,
+ MonoDevelop.AspNet.Parser/SimpleCompletionData.cs,
+ MonoDevelop.AspNet.Parser/Directive.cs: Enable some simple
+ completion for directive attributes.
+
+2008-10-01 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs: Track API.
+ * MonoDevelop.AspNet.addin.xml, MonoDevelop.AspNet.MD1Serialization,
+ MonoDevelop.AspNet.MD1Serialization/MD1AspNetCustomDataItem.cs,
+ MonoDevelop.AspNet.MD1Serialization/md1format.xml,
+ MonoDevelop.AspNet.Deployment/WebDeployService.cs,
+ MonoDevelop.AspNet.Deployment/WebDeployResolver.cs,
+ MonoDevelop.AspNet.Deployment/AspNetDeployServiceExtension.cs,
+ AspNetAddIn.mdp, Makefile.am: Integrate deployment with the
+ deployment service chnages; makes it much cleaner. Track "arbitrary
+ build action" API changes; this improves compatibility with VS Web
+ Apps.
+
+2008-09-29 Mike Krüger <mkrueger@novell.com>
+
+ * MonoDevelop.Html/DocTypeCompletionData.cs,
+ MonoDevelop.AspNet.Parser/SuggestedHandlerCompletionData.cs,
+ MonoDevelop.AspNet.Parser/SimpleCompletionData.cs: Implemented
+ IComparable <ICompletionData>.
+
+2008-09-26 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs,
+ MonoDevelop.AspNet.Parser/AspNetCompilationUnit.cs,
+ MonoDevelop.AspNet.Parser/AspNetParser.cs,
+ MonoDevelop.AspNet.Parser/CompilationUnitVisitor.cs,
+ MonoDevelop.AspNet/AspNetParserService.cs,
+ MonoDevelop.AspNet/AspNetToolboxNode.cs,
+ MonoDevelop.AspNet/CodeBehind.cs,
+ MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs: Track API.
+
+2008-09-25 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Parser/CompilationUnitVisitor.cs: Track API.
+
+2008-09-18 Lluis Sanchez Gual <lluis@novell.com>
+
+ * MonoDevelop.Html/HtmlCompletionDataProvider.cs,
+ MonoDevelop.Html/DocTypeCompletionDataProvider.cs,
+ MonoDevelop.AspNet.Parser/SimpleCompletionData.cs: Track api
+ changes.
+
+2008-09-12 Lluis Sanchez Gual <lluis@novell.com>
+
+ * gtk-gui/MonoDevelop.AspNet.Gui.XspOptionsPanelWidget.cs,
+ gtk-gui/generated.cs,
+ gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployLaunchDialog.cs,
+ gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployTargetEditor.cs,
+ gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployOptionsPanelWidget.cs,
+ gtk-gui/MonoDevelop.AspNet.Gui.AspNetConfigurationPanelWidget.cs,
+ gtk-gui/MonoDevelop.AspNet.Deployment.WebTargetEditor.cs: Updated
+ generated code.
+
+2008-09-12 Lluis Sanchez Gual <lluis@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs,
+ MonoDevelop.AspNet/AspNetToolboxNode.cs,
+ MonoDevelop.AspNet/WebTypeManager.cs: Track api changes.
+
+2008-09-10 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Makefile.am, AspNetAddIn.mdp: Updated.
+ * MonoDevelop.AspNet.Parser/SimpleCompletionData.cs: Utility completion
+ data classes -- in C#3!
+ * MonoDevelop.AspNet.Parser/Directive.cs: Work-in-progress on directive
+ completion.
+
+2008-09-10 Mike Krüger <mkrueger@novell.com>
+
+ * MonoDevelop.AspNet/CodeBehind.cs,
+ MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs,
+ MonoDevelop.AspNet/AspNetParserService.cs,
+ MonoDevelop.AspNet/AspNetToolboxNode.cs,
+ MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs,
+ MonoDevelop.AspNet.Parser/CompilationUnitVisitor.cs,
+ MonoDevelop.AspNet.Parser/AspNetParser.cs: Changed compilation
+ unit/document meta information interface.
+
+2008-09-04 Lluis Sanchez Gual <lluis@novell.com>
+
+ * MonoDevelop.AspNet/ProjectFolderNodeBuilderExtension.cs: Moved the
+ extensible tree view to its own directory.
+
+2008-09-03 Mike Krüger <mkrueger@novell.com>
+
+ * MonoDevelop.AspNet/AspNetToolboxNode.cs, AspNetAddIn.mdp: Changes
+ caused by parser service change.
+
+2008-08-22 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Fix attribute value
+ completion.
+
+2008-08-20 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.StateEngine/AspNetFreeState.cs: Replace C#3
+ automatic properties into C# 2 properties. Fixes build on Mono <
+ 1.9. Thanks to Joshua Simmons for the patch.
+
+2008-08-12 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Parser.Internal/AspTokenizer.cs,
+ MonoDevelop.AspNet.Parser.Internal/Directive.cs,
+ MonoDevelop.AspNet.Parser.Internal/AspParser.cs,
+ MonoDevelop.AspNet.Parser.Internal/Location.cs,
+ MonoDevelop.AspNet.Parser.Internal/ParseException.cs,
+ MonoDevelop.AspNet.Parser.Dom/ILocation.cs: Update from mcs SVN
+ HEAD. Fixes "Bug 409109 - The ASP.NET Editor crashes if you leave a
+ tag opened".
+
+2008-08-08 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs: Use Loading property instead
+ of filename nullness hack.
+ * MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs: Simplify code
+ generation appraoch for partial classes: if the file.aspx (etc)
+ file is newer than the corresponding file.aspx.designer.* file,
+ regenerate the designer class entirely. This means that we no
+ longer require refactoring support, so the feature now works with
+ Boo and VB.NET.
+
+
+
+ Also remove support for adding members to non-partial CodeBehind
+ classes.
+ * MonoDevelop.AspNet/AspNetAppProjectConfiguration.cs,
+ MonoDevelop.AspNet.Gui/AspNetConfigurationPanelWidget.cs,
+ gtk-gui/MonoDevelop.AspNet.Gui.AspNetConfigurationPanelWidget.cs,
+ gtk-gui/gui.stetic: Remove option for autogenerating members in
+ non-partial CodeBehind classes. Add an option for disabling
+ Codebehind updating altogether.
+
+2008-08-05 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs: Add null check.
+
+2008-08-01 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.StateEngine/AspNetExpressionState.cs,
+ MonoDevelop.AspNet.StateEngine/AspNetAttributeValueState.cs,
+ MonoDevelop.AspNet.StateEngine/AspNetFreeState.cs,
+ MonoDevelop.AspNet.StateEngine/AspNetSpeculativeExpressionState.cs,
+ MonoDevelop.AspNet.StateEngine/AspNetServerCommentState.cs:
+ Implement attribute value expressions.
+ * AspNetAddIn.mdp, Makefile.am: Updated.
+
+2008-07-31 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Show all kinds of
+ nodes in the path bar, and allow selecting them.
+ * MonoDevelop.AspNet.StateEngine/AspNetDirectiveState.cs,
+ MonoDevelop.AspNet.StateEngine/AspNetExpressionState.cs: Fix start
+ offsets.
+ * MonoDevelop.AspNet.StateEngine/AspNetDom.cs: Add friendly
+ representations.
+ * MonoDevelop.AspNet.StateEngine/AspNetSpeculativeExpressionState.cs,
+ MonoDevelop.AspNet.StateEngine/AspNetFreeState.cs: Implement
+ speculatives states. Works for expressions and server comments
+ within tags, though not within attributes.
+
+2008-07-31 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/WebTypeManager.cs,
+ MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Clean up
+ System.Web lookup code.
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Fix the System.Web
+ fallbacks using new DOM. Respect project's runtime version.
+
+2008-07-31 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Add comment and
+ CDATA completion. Only trigger tag completion in the free state.
+ * MonoDevelop.AspNet/WebTypeManager.cs: Simplify lookups using new
+ DOM's methods. They're still broken due to the DOM database
+ returning bad values.
+
+2008-07-30 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/WebTypeManager.cs,
+ MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: More porting to
+ new DOM.
+ * MonoDevelop.AspNet.StateEngine/AspNetSpeculativeExpressionState.cs: A
+ "speculative state" to replace the MalformedTagState. Can create a
+ server comment, or
+ * MonoDevelop.AspNet.StateEngine/AspNetServerCommentState.cs: Tidying
+ up.
+ * AspNetAddIn.mdp, Makefile.am: Updated.
+
+2008-07-30 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.StateEngine/AspNetExpressionState.cs,
+ MonoDevelop.AspNet.StateEngine/AspNetFreeState.cs,
+ MonoDevelop.AspNet.StateEngine/AspNetServerCommentState.cs,
+ MonoDevelop.AspNet.StateEngine/AspNetDirectiveState.cs: API change
+ to allow more that one character of rollback.
+
+2008-07-29 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Filter out
+ attributes that are already in the tag.
+
+2008-07-29 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.StateEngine/AspNetExpressionState.cs: Complete the
+ handling of expressions (in free state).
+
+2008-07-29 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.StateEngine/AspNetServerCommentState.cs: Implement
+ server comments handling (in the free state).
+
+2008-07-29 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.StateEngine/AspNetFreeState.cs,
+ MonoDevelop.AspNet.StateEngine/AspNetDirectiveState.cs,
+ MonoDevelop.AspNet.StateEngine/AspNetDom.cs: Complete the handling
+ of directives. Server comments and expressions are still broken.
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Continue port to new
+ DOM. Enable AspNetFreeState parser instead of XML one.
+ * MonoDevelop.AspNet.Parser/AspNetParser.cs: Remove debug code.
+
+2008-07-29 Mike Krüger <mkrueger@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs,
+ MonoDevelop.AspNet/AspNetParserService.cs,
+ MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Translated old
+ code to new dom.
+
+2008-07-29 Mike Krüger <mkrueger@novell.com>
+
+ * MonoDevelop.AspNet/CodeBehind.cs,
+ MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs,
+ MonoDevelop.AspNet.Parser/SuggestedHandlerCompletionData.cs:
+ Changes for converted refactoring infrastructure.
+
+2008-07-28 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetToolboxNode.cs,
+ MonoDevelop.AspNet/WebTypeManager.cs,
+ MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs,
+ MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Partial port
+ to new DOM. A *few* features are working again, but it's not nearly
+ done. Need to be able to get assembly parse contexts to make
+ progress.
+
+2008-07-28 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Fix document outline
+ view with new parser infrastructure.
+
+2008-07-28 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs,
+ MonoDevelop.AspNet/AspNetLanguageBinding.cs,
+ MonoDevelop.AspNet.addin.xml,
+ MonoDevelop.AspNet.Parser/AspNetCompilationUnit.cs,
+ MonoDevelop.AspNet.Parser/CompilationUnitVisitor.cs,
+ MonoDevelop.AspNet.Parser/AspNetExpressionFinder.cs,
+ MonoDevelop.AspNet.Parser/AspNetParser.cs,
+ MonoDevelop.AspNet.Parser/LocatedParserException.cs: Port to new
+ parser infrastructure so the ASP.NET pages get parsed.
+ * MonoDevelop.AspNet.StateEngine/AspNetExpressionState.cs,
+ MonoDevelop.AspNet.StateEngine/AspNetServerCommentState.cs,
+ MonoDevelop.AspNet.StateEngine/AspNetDom.cs,
+ MonoDevelop.AspNet.StateEngine/AspNetDirectiveState.cs: More
+ in-progress work on ASP.NET extensions to the XML parser.
+ * AspNetAddIn.mdp, Makefile.am: Updated.
+
+2008-07-25 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.StateEngine/AspNetExpressionState.cs,
+ MonoDevelop.AspNet.StateEngine/AspNetAttributeValueState.cs,
+ MonoDevelop.AspNet.StateEngine/AspNetFreeState.cs,
+ MonoDevelop.AspNet.StateEngine/AspNetDom.cs: Commit initial work on
+ ASP.NET parser extensions.
+ * Makefile.am, AspNetAddIn.mdp: Updated.
+
+2008-07-25 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Put path bar update
+ on a timeout so that it doesn't make selection too laggy.
+
+2008-07-24 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Improve triggering
+ of attribute value completion.
+
+2008-07-24 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: For
+ System.Drawing.Color names colours autocompletion entries, use a
+ block of the colour as the icon. Don't show system colours.
+
+2008-07-23 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Implemented node
+ selection with the path bar using the new parser. Much more
+ reliable, but still breaks on selecting the node the caret's in.
+ * gtk-gui/objects.xml, AspNetAddIn.mdp, Makefile.am: Removed
+ objects.xml.
+
+2008-07-23 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.StateEngine/AspNetSpecialState.cs: Unneeded;
+ removed.
+ * MonoDevelop.AspNet.StateEngine/AspNetFreeState.cs: Stubbed.
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Use the new XML
+ parser for ASP.NET completion.
+ * gtk-gui/objects.xml, gtk-gui/gui.stetic, AspNetAddIn.mdp,
+ Makefile.am: Updated.
+ * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Fix tag prefix
+ auto-generation logic.
+ * MonoDevelop.AspNet.Parser/CompilationUnitVisitor.cs: Don't fold
+ regions by default.
+
+2008-07-21 Lluis Sanchez Gual <lluis@novell.com>
+
+ * MonoDevelop.AspNet.Deployment/WebDeployTarget.cs,
+ MonoDevelop.AspNet/AspNetAppProject.cs,
+ MonoDevelop.AspNet/AspNetAppProjectBinding.cs,
+ MonoDevelop.AspNet/AspNetAppProjectConfiguration.cs,
+ MonoDevelop.AspNet/AspNetToolboxNode.cs,
+ MonoDevelop.AspNet/XspParameters.cs: Moved serialization engine to
+ MonoDevelop.Core. Use new syntax for specifying attribute scope.
+
+2008-07-14 Mike Krüger <mkrueger@novell.com>
+
+ * MonoDevelop.AspNet.addin.xml: Added javascript mime type (Bug 400896
+ - Syntax Mode for Javascript).
+
+2008-06-25 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.StateEngine/AspNetSpecialState.cs,
+ MonoDevelop.AspNet.StateEngine/AspNetFreeState.cs,
+ MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Rework stack
+ cloning and character rejection mechanisms in XML/ASP state engine.
+
+2008-06-25 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Parser/SuggestedHandlerCompletionData.cs: Track
+ API.
+
+2008-06-25 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/CodeBehind.cs: Use case-insensitive checks on
+ filenames.
+
+2008-06-19 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Track BindingService
+ API. Fix possible skipping of Gdk.Threads.Leave().
+ * MonoDevelop.Html/DocTypeCompletionDataProvider.cs,
+ MonoDevelop.Html/HtmlCompletionDataProvider.cs,
+ MonoDevelop.Html/HtmlSchemaService.cs: Minor change to doctype
+ completion data API.
+
+2008-06-13 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs: Fix a logic error that caused
+ an exception when creating a new file group with a CodeBehind file
+ but no designer file.
+ * Templates/WebApplication.xpt.xml: Move event hander to the user code
+ class, not the designer class. Add protected button member because
+ some languagee bindings can't auto-add it. Fixes "Bug 400301 -
+ [Regression] The default VB Asp.Net template fails to compile".
+
+2008-06-10 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Templates/WebService-CodeBehind.xft.xml,
+ Templates/WebHandler-CodeBehind.xft.xml,
+ Templates/WebForm-CodeBehindNonPartial.xft.xml,
+ Templates/WebForm-CodeBehind.xft.xml,
+ Templates/WebControl-CodeBehindNonPartial.xft.xml,
+ Templates/WebControl-CodeBehind.xft.xml,
+ Templates/MasterPage-CodeBehindNonPartial.xft.xml,
+ Templates/GlobalAsax-CodeBehind.xft.xml,
+ Templates/MasterPage-CodeBehind.xft.xml: Set grouping/dependencies
+ on new files.
+ * MonoDevelop.AspNet/AspNetAppProject.cs: Set grouping dependencies on
+ added files, and auto-add parents/children.
+
+2008-06-10 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Parser/AspNetCompilationUnit.cs: Remove old
+ CodeBehind grouping mechanism.
+
+2008-06-10 Andres G. Aragoneses <aaragoneses@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs: Implement feature to allow
+ unmanaged project references in a managed project (bug#397490).
+
+2008-06-04 Lluis Sanchez Gual <lluis@novell.com>
+
+ * MonoDevelop.AspNet.addin.xml: Bump MD version.
+
+2008-06-02 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProjectConfiguration.cs: Fix path of
+ compiled output assembly.
+
+2008-05-28 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs: Fixes for ASP.NET projects
+ with new project model.
+ * Templates/WebApplication.xpt.xml: Add some "Hello World"-type code to
+ new ASP.NET C# projects. Fixes "Bug 361348 - C# ASP.Net template
+ doesn't indicate by default that it's working when run".
+
+2008-05-28 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Parser/PageInfoVisitor.cs: Actually prevent
+ register directives overwriting page info with blank info.
+
+2008-05-27 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs: Fix ASP.NET projects loading
+ with the new project model. There *may* be problems with build
+ paths.
+ * MonoDevelop.AspNet.Parser/PageInfoVisitor.cs: Prevent register
+ directives overwriting page info with blank info.
+
+2008-05-22 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetToolboxNode.cs,
+ MonoDevelop.AspNet/WebTypeManager.cs, Makefile.am, AspNetAddIn.mdp,
+ MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs,
+ MonoDevelop.AspNet.Parser/PageDirectiveVisitor.cs: Implemented
+ auto-adding of register directives and project references when a
+ control is added from the toolbox.
+
+2008-05-22 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.Html/HtmlSchemaService.cs,
+ MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Remove threaded
+ schema loading. Implement an alternative lazy schema loading
+ system.
+
+2008-05-22 Lluis Sanchez Gual <lluis@novell.com>
+
+ * MonoDevelop.AspNet.addin.xml: Merged the extension points for project
+ and solution option panels into a single extension point. A single
+ extension point will now be used for all kinds of items. Extension
+ conditions can be used to make panels visible only for some
+ specific item types.
+
+2008-05-22 Lluis Sanchez Gual <lluis@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs,
+ MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs: Replaced
+ ICompilerResult/DefaultCompilerResult/CompilerResults by a new
+ BuildResult class, which has owner information at error level, so
+ it is possible to know which project generated an error when
+ building a solution. Updated Task and TaskService to use the new
+ owner information.
+
+2008-05-21 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs: Filter out runtime versions
+ that aren't 1.1 or 2.0.
+
+2008-05-21 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetToolboxLoader.cs: Record the supported
+ runtime versions.
+ * MonoDevelop.AspNet/AspNetToolboxNode.cs: Filter the item from the
+ text editor toolbox if the supported runtimes don't match the
+ current project.
+
+2008-05-21 Lluis Sanchez Gual <lluis@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs: The Deserialize event may not
+ be called in some file formats, so don't use it to control the
+ project loading.
+
+2008-05-21 Lluis Sanchez Gual <lluis@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProjectBinding.cs,
+ MonoDevelop.AspNet/AspNetAppProject.cs,
+ MonoDevelop.AspNet/CodeBehind.cs,
+ MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs,
+ MonoDevelop.AspNet/AspNetParserService.cs,
+ MonoDevelop.AspNet/AspNetToolboxNode.cs,
+ MonoDevelop.AspNet/WebTypeManager.cs,
+ MonoDevelop.AspNet/AspNetAppProjectConfiguration.cs,
+ MonoDevelop.AspNet.addin.xml,
+ MonoDevelop.AspNet.Deployment/WebDeployService.cs,
+ MonoDevelop.AspNet.Deployment/WebDeployOptionsPanel.cs,
+ MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs,
+ MonoDevelop.AspNet.Gui/AspNetConfigurationPanel.cs,
+ MonoDevelop.AspNet.Gui/AspNetConfigurationPanelWidget.cs,
+ MonoDevelop.AspNet.Gui/XspOptionsPanel.cs,
+ MonoDevelop.AspNet.Gui/XspOptionsPanelWidget.cs,
+ gtk-gui/gui.stetic, AspNetAddIn.mdp, Makefile.am,
+ MonoDevelop.AspNet.Parser/WebFormReferenceManager.cs,
+ MonoDevelop.AspNet.Parser/SuggestedHandlerCompletionData.cs,
+ MonoDevelop.AspNet.Parser/Document.cs: New project model changes.
+
+2008-05-19 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Makefile.am: Remove conditional build for ASP.NET support; there's no
+ longer any reason to disable it.
+
+2008-05-16 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetToolboxNode.cs: Change ITextToolboxNode API
+ so that nodes have more control over when they're shown.
+
+2008-05-15 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetToolboxProvider.cs: Moved from AspNetEdit.
+ * MonoDevelop.AspNet/AspNetToolboxLoader.cs: Implement correct loading
+ of items in System.Web 1.1.
+ * MonoDevelop.AspNet/AspNetToolboxNode.cs: Improve support for default
+ tag text. Markup for property grid.
+ * MonoDevelop.AspNet.addin.xml: Register provider moved from
+ AspNetEdit.
+ * Makefile.am, AspNetAddIn.mdp: Updated.
+
+2008-05-09 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetDisplayBinding.cs: Remove unneeded display
+ binding.
+ * MonoDevelop.AspNet/AspNetAppProject.cs: Remove bound WebTypeManager
+ instance.
+ * MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs: Add copyright.
+ * MonoDevelop.AspNet/AspNetToolboxLoader.cs,
+ MonoDevelop.AspNet/AspNetToolboxNode.cs: Toolbox loader for ASP.NET
+ toolbox items that makes then available to the text editor too.
+ * MonoDevelop.AspNet/AspNetParserService.cs: A place for parser-access
+ convenience methods.
+ * MonoDevelop.AspNet/WebTypeManager.cs: Make static. Take project as
+ argument rather than being bound to it.
+ * MonoDevelop.AspNet.addin.xml: Register new toolbox loader. Update
+ mimetypes. Remove unneeded display binding.
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Prevent some NREs.
+ * AspNetAddIn.mdp, Makefile.am: Updated.
+ * MonoDevelop.AspNet.Parser/Document.cs: If bound project is null, look
+ it up.
+ * MonoDevelop.AspNet.Parser/CompilationUnitVisitor.cs: Prevent possible
+ NRE.
+ * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Add
+ functionality for looking up and generating prefixes, for text
+ toolbox nodes.
+
+2008-05-02 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Fix positions when
+ selecting nodes.
+
+2008-05-02 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Use a data func for
+ the outline treeview. Shorten many overlong lines.
+
+2008-05-02 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Parser.Dom/ParentNode.cs: Make parent nodes
+ enumerable.
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Implement document
+ outline support for ASP.NET documents. Still a couple of issues:
+ the parser doesn't provide the document at startup, so it won't
+ show anything until the file is changed. It also may have
+ performance problems on large files.
+
+2008-05-02 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs,
+ MonoDevelop.AspNet/CodeBehind.cs,
+ MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs,
+ MonoDevelop.AspNet.Parser/Document.cs,
+ MonoDevelop.AspNet.Parser/CompilationUnitVisitor.cs,
+ MonoDevelop.AspNet.Parser/AspNetParser.cs,
+ MonoDevelop.AspNet.Parser/PageInfoVisitor.cs,
+ MonoDevelop.AspNet.Parser/PageInfo.cs,
+ MonoDevelop.AspNet.Parser/AspNetCompilationUnit.cs: Replace
+ direscrt use of the ASP.NET docuemnt parser with use of the parser
+ service. Flesh out the parsed compilation units.
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Use compilation
+ units from parser service instead of parsing on every keystroke.
+ * AspNetAddIn.mdp, Makefile.am: Updated
+
+2008-05-02 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.addin.xml,
+ MonoDevelop.AspNet/AspNetCodeBehindProvider.cs: Remove use of
+ removed extension point.
+
+2008-04-30 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetLanguageBinding.cs,
+ MonoDevelop.Html/HtmlCompletionDataProvider.cs,
+ MonoDevelop.AspNet.addin.xml, Makefile.am, AspNetAddIn.mdp,
+ MonoDevelop.AspNet.Parser/Document.cs,
+ MonoDevelop.AspNet.Parser/CompilationUnitVisitor.cs,
+ MonoDevelop.AspNet.Parser/AspNetExpressionFinder.cs,
+ MonoDevelop.AspNet.Parser/AspNetParser.cs,
+ MonoDevelop.AspNet.Parser/AspNetCompilationUnit.cs: Add support for
+ simple folding and error underlining in ASP.NET pages.
+ * MonoDevelop.AspNet.Parser.Dom/RootNode.cs: Add support for simple
+ folding and error underlining in ASP.NET pages. Fix mimetypes.
+
+2008-04-30 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Add ability to
+ select paths (partially working).
+
+2008-04-28 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Implement path bar
+ support.
+ * AspNetAddIn.mdp, Makefile.am,
+ MonoDevelop.AspNet.Parser/AspNetIndentStack.cs: Remove old indent
+ stack.
+
+2008-04-25 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.StateEngine/AspNetSpecialState.cs,
+ MonoDevelop.AspNet.StateEngine/AspNetFreeState.cs: Change XML state
+ engine API to allow cloning a single node (as an alternative to the
+ whole stack).
+
+2008-04-18 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.StateEngine/AspNetFreeState.cs: Add support for
+ XML processing instructions.
+
+2008-04-18 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.StateEngine/AspNetSpecialState.cs,
+ MonoDevelop.AspNet.StateEngine/AspNetFreeState.cs: Minimal states
+ for ASP.NET parsing. Still need to handle expressions within
+ attribute values.
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Use new state engine
+ for triggering completion. Haven't exorcised full document parse
+ yet -- need it for doctype etc. Also need it (but low-priority,
+ threaded?) for filtering existing attributes.
+ * Makefile.am, AspNetAddIn.mdp: Updated.
+
+2008-04-14 Michael Hutchinson <mhutchinson@novell.com>
+
+
+
+2008-04-14 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/WebTypeManager.cs: Remove debug code.
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Greatly improve
+ completion triggering behaviour. Most noticeable with tag
+ attributes.
+
+2008-04-11 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Add server-side
+ comments to completion list.
+ * MonoDevelop.AspNet.Parser/AspNetIndentStack.cs: Add more states,
+ document all the states' meaning, and handle closing some states.
+
+2008-04-11 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.Html/HtmlSchema.cs: Avoid unused variable warning.
+ * gtk-gui/gui.stetic: Updated.
+ * MonoDevelop.AspNet.Parser/AspNetIndentStack.cs: Woked on indent
+ stack. Not complete yet.
+
+2008-04-11 Lluis Sanchez Gual <lluis@novell.com>
+
+ * MonoDevelop.AspNet.addin.xml: Use the new mime type extension to
+ register new file types.
+
+2008-04-08 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Add completion for
+ colours, enums and booleans. Walk into base members when attempting
+ attribute completion.
+
+2008-04-08 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/CodeBehind.cs: Add method for getting a
+ non-designer class.
+ * MonoDevelop.AspNet/WebTypeManager.cs,
+ MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Add various
+ control lookup methods, including listing of ASP.NET controls.
+ * MonoDevelop.Html/HtmlSchema.cs: Minor cleanup.
+ * MonoDevelop.Html/HtmlSchemaService.cs: Improve lazy loading. Allow
+ forced preloading in a thread.
+ * MonoDevelop.AspNet.addin.xml: Remove HTML 4 Transitional doctype
+ extension, as it's a hardcoded default.
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Track API. Implement
+ ASP.NET control and attribute completion. Implement attribute value
+ completion (and handler stubbing) for events. Improve completion
+ triggering accuracy. Add documentation for completion items.
+ Implement close tag completion for parent tags. Lazily load HTML
+ schemas, and use default schema while they load. Force HTML schema
+ service to load in background when docuement opened.
+ * AspNetAddIn.mdp, Makefile.am: Updated.
+ * MonoDevelop.AspNet.Parser/SuggestedHandlerCompletionData.cs:
+ Completion data type that inserts a method into a class if it's
+ picked.
+ * MonoDevelop.AspNet.Parser/AspNetIndentStack.cs: Partial (still
+ unused) implementation of indenter stack.
+
+2008-04-02 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Parser.Dom/RootNode.cs: Fix build and close
+ correct tags.
+
+2008-04-02 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Parser.Dom/ParentNode.cs,
+ MonoDevelop.AspNet.Parser.Dom/RootNode.cs: Add a mechanism for
+ determining/indicating whether a tag has been closed.
+ * MonoDevelop.Html/DocTypeCompletionData.cs: Remove debug message.
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Implement closing
+ tag completion for unclosed tags. Reduce spurious completion
+ triggering.
+
+2008-04-01 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Schemas, Schemas/xhtml1-transitional.xsd, Schemas/W3C-License.html,
+ Schemas/xhtml1-strict.xsd, Schemas/readme.txt,
+ Schemas/xhtml1-frameset.xsd: Add W3C XHTML 1.0 schemas.
+ * MonoDevelop.Html/DocTypeCompletionData.cs,
+ MonoDevelop.Html/DocTypeCompletionDataProvider.cs: Implement
+ completion provider for doctype declarations.
+ * MonoDevelop.Html/HtmlSchema.cs: Change to an association between an
+ doctype and an IXmlCompletionProvider from the XmlEditor.
+ * MonoDevelop.Html/HtmlSchemaService.cs: Load doctypes and associated
+ schemas from extension point. Expose default doctypes, and
+ mechanisms for getting completion providers for any registered
+ doctype, as well as a completion provider for doctypes themselves.
+ * MonoDevelop.Html/DocTypeExtensionNode.cs,
+ MonoDevelop.AspNet.addin.xml: Added HTML(/SGML/XML) doctypes as an
+ extension point.
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Implement HTML code
+ completion for aspx files.
+ * Makefile.am, AspNetAddIn.mdp: Updated.
+
+2008-03-10 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Deployment/WebDeployLaunchDialog.cs: Fix namespace
+ of panel.
+
+2008-03-06 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Templates/WebConfig-SubDir.xft.xml:
+ * Templates/WebConfig-Application.xft.xml: Improve descriptions.
+
+2008-03-04 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet/AspNetAppProject.cs: Improve browser launching code.
+ * MonoDevelop.AspNet.Gui/BrowserLauncher.cs: Move browser launcher code and
+ make it into a re-usable IAsyncOperation.
+ * AspNetAddIn.mdp, Makefile.am: Updated.
+ * MonoDevelop.AspNet.Parser/Regexes.cs: Improve server tag regex.
+
+2008-03-04 Mike Krüger <mkrueger@novell.com>
+
+ * MonoDevelop.AspNet.Deployment/WebDeployService.cs,
+ MonoDevelop.AspNet/XspParameters.cs,
+ MonoDevelop.AspNet/AspNetAppProject.cs: Worked on gnome hig compliant
+ alerts.
+
+2008-03-03 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Improve ASP.NET code
+ completion. Now parser updates on-the-fly and suggestions are
+ contextual.
+ * gtk-gui/gui.stetic, AspNetAddIn.mdp, Makefile.am: Updated.
+ * MonoDevelop.AspNet.Parser.Dom/ParentNode.cs,
+ MonoDevelop.AspNet.Parser.Dom/Node.cs: Minor API name change.
+ * MonoDevelop.AspNet.Parser.Dom/RootNode.cs: Catch and collect
+ parser-reported exceptions rather than blowing up.
+ * MonoDevelop.Html, MonoDevelop.Html/HtmlSchema.cs,
+ MonoDevelop.Html/HtmlSchemaService.cs: Skeletion of system for
+ schema-controlled HTML completion.
+ * MonoDevelop.AspNet.Parser/Document.cs,
+ MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Make it easier to
+ build a parser document directly rather than going through the project.
+ * MonoDevelop.AspNet.Parser/Regexes.cs: Utility class, unused right now.
+ * MonoDevelop.AspNet.Parser/LocatedParserException.cs: Allow flagging error
+ as a warning.
+
+2008-03-02 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Parser.Internal/ParseException.cs: Fix ILocation
+ capturing.
+ * MonoDevelop.AspNet.Parser.Dom/ParentNode.cs,
+ MonoDevelop.AspNet.Parser.Dom/Visitor.cs,
+ MonoDevelop.AspNet.Parser.Dom/TagNode.cs: Implement QuickExit so that
+ visitor can terminate early.
+ * MonoDevelop.AspNet.Parser.Dom/RootNode.cs: Add some support for implicit
+ tag closing like in HTML4, making parser more robust with sloppy input.
+ Implement QuickExit so that visitor can terminate early.
+ * MonoDevelop.AspNet.Parser/LocatedParserException.cs: Fix possible NREs.
+ Override ToString().
+ * MonoDevelop.AspNet.Parser/PageInfoVisitor.cs: Capture doctype. Use quick
+ exit when desired information found.
+
+2008-02-27 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs, Makefile.am,
+ AspNetAddIn.mdp, MonoDevelop.AspNet.addin.xml: Add the beginnings of a
+ code completion system for ASP.NET.
+ * MonoDevelop.AspNet.Parser.Dom/ParentNode.cs,
+ MonoDevelop.AspNet.Parser.Dom/TagNode.cs,
+ MonoDevelop.AspNet.Parser.Dom/Node.cs,
+ MonoDevelop.AspNet.Parser.Dom/RootNode.cs,
+ MonoDevelop.AspNet.Parser/Document.cs: Improve error resilience. Improve
+ debug messages. Finish the node search system.
+
+2008-02-27 Michael Hutchinson <mhutchinson@novell.com>
+
+ * MonoDevelop.AspNet.Parser/Internal:
+ * MonoDevelop.AspNet.Parser/Tree:
+ * MonoDevelop.AspNet.Parser.Internal:
+ * MonoDevelop.AspNet.Parser.Dom:
+ * AspNetAddIn.mdp:
+ * Makefile.am: Finish restructuring directories to reflect namespaces.
+
+ * MonoDevelop.AspNet.addin.xml: Clean up whitespace.
+
+2008-02-27 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Deployment, MonoDevelop.AspNet, Gui, Parser,
+ MonoDevelop.AspNet.Deployment, MonoDevelop.AspNet.Gui, Project,
+ AspNetAddIn.mdp, Makefile.am, MonoDevelop.AspNet.Parser: Restructure
+ directories to reflect namespaces.
+
+2008-02-26 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Deployment/WebDeployService.cs, Deployment/WebDeployCommands.cs,
+ Deployment/WebDeployLaunchDialog.cs,
+ Deployment/WebDeployOptionsPanel.cs,
+ Deployment/WebDeployOptionsPanelWidget.cs,
+ Gui/AspNetConfigurationPanel.cs, Gui/AspNetConfigurationPanelWidget.cs,
+ Gui/XspOptionsPanel.cs, Gui/XspOptionsPanelWidget.cs,
+ Project/AspNetDisplayBinding.cs, Project/AspNetCommands.cs,
+ Project/ProjectFolderNodeBuilderExtension.cs,
+ Project/AspNetAppProjectBinding.cs,
+ Project/AspNetMSBuildProjectExtension.cs, Project/XspParameters.cs,
+ Project/AspNetAppProject.cs, Project/CodeBehind.cs,
+ Project/VerifyCodeBehindBuildStep.cs,
+ Project/AspNetAppProjectConfiguration.cs,
+ Project/AspNetCodeBehindProvider.cs,
+ Project/AspNetFileDescriptionTemplate.cs, Project/WebTypeManager.cs,
+ gtk-gui/MonoDevelop.AspNet.Gui.XspOptionsPanelWidget.cs,
+ gtk-gui/AspNetAddIn.AspNetConfigurationPanelWidget.cs,
+ gtk-gui/AspNetAddIn.XspOptionsPanelWidget.cs,
+ gtk-gui/MonoDevelop.AspNet.Gui.AspNetConfigurationPanelWidget.cs,
+ gtk-gui/gui.stetic, AspNetAddIn.addin.xml, AspNetAddIn.mdp, Makefile.am,
+ Parser/Tree/ParentNode.cs, Parser/Tree/ServerCommentNode.cs,
+ Parser/Tree/Visitor.cs, Parser/Tree/ServerIncludeNode.cs,
+ Parser/Tree/ILocation.cs, Parser/Tree/TagNode.cs,
+ Parser/Tree/DirectiveNode.cs, Parser/Tree/Node.cs,
+ Parser/Tree/ExpressionNode.cs, Parser/Tree/RootNode.cs,
+ Parser/Tree/TextNode.cs, Parser/WebFormReferenceManager.cs,
+ Parser/DebugStringVisitor.cs, Parser/Document.cs,
+ Parser/MemberListVisitor.cs, Parser/LocatedParserException.cs,
+ Parser/Internal/TagType.cs, Parser/Internal/AspTokenizer.cs,
+ Parser/Internal/Directive.cs, Parser/Internal/AspParser.cs,
+ Parser/Internal/TagAttributes.cs, Parser/Internal/Location.cs,
+ Parser/Internal/ParseException.cs, Parser/Internal/StrUtils.cs,
+ Parser/DocumentReferenceManager.cs, Parser/PageInfoVisitor.cs,
+ MonoDevelop.AspNet.addin.xml: Finish renaming AspNetAddIn and its
+ corresponding namespaces to MonoDevelop.Aspnet.
+
+2008-02-26 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Project/AspNetFileDescriptionTemplate.cs: Fix string formatting call.
+
+2008-02-26 Michael Hutchinson <mhutchinson@novell.com>
+
+ * AspNetAddIn.mdp, Makefile.am, Parser/Tree/ParentNode.cs,
+ Parser/Tree/ServerCommentNode.cs, Parser/Tree/Visitor.cs,
+ Parser/Tree/TagNode.cs, Parser/Tree/DirectiveNode.cs,
+ Parser/Tree/Node.cs, Parser/Tree/ExpressionNode.cs,
+ Parser/Tree/RootNode.cs, Parser/Tree/TextNode.cs,
+ Parser/DebugStringVisitor.cs, Parser/Document.cs,
+ Parser/Internal/Location.cs: Implement dumping a debug view of the parse
+ tree, and binary searching for the parse node at a given location in the
+ file.
+
+2008-02-23 Mike Krüger <mkrueger@novell.com>
+
+ * AspNetAddIn.mdp, Makefile.am: Removed some unused glade and gnome-sharp
+ references (only the unused). But I'll continue to remove glade, we need
+ to lower the dependency tree a bit.
+
+2008-02-20 Marek Safar <marek.safar@gmail.com>
+
+ * Project/VerifyCodeBehindBuildStep.cs: Fixed missing parenthesis.
+
+2008-02-20 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Project/IAspNetLanguageBinding.cs,
+ Project/AspNetFileDescriptionTemplate.cs,
+ Templates/WebService-CodeBehind.xft.xml,
+ Templates/WebForm-CodeBehind.xft.xml,
+ Templates/MasterPage-Empty.xft.xml,
+ Templates/WebControl-CodeBehindNonPartial.xft.xml,
+ Templates/WebService-Empty.xft.xml,
+ Templates/WebHandler-CodeBehind.xft.xml,
+ Templates/WebForm-Empty.xft.xml,
+ Templates/WebControl-CodeBehind.xft.xml,
+ Templates/MasterPage-CodeBehindNonPartial.xft.xml,
+ Templates/WebConfig-Application.xft.xml,
+ Templates/WebHandler-Empty.xft.xml, Templates/GlobalAsax-Empty.xft.xml,
+ Templates/WebControl-Empty.xft.xml,
+ Templates/MasterPage-CodeBehind.xft.xml,
+ Templates/WebForm-CodeBehindNonPartial.xft.xml: Add a mechanism for
+ having the ASP.NET language code be different from MD's internal
+ language codes, and use it to make VB.NET pages work OOTB.
+ * AspNetAddIn.mdp, Makefile.am: Updated.
+ * Parser/Tree/Visitor.cs, Parser/Tree/ExpressionNode.cs,
+ Parser/Tree/RootNode.cs: The way the parser's currently used, it doesn't
+ need to understand expressions, so rather than throwing a
+ NotImplementedException, just insert them into the AST and carry on.
+ Means that CodeBehind generation can be used for a much larger subset of
+ aspx pages.
+
+2008-02-09 Mike Krüger <mkrueger@novell.com>
+
+ * AspNetAddIn.addin.xml, AspNetAddIn.mdp, Makefile.am: Removed source editor
+ dependency.
+
+2008-02-05 Mike Krüger <mkrueger@novell.com>
+
+ * AspNetAddIn.addin.xml: Structured main menu.
+
+2008-01-25 Lluis Sanchez Gual <lluis@novell.com>
+
+ * AspNetAddIn.addin.xml: Update MD version.
+
+2008-01-22 Lluis Sanchez Gual <lluis@novell.com>
+
+ * AspNetAddIn.addin.xml: Updated add-in category and description.
+
+2008-01-19 Ankit Jain <jankit@novell.com>
+
+ * AspNetMSBuildProjectExtension.cs: Track changes in MSBuildProjectExtension.
+
+2008-01-15 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Templates/WebService-CodeBehind.xft.xml,
+ Templates/WebForm-CodeBehind.xft.xml,
+ Templates/MasterPage-Empty.xft.xml,
+ Templates/WebControl-CodeBehindNonPartial.xft.xml,
+ Templates/WebConfig-SubDir.xft.xml, Templates/WebService-Empty.xft.xml,
+ Templates/WebHandler-CodeBehind.xft.xml,
+ Templates/WebForm-Empty.xft.xml,
+ Templates/GlobalAsax-CodeBehind.xft.xml,
+ Templates/WebControl-CodeBehind.xft.xml,
+ Templates/MasterPage-CodeBehindNonPartial.xft.xml,
+ Templates/WebConfig-Application.xft.xml,
+ Templates/WebApplication-Empty.xpt.xml,
+ Templates/WebHandler-Empty.xft.xml, Templates/GlobalAsax-Empty.xft.xml,
+ Templates/WebControl-Empty.xft.xml,
+ Templates/MasterPage-CodeBehind.xft.xml,
+ Templates/WebForm-CodeBehindNonPartial.xft.xml,
+ Templates/WebApplication.xpt.xml: Make template categories translatable.
+
+2008-01-03 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Project/VerifyCodeBehindBuildStep.cs: Only try to add members to
+ CodeBehind if the needed refactoring options are supported.
+
+2008-01-02 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Templates/WebService-CodeBehind.xft.xml,
+ Templates/WebForm-CodeBehind.xft.xml,
+ Templates/WebControl-CodeBehindNonPartial.xft.xml,
+ Templates/WebService-Empty.xft.xml,
+ Templates/WebHandler-CodeBehind.xft.xml,
+ Templates/WebControl-CodeBehind.xft.xml,
+ Templates/MasterPage-CodeBehindNonPartial.xft.xml,
+ Templates/WebHandler-Empty.xft.xml,
+ Templates/MasterPage-CodeBehind.xft.xml,
+ Templates/WebForm-CodeBehindNonPartial.xft.xml: Use ${EscapedIdentifier}
+ instead of ${Name} so that files can be created with names like
+ "Default" and work correctly in VB.NET.
+
+2007-12-14 Lluis Sanchez Gual <lluis@novell.com>
+
+ * AspNetAddIn.mdp: Updated project files. The order of extended properties
+ won't change anymore.
+
+2007-12-13 Lluis Sanchez Gual <lluis@novell.com>
+
+ * Project/AspNetAppProject.cs: Moved PlatformService to MD.Core.Gui. Removed
+ old FileIconService class, which is now implemented in PlatformService.
+
+2007-12-13 Lluis Sanchez Gual <lluis@novell.com>
+
+ * Deployment/WebDeployTargetEditor.cs: Track api changes.
+ * gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployLaunchDialog.cs,
+ gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployOptionsPanelWidget.cs,
+ gtk-gui/gui.stetic: Updated.
+
+2007-12-13 Lluis Sanchez Gual <lluis@novell.com>
+
+ * Project/AspNetAppProject.cs: API cleanup.
+
+2007-12-13 Lluis Sanchez Gual <lluis@novell.com>
+
+ * gtk-gui/AspNetAddIn.XspOptionsPanelWidget.cs,
+ gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployTargetEditor.cs,
+ gtk-gui/gui.stetic: Fix alignment of some labels.
+
+2007-12-12 Lluis Sanchez Gual <lluis@novell.com>
+
+ * AspNetAddIn.addin.xml: Bump add-in versions.
+
+2007-12-06 Geoff Norton <gnorton@novell.com>
+
+ * Project/AspNetAppProject.cs: Use PlatformService to launch a browser
+ instead of Gnome.Url.Show.
+
+2007-12-04 Lluis Sanchez Gual <lluis@novell.com>
+
+ * gtk-gui/objects.xml, AspNetAddIn.addin.xml, AspNetAddIn.mdp, Makefile.am:
+ Directory reorganization.
+
+2007-11-20 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Project/AspNetAppProject.cs: Don't try to compile if no files are set to
+ compile, as compilers/bindings (e.g. CSharpBinding) will error out if no
+ files are set to compile.
+
+2007-11-09 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Deployment/WebDeployService.cs, Project/AspNetAppProject.cs,
+ Parser/Document.cs: Track LoggingService API changes.
+
+2007-11-02 Lluis Sanchez Gual <lluis@novell.com>
+
+ * Project/VerifyCodeBehindBuildStep.cs: Use RootCombine instead of
+ CurrentOpenCombine when possible.
+
+2007-10-30 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Deployment/WebDeployService.cs, Deployment/WebDeployCommands.cs,
+ Deployment/WebDeployLaunchDialog.cs,
+ gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployLaunchDialog.cs,
+ gtk-gui/gui.stetic: Enable web deploy dialog even if no targets exist,
+ but add a button for editng/adding targets. Fixes "Bug 337804 - Web
+ Deployment should be easier to configure".
+
+2007-10-30 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Project/AspNetAppProjectConfiguration.cs: Fix "Bug 337819 - Directory
+ change warning shown when creating a new Web Project.". Re-opens "Bug
+ 333419 - Output dir in ASP.NET project don't work", though it's now
+ possible to work around the latter by setting an XML attribute in the
+ project file.
+
+2007-10-30 Lluis Sanchez Gual <lluis@novell.com>
+
+ * AspNetAddIn.addin.xml: Use the html file icon for some known asp.net
+ files.
+
+2007-10-29 Michael Hutchinson <mhutchinson@novell.com>
+
+ * AspNetAddIn.addin.xml: Use WebHandler-CodeBehind template.
+
+2007-10-29 Lluis Sanchez Gual <lluis@novell.com>
+
+ * AspNetAddIn.addin.xml: Bump MD version.
+
+2007-10-26 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Project/VerifyCodeBehindBuildStep.cs: Fix string formatting index in a
+ gettext call.
+
+2007-10-25 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Project/AspNetAppProject.cs: No need to handle monitor's cancel request,
+ as AggregatedOperationMonitor does this for us.
+
+2007-10-24 Lluis Sanchez Gual <lluis@novell.com>
+
+ * Templates/WebApplication-Empty.xpt.xml, Templates/WebApplication.xpt.xml:
+ Updated project icons.
+
+2007-10-17 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Project/WebTypeManager.cs: Don't do web.config control lookups for 1.1
+ projects.
+ * Parser/WebFormReferenceManager.cs: Track API change.
+ * Parser/MemberListVisitor.cs, Parser/DocumentReferenceManager.cs: Handle
+ the "type" property of "input" HTML controls.
+
+2007-10-16 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Project/AspNetAppProject.cs, Project/VerifyCodeBehindBuildStep.cs,
+ Parser/MemberListVisitor.cs, Parser/LocatedParserException.cs,
+ Parser/Internal/ParseException.cs: Rework error handling to include
+ location info for document parse errors.
+ * Project/WebTypeManager.cs, Parser/WebFormReferenceManager.cs,
+ Parser/DocumentReferenceManager.cs: Rework type lookups for registered
+ controls. Now handles custom controls and user controls, whether
+ registered in aspx file or web.config.
+ * AspNetAddIn.mdp, Makefile.am: Updated.
+ * Parser/Document.cs: Collect parse errors instead of dying in constructor.
+
+2007-10-15 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Project/AspNetAppProject.cs: Copy refs to output path during compile. Not
+ sure it's necessary, as the Run/Deploy commands do the copy too, and
+ people shouldn't be running their site without executing one of these
+ commands first. However, we have had a few bug reports about this
+ behaviour, so it's better to do what people expect.
+ * Project/VerifyCodeBehindBuildStep.cs: Report ASP.NET parser and Codebehind
+ member generation errors as compile warnings, with file/line number
+ info. Use Gettext for i18n of warnings.
+ * AspNetAddIn.mdp: Updated.
+
+2007-10-12 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Project/AspNetAppProjectConfiguration.cs: Allowing changing the output
+ directory to a directory other than "bin", but only after warning the
+ user that this may prevent the projct from running/deploying correctly.
+ Enables some unusual use cases, and doesn't affect other people.
+
+2007-10-12 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Project/VerifyCodeBehindBuildStep.cs: Change how partial classes are
+ handled during code generation to work around the fact that they don't
+ have all of the information that the 'full' class does.
+
+2007-10-08 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Project/AspNetAppProject.cs: Use xsp2 if using 2.0 runtime (regression
+ introduced in previous commit).
+
+2007-10-03 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Project/AspNetAppProject.cs: Launch xsp directly rather than via SH. Made
+ possible by changes to IExecutionHandler/ProcessService allowing setting
+ environment variables on new console processes. Fixes xsp shutdown (xsp
+ instances were not closes and were blocking ports). Hopefully fixes
+ #330327.
+
+ Also, don't force copy output refs.
+
+2007-10-02 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Deployment/WebDeployService.cs: Build before deploying.
+ * Deployment/WebDeployTargetEditor.cs: Catch errors if file copy handler
+ can't be found.
+
+2007-10-02 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Project/VerifyCodeBehindBuildStep.cs: Make errors in Codebehind generation
+ into warnings rather than preventing build.
+
+2007-09-28 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Project/AspNetAppProject.cs: Check for xsp before running it.
+
+2007-09-28 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Deployment/WebTargetEditor.cs, Deployment/WebDeployService.cs,
+ Deployment/WebDeployCommands.cs, Deployment/WebDeployResolver.cs,
+ Deployment/WebDeployTargetCollection.cs, Deployment/WebDeployTarget.cs,
+ Deployment/WebDeployWindow.cs, Deployment/WebDeployLaunchDialog.cs,
+ Deployment/WebDeployOptionsPanel.cs,
+ Deployment/WebDeployTargetEditor.cs,
+ Deployment/WebDeployOptionsPanelWidget.cs, AspNetAddIn.addin.xml,
+ gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployLaunchDialog.cs,
+ gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployTargetEditor.cs,
+ gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployOptionsPanelWidget.cs,
+ gtk-gui/MonoDevelop.AspNet.Deployment.WebTargetEditor.cs: Add new web
+ deployment UI and services.
+ * Project/AspNetAppProject.cs: Add WebDeployTargets property. Use new web
+ targets when returning DeployFiles. Fix NRE when language binding not
+ recognised.
+ * gtk-gui/generated.cs, gtk-gui/AspNetAddIn.XspOptionsPanelWidget.cs,
+ gtk-gui/objects.xml, gtk-gui/gui.stetic, AspNetAddIn.mdp, Makefile.am,
+ Gui/XspOptionsPanel.cs: Updated.
+
+2007-09-27 Ankit Jain <jankit@novell.com>
+
+ Add support for VS2005 WebApplication projects.
+ * Project/AspNetMSBuildProjectExtension.cs: New.
+ * AspNetAddIn.addin.xml: Add Extension.
+ * AspNetAddIn.mdp: Update.
+ * Makefile.am: Update.
+
+2007-09-21 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Project/AspNetAppProject.cs: Make write-safe by using TextFile API rather
+ than direct save.
+
+2007-09-21 Lluis Sanchez Gual <lluis@novell.com>
+
+ * AspNetAddIn.addin.xml: Bump MD version.
+
+2007-09-20 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Project/AspNetAppProject.cs: Added reference change handlers to update the
+ referenced assembly list in web.config.
+
+2007-09-12 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Gui/XspOptionsPanelWidget.cs,
+ gtk-gui/AspNetAddIn.XspOptionsPanelWidget.cs, gtk-gui/gui.stetic: Fix
+ bugs from stetic conversion: panel status update handler and permissible
+ port range setting.
+ * Project/AspNetAppProject.cs: Restructure execution code to handle errors
+ better and make it possible to set MONO_OPTIONS="--debug" when calling
+ xsp.
+
+2007-09-11 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Gui/XspOptionsPanel.cs, Gui/XspOptionsPanelWidget.cs, AspNetAddIn.glade,
+ gtk-gui/generated.cs,
+ gtk-gui/AspNetAddIn.AspNetConfigurationPanelWidget.cs,
+ gtk-gui/AspNetAddIn.XspOptionsPanelWidget.cs, gtk-gui/gui.stetic,
+ AspNetAddIn.mdp, Makefile.am: Migrate XspOptionsPanel from glade to
+ stetic.
+ * Gui/AspNetConfigurationPanelWidget.cs,
+ Project/AspNetFileDescriptionTemplate.cs: Remove unused fields.
+
+2007-09-11 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Project/ProjectFolderNodeBuilderExtension.cs, Project/AspNetCommands.cs,
+ AspNetAddIn.addin.xml, AspNetAddIn.mdp, Makefile.am: Add a command/menu
+ for creating ASP.NET special directories.
+ * Project/AspNetAppProject.cs: Add more WebSubtypes. Use GettextCatalog for
+ MessageService call. Add method for discovering non-existent special
+ ASP.NET directories.
+ * Project/VerifyCodeBehindBuildStep.cs: Don't prevent compilation if
+ documents can't be parsed.
+
+2007-09-10 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Project/AspNetAppProject.cs: Fire SetDefaultBuildAction only when adding
+ new files, not when deserialising the project. Add a "Code" WebSubtype.
+ * AspNetAddIn.addin.xml, AspNetAddIn.mdp, Makefile.am,
+ Templates/WebConfig-SubDir.xft.xml,
+ Templates/WebConfig-Application.xft.xml: Add Web.config templates.
+ * Templates/WebForm-CodeBehind.xft.xml,
+ Templates/GlobalAsax-CodeBehind.xft.xml,
+ Templates/WebControl-CodeBehind.xft.xml,
+ Templates/GlobalAsax-Empty.xft.xml,
+ Templates/MasterPage-CodeBehind.xft.xml: More tweaks to templates.
+ * Templates/WebApplication.xpt.xml: Add web.config to default project
+ template.
+
+2007-09-10 Michael Hutchinson <mhutchinson@novell.com>
+
+ * AspNetAddIn.addin.xml, AspNetAddIn.mdp, Makefile.am: Updated.
+ * Templates/WebService-CodeBehind.xft.xml,
+ Templates/WebForm-CodeBehind.xft.xml,
+ Templates/MasterPage-Empty.xft.xml, Templates/WebService-Empty.xft.xml,
+ Templates/WebForm-Empty.xft.xml,
+ Templates/WebHandler-CodeBehind.xft.xml,
+ Templates/WebControl-CodeBehind.xft.xml,
+ Templates/WebHandler-Empty.xft.xml,
+ Templates/MasterPage-CodeBehind.xft.xml,
+ Templates/WebControl-Empty.xft.xml, Templates/WebApplication.xpt.xml:
+ Remove deprecated FileOptions node.
+ * Templates/WebControl-CodeBehindNonPartial.xft.xml,
+ Templates/MasterPage-CodeBehindNonPartial.xft.xml,
+ Templates/WebForm-CodeBehindNonPartial.xft.xml: Add non-partial-type
+ templates.
+ * Templates/GlobalAsax-CodeBehind.xft.xml,
+ Templates/GlobalAsax-Empty.xft.xml: Add Global.asax templates.
+ * Templates/WebApplication-Empty.xpt.xml: Add empty project template.
+
+2007-09-06 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Templates/WebService-CodeBehind.xft.xml,
+ Templates/WebHandler-Empty.xft.xml, Templates/WebService-Empty.xft.xml,
+ Templates/WebControl-Empty.xft.xml, Templates/WebForm-Empty.xft.xml,
+ Templates/WebHandler-CodeBehind.xft.xml: Limit to be shown for ASP.NET
+ projects.
+ * Templates/WebControl-CodeBehind.xft.xml,
+ Templates/WebForm-CodeBehind.xft.xml: Limit to be shown for ASP.NET
+ projects. Require partial class support.
+ * Templates/MasterPage-Empty.xft.xml: Limit to be shown for ASP.NET
+ projects. Require 2.0 runtime.
+ * Templates/MasterPage-CodeBehind.xft.xml: Limit to be shown for ASP.NET
+ projects. Require 2.0 runtime. Require partial class support.
+
+2007-09-05 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Project/AspNetAppProject.cs: Set correct BuildAction for added ASP.NET
+ files. Convert cachedDocuments to generic collection.
+
+2007-09-05 Michael Hutchinson <mhutchinson@novell.com>
+
+ * AspNetAddIn.addin.xml, AspNetAddIn.mdp, Makefile.am,
+ Templates/CodeBehindWebControl.xft.xml,
+ Templates/CodeBehindWebForm.xft.xml,
+ Templates/CodeBehindWebHandler.xft.xml,
+ Templates/CodeBehindWebService.xft.xml,
+ Templates/EmptyWebControl.xft.xml, Templates/EmptyWebForm.xft.xml,
+ Templates/EmptyWebHandler.xft.xml, Templates/EmptyWebService.xft.xml,
+ Templates/MasterPage-CodeBehind.xft.xml,
+ Templates/MasterPage-Empty.xft.xml,
+ Templates/MasterPageWithCodeBehind.xft.xml,
+ Templates/MasterPageWithNoCodeBehind.xft.xml,
+ Templates/WebControl-CodeBehind.xft.xml,
+ Templates/WebControl-Empty.xft.xml,
+ Templates/WebForm-CodeBehind.xft.xml, Templates/WebForm-Empty.xft.xml,
+ Templates/WebHandler-CodeBehind.xft.xml,
+ Templates/WebHandler-Empty.xft.xml,
+ Templates/WebService-CodeBehind.xft.xml,
+ Templates/WebService-Empty.xft.xml, Templates/WebApplication.xpt.xml:
+ Rename template files.
+
+2007-09-05 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Templates/CodeBehindWebControl.xft.xml,
+ Templates/CodeBehindWebForm.xft.xml,
+ Templates/MasterPageWithCodeBehind.xft.xml: Use SuppressAutoOpen to stop
+ designer CodeBehind files from opening automatically when created.
+
+2007-09-05 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Templates/WebApplication.xpt.xml: Use new FileReferenceTemplate to
+ reference CodeBehindWebForm instead of duplicating whole template.
+
+2007-09-05 Michael Hutchinson <mhutchinson@novell.com>
+
+ * Project/XspParameters.cs: Fix some compile warnings.
+ * Templates/CodeBehindWebHandler.xft.xml, Templates/EmptyWebForm.xft.xml,
+ Templates/CodeBehindWebControl.xft.xml,
+ Templates/CodeBehindWebService.xft.xml,
+ Templates/CodeBehindWebForm.xft.xml,
+ Templates/MasterPageWithNoCodeBehind.xft.xml,
+ Templates/MasterPageWithCodeBehind.xft.xml,
+ Templates/EmptyWebHandler.xft.xml, Templates/WebApplication.xpt.xml,
+ Templates/EmptyWebControl.xft.xml, Templates/EmptyWebService.xft.xml:
+ Use partial classes where possible. Default to deploying ASP.NET files
+ rather than building them. Remove "Hello world" code. Default to 2.0
+ runtime.
+
+2007-08-31 Mike Krüger <mkrueger@novell.com>
+
+ * Gui/AspNetConfigurationPanel.cs, Gui/AspNetConfigurationPanelWidget.cs,
+ Gui/XspOptionsPanel.cs: Changes due to new property infrastructure.
+
+2007-08-31 Ankit Jain <jankit@novell.com>
+
+ * Templates/WebApplication.xpt.xml: Set BuildAction for aspx file to
+ FileCopy.
+
+2007-08-09 Lluis Sanchez Gual <lluis@novell.com>
+
+ * AspNetAddIn.addin.xml, AspNetAddIn.mdp, Makefile.am: Reorganized the
+ extension point hierarchy. Embedded all add-in manifests as resources.
+
+2007-08-01 Michael Hutchinson <m.j.hutchinson@gmail.com>
+
+ * AspNetAppProject.cs: Fix the IDeployable implementation. The target
+ directory names should be handled by an ASP.NET-specific
+ IDirectoryResolver, not the GetDeployFiles method.
+
+2007-07-25 Lluis Sanchez Gual <lluis@novell.com>
+
+ * AspNetAddIn.mdp: Updated.
+
+2007-06-19 Michael Hutchinson <m.j.hutchinson@gmail.com>
+
+ * Project/CodeBehind.cs: Oops, remove some development code in which
+ caused sharing violations.
+
+2007-06-19 Lluis Sanchez Gual <lluis@novell.com>
+
+ * gtk-gui/AspNetAddIn.AspNetConfigurationPanelWidget.cs,
+ AspNetAddIn.mdp: Changed some old 2.4 dependencies to 2.8. Use
+ GettextCatalog for localizable strings.
+
+2007-06-18 Michael Hutchinson <m.j.hutchinson@gmail.com>
+
+ * Gui/AspNetConfigurationPanel.cs,
+ Gui/AspNetConfigurationPanelWidget.cs, AspNetAddIn.glade,
+ gtk-gui/generated.cs,
+ gtk-gui/AspNetAddIn.AspNetConfigurationPanelWidget.cs,
+ gtk-gui/objects.xml, gtk-gui/gui.stetic: More Stetic! Convert
+ configuration panel widget from Glade to Stetic.
+ * Project/CodeBehind.cs: Some shared code for handling CodeBehind.
+ * Project/VerifyCodeBehindBuildStep.cs: Use partial classes if they're
+ present.
+ * Project/AspNetAppProjectConfiguration.cs: Silence the error when user
+ picks non-library target type. Rename AutoGenerateCodeBehindMembers
+ to GenerateNonPartialCodeBehindMembers.
+ * Project/AspNetCodeBehindProvider.cs: Use code from Codebehind class.
+ * AspNetAddIn.mdp, Makefile.am: Added files.
+
+2007-06-08 Michael Hutchinson <m.j.hutchinson@gmail.com>
+
+ * Parser/Document.cs: Report parse errors on console, not in dialogue.
+
+ * Parser/PageInfoVisitor.cs: Add CodeFile property.
+
+2007-05-31 Lluis Sanchez Gual <lluis@novell.com>
+
+ * AspNetAddIn.addin.xml: Fix typo.
+
+2007-05-11 Lluis Sanchez Gual <lluis@novell.com>
+
+ * AspNetAddIn.mdp: Copy the .addins.xml file to the output dir.
+
+2007-05-11 Lluis Sanchez Gual <lluis@novell.com>
+
+ * AspNetAddIn.mdp: Don't copy project references.
+
+2007-05-09 Lluis Sanchez Gual <lluis@novell.com>
+
+ * AspNetAddIn.mdp, Makefile.am: Reference shared assemblies from the
+ correct location.
+
+2007-05-08 Lluis Sanchez Gual <lluis@novell.com>
+
+ * AspNetAddIn.addin.xml: Fix add-in dependency.
+
+2007-05-07 Michael Hutchinson <m.j.hutchinson@gmail.com>
+
+ * Project/VerifyCodeBehindBuildStep.cs: Make updating files thread-safe.
+
+2007-05-04 Lluis Sanchez Gual <lluis@novell.com>
+
+ * AspNetAddIn.addin.xml, AspNetAddIn.mdp, Makefile.am: Migration to
+ Mono.Addins.
+
+2007-04-21 Lluis Sanchez Gual <lluis@novell.com>
+
+ * Project/AspNetAppProject.cs: Track api changes.
+
+2007-04-19 Lluis Sanchez Gual <lluis@novell.com>
+
+ * Project/AspNetAppProject.cs: Track api changes.
+ * AspNetAddIn.addin.xml, Makefile.am: Added dependency to
+ MonoDevelop.Deployment.
+ * AspNetAddIn.mdp: Don't copy referenced assemblies.
+
+2007-02-25 Michael Hutchinson <m.j.hutchinson@gmail.com>
+
+ * Project/AspNetAppProject.cs:
+ Remove DoPreBuild override as it's a deprecated build extension point.
+ Now set AspNetAppProjectConfiguration.SourceDirectory via a FileName
+ override, which is more robust.
+ Implement GetDeployFiles to handle ASP.NET bin folder.
+
+2007-02-21 Ankit Jain <jankit@novell.com>
+
+ * Project/VerifyCodeBehindBuildStep.cs: Warn the user if
+ AutoGenerateCodeBehindMembers is false.
+
+2007-02-16 Lluis Sanchez Gual <lluis@novell.com>
+
+ * AspNetAddIn.addin.xml: Change add-in versions to 0.13.
+
+2007-02-15 Lluis Sanchez Gual <lluis@novell.com>
+
+ * AspNetAddIn.mdp, Makefile.am: Synchronized the MD project and the
+ Makefile
+
+2007-02-07 Lluis Sanchez Gual <lluis@novell.com>
+
+ * Project/VerifyCodeBehindBuildStep.cs, AspNetAddIn.addin.xml,
+ AspNetAddIn.mdp: Replace the IBuildStep implementation by a
+ ProjectServiceExtension subclass. IBuildStep is not available
+ anymore.
+
+2007-02-05 Michael Hutchinson <m.j.hutchinson@gmail.com>
+
+ * Templates/MasterPageWithCodeBehind.xft.xml:
+ * Project/AspNetDisplayBinding.cs:
+ * Parser/PageInfoVisitor.cs: Fix errors in last commit that came from
+ my misunderstanding of how the CodeBehind model doesn't apply to
+ MasterPages. The CodeBehindService will need support for the
+ CodeBeside model at some point.
+
+2007-02-04 Michael Hutchinson <m.j.hutchinson@gmail.com>
+
+ * Parser/Tree/DirectiveNode.cs: Workaround for parser bug, so that
+ Codebehind for MasterPages can be found.
+
+ * Parser/Internal/*: Update from mcs class tree.
+
+ * Parser/PageInfoVisitor.cs:
+ * Project/AspNetDisplayBinding.cs: Handle MasterPages.
+
+2007-02-04 John Anderson <sontek@gmail.com>
+
+ * Templates/MasterPageWithNoCodeBehind.xft.xml:
+ * Templates/MasterPageWithCodeBehind.xft.xml:
+ * Makefile.am:
+ * AspNetAddIn.mdp:
+ * AspNetAddIn.addin.xml: Added templates for MasterPages.
+
+2007-02-01 Michael Hutchinson <m.j.hutchinson@gmail.com>
+
+ * Project/AspNetAppProject.cs: More informative error messages.
+
+ * Project/AspNetCodeBehindProvider.cs: Track API changes.
+
+2007-01-18 Michael Hutchinson <m.j.hutchinson@gmail.com>
+
+ * Templates/CodeBehindWebControl.xft.xml: Use the proper filename
+ rather than "Default".
+
+2007-01-18 Michael Hutchinson <m.j.hutchinson@gmail.com>
+
+ * AspNetAddIn/Parser/Internal/TagType.cs:
+ * AspNetAddIn/Parser/Internal/AspParser.cs:
+ * AspNetAddIn/Parser/Internal/ParseException.cs:
+ Make classes and members public so that AspNetAddIn's parser can
+ consume them. Can revert this when AspNetEdit uses the whole parser
+ rather that just the tokeniser as it does ATM.
+
+2006-09-19 Jacob Ilsø Christensen <jacobilsoe@gmail.com>
+
+ * AspNetAddIn.mdp: Updated.
+
+2006-09-16 Michael Hutchinson <m.j.hutchinson@gmail.com>
+
+ * Gui/AspNetConfigurationPanel.cs:
+ * AspNetAddIn.glade:
+ * Project/AspNetAppProjectConfiguration.cs:
+ * AspNetAddIn.addin.xml:
+ * Project/VerifyCodeBehindBuildStep.cs:
+ Added a new option that can be used to disable compilation-time
+ CodeBehind verification for different configurations.
+
+ * Makefile.am:
+ * AspNetAddIn.mdp: Add Gui/AspNetConfigurationPanel.cs to the build.
+
+2006-09-13 Michael Hutchinson <m.j.hutchinson@gmail.com>
+
+ * Project/AspNetAppProject.cs: Fix parsed document caching. Check if file
+ can be parsed before parsing, instead of at cache lookup.
+
+2006-08-21 Michael Hutchinson <m.j.hutchinson@gmail.com>
+
+ * Project/AspNetDisplayBinding.cs:
+ * Project/AspNetAppProject.cs:
+ * Parser/PageInfoVisitor.cs: Add support for Global.asax CodeBehind.
+
+ * Project/AspNetCodeBehindProvider.cs:
+ * Project/AspNetAppProject.cs: Don't try to create Documents for files
+ that we can't parse.
+
+ * Project/AspNetAppProject.cs: Improve web server launch checking code.
+
+2006-08-21 Michael Hutchinson <m.j.hutchinson@gmail.com>
+
+ * Project/VerifyCodeBehindBuildStep.cs: Make sure modified files are
+ saved before compilation.
+ Update the parser database to make sure our parse information is
+ valid.
+
+ * Project/AspNetAppProject.cs: Add an operation cancel handler.
+
+ * Parser/Document.cs: trap file loading exceptions.
+
+2006-08-05 Michael Hutchinson <m.j.hutchinson@gmail.com>
+
+ * Project/VerifyCodeBehindBuildStep.cs:
+ Track changes in BindingService.
+ * AspNetAddIn.mdp: Remove nonexistent file.
+
+2006-07-25 Michael Hutchinson <m.j.hutchinson@gmail.com>
+
+ * Project/AspNetAppProject.cs:
+ Become aware of Project.DoPreBuild; let it create the correct output
+ directory for us.
+ * Project/VerifyCodeBehindBuildStep.cs:
+ Refactored some functionality into Monodevelop.DesignerSupport.
+ BindingService.
+
+
+2006-07-21 Michael Hutchinson <m.j.hutchinson@gmail.com>
+
+ * Project/AspNetAppProject.cs:
+ * Project/VerifyCodeBehindBuildStep.cs:
+ Move Codebehind verification into a separate build step.
+
+ * Project/CodeBehindClassBuilder.cs:
+ * Project/AspNetCodeBehindProvider.cs:
+ Deleted. Functionality moved to MonoDevelop.DesignerSupport.
+ * Project/AspNetAppProject.cs:
+ * AspNetAddIn.addin.xml:
+ * Project/CodeBehindProjectFileExtension.cs:
+ Implement CodeBehindProvider architecture.
+
+ * Parser/PageInfoVisitor.cs:
+ Find CodeBehind info for more filetypes.
+
+ * Templates/CodeBehindWebHandler.xft.xml:
+ * Templates/CodeBehindWebControl.xft.xml:
+ * Templates/CodeBehindWebForm.xft.xml:
+ * Templates/WebApplication.xpt.xml:
+ Remove unnecessary underscores in CodeBehind class names.
+
+ * Templates/CodeBehindWebService.xft.xml:
+ * Templates/EmptyWebService.xft.xml:
+ New templates.
+
+
+ * Project/AspNetDisplayBinding.cs:
+ New file. For now, makes it possible to open ASP.NET mime types.
+
+ * AspNetAddIn.addin.xml:
+ * Makefile.am:
+ * AspNetAddIn.mdp:
+ Include new files, remove old ones.
+
+2006-07-04 Michael Hutchinson <m.j.hutchinson@gmail.com>
+
+ * Templates/CodeBehindWebControl.xft.xml:
+ * Templates/CodeBehindWebForm.xft.xml:
+
+ * Project/AspNetAppProject.cs:
+ * Project/CodeBehindProjectFileExtension.cs:
+ Don't always throw exceptions when CodeBehind not found.
+
+ * AspNetAddIn.addin.xml:
+ * Project/CodeBehindProjectFileExtension.cs:
+ Change "HideCodeBehind" option to "ShowCodeBehindFiles"
+
+ * Project/AspNetFileDescriptionTemplate.cs:
+ Move translation functionality to child CodeTranslationFileDescriptionTemplate.
+ Move name substitution functionality to SingleFileDescriptionTemplate.
+
+ * Templates/CodeBehindWebHandler.xft.xml:
+ * Templates/EmptyWebForm.xft.xml:
+ * Templates/CodeBehindWebControl.xft.xml:
+ * Templates/CodeBehindWebForm.xft.xml:
+ * Templates/EmptyWebHandler.xft.xml:
+ * Templates/WebApplication.xpt.xml:
+ * Templates/EmptyWebControl.xft.xml:
+ Track AspNetFileDescriptionTemplate changes.
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/CodeTemplates/CSharp/AddController/ControllerWithEmptyReadAndWriteActions.tt b/main/src/addins/AspNet/CodeTemplates/CSharp/AddController/ControllerWithEmptyReadAndWriteActions.tt
index 50dd69e111..50dd69e111 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/CodeTemplates/CSharp/AddController/ControllerWithEmptyReadAndWriteActions.tt
+++ b/main/src/addins/AspNet/CodeTemplates/CSharp/AddController/ControllerWithEmptyReadAndWriteActions.tt
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/CodeTemplates/CSharp/AddController/Empty.tt b/main/src/addins/AspNet/CodeTemplates/CSharp/AddController/Empty.tt
index 930da51a0e..930da51a0e 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/CodeTemplates/CSharp/AddController/Empty.tt
+++ b/main/src/addins/AspNet/CodeTemplates/CSharp/AddController/Empty.tt
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/CodeTemplates/CSharp/AddView/Aspx/Empty.tt b/main/src/addins/AspNet/CodeTemplates/CSharp/AddView/Aspx/Empty.tt
index 770de05a28..e2ac7c789c 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/CodeTemplates/CSharp/AddView/Aspx/Empty.tt
+++ b/main/src/addins/AspNet/CodeTemplates/CSharp/AddView/Aspx/Empty.tt
@@ -17,7 +17,8 @@ if (mvcHost.IsViewUserControl) { #>
}
} else if(mvcHost.IsViewPage) { #>
<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage<#= dataTypeString #>" %>
-<html xmlns="http://www.w3.org/1999/xhtml">
+<!DOCTYPE html>
+<html>
<head runat="server">
<title></title>
</head>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/CodeTemplates/CSharp/AddView/Razor/Empty.tt b/main/src/addins/AspNet/CodeTemplates/CSharp/AddView/Razor/Empty.tt
index 9c53b0761f..9c53b0761f 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/CodeTemplates/CSharp/AddView/Razor/Empty.tt
+++ b/main/src/addins/AspNet/CodeTemplates/CSharp/AddView/Razor/Empty.tt
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Gui/AddControllerDialog.cs b/main/src/addins/AspNet/Commands/AddControllerDialog.cs
index ec709c532d..603e60dbf0 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Gui/AddControllerDialog.cs
+++ b/main/src/addins/AspNet/Commands/AddControllerDialog.cs
@@ -26,14 +26,21 @@
using System;
using System.Collections.Generic;
-namespace MonoDevelop.AspNet.Mvc.Gui
+using Gtk;
+using MonoDevelop.Core;
+using MonoDevelop.AspNet.Projects;
+
+namespace MonoDevelop.AspNet.Commands
{
- public partial class AddControllerDialog : Gtk.Dialog
+ class AddControllerDialog : Dialog
{
IList<string> loadedTemplateList;
System.CodeDom.Compiler.CodeDomProvider provider;
- #region Public Properties
+ Button buttonCancel;
+ Button buttonOk;
+ Entry nameEntry;
+ ComboBox templateCombo;
public string ControllerName {
get {
@@ -50,11 +57,9 @@ namespace MonoDevelop.AspNet.Mvc.Gui
}
}
- #endregion
-
- public AddControllerDialog (AspMvcProject project)
+ public AddControllerDialog (AspNetAppProject project)
{
- this.Build ();
+ Build ();
provider = project.LanguageBinding.GetCodeDomProvider ();
@@ -81,6 +86,46 @@ namespace MonoDevelop.AspNet.Mvc.Gui
Validate ();
}
+ void Build ()
+ {
+ DefaultWidth = 400;
+ DefaultHeight = 150;
+ BorderWidth = 6;
+ Resizable = false;
+
+ buttonCancel = new Button (Stock.Cancel);
+ AddActionWidget (buttonCancel, ResponseType.Cancel);
+ buttonOk = new Button (Stock.Ok);
+ AddActionWidget (buttonOk, ResponseType.Ok);
+
+ nameEntry = new Entry ();
+ templateCombo = ComboBox.NewText ();
+
+ var nameLabel = new Label {
+ TextWithMnemonic = GettextCatalog.GetString ("_Name:"),
+ Xalign = 0,
+ MnemonicWidget = nameEntry
+ };
+ var templateLabel = new Label {
+ TextWithMnemonic = GettextCatalog.GetString ("_Template:"),
+ Xalign = 0,
+ MnemonicWidget = templateCombo
+ };
+
+ var table = new Table (2, 2, false) {
+ RowSpacing = 6,
+ ColumnSpacing = 6
+ };
+
+ table.Attach (nameLabel, 0, 1, 0, 1, AttachOptions.Fill, 0, 0, 0);
+ table.Attach (nameEntry, 1, 2, 0, 1, AttachOptions.Fill | AttachOptions.Expand, 0, 0, 0);
+ table.Attach (templateLabel, 0, 1, 1, 2, AttachOptions.Fill, 0, 0, 0);
+ table.Attach (templateCombo, 1, 2, 1, 2, AttachOptions.Fill | AttachOptions.Expand, 0, 0, 0);
+ VBox.PackStart (table);
+
+ Child.ShowAll ();
+ }
+
protected virtual void Validate (object sender, EventArgs e)
{
Validate ();
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Gui/AddViewDialog.cs b/main/src/addins/AspNet/Commands/AddViewDialog.cs
index b3966789cc..c9d4c56a21 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Gui/AddViewDialog.cs
+++ b/main/src/addins/AspNet/Commands/AddViewDialog.cs
@@ -25,41 +25,47 @@
// THE SOFTWARE.
using System;
-using System.Linq;
using System.IO;
using System.Collections.Generic;
-using MonoDevelop.AspNet.StateEngine;
using PP = System.IO.Path;
-using MonoDevelop.AspNet.Gui;
using MonoDevelop.Ide;
-using MonoDevelop.AspNet.Parser;
using MonoDevelop.Core;
-using MonoDevelop.Components;
using ICSharpCode.NRefactory.TypeSystem;
using MonoDevelop.Ide.TypeSystem;
-using MonoDevelop.Xml.StateEngine;
+using MonoDevelop.AspNet.Projects;
+using MonoDevelop.AspNet.WebForms.Dom;
+using MonoDevelop.AspNet.WebForms;
+using Gtk;
-namespace MonoDevelop.AspNet.Mvc.Gui
+namespace MonoDevelop.AspNet.Commands
{
-
-
- public partial class AddViewDialog : Gtk.Dialog
- {
- AspMvcProject project;
+ class AddViewDialog : Dialog
+ {
+ readonly AspNetAppProject project;
IDictionary<string, IList<string>> loadedTemplateList;
- IDictionary<string, Gtk.ListStore> templateStore;
- Gtk.ListStore dataClassStore;
+ IDictionary<string, ListStore> templateStore;
+ ListStore dataClassStore;
string oldMaster;
string oldEngine;
- Gtk.ListStore primaryPlaceholderStore = new Gtk.ListStore (typeof (String));
+ ListStore primaryPlaceholderStore = new ListStore (typeof (String));
System.CodeDom.Compiler.CodeDomProvider provider;
TypeDataProvider classDataProvider;
-
- public AddViewDialog (AspMvcProject project)
+
+ Button buttonCancel, buttonOk, masterButton;
+ Label placeholderLabel;
+ ComboBox viewEngineCombo, templateCombo;
+ ComboBoxEntry placeholderCombo, dataClassCombo;
+ Entry nameEntry;
+ Entry masterEntry;
+ CheckButton partialCheck, stronglyTypedCheck, masterCheck;
+ Alignment typePanel, masterPanel;
+
+ public AddViewDialog (AspNetAppProject project)
{
this.project = project;
- this.Build ();
+
+ Build ();
provider = project.LanguageBinding.GetCodeDomProvider ();
@@ -72,33 +78,160 @@ namespace MonoDevelop.AspNet.Mvc.Gui
viewEngineCombo.Active = 0;
InitializeTemplateStore (loadedTemplateList);
-
+
ContentPlaceHolders = new List<string> ();
string siteMaster = project.VirtualToLocalPath ("~/Views/Shared/Site.master", null);
if (project.Files.GetFile (siteMaster) != null)
masterEntry.Text = "~/Views/Shared/Site.master";
- primaryPlaceholderCombo.Model = primaryPlaceholderStore;
+ placeholderCombo.Model = primaryPlaceholderStore;
UpdateTypePanelSensitivity (null, null);
UpdateMasterPanelSensitivity (null, null);
Validate ();
+ }
+
+ void Build ()
+ {
+ DefaultWidth = 470;
+ DefaultHeight = 380;
+ BorderWidth = 6;
+ Resizable = false;
+
+ VBox.Spacing = 6;
+
+ buttonCancel = new Button (Gtk.Stock.Cancel);
+ AddActionWidget (buttonCancel, ResponseType.Cancel);
+ buttonOk = new Button (Gtk.Stock.Ok);
+ AddActionWidget (buttonOk, ResponseType.Ok);
+
+ var table = new Table (3, 2, false) { ColumnSpacing = 6, RowSpacing = 6 };
+
+ nameEntry = new Entry { WidthRequest = 350 };
+ viewEngineCombo = ComboBox.NewText ();
+ templateCombo = ComboBox.NewText ();
+
+ var nameLabel = new Label (GettextCatalog.GetString ("_Name")) {
+ MnemonicWidget = nameEntry,
+ Xalign = 0
+ };
+ var templateLabel = new Label (GettextCatalog.GetString ("_Template:")) {
+ MnemonicWidget = nameEntry,
+ Xalign = 0
+ };
+ var engineLabel = new Label (GettextCatalog.GetString ("_View Engine:")) {
+ MnemonicWidget = nameEntry,
+ Xalign = 0
+ };
+
+ const AttachOptions expandFill = AttachOptions.Expand | AttachOptions.Fill;
+ const AttachOptions fill = AttachOptions.Fill;
+
+ table.Attach (nameLabel, 0, 1, 0, 1, fill, 0, 0, 0);
+ table.Attach (nameEntry, 1, 2, 0, 1, expandFill, 0, 0, 0);
+ table.Attach (templateLabel, 0, 1, 1, 2, fill, 0, 0, 0);
+ table.Attach (templateCombo, 1, 2, 1, 2, expandFill, 0, 0, 0);
+ table.Attach (engineLabel, 0, 1, 2, 3, fill, 0, 0, 0);
+ table.Attach (viewEngineCombo, 1, 2, 2, 3, expandFill, 0, 0, 0);
+
+ VBox.PackStart (table, false, false, 0);
+
+ var frame = new Frame (GettextCatalog.GetString ("Options")) { BorderWidth = 2 };
+ var optionsVBox = new VBox { Spacing = 6 };
+ var optionsAlignment = new Alignment (0.5f, 0.5f, 1f, 1f) {
+ Child = optionsVBox,
+ TopPadding = 4,
+ BottomPadding = 4,
+ RightPadding = 4,
+ LeftPadding = 4
+ };
+ frame.Add (optionsAlignment);
+
+ partialCheck = new CheckButton (GettextCatalog.GetString ("_Partial view")) { UseUnderline = true };
+ stronglyTypedCheck = new CheckButton (GettextCatalog.GetString ("_Strongly typed")) { UseUnderline = true };
+ masterCheck = new CheckButton (GettextCatalog.GetString ("Has _master page or layout")) { UseUnderline = true };
+
+ dataClassCombo = ComboBoxEntry.NewText ();
+ masterEntry = new Entry { WidthRequest = 250 };
+ placeholderCombo = ComboBoxEntry.NewText ();
+ masterButton = new Button ("...");
+
+ optionsVBox.PackStart (partialCheck);
+ optionsVBox.PackStart (stronglyTypedCheck);
+ typePanel = WithLabelAndLeftPadding (dataClassCombo, GettextCatalog.GetString ("_Data class:"), true, 24);
+ optionsVBox.PackStart (typePanel);
+ optionsVBox.PackStart (masterCheck);
+
+
+ var masterLabel = new Label (GettextCatalog.GetString ("_File:")) {
+ MnemonicWidget = masterEntry,
+ Xalign = 0,
+ UseUnderline = true
+ };
+
+ placeholderLabel = new Label (GettextCatalog.GetString ("P_rimary placeholder:")) {
+ MnemonicWidget = placeholderCombo,
+ Xalign = 0,
+ UseUnderline = true
+ };
+
+ var masterTable = new Table (2, 3, false) { RowSpacing = 6, ColumnSpacing = 6 };
+
+ masterTable.Attach (masterLabel, 0, 1, 0, 1, fill, 0, 0, 0);
+ masterTable.Attach (masterEntry, 1, 3, 0, 1, expandFill, 0, 0, 0);
+ masterTable.Attach (placeholderLabel, 0, 1, 1, 2, expandFill, 0, 0, 0);
+ masterTable.Attach (placeholderCombo, 1, 2, 1, 2, fill, 0, 0, 0);
+ masterTable.Attach (masterButton, 2, 3, 1, 2, fill, 0, 0, 0);
+
+ masterPanel = new Alignment (0.5f, 0.5f, 1f, 1f) { LeftPadding = 24, Child = masterTable };
+ optionsVBox.PackStart (masterPanel);
+
+ VBox.PackStart (frame, false, false, 0);
+
+ Child.ShowAll ();
+
+ viewEngineCombo.Changed += ViewEngineChanged;
+ templateCombo.Changed += Validate;
+ nameEntry.Changed += Validate;
+ partialCheck.Toggled += UpdateMasterPanelSensitivity;
+ stronglyTypedCheck.Toggled += UpdateTypePanelSensitivity;
+ dataClassCombo.Changed += DataClassChanged;
+ masterCheck.Toggled += UpdateMasterPanelSensitivity;
+ masterEntry.Changed += MasterChanged;
+ masterButton.Clicked += ShowMasterSelectionDialog;
+ placeholderCombo.Changed += Validate;
+
+ }
+
+ static Alignment WithLabelAndLeftPadding (Widget w, string labelText, bool underline, uint leftPadding)
+ {
+ var label = new Label (labelText) {
+ MnemonicWidget = w,
+ Xalign = 0,
+ UseUnderline = underline
+ };
+
+ var box = new HBox (false, 6);
+ box.PackStart (label);
+ box.PackStart (w, true, true, 0);
+
+ return new Alignment (0.5f, 0.5f, 1f, 1f) { LeftPadding = leftPadding, Child = box };
}
IEnumerable<string> GetProperViewEngines ()
{
yield return "Aspx";
- if (MvcVersion.CompareTo ("2.0.0.0") > 0)
+ if (project.SupportsRazorViewEngine)
yield return "Razor";
}
void InitializeTemplateStore (IDictionary<string, IList<string>> tempList)
{
- templateStore = new Dictionary<string, Gtk.ListStore> ();
+ templateStore = new Dictionary<string, ListStore> ();
foreach (var engine in tempList.Keys) {
bool foundEmptyTemplate = false;
- templateStore[engine] = new Gtk.ListStore (typeof (string));
+ templateStore[engine] = new ListStore (typeof (string));
foreach (string file in tempList[engine]) {
string name = PP.GetFileNameWithoutExtension (file);
@@ -135,23 +268,23 @@ namespace MonoDevelop.AspNet.Mvc.Gui
buttonOk.Sensitive = IsValid ();
}
- protected virtual void UpdateMasterPanelSensitivity (object sender, EventArgs e)
+ protected void UpdateMasterPanelSensitivity (object sender, EventArgs e)
{
bool canHaveMaster = !IsPartialView;
masterCheck.Sensitive = canHaveMaster;
masterPanel.Sensitive = canHaveMaster && HasMaster;
- placeholderBox.Sensitive = masterPanel.Sensitive && ActiveViewEngine != "Razor";
+ placeholderLabel.Sensitive = placeholderCombo.Sensitive = masterPanel.Sensitive && ActiveViewEngine != "Razor";
MasterChanged (null, null);
Validate ();
}
- protected virtual void UpdateTypePanelSensitivity (object sender, EventArgs e)
+ protected void UpdateTypePanelSensitivity (object sender, EventArgs e)
{
bool enabled = typePanel.Sensitive = stronglyTypedCheck.Active;
if (enabled && classDataProvider == null) {
classDataProvider = new TypeDataProvider (project);
- dataClassStore = new Gtk.ListStore (typeof (string));
+ dataClassStore = new ListStore (typeof (string));
foreach (var item in classDataProvider.TypeNamesList)
dataClassStore.AppendValues (item);
dataClassCombo.Model = dataClassStore;
@@ -174,7 +307,7 @@ namespace MonoDevelop.AspNet.Mvc.Gui
return false;
if (!IsPartialView && HasMaster && ActiveViewEngine != "Razor") {
- if (String.IsNullOrEmpty (MasterFile) || !System.IO.File.Exists (project.VirtualToLocalPath (oldMaster, null)))
+ if (String.IsNullOrEmpty (MasterFile) || !File.Exists (project.VirtualToLocalPath (oldMaster, null)))
return false;
//PrimaryPlaceHolder can be empty
//Layout Page can be empty in Razor Views - it's usually set in _ViewStart.cshtml file
@@ -191,15 +324,15 @@ namespace MonoDevelop.AspNet.Mvc.Gui
return !String.IsNullOrEmpty (identifier) && provider.IsValidIdentifier (identifier);
}
- protected virtual void ShowMasterSelectionDialog (object sender, System.EventArgs e)
+ protected virtual void ShowMasterSelectionDialog (object sender, EventArgs e)
{
string pattern, title;
if (ActiveViewEngine == "Razor") {
pattern = "*.cshtml";
- title = MonoDevelop.Core.GettextCatalog.GetString ("Select a Layout file...");
+ title = GettextCatalog.GetString ("Select a Layout file...");
} else {
pattern = "*.master";
- title = MonoDevelop.Core.GettextCatalog.GetString ("Select a Master Page...");
+ title = GettextCatalog.GetString ("Select a Master Page...");
}
var dialog = new MonoDevelop.Ide.Projects.ProjectFileSelectorDialog (project, null, pattern)
{
@@ -207,7 +340,7 @@ namespace MonoDevelop.AspNet.Mvc.Gui
TransientFor = this,
};
try {
- if (MessageService.RunCustomDialog (dialog) == (int) Gtk.ResponseType.Ok)
+ if (MessageService.RunCustomDialog (dialog) == (int) ResponseType.Ok)
masterEntry.Text = project.LocalToVirtualPath (dialog.SelectedFile.FilePath);
} finally {
dialog.Destroy ();
@@ -230,8 +363,7 @@ namespace MonoDevelop.AspNet.Mvc.Gui
if (!File.Exists (realPath))
return;
- var pd = TypeSystemService.ParseFile (project, realPath)
- as AspNetParsedDocument;
+ var pd = TypeSystemService.ParseFile (project, realPath) as WebFormsParsedDocument;
if (pd != null) {
try {
@@ -243,7 +375,7 @@ namespace MonoDevelop.AspNet.Mvc.Gui
if (placeholder.Contains ("main") || placeholder.Contains ("Main")
|| placeholder.Contains ("content") || placeholder.Contains ("Content"))
- primaryPlaceholderCombo.Active = i;
+ placeholderCombo.Active = i;
}
} catch (Exception ex) {
LoggingService.LogError ("Unhandled exception getting master regions for '" + realPath + "'", ex);
@@ -296,7 +428,7 @@ namespace MonoDevelop.AspNet.Mvc.Gui
public string PrimaryPlaceHolder {
get {
- return primaryPlaceholderCombo.ActiveText;
+ return placeholderCombo.ActiveText;
}
}
@@ -329,12 +461,6 @@ namespace MonoDevelop.AspNet.Mvc.Gui
public string ActiveViewEngine {
get { return viewEngineCombo.ActiveText; }
- }
-
- public string MvcVersion {
- get {
- return project.GetAspNetMvcVersion ();
- }
}
#endregion
diff --git a/main/src/addins/AspNet/Commands/AddViewFromControllerCommandHandler.cs b/main/src/addins/AspNet/Commands/AddViewFromControllerCommandHandler.cs
new file mode 100644
index 0000000000..0bf46856ec
--- /dev/null
+++ b/main/src/addins/AspNet/Commands/AddViewFromControllerCommandHandler.cs
@@ -0,0 +1,133 @@
+//
+// AddViewFromControllerCommandHandler.cs
+//
+// Author:
+// Piotr Dowgiallo <sparekd@gmail.com>
+//
+// Copyright (c) 2012 Piotr Dowgiallo.
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+
+using System;
+using MonoDevelop.Components.Commands;
+using MonoDevelop.Ide;
+using MonoDevelop.AspNet.Projects;
+
+namespace MonoDevelop.AspNet.Commands
+{
+ class AddViewFromControllerCommandHandler : CommandHandler
+ {
+ protected override void Update (CommandInfo info)
+ {
+ MvcCommandsCommonHandler.Update (info);
+ }
+
+ protected override void Run ()
+ {
+ var doc = IdeApp.Workbench.ActiveDocument;
+ var project = (AspNetAppProject)doc.Project;
+ var currentLocation = doc.Editor.Caret.Location;
+
+ string controllerName = doc.ParsedDocument.GetTopLevelTypeDefinition (currentLocation).Name;
+ int pos = controllerName.LastIndexOf ("Controller", StringComparison.Ordinal);
+ if (pos > 0)
+ controllerName = controllerName.Remove (pos);
+
+ string path = doc.FileName.ParentDirectory.ParentDirectory.Combine ("Views", controllerName);
+ string actionName = doc.ParsedDocument.GetMember (currentLocation).Name;
+ AddView (project, path, actionName);
+ }
+
+ public static void AddView (AspNetAppProject project, string path, string name)
+ {
+ var provider = project.LanguageBinding.GetCodeDomProvider ();
+ if (provider == null)
+ throw new InvalidOperationException ("Project language has null CodeDOM provider");
+
+ string outputFile = null;
+ MvcTextTemplateHost host = null;
+ AddViewDialog dialog = null;
+
+ try {
+ dialog = new AddViewDialog (project);
+ dialog.ViewName = name;
+
+ bool fileGood = false;
+ while (!fileGood) {
+ var resp = (Gtk.ResponseType) MessageService.RunCustomDialog (dialog);
+ dialog.Hide ();
+ if (resp != Gtk.ResponseType.Ok || ! dialog.IsValid ())
+ return;
+
+ string ext = ".cshtml";
+ if (dialog.ActiveViewEngine == "Aspx")
+ ext = dialog.IsPartialView ? ".ascx" : ".aspx";
+
+ if (!System.IO.Directory.Exists (path))
+ System.IO.Directory.CreateDirectory (path);
+
+ outputFile = System.IO.Path.Combine (path, dialog.ViewName) + ext;
+
+ if (System.IO.File.Exists (outputFile)) {
+ fileGood = MessageService.AskQuestion ("Overwrite file?",
+ String.Format ("The file '{0}' already exists.\n", dialog.ViewName) +
+ "Would you like to overwrite it?", AlertButton.OverwriteFile, AlertButton.Cancel)
+ != AlertButton.Cancel;
+ } else
+ break;
+ }
+
+ host = new MvcTextTemplateHost {
+ LanguageExtension = provider.FileExtension,
+ ItemName = dialog.ViewName,
+ ViewDataTypeString = ""
+ };
+
+ if (dialog.HasMaster) {
+ host.IsViewContentPage = true;
+ host.ContentPlaceholder = dialog.PrimaryPlaceHolder;
+ host.MasterPage = dialog.MasterFile;
+ host.ContentPlaceHolders = dialog.ContentPlaceHolders;
+ }
+ else if (dialog.IsPartialView)
+ host.IsViewUserControl = true;
+ else
+ host.IsViewPage = true;
+
+ if (dialog.IsStronglyTyped)
+ host.ViewDataTypeString = dialog.ViewDataTypeString;
+
+ host.ProcessTemplate (dialog.TemplateFile, outputFile);
+ MonoDevelop.TextTemplating.TextTemplatingService.ShowTemplateHostErrors (host.Errors);
+
+ } finally {
+ if (host != null)
+ host.Dispose ();
+ if (dialog != null)
+ dialog.Destroy ();
+ }
+
+ if (System.IO.File.Exists (outputFile)) {
+ project.AddFile (outputFile);
+ IdeApp.ProjectOperations.Save (project);
+ }
+ }
+ }
+
+}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetCommands.cs b/main/src/addins/AspNet/Commands/AspNetCommands.cs
index f22838d13c..0962f498c3 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetCommands.cs
+++ b/main/src/addins/AspNet/Commands/AspNetCommands.cs
@@ -24,15 +24,15 @@
// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-using System;
-
-using MonoDevelop.Components.Commands;
-
-namespace MonoDevelop.AspNet
+namespace MonoDevelop.AspNet.Commands
{
-
public enum AspNetCommands
{
AddAspNetDirectory,
+ AddView,
+ AddController,
+ GoToView,
+ GoToController,
+ AddViewFromController
}
}
diff --git a/main/src/addins/AspNet/Commands/GoToControllerCommandHandler.cs b/main/src/addins/AspNet/Commands/GoToControllerCommandHandler.cs
new file mode 100644
index 0000000000..ed2251cb31
--- /dev/null
+++ b/main/src/addins/AspNet/Commands/GoToControllerCommandHandler.cs
@@ -0,0 +1,66 @@
+//
+// GoToControllerCommandHandler.cs
+//
+// Author:
+// Piotr Dowgiallo <sparekd@gmail.com>
+//
+// Copyright (c) 2012 Piotr Dowgiallo
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+
+using System;
+using System.Linq;
+using ICSharpCode.NRefactory.TypeSystem;
+using MonoDevelop.Components.Commands;
+using MonoDevelop.Core;
+using MonoDevelop.Ide;
+using MonoDevelop.AspNet.Projects;
+
+namespace MonoDevelop.AspNet.Commands
+{
+
+ class GoToControllerCommandHandler : CommandHandler
+ {
+ protected override void Update (CommandInfo info)
+ {
+ var doc = IdeApp.Workbench.ActiveDocument;
+ AspNetAppProject project;
+ if (doc == null || (project = doc.Project as AspNetAppProject) == null || !project.IsAspMvcProject) {
+ info.Enabled = info.Visible = false;
+ return;
+ }
+ var baseDirectory = doc.FileName.ParentDirectory.ParentDirectory;
+ if (!string.Equals (baseDirectory.FileName, "Views"))
+ info.Enabled = info.Visible = false;
+ }
+
+ protected override void Run ()
+ {
+ var doc = IdeApp.Workbench.ActiveDocument;
+ var name = doc.FileName.ParentDirectory.FileName;
+ var controller = doc.ProjectContent.GetAllTypeDefinitions ().FirstOrDefault (t => t.Name == name + "Controller");
+
+ if (controller != null)
+ IdeApp.Workbench.OpenDocument (controller.UnresolvedFile.FileName, doc.Project);
+ else
+ MessageService.ShowError ("Matching controller cannot be found.");
+ }
+ }
+
+}
diff --git a/main/src/addins/AspNet/Commands/GoToViewCommandHandler.cs b/main/src/addins/AspNet/Commands/GoToViewCommandHandler.cs
new file mode 100644
index 0000000000..cbdfed0257
--- /dev/null
+++ b/main/src/addins/AspNet/Commands/GoToViewCommandHandler.cs
@@ -0,0 +1,76 @@
+//
+// GoToViewCommandHandler.cs
+//
+// Author:
+// Piotr Dowgiallo <sparekd@gmail.com>
+//
+// Copyright (c) 2012 Piotr Dowgiallo
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+
+using System;
+using System.IO;
+using ICSharpCode.NRefactory.TypeSystem;
+using MonoDevelop.Components.Commands;
+using MonoDevelop.Core;
+using MonoDevelop.Ide;
+
+namespace MonoDevelop.AspNet.Commands
+{
+ class GoToViewCommandHandler : CommandHandler
+ {
+ protected override void Update (CommandInfo info)
+ {
+ MvcCommandsCommonHandler.Update (info);
+ }
+
+ protected override void Run ()
+ {
+ var doc = IdeApp.Workbench.ActiveDocument;
+ var currentLocation = doc.Editor.Caret.Location;
+
+ var controller = doc.ParsedDocument.GetTopLevelTypeDefinition (currentLocation);
+ string controllerName = controller.Name;
+ int pos = controllerName.LastIndexOf ("Controller", StringComparison.Ordinal);
+ if (pos > 0)
+ controllerName = controllerName.Remove (pos);
+
+ var baseDirectory = doc.FileName.ParentDirectory.ParentDirectory;
+
+ string actionName = doc.ParsedDocument.GetMember (currentLocation).Name;
+ var viewFoldersPaths = new [] {
+ baseDirectory.Combine ("Views", controllerName),
+ baseDirectory.Combine ("Views", "Shared")
+ };
+ var viewExtensions = new [] { ".aspx", ".cshtml" };
+
+ foreach (var folder in viewFoldersPaths) {
+ foreach (var ext in viewExtensions) {
+ var possibleFile = folder.Combine (actionName + ext);
+ if (File.Exists (possibleFile)) {
+ IdeApp.Workbench.OpenDocument (possibleFile, doc.Project);
+ return;
+ }
+ }
+ }
+
+ MessageService.ShowError ("Matching view cannot be found.");
+ }
+ }
+}
diff --git a/main/src/addins/AspNet/Commands/MvcCommandsCommonHandler.cs b/main/src/addins/AspNet/Commands/MvcCommandsCommonHandler.cs
new file mode 100644
index 0000000000..03fa16fb63
--- /dev/null
+++ b/main/src/addins/AspNet/Commands/MvcCommandsCommonHandler.cs
@@ -0,0 +1,60 @@
+//
+// CommandHandlers.cs
+//
+// Author:
+// Piotr Dowgiallo <sparekd@gmail.com>
+//
+// Copyright (c) 2012 Piotr Dowgiallo
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+
+using System;
+using System.Linq;
+using ICSharpCode.NRefactory.TypeSystem;
+using MonoDevelop.Components.Commands;
+using MonoDevelop.Ide;
+using MonoDevelop.AspNet.Projects;
+
+namespace MonoDevelop.AspNet.Commands
+{
+ static class MvcCommandsCommonHandler
+ {
+ public static void Update (CommandInfo info)
+ {
+ var doc = IdeApp.Workbench.ActiveDocument;
+ AspNetAppProject project;
+ if (doc == null || (project = doc.Project as AspNetAppProject) == null || !project.IsAspMvcProject || doc.ParsedDocument == null) {
+ info.Enabled = info.Visible = false;
+ return;
+ }
+
+ var currentLocation = doc.Editor.Caret.Location;
+ var topLevelType = doc.ParsedDocument.GetTopLevelTypeDefinition (currentLocation);
+ if (topLevelType == null || !topLevelType.Name.EndsWith ("Controller", StringComparison.Ordinal)) {
+ info.Enabled = info.Visible = false;
+ return;
+ }
+
+ var correctReturnTypes = new [] { "ActionResult", "ViewResultBase", "ViewResult", "PartialViewResult" };
+ var member = doc.ParsedDocument.GetMember (currentLocation) as IUnresolvedMethod;
+ if (member == null || !member.IsPublic || correctReturnTypes.All (t => t != member.ReturnType.ToString ()))
+ info.Enabled = info.Visible = false;
+ }
+ }
+}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetExecutionCommand.cs b/main/src/addins/AspNet/Execution/AspNetExecutionCommand.cs
index e8ab5aac6e..e1104e7ffd 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetExecutionCommand.cs
+++ b/main/src/addins/AspNet/Execution/AspNetExecutionCommand.cs
@@ -24,22 +24,17 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
-using System;
using MonoDevelop.Core;
using MonoDevelop.Core.Execution;
using MonoDevelop.Core.Assemblies;
using System.Collections.Generic;
-namespace MonoDevelop.AspNet
+namespace MonoDevelop.AspNet.Execution
{
public class AspNetExecutionCommand: ExecutionCommand
{
IDictionary<string, string> environmentVariables;
-
- public AspNetExecutionCommand()
- {
- }
-
+
public ClrVersion ClrVersion { get; set; }
public XspParameters XspParameters { get; set; }
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetExecutionHandler.cs b/main/src/addins/AspNet/Execution/AspNetExecutionHandler.cs
index 0e341ea78b..2e0dcca894 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetExecutionHandler.cs
+++ b/main/src/addins/AspNet/Execution/AspNetExecutionHandler.cs
@@ -26,13 +26,12 @@
using System;
using System.Collections.Generic;
-using MonoDevelop.Projects;
+using System.IO;
using MonoDevelop.Core;
using MonoDevelop.Core.Assemblies;
using MonoDevelop.Core.Execution;
-using System.IO;
-namespace MonoDevelop.AspNet
+namespace MonoDevelop.AspNet.Execution
{
public class AspNetExecutionHandler: IExecutionHandler
{
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Gui/BrowserLauncher.cs b/main/src/addins/AspNet/Execution/BrowserLauncher.cs
index d5e27e66cc..6a03216721 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Gui/BrowserLauncher.cs
+++ b/main/src/addins/AspNet/Execution/BrowserLauncher.cs
@@ -31,10 +31,9 @@ using MonoDevelop.Core;
using MonoDevelop.Core.Execution;
using MonoDevelop.Ide;
-namespace MonoDevelop.AspNet.Gui
-{
-
- public static class BrowserLauncher
+namespace MonoDevelop.AspNet.Execution
+{
+ static class BrowserLauncher
{
public static IProcessAsyncOperation LaunchDefaultBrowser (string url)
{
@@ -47,5 +46,4 @@ namespace MonoDevelop.AspNet.Gui
}
}
}
-
}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/LineInterceptingTextWriter.cs b/main/src/addins/AspNet/Execution/LineInterceptingTextWriter.cs
index 02d7768ad6..b743e1cd6c 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/LineInterceptingTextWriter.cs
+++ b/main/src/addins/AspNet/Execution/LineInterceptingTextWriter.cs
@@ -27,16 +27,16 @@
using System;
using System.IO;
-namespace MonoDevelop.AspNet
+namespace MonoDevelop.AspNet.Execution
{
/// <summary>
/// This is used to watch for a specific lines in a textwriter. It wraps an (optional) real writer,
/// parses lines, and raises events.
/// </summary>
- public class LineInterceptingTextWriter : TextWriter
+ class LineInterceptingTextWriter : TextWriter
{
- TextWriter innerWriter;
+ readonly TextWriter innerWriter;
System.Text.StringBuilder sb = new System.Text.StringBuilder ();
Action onNewLine;
bool prevCharWasCR;
@@ -49,8 +49,13 @@ namespace MonoDevelop.AspNet
}
public bool FinishedIntercepting {
- get { return sb == null; }
- set { sb = null; }
+ get {
+ return sb == null;
+ }
+ set {
+ if (value)
+ sb = null;
+ }
}
/// <summary>
diff --git a/main/src/addins/AspNet/Execution/XspBrowserLauncherConsole.cs b/main/src/addins/AspNet/Execution/XspBrowserLauncherConsole.cs
new file mode 100644
index 0000000000..c62fea6de7
--- /dev/null
+++ b/main/src/addins/AspNet/Execution/XspBrowserLauncherConsole.cs
@@ -0,0 +1,90 @@
+//
+// XspBrowserLauncherConsole.cs
+//
+// Author:
+// Michael Hutchinson <mhutch@xamarin.com>
+//
+// Copyright (c) 2014 Xamarin Inc.
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+
+using System;
+using System.IO;
+using MonoDevelop.Core.Execution;
+
+namespace MonoDevelop.AspNet.Execution
+{
+ class XspBrowserLauncherConsole : IConsole
+ {
+ readonly IConsole real;
+ LineInterceptingTextWriter outWriter;
+ Action <string> launchBrowser;
+
+ const int MAX_WATCHED_LINES = 30;
+
+ public XspBrowserLauncherConsole (IConsole real, Action <string> launchBrowser)
+ {
+ this.real = real;
+ this.launchBrowser = launchBrowser;
+ }
+
+ public void Dispose ()
+ {
+ real.Dispose ();
+ }
+
+ public event EventHandler CancelRequested {
+ add { real.CancelRequested += value; }
+ remove { real.CancelRequested -= value; }
+ }
+
+ public TextReader In {
+ get { return real.In; }
+ }
+
+ public TextWriter Out {
+ get {
+ if (outWriter == null)
+ outWriter = new LineInterceptingTextWriter (real.Out, delegate {
+ string line = outWriter.GetLine();
+ if (line.Contains ("Listening on port: ")) {
+ string port = System.Text.RegularExpressions.Regex.Match (line, "(?<=port: )[0-9]*(?= )").Value;
+ launchBrowser (port);
+ outWriter.FinishedIntercepting = true;
+ } else if (outWriter.LineCount > MAX_WATCHED_LINES) {
+ outWriter.FinishedIntercepting = true;
+ }
+ });
+ return outWriter;
+ }
+ }
+
+ public TextWriter Error {
+ get { return real.Error; }
+ }
+
+ public TextWriter Log {
+ get { return real.Log; }
+ }
+
+ public bool CloseOnDispose {
+ get { return real.CloseOnDispose; }
+ }
+ }
+}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Gui/XspOptionsPanel.cs b/main/src/addins/AspNet/Execution/XspOptionsPanel.cs
index 4d4d6a7e46..6bd97b965d 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Gui/XspOptionsPanel.cs
+++ b/main/src/addins/AspNet/Execution/XspOptionsPanel.cs
@@ -29,16 +29,13 @@
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
-using System;
using Gtk;
-using MonoDevelop.Ide.Projects;
-using MonoDevelop.Core;
using MonoDevelop.Ide.Gui.Dialogs;
+using MonoDevelop.AspNet.Projects;
-namespace MonoDevelop.AspNet.Gui
+namespace MonoDevelop.AspNet.Execution
{
-
- public class XspOptionsPanel : ItemOptionsPanel
+ class XspOptionsPanel : ItemOptionsPanel
{
XspOptionsPanelWidget panel;
diff --git a/main/src/addins/AspNet/Execution/XspOptionsPanelWidget.cs b/main/src/addins/AspNet/Execution/XspOptionsPanelWidget.cs
new file mode 100644
index 0000000000..18126f4836
--- /dev/null
+++ b/main/src/addins/AspNet/Execution/XspOptionsPanelWidget.cs
@@ -0,0 +1,202 @@
+// XspOptionsPanelWidget.cs
+//
+// Author:
+// Michael Hutchinson <mhutchinson@novell.com>
+//
+// Copyright (C) 2007 Novell, Inc (http://www.novell.com)
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+using System;
+using Gtk;
+
+using MonoDevelop.Core;
+using MonoDevelop.AspNet.Projects;
+using MonoDevelop.Components;
+
+namespace MonoDevelop.AspNet.Execution
+{
+ class XspOptionsPanelWidget : VBox
+ {
+ Entry ipAddress = new Entry { WidthChars = 39 }; // sized for IPv6
+ SpinButton portNumber = new SpinButton (0, Int16.MaxValue, 1) { WidthChars = 5} ;
+ CheckButton verboseCheck = new CheckButton ();
+ readonly ComboBox sslMode = ComboBox.NewText ();
+ readonly ComboBox sslProtocol = ComboBox.NewText ();
+ readonly ComboBox keyType = ComboBox.NewText ();
+ readonly ComboBox passwordOptions = ComboBox.NewText ();
+ readonly FileEntry keyLocation = new FileEntry ();
+ readonly FileEntry certLocation = new FileEntry ();
+ readonly Entry passwordEntry = new Entry { InvisibleChar = '●' };
+
+ public XspOptionsPanelWidget (AspNetAppProject project)
+ {
+ Build ();
+
+ XspParameters xPar = project.XspParameters;
+
+ //index should be equivalent to XspSslMode enum
+ ((ListStore) sslMode.Model).Clear ();
+ sslMode.AppendText (GettextCatalog.GetString ("None"));
+ sslMode.AppendText (GettextCatalog.GetString ("Enabled"));
+ sslMode.AppendText (GettextCatalog.GetString ("Accept Client Certificates"));
+ sslMode.AppendText (GettextCatalog.GetString ("Require Client Certificates"));
+
+ //index should be equivalent to XspSslProtocol enum
+ ((ListStore) sslProtocol.Model).Clear ();
+ sslProtocol.AppendText (GettextCatalog.GetString ("Default"));
+ sslProtocol.AppendText ("TLS");
+ sslProtocol.AppendText ("SSL 2");
+ sslProtocol.AppendText ("SSL 3");
+
+ ((ListStore) keyType.Model).Clear ();
+ keyType.AppendText (GettextCatalog.GetString ("None"));
+ keyType.AppendText ("Pkcs12");
+ keyType.AppendText ("PVK");
+
+ ((ListStore) passwordOptions.Model).Clear ();
+ passwordOptions.AppendText (GettextCatalog.GetString ("None"));
+ passwordOptions.AppendText (GettextCatalog.GetString ("Ask"));
+ passwordOptions.AppendText (GettextCatalog.GetString ("Store (insecure)"));
+
+ //load all options
+ ipAddress.Text = xPar.Address;
+ portNumber.Value = xPar.Port;
+ verboseCheck.Active = xPar.Verbose;
+ sslMode.Active = (int) xPar.SslMode;
+ sslProtocol.Active = (int) xPar.SslProtocol;
+ keyType.Active = (int) xPar.KeyType;
+ keyLocation.Path = xPar.PrivateKeyFile;
+ certLocation.Path = xPar.CertificateFile;
+ passwordOptions.Active = (int) xPar.PasswordOptions;
+ passwordEntry.Text = xPar.PrivateKeyPassword;
+ }
+
+ void Build ()
+ {
+ Spacing = 6;
+
+ PackStart (new Label { Markup = "<b>" + GettextCatalog.GetString ("General Options") + "</b>", Xalign = 0 });
+
+ var gpadLabel = new Label { WidthRequest = 12 };
+ var ipLabel = new Label (GettextCatalog.GetString ("IP address:")) { Xalign = 0 };
+ var ipHint = new Label (GettextCatalog.GetString ("(blank = localhost)")) { Xalign = 0 };
+ var ipHbox = new HBox (false, 6);
+ ipHbox.PackStart (ipAddress, false, false, 0);
+ ipHbox.PackStart (ipHint, false, false, 0);
+ var portLabel = new Label (GettextCatalog.GetString ("Port:")) { Xalign = 0 };
+ var portHint = new Label (GettextCatalog.GetString ("(0 = random)")) { Xalign = 0 };
+ var portHbox = new HBox (false, 6);
+ portHbox.PackStart (portNumber, false, false, 0);
+ portHbox.PackStart (portHint, false, false, 0);
+ verboseCheck.Label = GettextCatalog.GetString ("Verbose console output");
+ verboseCheck.Xalign = 0;
+
+ var ipTable = new Table (3, 3, false) { ColumnSpacing = 6, RowSpacing = 6 };
+ ipTable.Attach (gpadLabel, 0, 1, 0, 1, AttachOptions.Fill, 0, 0, 0);
+ ipTable.Attach (ipLabel, 1, 2, 0, 1, AttachOptions.Fill, 0, 0, 0);
+ ipTable.Attach (ipHbox, 2, 3, 0, 1, AttachOptions.Fill, 0, 0, 0);
+ ipTable.Attach (portLabel, 1, 2, 1, 2, AttachOptions.Fill, 0, 0, 0);
+ ipTable.Attach (portHbox, 2, 3, 1, 2, AttachOptions.Fill, 0, 0, 0);
+ ipTable.Attach (verboseCheck, 1, 3, 2, 3, AttachOptions.Fill, 0, 0, 0);
+ PackStart (ipTable);
+
+ PackStart (new Label { Markup = "<b>" + GettextCatalog.GetString ("Security") + "</b>", Xalign = 0 });
+
+ var sslPadLabel = new Label { WidthRequest = 12 };
+ var sslModeLabel = new Label (GettextCatalog.GetString ("SSL mode:")) { Xalign = 0 };
+ var sslModeAlign = new Alignment (0, 0, 0, 0) { Child = sslMode };
+ var sslProtocolLabel = new Label (GettextCatalog.GetString ("SSL protocol:")) { Xalign = 0 };
+ var sslProtocolAlign = new Alignment (0, 0, 0, 0) { Child = sslProtocol };
+
+ var sslTable = new Table (2, 3, false) { ColumnSpacing = 6, RowSpacing = 6 };
+ sslTable.Attach (sslPadLabel, 0, 1, 0, 1, AttachOptions.Fill, 0, 0, 0);
+ sslTable.Attach (sslModeLabel, 1, 2, 0, 1, AttachOptions.Fill, 0, 0, 0);
+ sslTable.Attach (sslModeAlign, 2, 3, 0, 1, AttachOptions.Fill, 0, 0, 0);
+ sslTable.Attach (sslProtocolLabel, 1, 2, 1, 2, AttachOptions.Fill, 0, 0, 0);
+ sslTable.Attach (sslProtocolAlign, 2, 3, 1, 2, AttachOptions.Fill, 0, 0, 0);
+ PackStart (sslTable);
+
+ PackStart (new Label { Markup = "<b>" + GettextCatalog.GetString ("SSL Key") + "</b>", Xalign = 0 });
+
+ var keyPadLabel = new Label { WidthRequest = 12 };
+ var keyTypeLabel = new Label (GettextCatalog.GetString ("Key type:")) { Xalign = 0 };
+ var keyTypeAlign = new Alignment (0, 0, 0, 0) { Child = keyType };
+ var keyFileLabel = new Label (GettextCatalog.GetString ("Key file:")) { Xalign = 0 };
+ var certFileLabel = new Label (GettextCatalog.GetString ("Certificate file:")) { Xalign = 0 };
+ var passwordLabel = new Label (GettextCatalog.GetString ("Password:")) { Xalign = 0 };
+ var passwordHbox = new HBox (false, 6);
+ passwordHbox.PackStart (passwordOptions, false, false, 0);
+ passwordHbox.PackStart (passwordEntry, true, true, 0);
+
+ var keyTable = new Table (4, 4, false) { ColumnSpacing = 6, RowSpacing = 6 };
+ keyTable.Attach (keyPadLabel, 0, 1, 0, 1, AttachOptions.Fill, 0, 0, 0);
+ keyTable.Attach (keyTypeLabel, 1, 2, 0, 1, AttachOptions.Fill, 0, 0, 0);
+ keyTable.Attach (keyTypeAlign, 2, 3, 0, 1, AttachOptions.Fill, 0, 0, 0);
+ keyTable.Attach (keyFileLabel, 1, 2, 1, 2, AttachOptions.Fill, 0, 0, 0);
+ keyTable.Attach (keyLocation, 2, 4, 1, 2, AttachOptions.Expand | AttachOptions.Fill, 0, 0, 0);
+ keyTable.Attach (certFileLabel, 1, 2, 2, 3, AttachOptions.Fill, 0, 0, 0);
+ keyTable.Attach (certLocation, 2, 4, 2, 3, AttachOptions.Expand | AttachOptions.Fill, 0, 0, 0);
+ keyTable.Attach (passwordLabel, 1, 2, 3, 4, AttachOptions.Fill, 0, 0, 0);
+ keyTable.Attach (passwordHbox, 2, 4, 3, 4, AttachOptions.Expand | AttachOptions.Fill, 0, 0, 0);
+ PackStart (keyTable);
+
+ sslMode.Changed += UpdateSensitivity;
+ keyType.Changed += UpdateSensitivity;
+ passwordOptions.Changed += UpdateSensitivity;
+
+ ShowAll ();
+ }
+
+ public void Store (AspNetAppProject project)
+ {
+ XspParameters xPar = project.XspParameters;
+
+ xPar.Address = ipAddress.Text;
+ xPar.Port = Convert.ToUInt16 (portNumber.Value);
+ xPar.Verbose = verboseCheck.Active;
+ xPar.SslMode = (XspSslMode) sslMode.Active;
+ xPar.SslProtocol = (XspSslProtocol) sslProtocol.Active;
+ xPar.KeyType = (XspKeyType) keyType.Active;
+ xPar.PrivateKeyFile = keyLocation.Path;
+ xPar.CertificateFile = certLocation.Path;
+ xPar.PasswordOptions = (XspPasswordOptions) passwordOptions.Active;
+ xPar.PrivateKeyPassword = passwordEntry.Text;
+ }
+
+ void UpdateSensitivity (object sender, EventArgs e)
+ {
+ bool sslEnabled = ((XspSslMode) sslMode.Active) != XspSslMode.None;
+ sslProtocol.Sensitive = sslEnabled;
+ keyType.Sensitive = sslEnabled;
+
+ bool keyEnabled = (sslEnabled) && (keyType.Active != 0);
+ keyLocation.Sensitive = keyEnabled;
+ passwordOptions.Sensitive = keyEnabled;
+
+ bool certEnabled = (keyEnabled) && (keyType.Active == 2);
+ certLocation.Sensitive = certEnabled;
+
+ passwordEntry.Sensitive = (keyEnabled) && (passwordOptions.Active == 2);
+ if (!passwordEntry.Sensitive)
+ passwordEntry.Text = "";
+ }
+ }
+}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/XspParameters.cs b/main/src/addins/AspNet/Execution/XspParameters.cs
index 13516a70a4..e55fd0e541 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/XspParameters.cs
+++ b/main/src/addins/AspNet/Execution/XspParameters.cs
@@ -28,11 +28,12 @@
// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
+
using System;
-using MonoDevelop.Ide.Gui;
using MonoDevelop.Core.Serialization;
+using MonoDevelop.Core;
-namespace MonoDevelop.AspNet
+namespace MonoDevelop.AspNet.Execution
{
[DataItem ("XspParameters")]
public class XspParameters : ICloneable
@@ -77,7 +78,7 @@ namespace MonoDevelop.AspNet
get { return (int) port; }
set {
try {
- port = System.Convert.ToUInt16 (value);
+ port = Convert.ToUInt16 (value);
} catch (InvalidCastException) {
throw new ArgumentException ("The port value is outside the permitted range");
}
@@ -138,7 +139,7 @@ namespace MonoDevelop.AspNet
public string GetXspParameters ()
{
- System.Text.StringBuilder opt = new System.Text.StringBuilder ();
+ var opt = new System.Text.StringBuilder ();
if (port == 0)
opt.Append (" --random-port");
@@ -159,7 +160,7 @@ namespace MonoDevelop.AspNet
}
if (sslMode != XspSslMode.None)
- opt.AppendFormat (" --protocols {0}", System.Enum.GetName (typeof (XspSslProtocol), sslProtocol));
+ opt.AppendFormat (" --protocols {0}", Enum.GetName (typeof (XspSslProtocol), sslProtocol));
switch (keyType)
{
@@ -179,15 +180,14 @@ namespace MonoDevelop.AspNet
//password for keyfile
if ((keyType != XspKeyType.None) && (passwordOptions != XspPasswordOptions.None)) {
- string pwtemp = "";
+ string pwtemp = password;
- if (passwordOptions == XspPasswordOptions.Store)
- pwtemp = password;
- else
- //TODO: hide password chars (will need custom dialogue)
+ if (passwordOptions != XspPasswordOptions.Store) {
pwtemp = MonoDevelop.Ide.MessageService.GetPassword (
- "Please enter the password for your private key for the XSP Web Server",
- "XSP Private Key Password");
+ GettextCatalog.GetString ("Please enter the password for your private key for the XSP Web Server"),
+ GettextCatalog.GetString ("XSP Private Key Password")
+ );
+ }
if (!string.IsNullOrEmpty (pwtemp))
opt.AppendFormat (" --pkpwd {0}", pwtemp);
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Gui/BaseHtmlEditorExtension.cs b/main/src/addins/AspNet/Html/BaseHtmlEditorExtension.cs
index 9cbbae106e..b20a67c689 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Gui/BaseHtmlEditorExtension.cs
+++ b/main/src/addins/AspNet/Html/BaseHtmlEditorExtension.cs
@@ -29,24 +29,17 @@
using System;
using System.Linq;
using System.Collections.Generic;
-using System.Diagnostics;
using MonoDevelop.Core;
-using MonoDevelop.Projects;
using MonoDevelop.Ide.CodeCompletion;
-using MonoDevelop.Ide.Gui.Content;
+using MonoDevelop.AspNet.Html.Parser;
+using MonoDevelop.Xml.Parser;
+using MonoDevelop.Xml.Dom;
-using MonoDevelop.AspNet;
-using MonoDevelop.AspNet.Parser;
-using MonoDevelop.AspNet.StateEngine;
-using MonoDevelop.Html;
-using MonoDevelop.DesignerSupport;
-using MonoDevelop.Xml.StateEngine;
-
-namespace MonoDevelop.AspNet.Gui
+namespace MonoDevelop.AspNet.Html
{
- public abstract class BaseHtmlEditorExtension : MonoDevelop.XmlEditor.Gui.BaseXmlEditorExtension
+ public abstract class BaseHtmlEditorExtension : MonoDevelop.Xml.Editor.BaseXmlEditorExtension
{
HtmlSchema schema;
bool resolvedDocType;
@@ -86,9 +79,9 @@ namespace MonoDevelop.AspNet.Gui
#region Setup and teardown
- protected override RootState CreateRootState ()
+ protected override XmlRootState CreateRootState ()
{
- return new XmlFreeState (new HtmlTagState (), new HtmlClosingTagState (true));
+ return new XmlRootState (new HtmlTagState (), new HtmlClosingTagState (true));
}
public override void Initialize ()
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.Html/DocTypeCompletionData.cs b/main/src/addins/AspNet/Html/DocTypeCompletionData.cs
index 3e77712bc7..583293ab43 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.Html/DocTypeCompletionData.cs
+++ b/main/src/addins/AspNet/Html/DocTypeCompletionData.cs
@@ -30,7 +30,7 @@ using System;
using MonoDevelop.Core;
using MonoDevelop.Ide.CodeCompletion;
-namespace MonoDevelop.Html
+namespace MonoDevelop.AspNet.Html
{
public class DocTypeCompletionData : CompletionData
{
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.Html/DocTypeExtensionNode.cs b/main/src/addins/AspNet/Html/DocTypeExtensionNode.cs
index abcfaeb0b5..82a3f5d5ab 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.Html/DocTypeExtensionNode.cs
+++ b/main/src/addins/AspNet/Html/DocTypeExtensionNode.cs
@@ -29,9 +29,9 @@
using System;
using Mono.Addins;
-namespace MonoDevelop.Html
+namespace MonoDevelop.AspNet.Html
{
- public class DocTypeExtensionNode : ExtensionNode
+ class DocTypeExtensionNode : ExtensionNode
{
#pragma warning disable 0649
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.Html/ElementTypes.cs b/main/src/addins/AspNet/Html/ElementTypes.cs
index 9a2633061b..b06136af76 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.Html/ElementTypes.cs
+++ b/main/src/addins/AspNet/Html/ElementTypes.cs
@@ -29,10 +29,8 @@
using System;
using System.Collections.Generic;
-namespace MonoDevelop.Html
+namespace MonoDevelop.AspNet.Html
{
-
-
public class ElementTypes
{
//element listings found at http://gigamonkeys.com/book/practical-an-html-generation-library-the-interpreter.html
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Gui/HtmlEditorExtension.cs b/main/src/addins/AspNet/Html/HtmlEditorExtension.cs
index 0416268cdb..c287c6f7f0 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Gui/HtmlEditorExtension.cs
+++ b/main/src/addins/AspNet/Html/HtmlEditorExtension.cs
@@ -26,16 +26,12 @@
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
-using System;
-using System.Collections.Generic;
-
-using MonoDevelop.Xml.StateEngine;
-using MonoDevelop.Ide.TypeSystem;
using ICSharpCode.NRefactory.TypeSystem;
+using MonoDevelop.Ide.TypeSystem;
+using MonoDevelop.Xml.Dom;
-namespace MonoDevelop.AspNet.Gui
+namespace MonoDevelop.AspNet.Html
{
-
sealed class HtmlEditorExtension : BaseHtmlEditorExtension
{
//copied from MoonlightEditorExtension
@@ -43,7 +39,7 @@ namespace MonoDevelop.AspNet.Gui
protected override void RefillOutlineStore (ParsedDocument doc, Gtk.TreeStore store)
{
- XDocument xdoc = ((XmlParsedDocument)doc).XDocument;
+ XDocument xdoc = ((MonoDevelop.Xml.Editor.XmlParsedDocument)doc).XDocument;
if (xdoc == null)
return;
// Gtk.TreeIter iter = outlineTreeStore.AppendValues (System.IO.Path.GetFileName (CU.Document.FilePath), p);
@@ -54,7 +50,7 @@ namespace MonoDevelop.AspNet.Gui
{
outlineTree.TextRenderer.Xpad = 0;
outlineTree.TextRenderer.Ypad = 0;
- outlineTree.AppendColumn ("Node", outlineTree.TextRenderer, new Gtk.TreeCellDataFunc (outlineTreeDataFunc));
+ outlineTree.AppendColumn ("Node", outlineTree.TextRenderer, OutlineTreeDataFunc);
}
protected override void OutlineSelectionChanged (object selection)
@@ -77,7 +73,7 @@ namespace MonoDevelop.AspNet.Gui
}
}
- void outlineTreeDataFunc (Gtk.TreeViewColumn column, Gtk.CellRenderer cell, Gtk.TreeModel model, Gtk.TreeIter iter)
+ void OutlineTreeDataFunc (Gtk.TreeViewColumn column, Gtk.CellRenderer cell, Gtk.TreeModel model, Gtk.TreeIter iter)
{
Gtk.CellRendererText txtRenderer = (Gtk.CellRendererText) cell;
XNode n = (XNode) model.GetValue (iter, 0);
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.Html/HtmlParser.cs b/main/src/addins/AspNet/Html/HtmlParser.cs
index 2840453381..6938328c0c 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.Html/HtmlParser.cs
+++ b/main/src/addins/AspNet/Html/HtmlParser.cs
@@ -27,27 +27,29 @@
//
using System;
-using System.IO;
using System.Collections.Generic;
+using System.IO;
-using MonoDevelop.Xml.StateEngine;
-using MonoDevelop.AspNet.StateEngine;
-using MonoDevelop.Ide.TypeSystem;
using ICSharpCode.NRefactory.TypeSystem;
+
+using MonoDevelop.Ide.TypeSystem;
using MonoDevelop.Projects;
+using MonoDevelop.Xml.Dom;
+using MonoDevelop.Xml.Parser;
+using MonoDevelop.AspNet.Html.Parser;
-namespace MonoDevelop.Html
+namespace MonoDevelop.AspNet.Html
{
public class HtmlParser : TypeSystemParser
{
public override ParsedDocument Parse (bool storeAst, string fileName, TextReader tr, Project project = null)
{
- var doc = new XmlParsedDocument (fileName);
+ var doc = new MonoDevelop.Xml.Editor.XmlParsedDocument (fileName);
doc.Flags = ParsedDocumentFlags.NonSerializable;
try {
- Parser xmlParser = new Parser (
- new XmlFreeState (new HtmlTagState (), new HtmlClosingTagState (true)),
+ var xmlParser = new XmlParser (
+ new XmlRootState (new HtmlTagState (), new HtmlClosingTagState (true)),
true);
xmlParser.Parse (tr);
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.Html/PathCompletion.cs b/main/src/addins/AspNet/Html/HtmlPathCompletion.cs
index 06aea22eb3..b5b5596a70 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.Html/PathCompletion.cs
+++ b/main/src/addins/AspNet/Html/HtmlPathCompletion.cs
@@ -31,11 +31,9 @@ using MonoDevelop.Core;
using System.Text.RegularExpressions;
using MonoDevelop.Ide;
-namespace MonoDevelop.Html
+namespace MonoDevelop.AspNet.Html
{
-
-
- public static class PathCompletion
+ public static class HtmlPathCompletion
{
public static CompletionDataList GetPathCompletion (Project proj, string pattern,
@@ -51,14 +49,14 @@ namespace MonoDevelop.Html
var dir = fromFile.ParentDirectory.ToString ();
foreach (var pf in proj.Files) {
string pathStr = pf.FilePath.ToString ();
- if (pf.Subtype == Subtype.Directory || !pathStr.StartsWith (dir))
+ if (pf.Subtype == Subtype.Directory || !pathStr.StartsWith (dir, StringComparison.Ordinal))
continue;
int split = pathStr.LastIndexOf (System.IO.Path.DirectorySeparatorChar);
if (split != dir.Length)
continue;
- if (regex.IsMatch (pf.FilePath.FileName.ToString ()))
+ if (regex.IsMatch (pf.FilePath.FileName))
list.Add (new FileCompletionData (pf, pathFunc));
}
@@ -89,15 +87,15 @@ namespace MonoDevelop.Html
public int CompareTo (CompletionData other)
{
- return DisplayText.CompareTo (other.DisplayText);
+ return string.Compare (DisplayText, other.DisplayText, StringComparison.Ordinal);
}
}
class FilePickerCompletionData : CompletionData
{
- Project proj;
- string pattern;
- Func<ProjectFile,string> pathFunc;
+ readonly Project proj;
+ readonly string pattern;
+ readonly Func<ProjectFile,string> pathFunc;
public FilePickerCompletionData (Project proj, string pattern, Func<ProjectFile,string> pathFunc)
{
@@ -111,7 +109,7 @@ namespace MonoDevelop.Html
}
public override string Description {
- get { return GettextCatalog.GetString ("Choose a file from the project.");; }
+ get { return GettextCatalog.GetString ("Choose a file from the project."); }
}
public override string CompletionText {
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.Html/HtmlSchema.cs b/main/src/addins/AspNet/Html/HtmlSchema.cs
index afab884d03..3078c3d5bd 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.Html/HtmlSchema.cs
+++ b/main/src/addins/AspNet/Html/HtmlSchema.cs
@@ -29,9 +29,9 @@
using System;
using System.Xml;
using System.Collections.Generic;
-using MonoDevelop.XmlEditor.Completion;
+using MonoDevelop.Xml.Completion;
-namespace MonoDevelop.Html
+namespace MonoDevelop.AspNet.Html
{
public class HtmlSchema
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.Html/HtmlSchemaService.cs b/main/src/addins/AspNet/Html/HtmlSchemaService.cs
index edb2e22280..4828a9f3d9 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.Html/HtmlSchemaService.cs
+++ b/main/src/addins/AspNet/Html/HtmlSchemaService.cs
@@ -32,9 +32,9 @@ using System.IO;
using MonoDevelop.Core;
using MonoDevelop.Ide.CodeCompletion;
-using MonoDevelop.XmlEditor.Completion;
+using MonoDevelop.Xml.Completion;
-namespace MonoDevelop.Html
+namespace MonoDevelop.AspNet.Html
{
public static class HtmlSchemaService
@@ -51,9 +51,7 @@ namespace MonoDevelop.Html
schemas = new Dictionary<string, HtmlSchema> ();
//load all the schemas from addin points
- //NOTE: the first ([0]) schema must be the default schema (HTML4 transitional)
- string schemaDir = Path.GetDirectoryName (System.Reflection.Assembly.GetExecutingAssembly ().Location);
- schemaDir = Path.Combine (schemaDir, "Schemas");
+ //NOTE: the first ([0]) schema must be the default schema
foreach (DocTypeExtensionNode node in Mono.Addins.AddinManager.GetExtensionNodes ("/MonoDevelop/Html/DocTypes")) {
if (schemas.ContainsKey (node.Name))
@@ -61,7 +59,7 @@ namespace MonoDevelop.Html
"HtmlSchemaService cannot register duplicate doctype with the name '{0}'", node.Name);
if (!string.IsNullOrEmpty (node.XsdFile)) {
- string path = Path.Combine (schemaDir, node.XsdFile);
+ string path = node.Addin.GetFilePath (node.XsdFile);
try {
IXmlCompletionProvider provider = new XmlSchemaCompletionData (path);
schemas.Add (node.Name, new HtmlSchema (node.Name, node.FullName, provider));
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.StateEngine/HtmlClosingTagState.cs b/main/src/addins/AspNet/Html/Parser/HtmlClosingTagState.cs
index 059cced7bb..3a65026555 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.StateEngine/HtmlClosingTagState.cs
+++ b/main/src/addins/AspNet/Html/Parser/HtmlClosingTagState.cs
@@ -27,18 +27,15 @@
//
using System;
-using System.Collections.Generic;
-using System.Diagnostics;
+using MonoDevelop.Xml.Parser;
+using MonoDevelop.Xml.Dom;
-using MonoDevelop.Xml.StateEngine;
-using MonoDevelop.Html;
-
-namespace MonoDevelop.AspNet.StateEngine
+namespace MonoDevelop.AspNet.Html.Parser
{
public class HtmlClosingTagState : XmlClosingTagState
{
- bool warnAutoClose;
+ readonly bool warnAutoClose;
public HtmlClosingTagState (bool warnAutoClose)
: this (warnAutoClose, new XmlNameState ())
@@ -51,13 +48,13 @@ namespace MonoDevelop.AspNet.StateEngine
this.warnAutoClose = warnAutoClose;
}
- public override State PushChar (char c, IParseContext context, ref string rollback)
+ public override XmlParserState PushChar (char c, IXmlParserContext context, ref string rollback)
{
//NOTE: This is (mostly) duplicated in HtmlTagState
//handle inline tags implicitly closed by block-level elements
if (context.CurrentStateLength == 1 && context.PreviousState is XmlNameState)
{
- XClosingTag ct = (XClosingTag) context.Nodes.Peek ();
+ var ct = (XClosingTag) context.Nodes.Peek ();
if (!ct.Name.HasPrefix && ct.Name.IsValid) {
//Note: the node stack will always be at least 1 deep due to the XDocument
var parent = context.Nodes.Peek (1) as XElement;
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.StateEngine/HtmlScriptBodyState.cs b/main/src/addins/AspNet/Html/Parser/HtmlScriptBodyState.cs
index 8473d949d1..39e4f9eefe 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.StateEngine/HtmlScriptBodyState.cs
+++ b/main/src/addins/AspNet/Html/Parser/HtmlScriptBodyState.cs
@@ -23,21 +23,16 @@
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
+using MonoDevelop.Xml.Parser;
+using MonoDevelop.Xml.Dom;
-using System;
-using MonoDevelop.Xml.StateEngine;
-
-namespace MonoDevelop.AspNet.StateEngine
+namespace MonoDevelop.AspNet.Html.Parser
{
- public class HtmlScriptBodyState : State
+ public class HtmlScriptBodyState : XmlParserState
{
const string CLOSE = "</script>";
-
- public HtmlScriptBodyState ()
- {
- }
-
- public override State PushChar (char c, IParseContext context, ref string rollback)
+
+ public override XmlParserState PushChar (char c, IXmlParserContext context, ref string rollback)
{
if (context.CurrentStateLength == 0)
context.StateTag = 0;
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.StateEngine/HtmlTagState.cs b/main/src/addins/AspNet/Html/Parser/HtmlTagState.cs
index e1d6591392..87b0dc6e1e 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.StateEngine/HtmlTagState.cs
+++ b/main/src/addins/AspNet/Html/Parser/HtmlTagState.cs
@@ -27,18 +27,18 @@
//
using System;
-using System.Diagnostics;
-
-using MonoDevelop.Html;
-using MonoDevelop.Xml.StateEngine;
+using MonoDevelop.Xml.Parser;
+using MonoDevelop.Xml.Dom;
-namespace MonoDevelop.AspNet.StateEngine
+namespace MonoDevelop.AspNet.Html.Parser
{
-
public class HtmlTagState : XmlTagState
{
- HtmlScriptBodyState ScriptState;
- public HtmlTagState () : this (new XmlAttributeState ()) {}
+ readonly HtmlScriptBodyState scriptState;
+
+ public HtmlTagState () : this (new XmlAttributeState ())
+ {
+ }
public HtmlTagState (XmlAttributeState attributeState)
: this (attributeState, new XmlNameState ())
@@ -53,12 +53,12 @@ namespace MonoDevelop.AspNet.StateEngine
public HtmlTagState (XmlAttributeState attributeState, XmlNameState nameState, HtmlScriptBodyState scriptState)
: base (attributeState, nameState)
{
- this.ScriptState = scriptState;
+ this.scriptState = scriptState;
- Adopt (this.ScriptState);
+ Adopt (this.scriptState);
}
- public override State PushChar (char c, IParseContext context, ref string rollback)
+ public override XmlParserState PushChar (char c, IXmlParserContext context, ref string rollback)
{
if (context.CurrentStateLength == 1 && context.PreviousState is HtmlScriptBodyState)
return Parent;
@@ -66,7 +66,7 @@ namespace MonoDevelop.AspNet.StateEngine
//NOTE: This is (mostly) duplicated in HtmlClosingTagState
//handle "paragraph" tags implicitly closed by block-level elements
if (context.CurrentStateLength == 1 && context.PreviousState is XmlNameState) {
- XElement element = (XElement) context.Nodes.Peek ();
+ var element = (XElement) context.Nodes.Peek ();
if (!element.Name.HasPrefix && element.Name.IsValid) {
//Note: the node stack will always be at least 1 deep due to the XDocument
@@ -85,17 +85,17 @@ namespace MonoDevelop.AspNet.StateEngine
}
}
- State ret = base.PushChar (c, context, ref rollback);
+ XmlParserState ret = base.PushChar (c, context, ref rollback);
if (ret == Parent && c == '>') {
var element = context.Nodes.Peek () as XElement;
if (element != null && !element.Name.HasPrefix && element.Name.IsValid) {
if (element.Name.Name.Equals ("script", StringComparison.OrdinalIgnoreCase)) {
- return ScriptState;
- } else if (ElementTypes.IsEmpty (element.Name.Name)) {
+ return scriptState;
+ }
+ if (ElementTypes.IsEmpty (element.Name.Name)) {
element.Close (element);
context.Nodes.Pop ();
-
}
}
}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/schemas/W3C-License.html b/main/src/addins/AspNet/Html/Schemas/W3C-License.html
index 2edbb1ad27..fc5db13b69 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/schemas/W3C-License.html
+++ b/main/src/addins/AspNet/Html/Schemas/W3C-License.html
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
+<html>
<head>
<title>W3C Software License</title>
<style type="text/css">
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/Schemas/readme.txt b/main/src/addins/AspNet/Html/Schemas/readme.txt
index a6158b05b9..a6158b05b9 100755..100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/Schemas/readme.txt
+++ b/main/src/addins/AspNet/Html/Schemas/readme.txt
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/Schemas/xhtml1-frameset.xsd b/main/src/addins/AspNet/Html/Schemas/xhtml1-frameset.xsd
index 0518a6145d..0518a6145d 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/Schemas/xhtml1-frameset.xsd
+++ b/main/src/addins/AspNet/Html/Schemas/xhtml1-frameset.xsd
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/Schemas/xhtml1-strict.xsd b/main/src/addins/AspNet/Html/Schemas/xhtml1-strict.xsd
index 93b80b6678..93b80b6678 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/Schemas/xhtml1-strict.xsd
+++ b/main/src/addins/AspNet/Html/Schemas/xhtml1-strict.xsd
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/Schemas/xhtml1-transitional.xsd b/main/src/addins/AspNet/Html/Schemas/xhtml1-transitional.xsd
index 8ce44fb9af..8ce44fb9af 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/Schemas/xhtml1-transitional.xsd
+++ b/main/src/addins/AspNet/Html/Schemas/xhtml1-transitional.xsd
diff --git a/main/src/addins/AspNet/Makefile.am b/main/src/addins/AspNet/Makefile.am
index e27cad6a75..b8a06787c8 100644
--- a/main/src/addins/AspNet/Makefile.am
+++ b/main/src/addins/AspNet/Makefile.am
@@ -1,3 +1,4 @@
-SUBDIRS = \
- MonoDevelop.AspNet \
- MonoDevelop.AspNet.Mvc
+include $(top_srcdir)/xbuild.include
+EXTRA_DIST += \
+ $(wildcard lib/*) \
+ $(wildcard Templates/Common/*.cshtml)
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/AddinInfo.cs b/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/AddinInfo.cs
deleted file mode 100644
index 276f882f7e..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/AddinInfo.cs
+++ /dev/null
@@ -1,20 +0,0 @@
-
-using System;
-using Mono.Addins;
-using Mono.Addins.Description;
-
-[assembly:Addin ("AspNet.Mvc",
- Namespace = "MonoDevelop",
- Version = MonoDevelop.BuildInfo.Version,
- Flags = AddinFlags.Hidden,
- Category = "Web Development")]
-
-[assembly:AddinName ("ASP.NET MVC Support")]
-[assembly:AddinDescription ("Support for ASP.NET MVC projects")]
-
-[assembly:AddinDependency ("Core", MonoDevelop.BuildInfo.Version)]
-[assembly:AddinDependency ("Ide", MonoDevelop.BuildInfo.Version)]
-[assembly:AddinDependency ("DesignerSupport", MonoDevelop.BuildInfo.Version)]
-[assembly:AddinDependency ("AspNet", MonoDevelop.BuildInfo.Version)]
-[assembly:AddinDependency ("XmlEditor", MonoDevelop.BuildInfo.Version)]
-[assembly:AddinDependency ("SourceEditor2", MonoDevelop.BuildInfo.Version)]
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/AspMvcProject.cs b/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/AspMvcProject.cs
deleted file mode 100644
index c16fbe9608..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/AspMvcProject.cs
+++ /dev/null
@@ -1,288 +0,0 @@
-//
-// AspMvcProject.cs
-//
-// Author:
-// Michael Hutchinson <mhutchinson@novell.com>
-//
-// Copyright (c) 2009 Novell, Inc. (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-
-using System;
-using System.IO;
-using System.Collections.Generic;
-using System.Linq;
-using System.Reflection;
-using System.Xml;
-using MonoDevelop.Projects;
-using MonoDevelop.Core.Serialization;
-
-namespace MonoDevelop.AspNet.Mvc
-{
- public abstract class AspMvcProject : AspNetAppProject
- {
- public AspMvcProject ()
- {
- }
-
- public AspMvcProject (string languageName)
- : base (languageName)
- {
- }
-
- public AspMvcProject (string languageName, ProjectCreateInformation info, XmlElement projectOptions)
- : base (languageName, info, projectOptions)
- {
- }
-
- public override SolutionItemConfiguration CreateConfiguration (string name)
- {
- var conf = new AspMvcProjectConfiguration (name);
- conf.CopyFrom (base.CreateConfiguration (name));
- return conf;
- }
-
- public override IEnumerable<string> GetProjectTypes ()
- {
- yield return "AspNetMvc";
- foreach (var t in base.GetProjectTypes ())
- yield return t;
- }
-
- public override bool SupportsFramework (MonoDevelop.Core.Assemblies.TargetFramework framework)
- {
- return framework.CanReferenceAssembliesTargetingFramework (MonoDevelop.Core.Assemblies.TargetFrameworkMoniker.NET_3_5);
- }
-
- public override IEnumerable<string> GetSpecialDirectories ()
- {
- foreach (string s in BaseGetSpecialDirectories ())
- yield return s;
- yield return "Views";
- yield return "Models";
- yield return "Controllers";
- }
-
- //so iterator can access base.GetSpecialDirectories () verifiably
- IEnumerable<string> BaseGetSpecialDirectories ()
- {
- return base.GetSpecialDirectories ();
- }
-
- public IList<string> GetCodeTemplates (string type, string subtype = null)
- {
- var files = new List<string> ();
- var names = new HashSet<string> ();
-
- string asmDir = Path.GetDirectoryName (typeof (AspMvcProject).Assembly.Location);
- string lang = this.LanguageName;
- if (lang == "C#") {
- lang = "CSharp";
- }
-
- if (subtype != null) {
- type = Path.Combine (type, subtype);
- }
-
- var dirs = new string[] {
- Path.Combine (this.BaseDirectory, "CodeTemplates", type),
- Path.Combine (this.BaseDirectory, "CodeTemplates", lang, type),
- Path.Combine (asmDir, "CodeTemplates", type),
- Path.Combine (asmDir, "CodeTemplates", lang, type),
- };
-
- foreach (string directory in dirs)
- if (Directory.Exists (directory))
- foreach (string file in Directory.GetFiles (directory, "*.tt", SearchOption.TopDirectoryOnly))
- if (names.Add (Path.GetFileName (file)))
- files.Add (file);
-
- return files;
- }
-
- protected override void PopulateSupportFileList (MonoDevelop.Projects.FileCopySet list, ConfigurationSelector solutionConfiguration)
- {
- base.PopulateSupportFileList (list, solutionConfiguration);
-
- //HACK: workaround for MD not local-copying package references
- foreach (ProjectReference projectReference in References) {
- if (projectReference.Package != null && projectReference.Package.Name == "system.web.mvc") {
- if (projectReference.ReferenceType == ReferenceType.Package)
- foreach (MonoDevelop.Core.Assemblies.SystemAssembly assem in projectReference.Package.Assemblies)
- list.Add (assem.Location);
- break;
- }
- }
- }
-
- public string GetAspNetMvcVersion ()
- {
- foreach (var pref in References) {
- if (pref.StoredReference.IndexOf ("System.Web.Mvc", StringComparison.OrdinalIgnoreCase) < 0)
- continue;
- switch (pref.ReferenceType) {
- case ReferenceType.Assembly:
- case ReferenceType.Package:
- foreach (var f in pref.GetReferencedFileNames (null)) {
- if (Path.GetFileNameWithoutExtension (f) != "System.Web.Mvc" || !File.Exists (f))
- continue;
- return AssemblyName.GetAssemblyName (f).Version.ToString ();
- }
- break;
- default:
- continue;
- }
- };
-
- return GetDefaultAspNetMvcVersion ();
- }
-
- protected abstract string GetDefaultAspNetMvcVersion ();
-
- public override string GetDefaultBuildAction (string fileName)
- {
- var fileType = DetermineFileType (fileName);
- switch (fileType) {
- case AspMvcSubtype.Razor:
- return BuildAction.Content;
- default:
- return base.GetDefaultBuildAction (fileName);
- }
- }
-
- private AspMvcSubtype DetermineFileType (string fileName)
- {
- string extension = System.IO.Path.GetExtension (fileName);
- if (extension == null)
- return AspMvcSubtype.Unknown;
- extension = extension.ToUpperInvariant ().TrimStart ('.');
- switch (extension)
- {
- case "CSHTML":
- return AspMvcSubtype.Razor;
- default:
- return AspMvcSubtype.Unknown;
- }
- }
- }
-
- public enum AspMvcSubtype
- {
- Unknown,
- Razor
- }
-
- public class AspMvc1Project : AspMvcProject
- {
- public AspMvc1Project ()
- {
- }
-
- public AspMvc1Project (string languageName)
- : base (languageName)
- {
- }
-
- public AspMvc1Project (string languageName, ProjectCreateInformation info, XmlElement projectOptions)
- : base (languageName, info, projectOptions)
- {
- }
-
- protected override string GetDefaultAspNetMvcVersion ()
- {
- return "1.0.0.0";
- }
- }
-
- public class AspMvc2Project : AspMvcProject
- {
- public AspMvc2Project ()
- {
- }
-
- public AspMvc2Project (string languageName)
- : base (languageName)
- {
- }
-
- public AspMvc2Project (string languageName, ProjectCreateInformation info, XmlElement projectOptions)
- : base (languageName, info, projectOptions)
- {
- }
-
- protected override string GetDefaultAspNetMvcVersion ()
- {
- return "2.0.0.0";
- }
- }
-
- public class AspMvc3Project : AspMvcProject
- {
- public AspMvc3Project ()
- {
- }
-
- public AspMvc3Project (string languageName)
- : base (languageName)
- {
- }
-
- public AspMvc3Project (string languageName, ProjectCreateInformation info, XmlElement projectOptions)
- : base (languageName, info, projectOptions)
- {
- }
-
- public override bool SupportsFramework (MonoDevelop.Core.Assemblies.TargetFramework framework)
- {
- return framework.CanReferenceAssembliesTargetingFramework (MonoDevelop.Core.Assemblies.TargetFrameworkMoniker.NET_4_0);
- }
-
- protected override string GetDefaultAspNetMvcVersion ()
- {
- return "3.0.0.0";
- }
- }
-
- public class AspMvc4Project : AspMvcProject
- {
- public AspMvc4Project ()
- {
- }
-
- public AspMvc4Project (string languageName)
- : base (languageName)
- {
- }
-
- public AspMvc4Project (string languageName, ProjectCreateInformation info, XmlElement projectOptions)
- : base (languageName, info, projectOptions)
- {
- }
-
- public override bool SupportsFramework (MonoDevelop.Core.Assemblies.TargetFramework framework)
- {
- return framework.CanReferenceAssembliesTargetingFramework (MonoDevelop.Core.Assemblies.TargetFrameworkMoniker.NET_4_0);
- }
-
- protected override string GetDefaultAspNetMvcVersion ()
- {
- return "4.0.0.0";
- }
- }
-}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/AspMvcProjectBinding.cs b/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/AspMvcProjectBinding.cs
deleted file mode 100644
index 4fd822ce9e..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/AspMvcProjectBinding.cs
+++ /dev/null
@@ -1,129 +0,0 @@
-//
-// AspMvcProjectBinding.cs
-//
-// Author:
-// Michael Hutchinson <mhutchinson@novell.com>
-//
-// Copyright (c) 2009 Novell, Inc. (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-
-using System;
-using MonoDevelop.Core;
-using MonoDevelop.Projects;
-
-namespace MonoDevelop.AspNet.Mvc
-{
-
-
- public class AspMvc1ProjectBinding : IProjectBinding
- {
- public Project CreateProject (ProjectCreateInformation info, System.Xml.XmlElement projectOptions)
- {
- string lang = projectOptions.GetAttribute ("language");
- return new AspMvc1Project (lang, info, projectOptions);
- }
-
- public Project CreateSingleFileProject (string sourceFile)
- {
- throw new InvalidOperationException ();
- }
-
- public bool CanCreateSingleFileProject (string sourceFile)
- {
- return false;
- }
-
- public string Name {
- get { return "AspNetMvc1"; }
- }
- }
-
- public class AspMvc2ProjectBinding : IProjectBinding
- {
- public Project CreateProject (ProjectCreateInformation info, System.Xml.XmlElement projectOptions)
- {
- string lang = projectOptions.GetAttribute ("language");
- return new AspMvc2Project (lang, info, projectOptions);
- }
-
- public Project CreateSingleFileProject (string sourceFile)
- {
- throw new InvalidOperationException ();
- }
-
- public bool CanCreateSingleFileProject (string sourceFile)
- {
- return false;
- }
-
- public string Name
- {
- get { return "AspNetMvc2"; }
- }
- }
-
- public class AspMvc3ProjectBinding : IProjectBinding
- {
- public Project CreateProject (ProjectCreateInformation info, System.Xml.XmlElement projectOptions)
- {
- string lang = projectOptions.GetAttribute ("language");
- return new AspMvc3Project (lang, info, projectOptions);
- }
-
- public Project CreateSingleFileProject (string sourceFile)
- {
- throw new InvalidOperationException ();
- }
-
- public bool CanCreateSingleFileProject (string sourceFile)
- {
- return false;
- }
-
- public string Name
- {
- get { return "AspNetMvc3"; }
- }
- }
-
- public class AspMvc4ProjectBinding : IProjectBinding
- {
- public Project CreateProject (ProjectCreateInformation info, System.Xml.XmlElement projectOptions)
- {
- string lang = projectOptions.GetAttribute ("language");
- return new AspMvc4Project (lang, info, projectOptions);
- }
-
- public Project CreateSingleFileProject (string sourceFile)
- {
- throw new InvalidOperationException ();
- }
-
- public bool CanCreateSingleFileProject (string sourceFile)
- {
- return false;
- }
-
- public string Name
- {
- get { return "AspNetMvc4"; }
- }
- }
-}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/AssemblyInfo.cs b/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/AssemblyInfo.cs
deleted file mode 100644
index fca3c6b090..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/AssemblyInfo.cs
+++ /dev/null
@@ -1,9 +0,0 @@
-// Autogenerated from MonoDevelop.AspNet.Mvc.addin.xml
-
-using System.Reflection;
-
-[assembly: AssemblyProduct ("MonoDevelop")]
-[assembly: AssemblyTitle ("ASP.NET MVC Support")]
-[assembly: AssemblyDescription ("Support for ASP.NET MVC projects.")]
-[assembly: AssemblyVersion ("2.6")]
-[assembly: AssemblyCopyright ("MIT X11")]
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/ChangeLog b/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/ChangeLog
deleted file mode 100644
index b2436669b0..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/ChangeLog
+++ /dev/null
@@ -1,393 +0,0 @@
-2010-07-13 Mike Krüger <mkrueger@novell.com>
-
- * Makefile.am:
- * gtk-gui/gui.stetic:
- * Gui/AddViewDialog.cs:
- * MonoDevelop.AspNet.Mvc.csproj: Track API changes.
-
-2010-05-30 Michael Hutchinson <mhutchinson@novell.com>
-
- * Gui/FolderNodeBuilderExtension.cs: Use the recyclable text
- templating domain. Fixes Bug 584067 - ASP.NET MVC: cannot
- add a View, uncaught exception.
-
-2010-05-28 Lluis Sanchez Gual <lluis@novell.com>
-
- * Gui/AddViewDialog.cs:
- * Gui/FolderNodeBuilderExtension.cs: Fix incorrect use of
- ShowCustomDialog/RunCustomDialog.
-
-2010-05-21 Michael Hutchinson <mhutchinson@novell.com>
-
- * Gui/AddViewDialog.cs: Clean up dialog placement.
-
-2010-05-18 Michael Hutchinson <mhutchinson@novell.com>
-
- * gtk-gui/gui.stetic:
- * Gui/AddViewDialog.cs: Heavy refactoring and tidying of
- ASP.NET parser code to support future changes.
-
-2010-03-22 Lluis Sanchez Gual <lluis@novell.com>
-
- * AssemblyInfo.cs:
- * MonoDevelop.AspNet.Mvc.addin.xml: Bumped MD version.
-
-2010-03-17 Lluis Sanchez Gual <lluis@novell.com>
-
- * Makefile.am:
- * AspMvcProject.cs:
- * gtk-gui/gui.stetic:
- * Gui/AddViewDialog.cs:
- * MonoDevelop.AspNet.Mvc.csproj:
- * MonoDevelop.AspNet.Mvc.addin.xml:
- * Gui/FolderNodeBuilderExtension.cs: Merged MD.Projects into
- MD.Core, and MD.Projects.Gui, MD.Core.Gui and MD.Components
- into MD.Ide.
-
-2010-03-15 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Mvc.csproj: Added makefile to project.
-
-2010-03-01 Michael Hutchinson <mhutchinson@novell.com>
-
- * Gui/FolderNodeBuilderExtension.cs: Fix "Bug 584067 - ASP.NET
- MVC: cannot add a View, uncaught exception" by marshalling
- assembly resolves from the templating AppDomain to the MD
- AppDomain.
-
-2010-01-28 Lluis Sanchez Gual <lluis@novell.com>
-
- * gtk-gui/generated.cs:
- * gtk-gui/MonoDevelop.AspNet.Mvc.Gui.AddViewDialog.cs: Flush.
-
-2009-12-01 Lluis Sanchez Gual <lluis@novell.com>
-
- * AspMvcProject.cs: Introduced the ConfigurationSelector class
- to all methods that previously took a configuration name as
- string. This eliminates the ambiguity between solution
- configuration names and project configuration names.
-
-2009-11-11 Michael Hutchinson <mhutchinson@novell.com>
-
- * AspMvcProject.cs:
- * AspMvcProjectConfiguration.cs: Simplify creation of new
- ASP.NET MVC configurations.
-
-2009-11-09 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Mvc.csproj: Wire the soft debug addin
- into the build.
-
-2009-10-30 Lluis Sanchez Gual <lluis@novell.com>
-
- * AssemblyInfo.cs:
- * MonoDevelop.AspNet.Mvc.addin.xml: Bump MD version.
-
-2009-10-29 Lluis Sanchez Gual <lluis@novell.com>
-
- * gtk-gui/generated.cs:
- * gtk-gui/MonoDevelop.AspNet.Mvc.Gui.AddViewDialog.cs: Flush.
-
-2009-10-08 Ankit Jain <jankit@novell.com>
-
- * MonoDevelop.AspNet.Mvc.csproj: Import md.targets .
-
-2009-10-07 Lluis Sanchez Gual <lluis@novell.com>
-
- * AssemblyInfo.cs:
- * MonoDevelop.AspNet.Mvc.addin.xml: Bump MD version.
-
-2009-09-15 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.AspNet.Mvc.csproj: Fix output path.
-
-2009-08-20 Michael Hutchinson <mhutchinson@novell.com>
-
- * AssemblyInfo.cs: Update assembly info.
-
-2009-08-14 Lluis Sanchez Gual <lluis@novell.com>
-
- * Makefile.am:
- * MonoDevelop.AspNet.Mvc.csproj: Fix windows build.
-
-2009-08-12 Michael Hutchinson <mhutchinson@novell.com>
-
- * Makefile.am: Fix install targets.
-
-2009-08-12 Michael Hutchinson <mhutchinson@novell.com>
-
- * Makefile.am:
- * MonoDevelop.AspNet.Mvc.csproj: Add the data files.
-
-2009-08-12 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Mvc.csproj: Don't local-copy project
- refs.
-
-2009-08-12 Michael Hutchinson <mhutchinson@novell.com>
-
- * Makefile.am:
- * MonoDevelop.AspNet.Mvc.csproj: Include the ASP.NET MVC and
- TextTemplating addins in the main solution and build.
-
-2009-08-11 Michael Hutchinson <mhutchinson@novell.com>
-
- * System.Web.Mvc.dll:
- * MonoDevelop.AspNet.Mvc.csproj:
- * MonoDevelop.AspNet.Mvc.addin.xml: Remove the MVC dll now
- that Mono 2.4 series ships it.
-
-2009-07-29 Michael Hutchinson <mhutchinson@novell.com>
-
- * Gui/AddViewDialog.cs: Track API.
-
- * gtk-gui/gui.stetic:
- * MonoDevelop.AspNet.Mvc.csproj:
- * gtk-gui/MonoDevelop.AspNet.Mvc.Gui.AddViewDialog.cs: Flush.
-
-2009-06-03 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Mvc.csproj: Add another project dependency.
-
-2009-06-03 Michael Hutchinson <mhutchinson@novell.com>
-
- * Gui/FolderNodeBuilderExtension.cs: Track FilePath API.
-
-2009-04-29 Michael Hutchinson <mhutchinson@novell.com>
-
- * AspMvcProject.cs: Fix possible NRE.
-
-2009-04-21 Michael Hutchinson <mhutchinson@novell.com>
-
- * Gui/AddViewDialog.cs: Fix build.
-
-2009-04-17 Michael Hutchinson <mhutchinson@novell.com>
-
- * AspMvcProject.cs: Track namespace changes.
-
-2009-04-15 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.AspNet.Mvc.addin.xml: Bump MD version.
-
-2009-04-09 Michael Hutchinson <mhutchinson@novell.com>
-
- * Gui/AddViewDialog.cs: Track parser API.
-
-2009-04-02 Michael Hutchinson <mhutchinson@novell.com>
-
- * Gui/AddViewDialog.cs: Refresh the placeholder list properly.
-
-2009-04-02 Michael Hutchinson <mhutchinson@novell.com>
-
- * Gui/AddViewDialog.cs: When auto-selecting site master,
- refresh the placeholders list.
-
-2009-04-02 Michael Hutchinson <mhutchinson@novell.com>
-
- * CodeTemplates/AddView/Empty.tt: Fix missing runat="server"
- in Content tags.
-
-2009-04-02 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Mvc.addin.xml: Update package name.
-
- * AspMvcProject.cs: Check we're on the 2.4 runtime or later.
- Update package name.
-
- * Templates/Project.xpt.xml: Add some "Hello World" content.
-
-2009-04-02 Michael Hutchinson <mhutchinson@novell.com>
-
- * Gui/AddViewDialog.cs: Disable class selector, and the widget
- it uses has broken input handling in modal dialogs.
-
-2009-04-02 Michael Hutchinson <mhutchinson@novell.com>
-
- * AspMvcProject.cs: Add a workaround for Bug 491377: Package
- references can't be local-copied even if they aren't GAC
- assemblies.
-
-2009-04-02 Michael Hutchinson <mhutchinson@novell.com>
-
- * Templates/WebConfigApp.xft.xml: Fix web.config.
-
-2009-04-02 Michael Hutchinson <mhutchinson@novell.com>
-
- * System.Web.Mvc.dll: Need assembly signed with winfx key.
-
-2009-04-02 Michael Hutchinson <mhutchinson@novell.com>
-
- * System.Web.Mvc.dll:
- * MonoDevelop.AspNet.Mvc.csproj:
- * MonoDevelop.AspNet.Mvc.addin.xml: Fix refs. Add a local
- copy of the GMCS-built, MS-PL System.Web.Mvc dll.
-
-2009-03-13 Michael Hutchinson <mhutchinson@novell.com>
-
- * gtk-gui/gui.stetic: Track build directory change.
-
-2009-03-13 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Mvc.csproj: Move output dir from ../bin
- to ../build.
-
-2009-03-13 Michael Hutchinson <mhutchinson@novell.com>
-
- * gtk-gui:
- * gtk-gui/gui.stetic:
- * gtk-gui/generated.cs:
- * gtk-gui/MonoDevelop.AspNet.Mvc.Gui.AddViewDialog.cs: Add
- missing files.
-
-2009-03-12 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Mvc.csproj:
- * MonoDevelop.AspNet.Mvc.addin.xml: Reference the
- TextTemplating addin.
-
- * Gui/AddViewDialog.cs: Fix warning.
-
- * Gui/FolderNodeBuilderExtension.cs: Move error-showing code
- to the TemplatingService.
-
-2009-03-09 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Mvc.addin.xml: Update dependencies.
-
- * Gui/AddViewDialog.cs:
- * MonoDevelop.AspNet.Mvc.csproj: Add class picker.
-
-2009-03-06 Michael Hutchinson <mhutchinson@novell.com>
-
- * Gui/AddViewDialog.cs: Get the placeholder list from the
- master page. Better validation of input.
-
-2009-03-06 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Mvc.csproj: Updated.
-
- * AspMvcProject.cs: Add method for looking up .tt files.
-
- * Gui/AddViewDialog.cs: New Add View dialog.
-
- * Gui/FolderNodeBuilderExtension.cs: Use new Add View dialog
- and the MVC T4 host.
-
- * CodeTemplates:
- * TextTemplating:
- * CodeTemplates/AddView:
- * CodeTemplates/AddController: Added.
-
- * TextTemplating/MvcTextTemplateHost.cs: ASP.NET MVC T4 host.
-
- * CodeTemplates/AddView/Empty.tt: Simple empty tt file.
-
- * Templates/UserControl.xft.xml: Add more whitespace.
-
-2009-03-04 Michael Hutchinson <mhutchinson@novell.com>
-
- * T4/Engine.cs:
- * T4/Tokeniser.cs:
- * T4/ToStringHelper.cs:
- * T4/ParsedTemplate.cs:
- * T4/TextTransformation.cs:
- * T4/DirectiveProcessor.cs:
- * MonoDevelop.AspNet.Mvc.csproj:
- * T4/ITextTemplatingEngineHost.cs:
- * T4/DirectiveProcessorException.cs:
- * T4/RequiresProvidesDirectiveProcessor.cs: Move T4
- implementation to its own assembly. Tweak some appdomain
- stuff.
-
-2009-03-03 Michael Hutchinson <mhutchinson@novell.com>
-
- * T4/Engine.cs: Handle culture, encoding, extension directive
- values.
-
-2009-03-03 Michael Hutchinson <mhutchinson@novell.com>
-
- * T4/Engine.cs:
- * T4/Template.cs:
- * T4/Tokeniser.cs:
- * T4/ParsedTemplate.cs:
- * MonoDevelop.AspNet.Mvc.csproj: T4 implementation is complete
- except for handling some of the directive values and custom
- directives.
-
-2009-03-03 Michael Hutchinson <mhutchinson@novell.com>
-
- * T4:
- * T4/Engine.cs:
- * T4/Template.cs:
- * T4/Tokeniser.cs:
- * T4/ToStringHelper.cs:
- * T4/DirectiveProcessor.cs:
- * T4/TextTransformation.cs:
- * MonoDevelop.AspNet.Mvc.csproj:
- * T4/ITextTemplatingEngineHost.cs:
- * T4/DirectiveProcessorException.cs:
- * T4/RequiresProvidesDirectiveProcessor.cs: Added an
- incomplete T4 implemention.
-
-2009-02-28 Michael Hutchinson <mhutchinson@novell.com>
-
- * AspMvcProject.cs: Add Models, Views, Controllers to special
- folders list.
-
-2009-02-27 Michael Hutchinson <mhutchinson@novell.com>
-
- * Gui:
- * AspMvcCommands.cs:
- * MonoDevelop.AspNet.Mvc.addin.xml:
- * Gui/FolderNodeBuilderExtension.cs: Add context menu commands
- for adding views and controllers to the appropriate folders.
-
- * MonoDevelop.AspNet.Mvc.csproj: Updated.
-
-2009-02-26 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.AspNet.Mvc.csproj: Flush.
-
-2009-02-26 Michael Hutchinson <mhutchinson@novell.com>
-
- * Templates/Project.xpt.xml:
- * Templates/EmptyProject.xpt.xml: Set SpecificVersion false
- for some references.
-
-2009-02-24 Michael Hutchinson <mhutchinson@novell.com>
-
- * Templates/ViewContentPage.xft.xml: Fix MasterPageFile
- attribute name.
-
-2009-02-24 Michael Hutchinson <mhutchinson@novell.com>
-
- * Templates/ViewContentPage.xft.xml: Use master content
- generator.
-
-2009-02-21 Michael Hutchinson <mhutchinson@novell.com>
-
- * Templates/Project.xpt.xml:
- * Templates/GlobalAsax.xft.xml:
- * MonoDevelop.AspNet.Mvc.csproj:
- * Templates/WebConfigApp.xft.xml:
- * Templates/EmptyProject.xpt.xml:
- * MonoDevelop.AspNet.Mvc.addin.xml:
- * Templates/WebConfigViews.xft.xml: Added web.config,
- global.asax templates.
-
-2009-02-20 Michael Hutchinson <mhutchinson@novell.com>
-
- * Templates/Project.xpt.xml:
- * Templates/EmptyProject.xpt.xml: Add Web.configs.
-
-2009-02-20 Michael Hutchinson <mhutchinson@novell.com>
-
- * Templates/Project.xpt.xml:
- * Templates/EmptyProject.xpt.xml: Set target framework
- version. Create default MVC directories.
-
-2009-02-18 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.AspNet.Mvc.addin.xml: Fix MVC project type
- registration.
-
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/CommandHandlers.cs b/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/CommandHandlers.cs
deleted file mode 100644
index 4a507549f1..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/CommandHandlers.cs
+++ /dev/null
@@ -1,155 +0,0 @@
-//
-// CommandHandlers.cs
-//
-// Author:
-// Piotr Dowgiallo <sparekd@gmail.com>
-//
-// Copyright (c) 2012 Piotr Dowgiallo
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-
-using System.Collections.Generic;
-using System.Linq;
-using MonoDevelop.Components.Commands;
-using MonoDevelop.Ide;
-using ICSharpCode.NRefactory.TypeSystem;
-using System.IO;
-using MonoDevelop.Core;
-using MonoDevelop.AspNet.Mvc.Gui;
-using System;
-
-namespace MonoDevelop.AspNet.Mvc
-{
- class GoToViewCommandHandler : CommandHandler
- {
- protected override void Update (CommandInfo info)
- {
- MvcCommandsCommonHandler.Update (info);
- }
-
- protected override void Run ()
- {
- var doc = IdeApp.Workbench.ActiveDocument;
- var currentLocation = doc.Editor.Caret.Location;
-
- var controller = doc.ParsedDocument.GetTopLevelTypeDefinition (currentLocation);
- string controllerName = controller.Name;
- int pos = controllerName.LastIndexOf ("Controller", StringComparison.Ordinal);
- if (pos > 0)
- controllerName = controllerName.Remove (pos);
-
- var baseDirectory = doc.FileName.ParentDirectory.ParentDirectory;
-
- string actionName = doc.ParsedDocument.GetMember (currentLocation).Name;
- var viewFoldersPaths = new FilePath[] {
- baseDirectory.Combine ("Views", controllerName),
- baseDirectory.Combine ("Views", "Shared")
- };
- var viewExtensions = new string[] { ".aspx", ".cshtml" };
-
- foreach (var folder in viewFoldersPaths) {
- foreach (var ext in viewExtensions) {
- var possibleFile = folder.Combine (actionName + ext);
- if (File.Exists (possibleFile)) {
- IdeApp.Workbench.OpenDocument (possibleFile);
- return;
- }
- }
- }
-
- MessageService.ShowError ("Matching view cannot be found.");
- }
- }
-
- class AddViewFromControllerCommandHandler : CommandHandler
- {
- protected override void Update (CommandInfo info)
- {
- MvcCommandsCommonHandler.Update (info);
- }
-
- protected override void Run ()
- {
- var doc = IdeApp.Workbench.ActiveDocument;
- var project = doc.Project as AspMvcProject;
- var currentLocation = doc.Editor.Caret.Location;
-
- string controllerName = doc.ParsedDocument.GetTopLevelTypeDefinition (currentLocation).Name;
- int pos = controllerName.LastIndexOf ("Controller", StringComparison.Ordinal);
- if (pos > 0)
- controllerName = controllerName.Remove (pos);
-
- string path = doc.FileName.ParentDirectory.ParentDirectory.Combine ("Views", controllerName);
- string actionName = doc.ParsedDocument.GetMember (currentLocation).Name;
- FolderCommandHandler.AddView (project, path, actionName);
- }
- }
-
- class GoToControllerCommandHandler : CommandHandler
- {
- protected override void Update (CommandInfo info)
- {
- var doc = IdeApp.Workbench.ActiveDocument;
- if (doc == null || !(doc.Project is AspMvcProject)) {
- info.Enabled = info.Visible = false;
- return;
- }
- var baseDirectory = doc.FileName.ParentDirectory.ParentDirectory;
- if (!string.Equals (baseDirectory.FileName, "Views"))
- info.Enabled = info.Visible = false;
- }
-
- protected override void Run ()
- {
- var doc = IdeApp.Workbench.ActiveDocument;
- var name = doc.FileName.ParentDirectory.FileName;
- var controller = doc.ProjectContent.GetAllTypeDefinitions ().FirstOrDefault (t => t.Name == name + "Controller");
-
- if (controller != null)
- IdeApp.Workbench.OpenDocument (controller.UnresolvedFile.FileName);
- else
- MessageService.ShowError ("Matching controller cannot be found.");
- }
- }
-
- static class MvcCommandsCommonHandler
- {
- public static void Update (CommandInfo info)
- {
- var doc = IdeApp.Workbench.ActiveDocument;
- if (doc == null || !(doc.Project is AspMvcProject)) {
- info.Enabled = info.Visible = false;
- return;
- }
-
- var currentLocation = doc.Editor.Caret.Location;
- var topLevelType = doc.ParsedDocument.GetTopLevelTypeDefinition (currentLocation);
- if (topLevelType == null || !topLevelType.Name.EndsWith ("Controller", StringComparison.Ordinal)) {
- info.Enabled = info.Visible = false;
- return;
- }
-
- var correctReturnTypes = new string[] { "ActionResult", "ViewResultBase", "ViewResult", "PartialViewResult" };
- var member = doc.ParsedDocument.GetMember (currentLocation) as IUnresolvedMethod;
- if (member == null || !member.IsPublic || !correctReturnTypes.Any (t => t == member.ReturnType.ToString ()))
- info.Enabled = info.Visible = false;
- }
- }
-}
-
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Makefile.am b/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Makefile.am
deleted file mode 100644
index b8a06787c8..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Makefile.am
+++ /dev/null
@@ -1,4 +0,0 @@
-include $(top_srcdir)/xbuild.include
-EXTRA_DIST += \
- $(wildcard lib/*) \
- $(wildcard Templates/Common/*.cshtml)
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/MonoDevelop.AspNet.Mvc.addin.xml b/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/MonoDevelop.AspNet.Mvc.addin.xml
deleted file mode 100644
index 0b1cba0afc..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/MonoDevelop.AspNet.Mvc.addin.xml
+++ /dev/null
@@ -1,202 +0,0 @@
-<ExtensionModel>
-
- <Runtime>
- <Import file = "Templates/Controller.xft.xml"/>
- <Import file = "Templates/ViewPage.xft.xml"/>
- <Import file = "Templates/ViewContentPage.xft.xml"/>
- <Import file = "Templates/UserControl.xft.xml"/>
- <Import file = "Templates/ViewMasterPage.xft.xml" />
- <Import file = "Templates/Project.xpt.xml" />
- <Import file = "Templates/EmptyProject.xpt.xml"/>
- <Import file = "Templates/GlobalAsax.xft.xml"/>
- <Import file = "Templates/WebConfigApp.xft.xml"/>
- <Import file = "Templates/WebConfigViews.xft.xml"/>
- <Import file = "Templates/ProjectMvc3.xpt.xml" />
- <Import file = "Templates/EmptyProjectMvc3.xpt.xml" />
- <Import file = "Templates/GlobalAsaxMvc3.xft.xml" />
- <Import file = "Templates/WebConfigAppMvc3.xft.xml" />
- <Import file = "Templates/WebConfigViewsMvc3.xft.xml" />
- <Import file = "Templates/ProjectWithUnitTest.xpt.xml" />
- <Import file = "Templates/ProjectMvc3WithUnitTest.xpt.xml" />
- <Import file = "Templates/ProjectMvc3Razor.xpt.xml" />
- <Import file = "Templates/ProjectMvc3RazorWithUnitTest.xpt.xml" />
- <Import file = "Templates/LayoutPage.xft.xml" />
- <Import file = "Templates/ViewPageRazor.xft.xml" />
- <Import file = "Templates/PartialViewPageRazor.xft.xml" />
- <Import file = "Templates/PreprocessedRazorTemplate.xft.xml" />
- <Import file = "CodeTemplates/CSharp/AddView/Aspx/Empty.tt" />
- <Import file = "CodeTemplates/CSharp/AddView/Razor/Empty.tt" />
- <Import file = "CodeTemplates/CSharp/AddController/Empty.tt" />
- <Import file = "CodeTemplates/CSharp/AddController/ControllerWithEmptyReadAndWriteActions.tt" />
- </Runtime>
-
- <Extension path = "/MonoDevelop/ProjectModel/MSBuildItemTypes">
- <DotNetProjectSubtype
- guid="{603c0e0b-db56-11dc-be95-000d561079b0}"
- type="MonoDevelop.AspNet.Mvc.AspMvc1Project"
- insertbefore="MonoDevelop.AspNet.AspNetAppProject"
- />
- <DotNetProjectSubtype
- guid="{F85E285D-A4E0-4152-9332-AB1D724D3325}"
- type="MonoDevelop.AspNet.Mvc.AspMvc2Project"
- insertbefore="MonoDevelop.AspNet.AspNetAppProject"
- />
- <DotNetProjectSubtype
- guid="{E53F8FEA-EAE0-44A6-8774-FFD645390401}"
- type="MonoDevelop.AspNet.Mvc.AspMvc3Project"
- insertbefore="MonoDevelop.AspNet.AspNetAppProject"
- />
- <DotNetProjectSubtype
- guid="{E3E379DF-F4C6-4180-9B81-6769533ABE47}"
- type="MonoDevelop.AspNet.Mvc.AspMvc4Project"
- insertbefore="MonoDevelop.AspNet.AspNetAppProject"
- />
- </Extension>
-
- <Extension path = "/MonoDevelop/Ide/FileTemplates">
- <FileTemplate id = "AspMvcController"
- file = "Templates/Controller.xft.xml"/>
- <FileTemplate id = "AspMvcViewPage"
- file = "Templates/ViewPage.xft.xml"/>
- <FileTemplate id = "AspMvcViewContentPage"
- file = "Templates/ViewContentPage.xft.xml"/>
- <FileTemplate id = "AspMvcUserControl"
- file = "Templates/UserControl.xft.xml"/>
- <FileTemplate id = "AspMvcViewMasterPage"
- file = "Templates/ViewMasterPage.xft.xml" />
- <FileTemplate id = "AspMvcGlobalAsax"
- file = "Templates/GlobalAsax.xft.xml" />
- <FileTemplate id = "AspMvcWebConfigApp"
- file = "Templates/WebConfigApp.xft.xml" />
- <FileTemplate id = "AspMvcWebConfigViews"
- file = "Templates/WebConfigViews.xft.xml" />
- <FileTemplate id = "AspMvc3GlobalAsax"
- file = "Templates/GlobalAsaxMvc3.xft.xml" />
- <FileTemplate id = "AspMvc3WebConfigApp"
- file = "Templates/WebConfigAppMvc3.xft.xml" />
- <FileTemplate id = "AspMvc3WebConfigViews"
- file = "Templates/WebConfigViewsMvc3.xft.xml" />
- <FileTemplate id = "AspMvcViewPageRazor"
- file = "Templates/ViewPageRazor.xft.xml" />
- <FileTemplate id = "AspMvcLayoutPage"
- file = "Templates/LayoutPage.xft.xml" />
- <FileTemplate id = "AspMvcPartialViewPageRazor"
- file = "Templates/PartialViewPageRazor.xft.xml" />
- <FileTemplate id = "PreprocessedRazorTemplate"
- file = "Templates/PreprocessedRazorTemplate.xft.xml" />
- </Extension>
-
- <Extension path = "/MonoDevelop/Ide/ProjectTemplates">
- <ProjectTemplate id = "AspMvcProject-Empty" file = "Templates/EmptyProject.xpt.xml"/>
- <ProjectTemplate id = "AspMvcProject" file = "Templates/Project.xpt.xml" />
- <ProjectTemplate id = "AspMvcProjectWithUnitTest" file = "Templates/ProjectWithUnitTest.xpt.xml" />
- <Condition id="AssemblyInstalled" name="System.Web.Mvc" minVersion="3.0.0.0">
- <ProjectTemplate id = "AspMvc3Project-Empty" file = "Templates/EmptyProjectMvc3.xpt.xml" />
- <ProjectTemplate id = "AspMvc3Project" file = "Templates/ProjectMvc3.xpt.xml" />
- <ProjectTemplate id = "AspMvc3ProjectWithUnitTest" file = "Templates/ProjectMvc3WithUnitTest.xpt.xml" />
- <ProjectTemplate id = "AspMvc3Project-Razor" file = "Templates/ProjectMvc3Razor.xpt.xml" />
- <ProjectTemplate id = "AspMvc3Project-RazorWithUnitTest" file = "Templates/ProjectMvc3RazorWithUnitTest.xpt.xml" />
- </Condition>
- </Extension>
-
- <Extension path = "/MonoDevelop/ProjectModel/ProjectBindings">
- <ProjectBinding id = "AspNetMvc1" class = "MonoDevelop.AspNet.Mvc.AspMvc1ProjectBinding" />
- <ProjectBinding id = "AspNetMvc2" class = "MonoDevelop.AspNet.Mvc.AspMvc2ProjectBinding" />
- <ProjectBinding id = "AspNetMvc3" class = "MonoDevelop.AspNet.Mvc.AspMvc3ProjectBinding" />
- <ProjectBinding id = "AspNetMvc4" class = "MonoDevelop.AspNet.Mvc.AspMvc4ProjectBinding" />
- </Extension>
-
- <Extension path = "/MonoDevelop/ProjectModel/SerializableClasses">
- <DataType class = "MonoDevelop.AspNet.Mvc.AspMvcProject" />
- <DataType class = "MonoDevelop.AspNet.Mvc.AspMvcProjectConfiguration" />
- </Extension>
-
- <Extension path = "/MonoDevelop/Ide/Commands">
- <Category _name = "ASP.NET" id = "AspNet">
- <Command id = "MonoDevelop.AspNet.Mvc.AspMvcCommands.AddController"
- _label = "Controller..."
- _description = "Add an ASP.NET MVC controller" />
- <Command id = "MonoDevelop.AspNet.Mvc.AspMvcCommands.AddView"
- _label = "View..."
- _description = "Add an ASP.NET MVC view" />
- </Category>
- </Extension>
-
- <Extension path = "/MonoDevelop/Ide/Commands/TextEditor">
- <Command id = "MonoDevelop.AspNet.Mvc.AspMvcCommands.GoToView"
- _label = "Go To View"
- defaultHandler = "MonoDevelop.AspNet.Mvc.GoToViewCommandHandler"
- description = "Go to the corresponding view file" />
- <Command id = "MonoDevelop.AspNet.Mvc.AspMvcCommands.AddViewFromController"
- _label = "Add View..."
- defaultHandler = "MonoDevelop.AspNet.Mvc.AddViewFromControllerCommandHandler"
- description = "Add an ASP.NET MVC view" />
- <Command id = "MonoDevelop.AspNet.Mvc.AspMvcCommands.GoToController"
- _label = "Go To Controller"
- defaultHandler = "MonoDevelop.AspNet.Mvc.GoToControllerCommandHandler"
- description = "Go to the corresponding controller file" />
- </Extension>
-
- <Extension path = "/MonoDevelop/Ide/ContextMenu/ProjectPad/Add">
- <Condition id="activeproject" value="AspNetMvc">
- <CommandItem id = "MonoDevelop.AspNet.Mvc.AspMvcCommands.AddController" insertbefore="MonoDevelop.Ide.Commands.ProjectCommands.AddNewFiles" disabledVisible="false"/>
- <CommandItem id = "MonoDevelop.AspNet.Mvc.AspMvcCommands.AddView" disabledVisible="false" />
- <SeparatorItem id = "MvcAddSeparator" />
- </Condition>
- </Extension>
-
- <Extension path = "/MonoDevelop/SourceEditor2/ContextMenu/Editor">
- <Condition id="FileType" fileExtensions=".cs">
- <CommandItem id = "MonoDevelop.AspNet.Mvc.AspMvcCommands.GoToView" insertbefore="MonoDevelop.Ide.Commands.EditCommands.Cut" />
- <CommandItem id = "MonoDevelop.AspNet.Mvc.AspMvcCommands.AddViewFromController" />
- <SeparatorItem id = "MvcSeparator1" />
- </Condition>
- <Condition id="FileType" fileExtensions=".cshtml,.aspx">
- <CommandItem id = "MonoDevelop.AspNet.Mvc.AspMvcCommands.GoToController" insertbefore="MonoDevelop.Ide.Commands.EditCommands.Cut" />
- <SeparatorItem id = "MvcSeparator2" />
- </Condition>
- </Extension>
-
- <Extension path = "/MonoDevelop/Ide/Pads/ProjectPad">
- <NodeBuilder id="AspMvcFolderNodeBuilderExtension" class = "MonoDevelop.AspNet.Mvc.Gui.FolderNodeBuilderExtension"/>
- </Extension>
-
- <Extension path = "/MonoDevelop/TypeSystem/Parser">
- <Parser class = "MonoDevelop.AspNet.Mvc.Parser.RazorCSharpParser" mimeType="text/x-cshtml" />
- </Extension>
-
- <ExtensionPoint path = "/MonoDevelop/Razor/CompletionBuilders">
- <ExtensionNode name="Class" />
- </ExtensionPoint>
-
- <Extension path = "/MonoDevelop/Razor/CompletionBuilders">
- <Class class = "MonoDevelop.AspNet.Mvc.Completion.RazorCSharpCompletionBuilder" />
- </Extension>
-
- <Extension path = "/MonoDevelop/Core/MimeTypes">
- <MimeType id="text/x-cshtml" _description="ASP.NET MVC Razor View" icon="md-html-file-icon" isText="true">
- <File pattern="*.cshtml" />
- </MimeType>
- </Extension>
-
- <Extension path = "/MonoDevelop/Ide/TextEditorExtensions">
- <Class fileExtensions=".cshtml" class = "MonoDevelop.AspNet.Mvc.Gui.RazorCSharpEditorExtension" />
- </Extension>
-
- <Extension path = "/MonoDevelop/Ide/CodeTemplates">
- <CodeTemplate file="Razor-templates.xml" />
- </Extension>
-
- <Extension path = "/MonoDevelop/Ide/CodeFormatters">
- <Formatter mimeType="text/x-cshtml" class="MonoDevelop.AspNet.Mvc.Formatting.RazorCSharpFormatter" />
- </Extension>
-
- <Extension path = "/MonoDevelop/Ide/CompletionCharacters">
- <Complete language="Razor" commitOnSpace="True" commitChars="{}[]().,:;+-*/%&amp;|^!~=&lt;&gt;?@#'&quot;\"/>
- </Extension>
-
- <Extension path = "/MonoDevelop/Ide/CustomTools">
- <!-- NOTE: we explicitly do no call this "RazorGenerator" to avoid conflicts with http://razorgenerator.codeplex.com/ -->
- <Tool name="RazorTemplatePreprocessor" type="MonoDevelop.RazorGenerator.RazorTemplatePreprocessor"/>
- </Extension>
-</ExtensionModel>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/MonoDevelop.AspNet.Mvc.csproj b/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/MonoDevelop.AspNet.Mvc.csproj
deleted file mode 100644
index 250f115344..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/MonoDevelop.AspNet.Mvc.csproj
+++ /dev/null
@@ -1,339 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
- <PropertyGroup>
- <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
- <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
- <ProductVersion>8.0.30703</ProductVersion>
- <SchemaVersion>2.0</SchemaVersion>
- <ProjectGuid>{B32AD0DD-5247-437B-A2EF-1A4676C1B072}</ProjectGuid>
- <OutputType>Library</OutputType>
- <RootNamespace>MonoDevelop.AspNet.Mvc</RootNamespace>
- <AssemblyName>MonoDevelop.AspNet.Mvc</AssemblyName>
- </PropertyGroup>
- <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
- <DebugSymbols>True</DebugSymbols>
- <DebugType>full</DebugType>
- <Optimize>False</Optimize>
- <OutputPath>..\..\..\..\build\AddIns\MonoDevelop.AspNet.Mvc</OutputPath>
- <DefineConstants>DEBUG</DefineConstants>
- <ErrorReport>prompt</ErrorReport>
- <WarningLevel>4</WarningLevel>
- <ConsolePause>False</ConsolePause>
- <NoWarn>1591;1573</NoWarn>
- <DocumentationFile>..\..\..\..\build\AddIns\MonoDevelop.AspNet.Mvc\MonoDevelop.AspNet.Mvc.xml</DocumentationFile>
- <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
- </PropertyGroup>
- <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
- <DebugType>pdbonly</DebugType>
- <Optimize>true</Optimize>
- <OutputPath>..\build</OutputPath>
- <ErrorReport>prompt</ErrorReport>
- <WarningLevel>4</WarningLevel>
- <ConsolePause>False</ConsolePause>
- <DebugSymbols>true</DebugSymbols>
- <NoWarn>1591;1573</NoWarn>
- <DocumentationFile>..\build\MonoDevelop.AspNet.Mvc.xml</DocumentationFile>
- <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
- </PropertyGroup>
- <ItemGroup>
- <Compile Include="AssemblyInfo.cs" />
- <Compile Include="AspMvcProjectBinding.cs" />
- <Compile Include="AspMvcProject.cs" />
- <Compile Include="AspMvcProjectConfiguration.cs" />
- <Compile Include="AspMvcCommands.cs" />
- <Compile Include="CommandHandlers.cs" />
- <Compile Include="Completion\IRazorCompletionBuilder.cs" />
- <Compile Include="Completion\RazorCompletion.cs" />
- <Compile Include="Completion\RazorCSharpCompletionBuilder.cs" />
- <Compile Include="Formatting\RazorCSharpFormatter.cs" />
- <Compile Include="Gui\FolderNodeBuilderExtension.cs" />
- <None Include="CodeTemplates\CSharp\AddController\ControllerWithEmptyReadAndWriteActions.tt">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </None>
- <None Include="CodeTemplates\CSharp\AddController\Empty.tt">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </None>
- <None Include="CodeTemplates\CSharp\AddView\Razor\Empty.tt">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </None>
- <None Include="Templates\Common\Error.cshtml">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </None>
- <None Include="Templates\Common\HomeController.cs">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </None>
- <None Include="Templates\Common\HomeControllerTest.cs">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </None>
- <Compile Include="Gui\RazorCSharpEditorExtension.cs" />
- <Compile Include="Parser\OutlineNode.cs" />
- <Compile Include="Parser\RazorCSharpParsedDocument.cs" />
- <Compile Include="Parser\RazorCSharpParser.cs" />
- <Compile Include="Parser\RazorPageInfo.cs" />
- <Compile Include="Parser\RazorSymbols.cs" />
- <Compile Include="Parser\RazorUtils.cs" />
- <Compile Include="RazorSyntaxMode.cs" />
- <Compile Include="StateEngine\RazorCodeBlockState.cs" />
- <Compile Include="StateEngine\RazorCodeFragmentState.cs" />
- <Compile Include="StateEngine\RazorCommentState.cs" />
- <Compile Include="StateEngine\RazorDirectiveState.cs" />
- <Compile Include="StateEngine\RazorDom.cs" />
- <Compile Include="StateEngine\RazorExpressionState.cs" />
- <Compile Include="StateEngine\RazorFreeState.cs" />
- <Compile Include="StateEngine\RazorSpeculativeState.cs" />
- <Compile Include="StateEngine\RazorState.cs" />
- <Compile Include="StateEngine\RazorStatementState.cs" />
- <Compile Include="StateEngine\StateEngineService.cs" />
- <Compile Include="TextTemplating\MvcTextTemplateHost.cs" />
- <Compile Include="gtk-gui\generated.cs" />
- <Compile Include="Gui\AddViewDialog.cs" />
- <Compile Include="gtk-gui\MonoDevelop.AspNet.Mvc.Gui.AddViewDialog.cs" />
- <Compile Include="Gui\AddControllerDialog.cs" />
- <Compile Include="gtk-gui\MonoDevelop.AspNet.Mvc.Gui.AddControllerDialog.cs" />
- <None Include="Templates\PreprocessedRazorTemplate.xft.xml">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </None>
- <Compile Include="RazorGenerator\RazorTemplatePreprocessor.cs" />
- <Compile Include="RazorGenerator\PreprocessedCSharpRazorCodeParser.cs" />
- <Compile Include="RazorGenerator\PreprocessedTemplateCodeTransformer.cs" />
- <Compile Include="RazorEditorParserFixed\RazorEditorParser.cs" />
- <Compile Include="RazorEditorParserFixed\BackgroundParser.cs" />
- <Compile Include="RazorEditorParserFixed\RazorEditorTrace.cs" />
- <Compile Include="RazorEditorParserFixed\RazorResources.Designer.cs" />
- <Compile Include="RazorEditorParserFixed\CommonResources.Designer.cs" />
- <Compile Include="RazorEditorParserFixed\DisposableAction.cs" />
- <Compile Include="AddinInfo.cs" />
- <Compile Include="RazorGenerator\MarkupRewriter.cs" />
- <Compile Include="RazorGenerator\RewritingRazorTemplateEngine.cs" />
- <Compile Include="RazorGenerator\PreprocessedAttributeRewriter.cs" />
- <Compile Include="RazorGenerator\PreprocessedRazorHost.cs" />
- <Compile Include="RazorGenerator\PreprocessedLiteralAttributeCodeGenerator.cs" />
- <Compile Include="RazorGenerator\PreprocessedAttributeBlockCodeGenerator.cs" />
- <Compile Include="RazorGenerator\PreprocessedDynamicAttributeBlockCodeGenerator.cs" />
- <Compile Include="RazorGenerator\RazorWriterHelper.cs" />
- <Compile Include="RazorGenerator\FileUtil.cs" />
- </ItemGroup>
- <ItemGroup>
- <Reference Include="System" />
- <Reference Include="System.Configuration" />
- <Reference Include="System.Web" />
- <Reference Include="System.Xml" />
- <Reference Include="System.Core" />
- <Reference Include="Mono.Posix" />
- <Reference Include="gtk-sharp, Version=2.12.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f">
- <SpecificVersion>False</SpecificVersion>
- </Reference>
- <Reference Include="gdk-sharp, Version=2.12.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f">
- <SpecificVersion>False</SpecificVersion>
- </Reference>
- <Reference Include="pango-sharp, Version=2.12.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f" />
- <Reference Include="atk-sharp, Version=2.12.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f" />
- <Reference Include="glib-sharp, Version=2.12.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f" />
- <Reference Include="System.Web.Mvc">
- <HintPath>lib\System.Web.Mvc.dll</HintPath>
- </Reference>
- <Reference Include="System.Web.Razor">
- <HintPath>lib\System.Web.Razor.dll</HintPath>
- </Reference>
- <Reference Include="System.Web.WebPages">
- <HintPath>lib\System.Web.WebPages.dll</HintPath>
- </Reference>
- <Reference Include="System.Web.WebPages.Razor">
- <HintPath>lib\System.Web.WebPages.Razor.dll</HintPath>
- </Reference>
- </ItemGroup>
- <ItemGroup>
- <EmbeddedResource Include="MonoDevelop.AspNet.Mvc.addin.xml">
- <LogicalName>MonoDevelop.AspNet.Mvc.addin.xml</LogicalName>
- <SubType>Designer</SubType>
- </EmbeddedResource>
- <EmbeddedResource Include="gtk-gui\gui.stetic">
- <LogicalName>gui.stetic</LogicalName>
- </EmbeddedResource>
- </ItemGroup>
- <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
- <ItemGroup>
- <ProjectReference Include="..\..\..\..\external\nrefactory\ICSharpCode.NRefactory.CSharp\ICSharpCode.NRefactory.CSharp.csproj">
- <Project>{53DCA265-3C3C-42F9-B647-F72BA678122B}</Project>
- <Name>ICSharpCode.NRefactory.CSharp</Name>
- <Private>False</Private>
- </ProjectReference>
- <ProjectReference Include="..\..\CSharpBinding\CSharpBinding.csproj">
- <Project>{07CC7654-27D6-421D-A64C-0FFA40456FA2}</Project>
- <Name>CSharpBinding</Name>
- <Private>False</Private>
- </ProjectReference>
- <ProjectReference Include="..\..\TextTemplating\Mono.TextTemplating\Mono.TextTemplating.csproj">
- <Project>{A2364D6A-00EF-417C-80A6-815726C70032}</Project>
- <Name>Mono.TextTemplating</Name>
- <Private>False</Private>
- </ProjectReference>
- <ProjectReference Include="..\..\TextTemplating\MonoDevelop.TextTemplating\MonoDevelop.TextTemplating.csproj">
- <Project>{8CCA39DD-8412-4547-BE7F-0C3D3ACC6FAC}</Project>
- <Name>MonoDevelop.TextTemplating</Name>
- <Private>False</Private>
- </ProjectReference>
- <ProjectReference Include="..\..\..\core\MonoDevelop.Core\MonoDevelop.Core.csproj">
- <Project>{7525BB88-6142-4A26-93B9-A30C6983390A}</Project>
- <Name>MonoDevelop.Core</Name>
- <Private>False</Private>
- </ProjectReference>
- <ProjectReference Include="..\..\MonoDevelop.DesignerSupport\MonoDevelop.DesignerSupport.csproj">
- <Project>{2C24D515-4A2C-445C-8419-C09231913CFA}</Project>
- <Name>MonoDevelop.DesignerSupport</Name>
- <Private>False</Private>
- </ProjectReference>
- <ProjectReference Include="..\..\..\core\MonoDevelop.Ide\MonoDevelop.Ide.csproj">
- <Project>{27096E7F-C91C-4AC6-B289-6897A701DF21}</Project>
- <Name>MonoDevelop.Ide</Name>
- <Private>False</Private>
- </ProjectReference>
- <ProjectReference Include="..\..\MonoDevelop.XmlEditor\MonoDevelop.XmlEditor.csproj">
- <Project>{86DFC74A-B0B6-4C73-9E05-9098DA8FA5F1}</Project>
- <Name>MonoDevelop.XmlEditor</Name>
- <Private>False</Private>
- </ProjectReference>
- <ProjectReference Include="..\MonoDevelop.AspNet\MonoDevelop.AspNet.csproj">
- <Project>{1CF94D07-5480-4D10-A3CD-2EBD5E87B02E}</Project>
- <Name>MonoDevelop.AspNet</Name>
- <Private>False</Private>
- </ProjectReference>
- <ProjectReference Include="..\..\..\core\Mono.Texteditor\Mono.TextEditor.csproj">
- <Project>{A2329308-3751-4DBD-9A75-5F7B8B024625}</Project>
- <Name>Mono.TextEditor</Name>
- <Private>False</Private>
- </ProjectReference>
- <ProjectReference Include="..\..\..\..\external\nrefactory\ICSharpCode.NRefactory\ICSharpCode.NRefactory.csproj">
- <Project>{3B2A5653-EC97-4001-BB9B-D90F1AF2C371}</Project>
- <Name>ICSharpCode.NRefactory</Name>
- <Private>False</Private>
- </ProjectReference>
- <ProjectReference Include="..\..\..\..\external\mono-addins\Mono.Addins\Mono.Addins.csproj">
- <Project>{91DD5A2D-9FE3-4C3C-9253-876141874DAD}</Project>
- <Name>Mono.Addins</Name>
- <Private>False</Private>
- </ProjectReference>
- <ProjectReference Include="..\..\MonoDevelop.Debugger\MonoDevelop.Debugger.csproj">
- <Project>{2357AABD-08C7-4808-A495-8FF2D3CDFDB0}</Project>
- <Name>MonoDevelop.Debugger</Name>
- <Private>False</Private>
- </ProjectReference>
- </ItemGroup>
- <ItemGroup>
- <None Include="Templates\Common\Index.cshtml">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </None>
- <None Include="Templates\Common\ViewPageRazor.cshtml">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </None>
- <None Include="Templates\Common\_Layout.cshtml">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </None>
- <None Include="Templates\Common\_ViewStart.cshtml">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </None>
- <None Include="Templates\Controller.xft.xml">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </None>
- <None Include="Templates\EmptyProject.xpt.xml">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </None>
- <None Include="Templates\GlobalAsax.xft.xml">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </None>
- <None Include="Templates\Project.xpt.xml">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </None>
- <None Include="Templates\UserControl.xft.xml">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </None>
- <None Include="Templates\ViewContentPage.xft.xml">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </None>
- <None Include="Templates\ViewMasterPage.xft.xml">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </None>
- <None Include="Templates\ViewPage.xft.xml">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </None>
- <None Include="Templates\WebConfigApp.xft.xml">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </None>
- <None Include="Templates\WebConfigViews.xft.xml">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- <SubType>Designer</SubType>
- </None>
- <None Include="CodeTemplates\CSharp\AddView\Aspx\Empty.tt">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </None>
- <None Include="Makefile.am" />
- </ItemGroup>
- <ItemGroup>
- <None Include="Templates\EmptyProjectMvc3.xpt.xml">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- <SubType>Designer</SubType>
- </None>
- <None Include="Templates\GlobalAsaxMvc3.xft.xml">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </None>
- <None Include="Templates\ProjectMvc3.xpt.xml">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- <SubType>Designer</SubType>
- </None>
- <None Include="Templates\WebConfigAppMvc3.xft.xml">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </None>
- <None Include="Templates\WebConfigViewsMvc3.xft.xml">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </None>
- </ItemGroup>
- <ItemGroup>
- <None Include="Templates\ProjectMvc3Razor.xpt.xml">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- <SubType>Designer</SubType>
- </None>
- </ItemGroup>
- <ItemGroup>
- <None Include="Templates\ProjectMvc3WithUnitTest.xpt.xml">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </None>
- <None Include="Templates\ProjectWithUnitTest.xpt.xml">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </None>
- </ItemGroup>
- <ItemGroup>
- <None Include="Templates\ProjectMvc3RazorWithUnitTest.xpt.xml">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- <SubType>Designer</SubType>
- </None>
- </ItemGroup>
- <ItemGroup>
- <None Include="Templates\LayoutPage.xft.xml">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </None>
- </ItemGroup>
- <ItemGroup>
- <None Include="Templates\PartialViewPageRazor.xft.xml">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </None>
- </ItemGroup>
- <ItemGroup>
- <None Include="Templates\ViewPageRazor.xft.xml">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </None>
- </ItemGroup>
- <ItemGroup />
- <ItemGroup>
- <None Include="Razor-templates.xml">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- <SubType>Designer</SubType>
- </None>
- </ItemGroup>
- <ItemGroup>
- <Service Include="{508349B6-6B84-4DF5-91F0-309BEEBAD82D}" />
- </ItemGroup>
- <ItemGroup>
- <Folder Include="RazorGenerator\" />
- <Folder Include="RazorEditorParserFixed\" />
- </ItemGroup>
-</Project>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/StateEngine/RazorDom.cs b/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/StateEngine/RazorDom.cs
deleted file mode 100644
index 2069d32a4b..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/StateEngine/RazorDom.cs
+++ /dev/null
@@ -1,202 +0,0 @@
-//
-// RazorDom.cs
-//
-// Author:
-// Piotr Dowgiallo <sparekd@gmail.com>
-//
-// Copyright (c) 2012 Piotr Dowgiallo
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-
-using MonoDevelop.Xml.StateEngine;
-using ICSharpCode.NRefactory.TypeSystem;
-using ICSharpCode.NRefactory;
-using System.Diagnostics;
-using Mono.TextEditor;
-using MonoDevelop.Ide;
-using System.Linq;
-
-namespace MonoDevelop.AspNet.Mvc.StateEngine
-{
- public abstract class RazorExpression : XNode
- {
- public RazorExpression (DomRegion region) : base (region) { }
- public RazorExpression (TextLocation start) : base (start) { }
- protected RazorExpression () { }
- }
-
- public class RazorExplicitExpression : RazorExpression
- {
- public RazorExplicitExpression (DomRegion region) : base (region) { }
- public RazorExplicitExpression (TextLocation start) : base (start) { }
- protected RazorExplicitExpression () { }
-
- protected override XObject NewInstance () { return new RazorExplicitExpression (); }
-
- public override string ToString ()
- {
- return string.Format ("[RazorExplicitExpression Location='{0}'", this.Region);
- }
-
- public override string FriendlyPathRepresentation
- {
- get { return "@( )"; }
- }
- }
-
- public class RazorImplicitExpression : RazorExpression
- {
- public RazorImplicitExpression (DomRegion region) : base (region) { }
- public RazorImplicitExpression (TextLocation start) : base (start) { }
- protected RazorImplicitExpression () { }
-
- protected override XObject NewInstance () { return new RazorImplicitExpression (); }
-
- public override string ToString ()
- {
- return string.Format ("[RazorImplicitExpression Location='{0}'", this.Region);
- }
-
- public override string FriendlyPathRepresentation
- {
- get { return "@"; }
- }
- }
-
- public class RazorComment : XNode
- {
- public RazorComment (DomRegion region) : base (region) { }
- public RazorComment (TextLocation start) : base (start) { }
- protected RazorComment () { }
-
- protected override XObject NewInstance () { return new RazorComment (); }
-
- public override string ToString ()
- {
- return string.Format ("[RazorComment Location='{0}'", this.Region);
- }
-
- public override string FriendlyPathRepresentation
- {
- get { return "@* *@"; }
- }
- }
-
- public abstract class RazorCodeFragment : XContainer
- {
- public RazorCodeFragment (TextLocation start) : base (start) {}
-
- protected RazorCodeFragment () { }
-
- public string Name { get; set; }
- public TextLocation? FirstBracket { get; set; }
- public TextDocument Document {
- get {
- if (IdeApp.Workbench.ActiveDocument != null && IdeApp.Workbench.ActiveDocument.Editor != null)
- return IdeApp.Workbench.ActiveDocument.Editor.Document;
- return null;
- }
- }
-
- public bool IsEndingBracket (TextLocation bracketLocation)
- {
- // If document isn't entirely loaded
- if (Document == null || Document.Lines.Count () < Region.BeginLine)
- return false;
-
- if (!FirstBracket.HasValue && !FindFirstBracket (bracketLocation))
- return false;
-
- int firstBracketOffset = Document.GetOffset (FirstBracket.Value);
- int currentBracketOffset = Document.GetOffset (bracketLocation);
-
- return Document.GetMatchingBracketOffset (firstBracketOffset) == currentBracketOffset;
- }
-
- public bool FindFirstBracket (TextLocation currentLocation)
- {
- if (Document.Lines.Count () < Region.BeginLine)
- return false;
-
- int firstBracketPosition = Document.GetTextBetween (Region.Begin, currentLocation).IndexOf ('{');
- if (firstBracketPosition == -1)
- return false;
-
- int beginOffset = Document.LocationToOffset (Region.Begin);
- FirstBracket = Document.OffsetToLocation (beginOffset + firstBracketPosition);
- return true;
- }
- }
-
- public class RazorCodeBlock : RazorCodeFragment
- {
- public RazorCodeBlock (TextLocation start) : base (start) { }
- protected RazorCodeBlock () { }
-
- protected override XObject NewInstance () { return new RazorCodeBlock (); }
-
- public override string ToString ()
- {
- return string.Format ("[RazorCodeBlock Location='{0}'", this.Region);
- }
-
- public override string FriendlyPathRepresentation
- {
- get { return "@{ }"; }
- }
- }
-
- public class RazorDirective : RazorCodeFragment
- {
- public RazorDirective (TextLocation start) : base (start) { }
- protected RazorDirective () { }
-
- protected override XObject NewInstance () { return new RazorDirective (); }
-
- public bool IsSimpleDirective { get; set; }
-
- public override string ToString ()
- {
- return string.Format ("[RazorDirective Location='{0}'", this.Region);
- }
-
- public override string FriendlyPathRepresentation
- {
- get { return "@" + Name; }
- }
- }
-
- public class RazorStatement : RazorCodeFragment
- {
- public RazorStatement (TextLocation start) : base (start) { }
- protected RazorStatement () { }
-
- protected override XObject NewInstance () { return new RazorStatement (); }
-
- public override string ToString ()
- {
- return string.Format ("[RazorStatement Location='{0}'", this.Region);
- }
-
- public override string FriendlyPathRepresentation
- {
- get { return "@" + Name; }
- }
- }
-}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/Common/HomeControllerTest.cs b/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/Common/HomeControllerTest.cs
deleted file mode 100644
index b98cbbe901..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/Common/HomeControllerTest.cs
+++ /dev/null
@@ -1,28 +0,0 @@
-using NUnit.Framework;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Web.Mvc;
-using ${SolutionName};
-using ${SolutionName}.Controllers;
-
-namespace ${Namespace}
-{
- [TestFixture ()]
- public class ${Name}
- {
- [Test ()]
- public void Index ()
- {
- // Arrange
- HomeController controller = new HomeController ();
-
- // Act
- ViewResult result = controller.Index () as ViewResult;
-
- // Assert
- Assert.AreEqual ("Welcome to ASP.NET MVC on Mono!", result.ViewData["Message"]);
- }
- }
-} \ No newline at end of file
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/Common/Index.cshtml b/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/Common/Index.cshtml
deleted file mode 100644
index e17c85e1ce..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/Common/Index.cshtml
+++ /dev/null
@@ -1 +0,0 @@
-<h2>@ViewData["Message"]</h2>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/Controller.xft.xml b/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/Controller.xft.xml
deleted file mode 100644
index efd7300bcd..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/Controller.xft.xml
+++ /dev/null
@@ -1,46 +0,0 @@
-<?xml version="1.0"?>
-<Template originator="Michael Hutchinson"
- created="2009/02/17"
- lastModified="2009/02/17">
-
- <!-- Template Header -->
- <TemplateConfiguration>
- <_Name>ASP.NET MVC Controller</_Name>
- <Icon>md-html-file-icon</Icon>
- <_Category>ASP.NET MVC</_Category>
- <LanguageName>*</LanguageName>
- <ProjectType>AspNetMvc</ProjectType>
- <_Description>Creates an ASP.NET MVC Controller.</_Description>
- </TemplateConfiguration>
-
- <!-- Template Content -->
- <TemplateFiles>
- <CodeDomFile>
- <CompileUnit>
- <Namespaces>
- <Namespace Name="">
- <Imports>
- <NamespaceImport Namespace="System" />
- <NamespaceImport Namespace="System.Collections.Generic" />
- <NamespaceImport Namespace="System.Linq" />
- <NamespaceImport Namespace="System.Web" />
- <NamespaceImport Namespace="System.Web.Mvc" />
- <NamespaceImport Namespace="System.Web.Mvc.Ajax" />
- </Imports>
- </Namespace>
- <Namespace Name="${Namespace}.Controllers">
- <Types>
- <TypeDeclaration Name="${Name}" IsClass="true" >
- <BaseTypes>
- <TypeReference BaseType="Controller" />
- </BaseTypes>
- <Members>
- </Members>
- </TypeDeclaration>
- </Types>
- </Namespace>
- </Namespaces>
- </CompileUnit>
- </CodeDomFile>
- </TemplateFiles>
-</Template>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/EmptyProjectMvc3.xpt.xml b/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/EmptyProjectMvc3.xpt.xml
deleted file mode 100644
index 06b0bb25ca..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/EmptyProjectMvc3.xpt.xml
+++ /dev/null
@@ -1,57 +0,0 @@
-<?xml version="1.0"?>
-<Template originator="Piotr Dowgiallo"
- created="2012/05/16"
- lastModified="2012/05/16">
-
- <!-- Template Header -->
- <TemplateConfiguration>
- <_Name>Empty ASP.NET MVC 3 Project</_Name>
- <_Category>C#/ASP.NET</_Category>
- <Icon>md-project-web</Icon>
- <LanguageName>C#</LanguageName>
- <_Description>Creates an empty ASP.NET MVC 3 Web Project.</_Description>
- </TemplateConfiguration>
-
- <!-- Actions -->
- <Actions>
- </Actions>
-
- <!-- Template Content -->
- <Combine name = "${ProjectName}" directory = ".">
- <Options>
- <StartupProject>${ProjectName}</StartupProject>
- </Options>
-
- <Project name = "${ProjectName}" directory = "." type = "AspNetMvc3">
- <Options TargetFrameworkVersion = "4.0" />
- <References>
- <Reference type="Package" refto="System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
- <Reference type="Package" refto="System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <Reference type="Package" refto="System.Xml, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
- <Reference type="Package" refto="System.Core" />
- <Reference type="Package" refto="System.Web.Services, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <Reference type="Package" refto="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
- <Reference type="Package" refto="System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
- <Reference type="Package" refto="System.Web.Abstractions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
- <Reference type="Package" refto="System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
- <Reference type="Package" refto="System.Web.WebPages, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
- <Reference type="Package" refto="System.Web.Helpers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
- <Reference type="Package" refto="System.Web.DynamicData, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
- <Reference type="Package" refto="System.ComponentModel.DataAnnotations, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
- <Reference type="Package" refto="System.Xml.Linq" />
- <Reference type="Package" refto="Microsoft.CSharp, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- </References>
- <Files>
- <Directory name="Content" />
- <Directory name="Controllers" />
- <Directory name="Models" />
- <Directory name="Scripts" />
- <Directory name="Views">
- <FileTemplateReference TemplateID="AspMvc3WebConfigViews" name="Web.config" SuppressAutoOpen="true" />
- </Directory>
- <FileTemplateReference TemplateID="AspMvc3WebConfigApp" name="Web.config" SuppressAutoOpen="true" />
- <FileTemplateReference TemplateID="AspMvc3GlobalAsax" name="Global.asax" SuppressAutoOpen="true" />
- </Files>
- </Project>
- </Combine>
-</Template>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/GlobalAsax.xft.xml b/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/GlobalAsax.xft.xml
deleted file mode 100644
index cf812f649a..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/GlobalAsax.xft.xml
+++ /dev/null
@@ -1,62 +0,0 @@
-<?xml version="1.0"?>
-<Template Originator="Michael Hutchinson"
- Created="2009/02/20"
- LastModified="2012/05/17">
-
- <!-- Template Header -->
- <TemplateConfiguration>
- <_Name>ASP.NET MVC 2 Global.asax</_Name>
- <_Category>ASP.NET MVC</_Category>
- <Icon>md-html-file-icon</Icon>
- <LanguageName>C#</LanguageName>
- <ProjectType>AspNetMvc</ProjectType>
- <DefaultFilename IsFixed="True">Global.asax</DefaultFilename>
- <_Description>Creates an ASP.NET MVC 2 Global.asax file.</_Description>
- </TemplateConfiguration>
-
- <Conditions>
- <ParentProject PermittedCreationPaths="" ExcludedFiles="/Global.asax" />
- </Conditions>
-
- <!-- Template Content -->
- <TemplateFiles>
- <AspNetFile name="Global.asax">
- <FileText>
-<![CDATA[<%@ Application Inherits="${Namespace}.MvcApplication" %>]]>
- </FileText>
- </AspNetFile>
- <File name="Global.asax.cs" DependsOn="Global.asax" >
-<![CDATA[
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Web;
-using System.Web.Mvc;
-using System.Web.Routing;
-
-namespace ${Namespace}
-{
- public class MvcApplication : System.Web.HttpApplication
- {
- public static void RegisterRoutes(RouteCollection routes)
- {
- routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
-
- routes.MapRoute(
- "Default",
- "{controller}/{action}/{id}",
- new { controller = "Home", action = "Index", id = "" }
- );
-
- }
-
- protected void Application_Start()
- {
- AreaRegistration.RegisterAllAreas();
- RegisterRoutes(RouteTable.Routes);
- }
- }
-}]]>
- </File>
- </TemplateFiles>
-</Template>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/ProjectMvc3.xpt.xml b/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/ProjectMvc3.xpt.xml
deleted file mode 100644
index 8f910e96c5..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/ProjectMvc3.xpt.xml
+++ /dev/null
@@ -1,97 +0,0 @@
-<?xml version="1.0"?>
-<Template originator="Piotr Dowgiallo"
- created="2012/05/16"
- lastModified="2012/05/16">
-
- <!-- Template Header -->
- <TemplateConfiguration>
- <_Name>ASP.NET MVC 3 Project</_Name>
- <_Category>C#/ASP.NET</_Category>
- <Icon>md-project-web</Icon>
- <LanguageName>C#</LanguageName>
- <_Description>Creates an ASP.NET MVC 3 Web Project.</_Description>
- </TemplateConfiguration>
-
-
- <!-- Actions -->
- <Actions>
- <Open filename = "Controllers/HomeController.cs"/>
- </Actions>
-
- <!-- Template Content -->
- <Combine name = "${ProjectName}" directory = ".">
- <Options>
- <StartupProject>${ProjectName}</StartupProject>
- </Options>
-
- <Project name = "${ProjectName}" directory = "." type = "AspNetMvc3">
- <Options TargetFrameworkVersion = "4.0" />
- <References>
- <Reference type="Package" refto="System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
- <Reference type="Package" refto="System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <Reference type="Package" refto="System.Xml, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
- <Reference type="Package" refto="System.Core" />
- <Reference type="Package" refto="System.Web.Services, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <Reference type="Package" refto="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
- <Reference type="Package" refto="System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
- <Reference type="Package" refto="System.Web.Abstractions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
- <Reference type="Package" refto="System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
- <Reference type="Package" refto="System.Web.WebPages, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
- <Reference type="Package" refto="System.Web.Helpers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
- <Reference type="Package" refto="System.Web.DynamicData, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
- <Reference type="Package" refto="System.ComponentModel.DataAnnotations, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
- <Reference type="Package" refto="System.Xml.Linq" />
- <Reference type="Package" refto="Microsoft.CSharp, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- </References>
- <Files>
- <Directory name="Content" />
- <Directory name="Controllers">
- <File name="HomeController.cs" src="Common/HomeController.cs" />
- </Directory>
- <Directory name="Models" />
- <Directory name="Scripts" />
- <Directory name="Views">
- <FileTemplateReference TemplateID="AspMvc3WebConfigViews" name="Web.config" SuppressAutoOpen="true" />
- <Directory name="Home">
- <AspNetFile name="Index.aspx">
- <FileText>
-<![CDATA[<%@ Page Language="${AspNetLanguage}" Inherits="System.Web.Mvc.ViewPage" %>
-${Doctype}
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head runat="server">
- <title></title>
-</head>
-<body>
- <div>
- <%= Html.Encode(ViewData["Message"]) %>
- </div>
-</body>
-]]>
- </FileText>
- </AspNetFile>
- </Directory>
- <Directory name="Shared">
- <AspNetFile name="Error.aspx">
- <FileText>
-<![CDATA[<%@ Page Language="${AspNetLanguage}" Inherits="System.Web.Mvc.ViewPage" %>
-${Doctype}
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
- <title>Error</title>
-</head>
-<body>
- <div>
- <h2>An error occurred while processing your request.</h2>
- </div>
-</body>
-]]>
- </FileText>
- </AspNetFile>
- </Directory>
- </Directory>
- <FileTemplateReference TemplateID="AspMvc3WebConfigApp" name="Web.config" SuppressAutoOpen="true" />
- <FileTemplateReference TemplateID="AspMvc3GlobalAsax" name="Global.asax" SuppressAutoOpen="true" />
- </Files>
- </Project>
- </Combine>
-</Template>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/ProjectMvc3WithUnitTest.xpt.xml b/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/ProjectMvc3WithUnitTest.xpt.xml
deleted file mode 100644
index 2675e62477..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/ProjectMvc3WithUnitTest.xpt.xml
+++ /dev/null
@@ -1,126 +0,0 @@
-<?xml version="1.0"?>
-<Template originator="Piotr Dowgiallo"
- created="2012/06/05"
- lastModified="2012/06/05">
-
- <!-- Template Header -->
- <TemplateConfiguration>
- <_Name>ASP.NET MVC 3 with Unit Test Project</_Name>
- <_Category>C#/ASP.NET</_Category>
- <Icon>md-project-web</Icon>
- <LanguageName>C#</LanguageName>
- <_Description>Creates an ASP.NET MVC 3 Web Project with Unit Test Project.</_Description>
- </TemplateConfiguration>
-
-
- <!-- Actions -->
- <Actions>
- <Open filename = "Controllers/HomeController.cs"/>
- </Actions>
-
- <!-- Template Content -->
- <Combine name = "${ProjectName}" directory = ".">
- <Options>
- <StartupProject>${ProjectName}</StartupProject>
- </Options>
-
- <Project name = "${ProjectName}" directory = "." type = "AspNetMvc3">
- <Options TargetFrameworkVersion = "4.0" />
- <References>
- <Reference type="Package" refto="System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
- <Reference type="Package" refto="System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <Reference type="Package" refto="System.Xml, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
- <Reference type="Package" refto="System.Core" />
- <Reference type="Package" refto="System.Web.Services, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <Reference type="Package" refto="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
- <Reference type="Package" refto="System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
- <Reference type="Package" refto="System.Web.Abstractions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
- <Reference type="Package" refto="System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
- <Reference type="Package" refto="System.Web.WebPages, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
- <Reference type="Package" refto="System.Web.Helpers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
- <Reference type="Package" refto="System.Web.DynamicData, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
- <Reference type="Package" refto="System.ComponentModel.DataAnnotations, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
- <Reference type="Package" refto="System.Xml.Linq" />
- <Reference type="Package" refto="Microsoft.CSharp, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- </References>
- <Files>
- <Directory name="Content" />
- <Directory name="Controllers">
- <File name="HomeController.cs" src="Common/HomeController.cs" />
- </Directory>
- <Directory name="Models" />
- <Directory name="Scripts" />
- <Directory name="Views">
- <FileTemplateReference TemplateID="AspMvc3WebConfigViews" name="Web.config" SuppressAutoOpen="true" />
- <Directory name="Home">
- <AspNetFile name="Index.aspx">
- <FileText>
- <![CDATA[<%@ Page Language="${AspNetLanguage}" Inherits="System.Web.Mvc.ViewPage" %>
-${Doctype}
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head runat="server">
- <title></title>
-</head>
-<body>
- <div>
- <%= Html.Encode(ViewData["Message"]) %>
- </div>
-</body>
-]]>
- </FileText>
- </AspNetFile>
- </Directory>
- <Directory name="Shared">
- <AspNetFile name="Error.aspx">
- <FileText>
- <![CDATA[<%@ Page Language="${AspNetLanguage}" Inherits="System.Web.Mvc.ViewPage" %>
-${Doctype}
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
- <title>Error</title>
-</head>
-<body>
- <div>
- <h2>An error occurred while processing your request.</h2>
- </div>
-</body>
-]]>
- </FileText>
- </AspNetFile>
- </Directory>
- </Directory>
- <FileTemplateReference TemplateID="AspMvc3WebConfigApp" name="Web.config" SuppressAutoOpen="true" />
- <FileTemplateReference TemplateID="AspMvc3GlobalAsax" name="Global.asax" SuppressAutoOpen="true" />
- </Files>
- </Project>
- <Project name = "${ProjectName}.Tests" directory = "${ProjectName}.Tests">
- <Options Target = "Library" />
-
- <References>
- <Reference type="Package" refto="System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
- <Reference type="Package" refto="System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <Reference type="Package" refto="System.Xml, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
- <Reference type="Package" refto="System.Core" />
- <Reference type="Package" refto="System.Web.Services, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <Reference type="Package" refto="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
- <Reference type="Package" refto="System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
- <Reference type="Package" refto="System.Web.Abstractions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
- <Reference type="Package" refto="System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
- <Reference type="Package" refto="System.Web.WebPages, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
- <Reference type="Package" refto="System.Web.Helpers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
- <Reference type="Package" refto="System.Web.DynamicData, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
- <Reference type="Package" refto="System.ComponentModel.DataAnnotations, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
- <Reference type="Package" refto="System.Xml.Linq" />
- <Reference type="Package" refto="Microsoft.CSharp, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <Reference type="Package" refto="nunit.framework" SpecificVersion = "false" LocalCopy = "false" />
- <Reference type="Project" refto="${ProjectName}" />
- </References>
-
- <Files>
- <Directory name="Controllers">
- <File name="HomeControllerTest.cs" src="Common/HomeControllerTest.cs" />
- </Directory>
- </Files>
- </Project>
- </Combine>
-</Template>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/WebConfigApp.xft.xml b/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/WebConfigApp.xft.xml
deleted file mode 100644
index fe96f40c35..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/WebConfigApp.xft.xml
+++ /dev/null
@@ -1,143 +0,0 @@
-<?xml version="1.0"?>
-<Template
- Originator="Michael Hutchinson"
- Created="2009/02/20"
- LastModified="2012/05/17">
-
- <!-- Template Header -->
- <TemplateConfiguration>
- <_Name>ASP.NET MVC 2 Application Configuration</_Name>
- <_Category>ASP.NET MVC</_Category>
- <Icon>md-html-file-icon</Icon>
- <LanguageName>*</LanguageName>
- <ProjectType>AspNetMvc</ProjectType>
- <DefaultFilename IsFixed="True">Web.config</DefaultFilename>
- <_Description>Creates an ASP.NET MVC 2 Web.config file for an application.</_Description>
- </TemplateConfiguration>
-
- <Conditions>
- <ParentProject PermittedCreationPaths="" ExcludedFiles="Web.config" RequireProject="True"/>
- </Conditions>
-
- <!-- Template Content -->
- <TemplateFiles>
- <AspNetFile name="Web.config">
- <FileText>
-<![CDATA[<?xml version="1.0" ?>
-<!--
-Web.config file for ${ProjectName}.
-
-The settings that can be used in this file are documented at
-http://www.mono-project.com/Config_system.web and
-http://msdn2.microsoft.com/en-us/library/b5ysx397.aspx
--->
-<configuration>
- <configSections>
- <sectionGroup name="system.web.extensions" type="System.Web.Configuration.SystemWebExtensionsSectionGroup, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
- <sectionGroup name="scripting" type="System.Web.Configuration.ScriptingSectionGroup, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
- <section name="scriptResourceHandler" type="System.Web.Configuration.ScriptingScriptResourceHandlerSection, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>
- <sectionGroup name="webServices" type="System.Web.Configuration.ScriptingWebServicesSectionGroup, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
- <section name="jsonSerialization" type="System.Web.Configuration.ScriptingJsonSerializationSection, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="Everywhere" />
- <section name="profileService" type="System.Web.Configuration.ScriptingProfileServiceSection, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication" />
- <section name="authenticationService" type="System.Web.Configuration.ScriptingAuthenticationServiceSection, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication" />
- <section name="roleService" type="System.Web.Configuration.ScriptingRoleServiceSection, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication" />
- </sectionGroup>
- </sectionGroup>
- </sectionGroup>
- </configSections>
-
- <system.web>
- <!--
- Set compilation debug="true" to insert debugging
- symbols into the compiled page. Because this
- affects performance, set this value to true only
- during development.
- -->
- <compilation defaultLanguage="${AspNetLanguage}" debug="false">
- <assemblies>
- <add assembly="System.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
- <add assembly="System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
- <add assembly="System.Web.Abstractions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
- <add assembly="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
- <add assembly="System.Web.Mvc, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
- <add assembly="System.Web.DynamicData, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
- <add assembly="System.Xml.Linq, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
- <add assembly="System.Data.Linq, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
- </assemblies>
- </compilation>
-
- <customErrors mode="RemoteOnly">
- </customErrors>
-
- <pages>
- <controls>
- <add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
- <add tagPrefix="asp" namespace="System.Web.UI.WebControls" assembly="System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
- </controls>
-
- <namespaces>
- <add namespace="System.Web.Mvc"/>
- <add namespace="System.Web.Mvc.Ajax"/>
- <add namespace="System.Web.Mvc.Html"/>
- <add namespace="System.Web.Routing"/>
- <add namespace="System.Linq"/>
- <add namespace="System.Collections.Generic"/>
- </namespaces>
- </pages>
-
- <authorization>
- <allow users="*" />
- </authorization>
-
- <httpHandlers>
- <remove verb="*" path="*.asmx"/>
- <add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
- <add verb="*" path="*_AppService.axd" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
- <add verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" validate="false"/>
- <add verb="*" path="*.mvc" validate="false" type="System.Web.Mvc.MvcHttpHandler, System.Web.Mvc, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
- </httpHandlers>
-
- <httpModules>
- <add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
- <add name="UrlRoutingModule" type="System.Web.Routing.UrlRoutingModule, System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
- </httpModules>
-
- <trace
- enabled="false"
- localOnly="true"
- pageOutput="false"
- requestLimit="10"
- traceMode="SortByTime"
- />
-
- <globalization
- requestEncoding="utf-8"
- responseEncoding="utf-8"
- />
-
- </system.web>
-
- <system.codedom>
- <compilers>
- <compiler language="c#;cs;csharp" extension=".cs" warningLevel="4"
- type="Microsoft.CSharp.CSharpCodeProvider, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <providerOption name="CompilerVersion" value="v4.0"/>
- <providerOption name="WarnAsError" value="false"/>
- </compiler>
- <compiler language="vb;vbs;visualbasic;vbscript" extension=".vb" warningLevel="4"
- type="Microsoft.VisualBasic.VBCodeProvider, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <providerOption name="CompilerVersion" value="v4.0"/>
- <providerOption name="OptionInfer" value="true"/>
- <providerOption name="WarnAsError" value="false"/>
- </compiler>
- </compilers>
- </system.codedom>
-
- <system.web.extensions/>
-
-</configuration>]]>
- </FileText>
- </AspNetFile>
- </TemplateFiles>
-</Template>
-
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/WebConfigViews.xft.xml b/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/WebConfigViews.xft.xml
deleted file mode 100644
index 4e18d67c88..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/WebConfigViews.xft.xml
+++ /dev/null
@@ -1,59 +0,0 @@
-<?xml version="1.0"?>
-<Template
- Originator="Michael Hutchinson"
- Created="2009/02/20"
- LastModified="2012/05/17">
-
- <!-- Template Header -->
- <TemplateConfiguration>
- <_Name>ASP.NET MVC 2 Views Configuration</_Name>
- <_Category>ASP.NET MVC</_Category>
- <Icon>md-html-file-icon</Icon>
- <LanguageName>*</LanguageName>
- <ProjectType>AspNetMvc</ProjectType>
- <DefaultFilename IsFixed="True">Web.config</DefaultFilename>
- <_Description>Creates an ASP.NET MVC 2 Web.config file for the Views directory.</_Description>
- </TemplateConfiguration>
-
- <Conditions>
- <ParentProject PermittedCreationPaths="/Views" ExcludedFiles="Web.config" />
- </Conditions>
-
- <!-- Template Content -->
- <TemplateFiles>
- <File name="Web.config">
-<![CDATA[<?xml version="1.0"?>
-<configuration>
- <system.web>
- <httpHandlers>
- <add path="*" verb="*" type="System.Web.HttpNotFoundHandler"/>
- </httpHandlers>
-
- <!--
- Enabling request validation in view pages would cause validation to occur
- after the input has already been processed by the controller. By default
- MVC performs request validation before a controller processes the input.
- To change this behavior apply the ValidateInputAttribute to a
- controller or action.
- -->
- <pages validateRequest="false"
- pageParserFilterType="System.Web.Mvc.ViewTypeParserFilter, System.Web.Mvc, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"
- pageBaseType="System.Web.Mvc.ViewPage, System.Web.Mvc, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"
- userControlBaseType="System.Web.Mvc.ViewUserControl, System.Web.Mvc, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
- <controls>
- <add assembly="System.Web.Mvc, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" namespace="System.Web.Mvc" tagPrefix="mvc" />
- </controls>
- </pages>
- </system.web>
-
- <system.webServer>
- <validation validateIntegratedModeConfiguration="false"/>
- <handlers>
- <remove name="BlockViewHandler"/>
- <add name="BlockViewHandler" path="*" verb="*" preCondition="integratedMode" type="System.Web.HttpNotFoundHandler"/>
- </handlers>
- </system.webServer>
-</configuration>]]>
- </File>
- </TemplateFiles>
-</Template> \ No newline at end of file
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/gtk-gui/MonoDevelop.AspNet.Mvc.Gui.AddControllerDialog.cs b/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/gtk-gui/MonoDevelop.AspNet.Mvc.Gui.AddControllerDialog.cs
deleted file mode 100644
index 2ef2c71e15..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/gtk-gui/MonoDevelop.AspNet.Mvc.Gui.AddControllerDialog.cs
+++ /dev/null
@@ -1,122 +0,0 @@
-
-// This file has been generated by the GUI designer. Do not modify.
-namespace MonoDevelop.AspNet.Mvc.Gui
-{
- public partial class AddControllerDialog
- {
- private global::Gtk.Table table1;
- private global::Gtk.Label label1;
- private global::Gtk.Label label2;
- private global::Gtk.Entry nameEntry;
- private global::Gtk.ComboBox templateCombo;
- private global::Gtk.Button buttonCancel;
- private global::Gtk.Button buttonOk;
-
- protected virtual void Build ()
- {
- global::Stetic.Gui.Initialize (this);
- // Widget MonoDevelop.AspNet.Mvc.Gui.AddControllerDialog
- this.Name = "MonoDevelop.AspNet.Mvc.Gui.AddControllerDialog";
- this.Title = global::Mono.Unix.Catalog.GetString ("Add Controller");
- this.WindowPosition = ((global::Gtk.WindowPosition)(4));
- // Internal child MonoDevelop.AspNet.Mvc.Gui.AddControllerDialog.VBox
- global::Gtk.VBox w1 = this.VBox;
- w1.Name = "dialog1_VBox";
- w1.Spacing = 6;
- w1.BorderWidth = ((uint)(6));
- // Container child dialog1_VBox.Gtk.Box+BoxChild
- this.table1 = new global::Gtk.Table (((uint)(2)), ((uint)(2)), false);
- this.table1.Name = "table1";
- this.table1.RowSpacing = ((uint)(6));
- this.table1.ColumnSpacing = ((uint)(6));
- // Container child table1.Gtk.Table+TableChild
- this.label1 = new global::Gtk.Label ();
- this.label1.Name = "label1";
- this.label1.Xalign = 0F;
- this.label1.LabelProp = global::Mono.Unix.Catalog.GetString ("_Name:");
- this.label1.UseUnderline = true;
- this.table1.Add (this.label1);
- global::Gtk.Table.TableChild w2 = ((global::Gtk.Table.TableChild)(this.table1 [this.label1]));
- w2.XOptions = ((global::Gtk.AttachOptions)(4));
- w2.YOptions = ((global::Gtk.AttachOptions)(4));
- // Container child table1.Gtk.Table+TableChild
- this.label2 = new global::Gtk.Label ();
- this.label2.Name = "label2";
- this.label2.Xalign = 0F;
- this.label2.LabelProp = global::Mono.Unix.Catalog.GetString ("_Template:");
- this.label2.UseUnderline = true;
- this.table1.Add (this.label2);
- global::Gtk.Table.TableChild w3 = ((global::Gtk.Table.TableChild)(this.table1 [this.label2]));
- w3.TopAttach = ((uint)(1));
- w3.BottomAttach = ((uint)(2));
- w3.XOptions = ((global::Gtk.AttachOptions)(4));
- w3.YOptions = ((global::Gtk.AttachOptions)(4));
- // Container child table1.Gtk.Table+TableChild
- this.nameEntry = new global::Gtk.Entry ();
- this.nameEntry.CanFocus = true;
- this.nameEntry.Name = "nameEntry";
- this.nameEntry.IsEditable = true;
- this.nameEntry.InvisibleChar = '●';
- this.table1.Add (this.nameEntry);
- global::Gtk.Table.TableChild w4 = ((global::Gtk.Table.TableChild)(this.table1 [this.nameEntry]));
- w4.LeftAttach = ((uint)(1));
- w4.RightAttach = ((uint)(2));
- w4.YOptions = ((global::Gtk.AttachOptions)(4));
- // Container child table1.Gtk.Table+TableChild
- this.templateCombo = global::Gtk.ComboBox.NewText ();
- this.templateCombo.Name = "templateCombo";
- this.table1.Add (this.templateCombo);
- global::Gtk.Table.TableChild w5 = ((global::Gtk.Table.TableChild)(this.table1 [this.templateCombo]));
- w5.TopAttach = ((uint)(1));
- w5.BottomAttach = ((uint)(2));
- w5.LeftAttach = ((uint)(1));
- w5.RightAttach = ((uint)(2));
- w5.YOptions = ((global::Gtk.AttachOptions)(4));
- w1.Add (this.table1);
- global::Gtk.Box.BoxChild w6 = ((global::Gtk.Box.BoxChild)(w1 [this.table1]));
- w6.Position = 0;
- w6.Expand = false;
- w6.Fill = false;
- // Internal child MonoDevelop.AspNet.Mvc.Gui.AddControllerDialog.ActionArea
- global::Gtk.HButtonBox w7 = this.ActionArea;
- w7.Name = "dialog1_ActionArea";
- w7.Spacing = 10;
- w7.BorderWidth = ((uint)(5));
- w7.LayoutStyle = ((global::Gtk.ButtonBoxStyle)(4));
- // Container child dialog1_ActionArea.Gtk.ButtonBox+ButtonBoxChild
- this.buttonCancel = new global::Gtk.Button ();
- this.buttonCancel.CanDefault = true;
- this.buttonCancel.CanFocus = true;
- this.buttonCancel.Name = "buttonCancel";
- this.buttonCancel.UseStock = true;
- this.buttonCancel.UseUnderline = true;
- this.buttonCancel.Label = "gtk-cancel";
- this.AddActionWidget (this.buttonCancel, -6);
- global::Gtk.ButtonBox.ButtonBoxChild w8 = ((global::Gtk.ButtonBox.ButtonBoxChild)(w7 [this.buttonCancel]));
- w8.Expand = false;
- w8.Fill = false;
- // Container child dialog1_ActionArea.Gtk.ButtonBox+ButtonBoxChild
- this.buttonOk = new global::Gtk.Button ();
- this.buttonOk.CanDefault = true;
- this.buttonOk.CanFocus = true;
- this.buttonOk.Name = "buttonOk";
- this.buttonOk.UseStock = true;
- this.buttonOk.UseUnderline = true;
- this.buttonOk.Label = "gtk-ok";
- this.AddActionWidget (this.buttonOk, -5);
- global::Gtk.ButtonBox.ButtonBoxChild w9 = ((global::Gtk.ButtonBox.ButtonBoxChild)(w7 [this.buttonOk]));
- w9.Position = 1;
- w9.Expand = false;
- w9.Fill = false;
- if ((this.Child != null)) {
- this.Child.ShowAll ();
- }
- this.DefaultWidth = 400;
- this.DefaultHeight = 157;
- this.label1.MnemonicWidget = this.nameEntry;
- this.label2.MnemonicWidget = this.templateCombo;
- this.Show ();
- this.nameEntry.Changed += new global::System.EventHandler (this.Validate);
- }
- }
-}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/gtk-gui/MonoDevelop.AspNet.Mvc.Gui.AddViewDialog.cs b/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/gtk-gui/MonoDevelop.AspNet.Mvc.Gui.AddViewDialog.cs
deleted file mode 100644
index 7b7de3c626..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/gtk-gui/MonoDevelop.AspNet.Mvc.Gui.AddViewDialog.cs
+++ /dev/null
@@ -1,368 +0,0 @@
-
-// This file has been generated by the GUI designer. Do not modify.
-namespace MonoDevelop.AspNet.Mvc.Gui
-{
- public partial class AddViewDialog
- {
- private global::Gtk.VBox vbox2;
- private global::Gtk.Table table1;
- private global::Gtk.Label label1;
- private global::Gtk.Label label4;
- private global::Gtk.Label label6;
- private global::Gtk.Entry nameEntry;
- private global::Gtk.ComboBox templateCombo;
- private global::Gtk.ComboBox viewEngineCombo;
- private global::Gtk.Frame frame1;
- private global::Gtk.Alignment alignment1;
- private global::Gtk.VBox vbox4;
- private global::Gtk.CheckButton partialCheck;
- private global::Gtk.CheckButton stronglyTypedCheck;
- private global::Gtk.Alignment typePanel;
- private global::Gtk.HBox hbox1;
- private global::Gtk.Label label3;
- private global::Gtk.Alignment dataClassAlignment;
- private global::Gtk.ComboBoxEntry dataClassCombo;
- private global::Gtk.CheckButton masterCheck;
- private global::Gtk.Alignment masterPanel;
- private global::Gtk.VBox vbox3;
- private global::Gtk.HBox hbox4;
- private global::Gtk.Label label5;
- private global::Gtk.Entry masterEntry;
- private global::Gtk.Button masterButton;
- private global::Gtk.HBox placeholderBox;
- private global::Gtk.Label label2;
- private global::Gtk.ComboBoxEntry primaryPlaceholderCombo;
- private global::Gtk.Label GtkLabel6;
- private global::Gtk.Button buttonCancel;
- private global::Gtk.Button buttonOk;
-
- protected virtual void Build ()
- {
- global::Stetic.Gui.Initialize (this);
- // Widget MonoDevelop.AspNet.Mvc.Gui.AddViewDialog
- this.Name = "MonoDevelop.AspNet.Mvc.Gui.AddViewDialog";
- this.Title = global::Mono.Unix.Catalog.GetString ("Add View");
- this.WindowPosition = ((global::Gtk.WindowPosition)(4));
- this.BorderWidth = ((uint)(6));
- this.Resizable = false;
- this.AllowGrow = false;
- // Internal child MonoDevelop.AspNet.Mvc.Gui.AddViewDialog.VBox
- global::Gtk.VBox w1 = this.VBox;
- w1.Name = "dialog1_VBox";
- w1.BorderWidth = ((uint)(2));
- // Container child dialog1_VBox.Gtk.Box+BoxChild
- this.vbox2 = new global::Gtk.VBox ();
- this.vbox2.Name = "vbox2";
- this.vbox2.Spacing = 6;
- // Container child vbox2.Gtk.Box+BoxChild
- this.table1 = new global::Gtk.Table (((uint)(3)), ((uint)(2)), false);
- this.table1.Name = "table1";
- this.table1.RowSpacing = ((uint)(6));
- this.table1.ColumnSpacing = ((uint)(6));
- // Container child table1.Gtk.Table+TableChild
- this.label1 = new global::Gtk.Label ();
- this.label1.Name = "label1";
- this.label1.Xalign = 0F;
- this.label1.LabelProp = global::Mono.Unix.Catalog.GetString ("_Name:");
- this.label1.UseUnderline = true;
- this.table1.Add (this.label1);
- global::Gtk.Table.TableChild w2 = ((global::Gtk.Table.TableChild)(this.table1 [this.label1]));
- w2.XOptions = ((global::Gtk.AttachOptions)(4));
- w2.YOptions = ((global::Gtk.AttachOptions)(4));
- // Container child table1.Gtk.Table+TableChild
- this.label4 = new global::Gtk.Label ();
- this.label4.Name = "label4";
- this.label4.Xalign = 0F;
- this.label4.LabelProp = global::Mono.Unix.Catalog.GetString ("_Template:");
- this.label4.UseUnderline = true;
- this.table1.Add (this.label4);
- global::Gtk.Table.TableChild w3 = ((global::Gtk.Table.TableChild)(this.table1 [this.label4]));
- w3.TopAttach = ((uint)(1));
- w3.BottomAttach = ((uint)(2));
- w3.XOptions = ((global::Gtk.AttachOptions)(4));
- w3.YOptions = ((global::Gtk.AttachOptions)(4));
- // Container child table1.Gtk.Table+TableChild
- this.label6 = new global::Gtk.Label ();
- this.label6.Name = "label6";
- this.label6.LabelProp = global::Mono.Unix.Catalog.GetString ("_View Engine:");
- this.label6.UseUnderline = true;
- this.table1.Add (this.label6);
- global::Gtk.Table.TableChild w4 = ((global::Gtk.Table.TableChild)(this.table1 [this.label6]));
- w4.TopAttach = ((uint)(2));
- w4.BottomAttach = ((uint)(3));
- w4.XOptions = ((global::Gtk.AttachOptions)(4));
- w4.YOptions = ((global::Gtk.AttachOptions)(4));
- // Container child table1.Gtk.Table+TableChild
- this.nameEntry = new global::Gtk.Entry ();
- this.nameEntry.CanFocus = true;
- this.nameEntry.Name = "nameEntry";
- this.nameEntry.IsEditable = true;
- this.nameEntry.InvisibleChar = '●';
- this.table1.Add (this.nameEntry);
- global::Gtk.Table.TableChild w5 = ((global::Gtk.Table.TableChild)(this.table1 [this.nameEntry]));
- w5.LeftAttach = ((uint)(1));
- w5.RightAttach = ((uint)(2));
- w5.YOptions = ((global::Gtk.AttachOptions)(4));
- // Container child table1.Gtk.Table+TableChild
- this.templateCombo = global::Gtk.ComboBox.NewText ();
- this.templateCombo.Name = "templateCombo";
- this.table1.Add (this.templateCombo);
- global::Gtk.Table.TableChild w6 = ((global::Gtk.Table.TableChild)(this.table1 [this.templateCombo]));
- w6.TopAttach = ((uint)(1));
- w6.BottomAttach = ((uint)(2));
- w6.LeftAttach = ((uint)(1));
- w6.RightAttach = ((uint)(2));
- w6.XOptions = ((global::Gtk.AttachOptions)(4));
- w6.YOptions = ((global::Gtk.AttachOptions)(4));
- // Container child table1.Gtk.Table+TableChild
- this.viewEngineCombo = global::Gtk.ComboBox.NewText ();
- this.viewEngineCombo.Name = "viewEngineCombo";
- this.table1.Add (this.viewEngineCombo);
- global::Gtk.Table.TableChild w7 = ((global::Gtk.Table.TableChild)(this.table1 [this.viewEngineCombo]));
- w7.TopAttach = ((uint)(2));
- w7.BottomAttach = ((uint)(3));
- w7.LeftAttach = ((uint)(1));
- w7.RightAttach = ((uint)(2));
- w7.XOptions = ((global::Gtk.AttachOptions)(4));
- w7.YOptions = ((global::Gtk.AttachOptions)(4));
- this.vbox2.Add (this.table1);
- global::Gtk.Box.BoxChild w8 = ((global::Gtk.Box.BoxChild)(this.vbox2 [this.table1]));
- w8.Position = 0;
- w8.Expand = false;
- w8.Fill = false;
- // Container child vbox2.Gtk.Box+BoxChild
- this.frame1 = new global::Gtk.Frame ();
- this.frame1.Name = "frame1";
- this.frame1.ShadowType = ((global::Gtk.ShadowType)(1));
- this.frame1.BorderWidth = ((uint)(2));
- // Container child frame1.Gtk.Container+ContainerChild
- this.alignment1 = new global::Gtk.Alignment (0.5F, 0.5F, 1F, 1F);
- this.alignment1.Name = "alignment1";
- this.alignment1.LeftPadding = ((uint)(4));
- this.alignment1.TopPadding = ((uint)(4));
- this.alignment1.RightPadding = ((uint)(4));
- this.alignment1.BottomPadding = ((uint)(4));
- // Container child alignment1.Gtk.Container+ContainerChild
- this.vbox4 = new global::Gtk.VBox ();
- this.vbox4.Name = "vbox4";
- this.vbox4.Spacing = 6;
- // Container child vbox4.Gtk.Box+BoxChild
- this.partialCheck = new global::Gtk.CheckButton ();
- this.partialCheck.CanFocus = true;
- this.partialCheck.Name = "partialCheck";
- this.partialCheck.Label = global::Mono.Unix.Catalog.GetString ("_Partial view");
- this.partialCheck.DrawIndicator = true;
- this.partialCheck.UseUnderline = true;
- this.vbox4.Add (this.partialCheck);
- global::Gtk.Box.BoxChild w9 = ((global::Gtk.Box.BoxChild)(this.vbox4 [this.partialCheck]));
- w9.Position = 0;
- w9.Expand = false;
- w9.Fill = false;
- // Container child vbox4.Gtk.Box+BoxChild
- this.stronglyTypedCheck = new global::Gtk.CheckButton ();
- this.stronglyTypedCheck.CanFocus = true;
- this.stronglyTypedCheck.Name = "stronglyTypedCheck";
- this.stronglyTypedCheck.Label = global::Mono.Unix.Catalog.GetString ("_Strongly typed");
- this.stronglyTypedCheck.DrawIndicator = true;
- this.stronglyTypedCheck.UseUnderline = true;
- this.vbox4.Add (this.stronglyTypedCheck);
- global::Gtk.Box.BoxChild w10 = ((global::Gtk.Box.BoxChild)(this.vbox4 [this.stronglyTypedCheck]));
- w10.Position = 1;
- w10.Expand = false;
- w10.Fill = false;
- // Container child vbox4.Gtk.Box+BoxChild
- this.typePanel = new global::Gtk.Alignment (0F, 0F, 1F, 1F);
- this.typePanel.Name = "typePanel";
- this.typePanel.LeftPadding = ((uint)(24));
- // Container child typePanel.Gtk.Container+ContainerChild
- this.hbox1 = new global::Gtk.HBox ();
- this.hbox1.Name = "hbox1";
- this.hbox1.Spacing = 6;
- // Container child hbox1.Gtk.Box+BoxChild
- this.label3 = new global::Gtk.Label ();
- this.label3.Name = "label3";
- this.label3.Xalign = 0F;
- this.label3.LabelProp = global::Mono.Unix.Catalog.GetString ("_Data class:");
- this.label3.UseUnderline = true;
- this.hbox1.Add (this.label3);
- global::Gtk.Box.BoxChild w11 = ((global::Gtk.Box.BoxChild)(this.hbox1 [this.label3]));
- w11.Position = 0;
- w11.Expand = false;
- w11.Fill = false;
- // Container child hbox1.Gtk.Box+BoxChild
- this.dataClassAlignment = new global::Gtk.Alignment (0.5F, 0.5F, 1F, 1F);
- this.dataClassAlignment.Name = "dataClassAlignment";
- // Container child dataClassAlignment.Gtk.Container+ContainerChild
- this.dataClassCombo = global::Gtk.ComboBoxEntry.NewText ();
- this.dataClassCombo.Name = "dataClassCombo";
- this.dataClassAlignment.Add (this.dataClassCombo);
- this.hbox1.Add (this.dataClassAlignment);
- global::Gtk.Box.BoxChild w13 = ((global::Gtk.Box.BoxChild)(this.hbox1 [this.dataClassAlignment]));
- w13.Position = 1;
- this.typePanel.Add (this.hbox1);
- this.vbox4.Add (this.typePanel);
- global::Gtk.Box.BoxChild w15 = ((global::Gtk.Box.BoxChild)(this.vbox4 [this.typePanel]));
- w15.Position = 2;
- w15.Fill = false;
- // Container child vbox4.Gtk.Box+BoxChild
- this.masterCheck = new global::Gtk.CheckButton ();
- this.masterCheck.CanFocus = true;
- this.masterCheck.Name = "masterCheck";
- this.masterCheck.Label = global::Mono.Unix.Catalog.GetString ("Has _master page or layout:");
- this.masterCheck.DrawIndicator = true;
- this.masterCheck.UseUnderline = true;
- this.vbox4.Add (this.masterCheck);
- global::Gtk.Box.BoxChild w16 = ((global::Gtk.Box.BoxChild)(this.vbox4 [this.masterCheck]));
- w16.Position = 3;
- w16.Expand = false;
- w16.Fill = false;
- // Container child vbox4.Gtk.Box+BoxChild
- this.masterPanel = new global::Gtk.Alignment (0F, 0F, 1F, 1F);
- this.masterPanel.Name = "masterPanel";
- this.masterPanel.LeftPadding = ((uint)(24));
- // Container child masterPanel.Gtk.Container+ContainerChild
- this.vbox3 = new global::Gtk.VBox ();
- this.vbox3.Name = "vbox3";
- this.vbox3.Spacing = 6;
- // Container child vbox3.Gtk.Box+BoxChild
- this.hbox4 = new global::Gtk.HBox ();
- this.hbox4.Name = "hbox4";
- this.hbox4.Spacing = 6;
- // Container child hbox4.Gtk.Box+BoxChild
- this.label5 = new global::Gtk.Label ();
- this.label5.Name = "label5";
- this.label5.LabelProp = global::Mono.Unix.Catalog.GetString ("_File:");
- this.label5.UseUnderline = true;
- this.hbox4.Add (this.label5);
- global::Gtk.Box.BoxChild w17 = ((global::Gtk.Box.BoxChild)(this.hbox4 [this.label5]));
- w17.Position = 0;
- w17.Expand = false;
- w17.Fill = false;
- // Container child hbox4.Gtk.Box+BoxChild
- this.masterEntry = new global::Gtk.Entry ();
- this.masterEntry.CanFocus = true;
- this.masterEntry.Name = "masterEntry";
- this.masterEntry.IsEditable = true;
- this.masterEntry.InvisibleChar = '●';
- this.hbox4.Add (this.masterEntry);
- global::Gtk.Box.BoxChild w18 = ((global::Gtk.Box.BoxChild)(this.hbox4 [this.masterEntry]));
- w18.Position = 1;
- // Container child hbox4.Gtk.Box+BoxChild
- this.masterButton = new global::Gtk.Button ();
- this.masterButton.CanFocus = true;
- this.masterButton.Name = "masterButton";
- this.masterButton.UseUnderline = true;
- this.masterButton.Label = global::Mono.Unix.Catalog.GetString ("...");
- this.hbox4.Add (this.masterButton);
- global::Gtk.Box.BoxChild w19 = ((global::Gtk.Box.BoxChild)(this.hbox4 [this.masterButton]));
- w19.Position = 2;
- w19.Expand = false;
- w19.Fill = false;
- this.vbox3.Add (this.hbox4);
- global::Gtk.Box.BoxChild w20 = ((global::Gtk.Box.BoxChild)(this.vbox3 [this.hbox4]));
- w20.Position = 0;
- w20.Expand = false;
- w20.Fill = false;
- // Container child vbox3.Gtk.Box+BoxChild
- this.placeholderBox = new global::Gtk.HBox ();
- this.placeholderBox.Name = "placeholderBox";
- this.placeholderBox.Spacing = 6;
- // Container child placeholderBox.Gtk.Box+BoxChild
- this.label2 = new global::Gtk.Label ();
- this.label2.Name = "label2";
- this.label2.LabelProp = global::Mono.Unix.Catalog.GetString ("P_rimary placeholder: ");
- this.label2.UseUnderline = true;
- this.placeholderBox.Add (this.label2);
- global::Gtk.Box.BoxChild w21 = ((global::Gtk.Box.BoxChild)(this.placeholderBox [this.label2]));
- w21.Position = 0;
- w21.Expand = false;
- w21.Fill = false;
- // Container child placeholderBox.Gtk.Box+BoxChild
- this.primaryPlaceholderCombo = global::Gtk.ComboBoxEntry.NewText ();
- this.primaryPlaceholderCombo.WidthRequest = 250;
- this.primaryPlaceholderCombo.Name = "primaryPlaceholderCombo";
- this.placeholderBox.Add (this.primaryPlaceholderCombo);
- global::Gtk.Box.BoxChild w22 = ((global::Gtk.Box.BoxChild)(this.placeholderBox [this.primaryPlaceholderCombo]));
- w22.Position = 1;
- this.vbox3.Add (this.placeholderBox);
- global::Gtk.Box.BoxChild w23 = ((global::Gtk.Box.BoxChild)(this.vbox3 [this.placeholderBox]));
- w23.Position = 1;
- w23.Expand = false;
- w23.Fill = false;
- this.masterPanel.Add (this.vbox3);
- this.vbox4.Add (this.masterPanel);
- global::Gtk.Box.BoxChild w25 = ((global::Gtk.Box.BoxChild)(this.vbox4 [this.masterPanel]));
- w25.Position = 4;
- w25.Expand = false;
- w25.Fill = false;
- this.alignment1.Add (this.vbox4);
- this.frame1.Add (this.alignment1);
- this.GtkLabel6 = new global::Gtk.Label ();
- this.GtkLabel6.Name = "GtkLabel6";
- this.GtkLabel6.LabelProp = global::Mono.Unix.Catalog.GetString ("Options");
- this.frame1.LabelWidget = this.GtkLabel6;
- this.vbox2.Add (this.frame1);
- global::Gtk.Box.BoxChild w28 = ((global::Gtk.Box.BoxChild)(this.vbox2 [this.frame1]));
- w28.Position = 1;
- w28.Expand = false;
- w28.Fill = false;
- w1.Add (this.vbox2);
- global::Gtk.Box.BoxChild w29 = ((global::Gtk.Box.BoxChild)(w1 [this.vbox2]));
- w29.Position = 0;
- w29.Expand = false;
- w29.Fill = false;
- // Internal child MonoDevelop.AspNet.Mvc.Gui.AddViewDialog.ActionArea
- global::Gtk.HButtonBox w30 = this.ActionArea;
- w30.Name = "dialog1_ActionArea";
- w30.Spacing = 6;
- w30.BorderWidth = ((uint)(5));
- w30.LayoutStyle = ((global::Gtk.ButtonBoxStyle)(4));
- // Container child dialog1_ActionArea.Gtk.ButtonBox+ButtonBoxChild
- this.buttonCancel = new global::Gtk.Button ();
- this.buttonCancel.CanDefault = true;
- this.buttonCancel.CanFocus = true;
- this.buttonCancel.Name = "buttonCancel";
- this.buttonCancel.UseStock = true;
- this.buttonCancel.UseUnderline = true;
- this.buttonCancel.Label = "gtk-cancel";
- this.AddActionWidget (this.buttonCancel, -6);
- global::Gtk.ButtonBox.ButtonBoxChild w31 = ((global::Gtk.ButtonBox.ButtonBoxChild)(w30 [this.buttonCancel]));
- w31.Expand = false;
- w31.Fill = false;
- // Container child dialog1_ActionArea.Gtk.ButtonBox+ButtonBoxChild
- this.buttonOk = new global::Gtk.Button ();
- this.buttonOk.CanDefault = true;
- this.buttonOk.CanFocus = true;
- this.buttonOk.Name = "buttonOk";
- this.buttonOk.UseStock = true;
- this.buttonOk.UseUnderline = true;
- this.buttonOk.Label = "gtk-ok";
- this.AddActionWidget (this.buttonOk, -5);
- global::Gtk.ButtonBox.ButtonBoxChild w32 = ((global::Gtk.ButtonBox.ButtonBoxChild)(w30 [this.buttonOk]));
- w32.Position = 1;
- w32.Expand = false;
- w32.Fill = false;
- if ((this.Child != null)) {
- this.Child.ShowAll ();
- }
- this.DefaultWidth = 470;
- this.DefaultHeight = 393;
- this.label1.MnemonicWidget = this.nameEntry;
- this.label4.MnemonicWidget = this.templateCombo;
- this.label6.MnemonicWidget = this.viewEngineCombo;
- this.label3.MnemonicWidget = this.dataClassCombo;
- this.label5.MnemonicWidget = this.masterEntry;
- this.Hide ();
- this.viewEngineCombo.Changed += new global::System.EventHandler (this.ViewEngineChanged);
- this.templateCombo.Changed += new global::System.EventHandler (this.Validate);
- this.nameEntry.Changed += new global::System.EventHandler (this.Validate);
- this.partialCheck.Toggled += new global::System.EventHandler (this.UpdateMasterPanelSensitivity);
- this.stronglyTypedCheck.Toggled += new global::System.EventHandler (this.UpdateTypePanelSensitivity);
- this.dataClassCombo.Changed += new global::System.EventHandler (this.DataClassChanged);
- this.masterCheck.Toggled += new global::System.EventHandler (this.UpdateMasterPanelSensitivity);
- this.masterEntry.Changed += new global::System.EventHandler (this.MasterChanged);
- this.masterButton.Clicked += new global::System.EventHandler (this.ShowMasterSelectionDialog);
- this.primaryPlaceholderCombo.Changed += new global::System.EventHandler (this.Validate);
- }
- }
-}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/gtk-gui/generated.cs b/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/gtk-gui/generated.cs
deleted file mode 100644
index 9ef3363981..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/gtk-gui/generated.cs
+++ /dev/null
@@ -1,29 +0,0 @@
-
-// This file has been generated by the GUI designer. Do not modify.
-namespace Stetic
-{
- internal class Gui
- {
- private static bool initialized;
-
- internal static void Initialize (Gtk.Widget iconRenderer)
- {
- if ((Stetic.Gui.initialized == false)) {
- Stetic.Gui.initialized = true;
- }
- }
- }
-
- internal class ActionGroups
- {
- public static Gtk.ActionGroup GetActionGroup (System.Type type)
- {
- return Stetic.ActionGroups.GetActionGroup (type.FullName);
- }
-
- public static Gtk.ActionGroup GetActionGroup (string name)
- {
- return null;
- }
- }
-}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/gtk-gui/gui.stetic b/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/gtk-gui/gui.stetic
deleted file mode 100644
index 9c7eb4001f..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/gtk-gui/gui.stetic
+++ /dev/null
@@ -1,638 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<stetic-interface>
- <configuration>
- <images-root-path>..</images-root-path>
- <target-gtk-version>2.12</target-gtk-version>
- </configuration>
- <import>
- <widget-library name="../../../../../build/AddIns/MonoDevelop.TextTemplating/MonoDevelop.TextTemplating.dll" />
- <widget-library name="../../../../../build/AddIns/MonoDevelop.DesignerSupport/MonoDevelop.DesignerSupport.dll" />
- <widget-library name="../../../../../build/bin/MonoDevelop.Ide.dll" />
- <widget-library name="../../../../../build/AddIns/MonoDevelop.AspNet/MonoDevelop.AspNet.dll" />
- <widget-library name="../../../../../build/bin/Mono.TextEditor.dll" />
- <widget-library name="../../../../../build/AddIns/MonoDevelop.AspNet.Mvc/MonoDevelop.AspNet.Mvc.dll" internal="true" />
- </import>
- <widget class="Gtk.Dialog" id="MonoDevelop.AspNet.Mvc.Gui.AddViewDialog" design-size="470 393">
- <property name="MemberName" />
- <property name="Visible">False</property>
- <property name="Title" translatable="yes">Add View</property>
- <property name="WindowPosition">CenterOnParent</property>
- <property name="BorderWidth">6</property>
- <property name="Resizable">False</property>
- <property name="AllowGrow">False</property>
- <property name="Buttons">2</property>
- <property name="HelpButton">False</property>
- <child internal-child="VBox">
- <widget class="Gtk.VBox" id="dialog1_VBox">
- <property name="MemberName" />
- <property name="BorderWidth">2</property>
- <child>
- <widget class="Gtk.VBox" id="vbox2">
- <property name="MemberName" />
- <property name="Spacing">6</property>
- <child>
- <widget class="Gtk.Table" id="table1">
- <property name="MemberName" />
- <property name="NRows">3</property>
- <property name="NColumns">2</property>
- <property name="RowSpacing">6</property>
- <property name="ColumnSpacing">6</property>
- <child>
- <widget class="Gtk.Label" id="label1">
- <property name="MemberName" />
- <property name="Xalign">0</property>
- <property name="LabelProp" translatable="yes">_Name:</property>
- <property name="UseUnderline">True</property>
- <property name="MnemonicWidget">nameEntry</property>
- </widget>
- <packing>
- <property name="AutoSize">True</property>
- <property name="XOptions">Fill</property>
- <property name="YOptions">Fill</property>
- <property name="XExpand">False</property>
- <property name="XFill">True</property>
- <property name="XShrink">False</property>
- <property name="YExpand">False</property>
- <property name="YFill">True</property>
- <property name="YShrink">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.Label" id="label4">
- <property name="MemberName" />
- <property name="Xalign">0</property>
- <property name="LabelProp" translatable="yes">_Template:</property>
- <property name="UseUnderline">True</property>
- <property name="MnemonicWidget">templateCombo</property>
- </widget>
- <packing>
- <property name="TopAttach">1</property>
- <property name="BottomAttach">2</property>
- <property name="AutoSize">True</property>
- <property name="XOptions">Fill</property>
- <property name="YOptions">Fill</property>
- <property name="XExpand">False</property>
- <property name="XFill">True</property>
- <property name="XShrink">False</property>
- <property name="YExpand">False</property>
- <property name="YFill">True</property>
- <property name="YShrink">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.Label" id="label6">
- <property name="MemberName" />
- <property name="LabelProp" translatable="yes">_View Engine:</property>
- <property name="UseUnderline">True</property>
- <property name="MnemonicWidget">viewEngineCombo</property>
- </widget>
- <packing>
- <property name="TopAttach">2</property>
- <property name="BottomAttach">3</property>
- <property name="AutoSize">True</property>
- <property name="XOptions">Fill</property>
- <property name="YOptions">Fill</property>
- <property name="XExpand">False</property>
- <property name="XFill">True</property>
- <property name="XShrink">False</property>
- <property name="YExpand">False</property>
- <property name="YFill">True</property>
- <property name="YShrink">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.Entry" id="nameEntry">
- <property name="MemberName" />
- <property name="CanFocus">True</property>
- <property name="IsEditable">True</property>
- <property name="InvisibleChar">●</property>
- <signal name="Changed" handler="Validate" />
- </widget>
- <packing>
- <property name="LeftAttach">1</property>
- <property name="RightAttach">2</property>
- <property name="AutoSize">False</property>
- <property name="YOptions">Fill</property>
- <property name="XExpand">True</property>
- <property name="XFill">True</property>
- <property name="XShrink">False</property>
- <property name="YExpand">False</property>
- <property name="YFill">True</property>
- <property name="YShrink">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.ComboBox" id="templateCombo">
- <property name="MemberName" />
- <property name="IsTextCombo">True</property>
- <property name="Items" translatable="yes" />
- <signal name="Changed" handler="Validate" />
- </widget>
- <packing>
- <property name="TopAttach">1</property>
- <property name="BottomAttach">2</property>
- <property name="LeftAttach">1</property>
- <property name="RightAttach">2</property>
- <property name="AutoSize">True</property>
- <property name="XOptions">Fill</property>
- <property name="YOptions">Fill</property>
- <property name="XExpand">False</property>
- <property name="XFill">True</property>
- <property name="XShrink">False</property>
- <property name="YExpand">False</property>
- <property name="YFill">True</property>
- <property name="YShrink">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.ComboBox" id="viewEngineCombo">
- <property name="MemberName" />
- <property name="IsTextCombo">True</property>
- <property name="Items" translatable="yes" />
- <signal name="Changed" handler="ViewEngineChanged" />
- </widget>
- <packing>
- <property name="TopAttach">2</property>
- <property name="BottomAttach">3</property>
- <property name="LeftAttach">1</property>
- <property name="RightAttach">2</property>
- <property name="AutoSize">True</property>
- <property name="XOptions">Fill</property>
- <property name="YOptions">Fill</property>
- <property name="XExpand">False</property>
- <property name="XFill">True</property>
- <property name="XShrink">False</property>
- <property name="YExpand">False</property>
- <property name="YFill">True</property>
- <property name="YShrink">False</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="Position">0</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.Frame" id="frame1">
- <property name="MemberName" />
- <property name="ShadowType">In</property>
- <property name="BorderWidth">2</property>
- <child>
- <widget class="Gtk.Alignment" id="alignment1">
- <property name="MemberName" />
- <property name="LeftPadding">4</property>
- <property name="TopPadding">4</property>
- <property name="RightPadding">4</property>
- <property name="BottomPadding">4</property>
- <child>
- <widget class="Gtk.VBox" id="vbox4">
- <property name="MemberName" />
- <property name="Spacing">6</property>
- <child>
- <widget class="Gtk.CheckButton" id="partialCheck">
- <property name="MemberName" />
- <property name="CanFocus">True</property>
- <property name="Label" translatable="yes">_Partial view</property>
- <property name="DrawIndicator">True</property>
- <property name="HasLabel">True</property>
- <property name="UseUnderline">True</property>
- <signal name="Toggled" handler="UpdateMasterPanelSensitivity" />
- </widget>
- <packing>
- <property name="Position">0</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.CheckButton" id="stronglyTypedCheck">
- <property name="MemberName" />
- <property name="CanFocus">True</property>
- <property name="Label" translatable="yes">_Strongly typed</property>
- <property name="DrawIndicator">True</property>
- <property name="HasLabel">True</property>
- <property name="UseUnderline">True</property>
- <signal name="Toggled" handler="UpdateTypePanelSensitivity" />
- </widget>
- <packing>
- <property name="Position">1</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.Alignment" id="typePanel">
- <property name="MemberName" />
- <property name="Xalign">0</property>
- <property name="Yalign">0</property>
- <property name="LeftPadding">24</property>
- <child>
- <widget class="Gtk.HBox" id="hbox1">
- <property name="MemberName" />
- <property name="Spacing">6</property>
- <child>
- <widget class="Gtk.Label" id="label3">
- <property name="MemberName" />
- <property name="Xalign">0</property>
- <property name="LabelProp" translatable="yes">_Data class:</property>
- <property name="UseUnderline">True</property>
- <property name="MnemonicWidget">dataClassCombo</property>
- </widget>
- <packing>
- <property name="Position">0</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.Alignment" id="dataClassAlignment">
- <property name="MemberName" />
- <child>
- <widget class="Gtk.ComboBoxEntry" id="dataClassCombo">
- <property name="MemberName" />
- <property name="IsTextCombo">True</property>
- <property name="Items" translatable="yes" />
- <signal name="Changed" handler="DataClassChanged" />
- </widget>
- </child>
- </widget>
- <packing>
- <property name="Position">1</property>
- <property name="AutoSize">False</property>
- </packing>
- </child>
- </widget>
- </child>
- </widget>
- <packing>
- <property name="Position">2</property>
- <property name="AutoSize">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.CheckButton" id="masterCheck">
- <property name="MemberName" />
- <property name="CanFocus">True</property>
- <property name="Label" translatable="yes">Has _master page or layout:</property>
- <property name="DrawIndicator">True</property>
- <property name="HasLabel">True</property>
- <property name="UseUnderline">True</property>
- <signal name="Toggled" handler="UpdateMasterPanelSensitivity" />
- </widget>
- <packing>
- <property name="Position">3</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.Alignment" id="masterPanel">
- <property name="MemberName" />
- <property name="Xalign">0</property>
- <property name="Yalign">0</property>
- <property name="LeftPadding">24</property>
- <child>
- <widget class="Gtk.VBox" id="vbox3">
- <property name="MemberName" />
- <property name="Spacing">6</property>
- <child>
- <widget class="Gtk.HBox" id="hbox4">
- <property name="MemberName" />
- <property name="Spacing">6</property>
- <child>
- <widget class="Gtk.Label" id="label5">
- <property name="MemberName" />
- <property name="LabelProp" translatable="yes">_File:</property>
- <property name="UseUnderline">True</property>
- <property name="MnemonicWidget">masterEntry</property>
- </widget>
- <packing>
- <property name="Position">0</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.Entry" id="masterEntry">
- <property name="MemberName" />
- <property name="CanFocus">True</property>
- <property name="IsEditable">True</property>
- <property name="InvisibleChar">●</property>
- <signal name="Changed" handler="MasterChanged" />
- </widget>
- <packing>
- <property name="Position">1</property>
- <property name="AutoSize">True</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.Button" id="masterButton">
- <property name="MemberName" />
- <property name="CanFocus">True</property>
- <property name="Type">TextOnly</property>
- <property name="Label" translatable="yes">...</property>
- <property name="UseUnderline">True</property>
- <signal name="Clicked" handler="ShowMasterSelectionDialog" />
- </widget>
- <packing>
- <property name="Position">2</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="Position">0</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.HBox" id="placeholderBox">
- <property name="MemberName" />
- <property name="Spacing">6</property>
- <child>
- <widget class="Gtk.Label" id="label2">
- <property name="MemberName" />
- <property name="LabelProp" translatable="yes">P_rimary placeholder: </property>
- <property name="UseUnderline">True</property>
- </widget>
- <packing>
- <property name="Position">0</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.ComboBoxEntry" id="primaryPlaceholderCombo">
- <property name="MemberName" />
- <property name="WidthRequest">250</property>
- <property name="IsTextCombo">True</property>
- <property name="Items" translatable="yes" />
- <signal name="Changed" handler="Validate" />
- </widget>
- <packing>
- <property name="Position">1</property>
- <property name="AutoSize">False</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="Position">1</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- </widget>
- </child>
- </widget>
- <packing>
- <property name="Position">4</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- </widget>
- </child>
- </widget>
- </child>
- <child>
- <widget class="Gtk.Label" id="GtkLabel6">
- <property name="MemberName" />
- <property name="LabelProp" translatable="yes">Options</property>
- </widget>
- <packing>
- <property name="type">label_item</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="Position">1</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="Position">0</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- </widget>
- </child>
- <child internal-child="ActionArea">
- <widget class="Gtk.HButtonBox" id="dialog1_ActionArea">
- <property name="MemberName" />
- <property name="Spacing">6</property>
- <property name="BorderWidth">5</property>
- <property name="Size">2</property>
- <property name="LayoutStyle">End</property>
- <child>
- <widget class="Gtk.Button" id="buttonCancel">
- <property name="MemberName" />
- <property name="CanDefault">True</property>
- <property name="CanFocus">True</property>
- <property name="UseStock">True</property>
- <property name="Type">StockItem</property>
- <property name="StockId">gtk-cancel</property>
- <property name="ResponseId">-6</property>
- <property name="label">gtk-cancel</property>
- </widget>
- <packing>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.Button" id="buttonOk">
- <property name="MemberName" />
- <property name="CanDefault">True</property>
- <property name="CanFocus">True</property>
- <property name="UseStock">True</property>
- <property name="Type">StockItem</property>
- <property name="StockId">gtk-ok</property>
- <property name="ResponseId">-5</property>
- <property name="label">gtk-ok</property>
- </widget>
- <packing>
- <property name="Position">1</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- </widget>
- </child>
- </widget>
- <widget class="Gtk.Dialog" id="MonoDevelop.AspNet.Mvc.Gui.AddControllerDialog" design-size="400 157">
- <property name="MemberName" />
- <property name="Title" translatable="yes">Add Controller</property>
- <property name="WindowPosition">CenterOnParent</property>
- <property name="Buttons">2</property>
- <property name="HelpButton">False</property>
- <child internal-child="VBox">
- <widget class="Gtk.VBox" id="dialog1_VBox">
- <property name="MemberName" />
- <property name="Spacing">6</property>
- <property name="BorderWidth">6</property>
- <child>
- <widget class="Gtk.Table" id="table1">
- <property name="MemberName" />
- <property name="NRows">2</property>
- <property name="NColumns">2</property>
- <property name="RowSpacing">6</property>
- <property name="ColumnSpacing">6</property>
- <child>
- <widget class="Gtk.Label" id="label1">
- <property name="MemberName" />
- <property name="Xalign">0</property>
- <property name="LabelProp" translatable="yes">_Name:</property>
- <property name="UseUnderline">True</property>
- <property name="MnemonicWidget">nameEntry</property>
- </widget>
- <packing>
- <property name="AutoSize">True</property>
- <property name="XOptions">Fill</property>
- <property name="YOptions">Fill</property>
- <property name="XExpand">False</property>
- <property name="XFill">True</property>
- <property name="XShrink">False</property>
- <property name="YExpand">False</property>
- <property name="YFill">True</property>
- <property name="YShrink">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.Label" id="label2">
- <property name="MemberName" />
- <property name="Xalign">0</property>
- <property name="LabelProp" translatable="yes">_Template:</property>
- <property name="UseUnderline">True</property>
- <property name="MnemonicWidget">templateCombo</property>
- </widget>
- <packing>
- <property name="TopAttach">1</property>
- <property name="BottomAttach">2</property>
- <property name="AutoSize">True</property>
- <property name="XOptions">Fill</property>
- <property name="YOptions">Fill</property>
- <property name="XExpand">False</property>
- <property name="XFill">True</property>
- <property name="XShrink">False</property>
- <property name="YExpand">False</property>
- <property name="YFill">True</property>
- <property name="YShrink">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.Entry" id="nameEntry">
- <property name="MemberName" />
- <property name="CanFocus">True</property>
- <property name="IsEditable">True</property>
- <property name="InvisibleChar">●</property>
- <signal name="Changed" handler="Validate" />
- </widget>
- <packing>
- <property name="LeftAttach">1</property>
- <property name="RightAttach">2</property>
- <property name="AutoSize">False</property>
- <property name="YOptions">Fill</property>
- <property name="XExpand">True</property>
- <property name="XFill">True</property>
- <property name="XShrink">False</property>
- <property name="YExpand">False</property>
- <property name="YFill">True</property>
- <property name="YShrink">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.ComboBox" id="templateCombo">
- <property name="MemberName" />
- <property name="IsTextCombo">True</property>
- <property name="Items" translatable="yes" />
- </widget>
- <packing>
- <property name="TopAttach">1</property>
- <property name="BottomAttach">2</property>
- <property name="LeftAttach">1</property>
- <property name="RightAttach">2</property>
- <property name="AutoSize">False</property>
- <property name="YOptions">Fill</property>
- <property name="XExpand">True</property>
- <property name="XFill">True</property>
- <property name="XShrink">False</property>
- <property name="YExpand">False</property>
- <property name="YFill">True</property>
- <property name="YShrink">False</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="Position">0</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- </widget>
- </child>
- <child internal-child="ActionArea">
- <widget class="Gtk.HButtonBox" id="dialog1_ActionArea">
- <property name="MemberName" />
- <property name="Spacing">10</property>
- <property name="BorderWidth">5</property>
- <property name="Size">2</property>
- <property name="LayoutStyle">End</property>
- <child>
- <widget class="Gtk.Button" id="buttonCancel">
- <property name="MemberName" />
- <property name="CanDefault">True</property>
- <property name="CanFocus">True</property>
- <property name="UseStock">True</property>
- <property name="Type">StockItem</property>
- <property name="StockId">gtk-cancel</property>
- <property name="ResponseId">-6</property>
- <property name="label">gtk-cancel</property>
- </widget>
- <packing>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.Button" id="buttonOk">
- <property name="MemberName" />
- <property name="CanDefault">True</property>
- <property name="CanFocus">True</property>
- <property name="UseStock">True</property>
- <property name="Type">StockItem</property>
- <property name="StockId">gtk-ok</property>
- <property name="ResponseId">-5</property>
- <property name="label">gtk-ok</property>
- </widget>
- <packing>
- <property name="Position">1</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- </widget>
- </child>
- </widget>
-</stetic-interface> \ No newline at end of file
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/lib/System.Web.Mvc.dll b/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/lib/System.Web.Mvc.dll
deleted file mode 100755
index f05ae7c9bc..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/lib/System.Web.Mvc.dll
+++ /dev/null
Binary files differ
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/lib/System.Web.Razor.dll b/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/lib/System.Web.Razor.dll
deleted file mode 100755
index 59058c5346..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/lib/System.Web.Razor.dll
+++ /dev/null
Binary files differ
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/lib/System.Web.WebPages.Razor.dll b/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/lib/System.Web.WebPages.Razor.dll
deleted file mode 100755
index 0772e6e8b6..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/lib/System.Web.WebPages.Razor.dll
+++ /dev/null
Binary files differ
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/lib/System.Web.WebPages.dll b/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/lib/System.Web.WebPages.dll
deleted file mode 100755
index cb749797c1..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/lib/System.Web.WebPages.dll
+++ /dev/null
Binary files differ
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/lib/md-aspnet.snk b/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/lib/md-aspnet.snk
deleted file mode 100644
index be6bf28179..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/lib/md-aspnet.snk
+++ /dev/null
Binary files differ
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.csproj b/main/src/addins/AspNet/MonoDevelop.AspNet.csproj
new file mode 100644
index 0000000000..26e3e80662
--- /dev/null
+++ b/main/src/addins/AspNet/MonoDevelop.AspNet.csproj
@@ -0,0 +1,499 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
+ <PropertyGroup>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <ProductVersion>8.0.30703</ProductVersion>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{1CF94D07-5480-4D10-A3CD-2EBD5E87B02E}</ProjectGuid>
+ <OutputType>Library</OutputType>
+ <AssemblyName>MonoDevelop.AspNet</AssemblyName>
+ <RootNamespace>MonoDevelop.AspNet</RootNamespace>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ <DebugSymbols>True</DebugSymbols>
+ <DebugType>full</DebugType>
+ <Optimize>false</Optimize>
+ <OutputPath>..\..\..\build\AddIns\AspNet</OutputPath>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ <Execution>
+ <Execution clr-version="Net_2_0" />
+ </Execution>
+ <DefineConstants>DEBUG</DefineConstants>
+ <NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\AddIns\AspNet\MonoDevelop.AspNet.xml</DocumentationFile>
+ <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ <DebugType>pdbonly</DebugType>
+ <Optimize>True</Optimize>
+ <OutputPath>..\..\..\build\AddIns\AspNet</OutputPath>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ <Execution>
+ <Execution clr-version="Net_2_0" />
+ </Execution>
+ <DebugSymbols>true</DebugSymbols>
+ <NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\AddIns\AspNet\MonoDevelop.AspNet.xml</DocumentationFile>
+ <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
+ </PropertyGroup>
+ <ItemGroup>
+ <ProjectReference Include="..\..\core\MonoDevelop.Ide\MonoDevelop.Ide.csproj">
+ <Project>{27096E7F-C91C-4AC6-B289-6897A701DF21}</Project>
+ <Name>MonoDevelop.Ide</Name>
+ <Private>False</Private>
+ </ProjectReference>
+ <ProjectReference Include="..\..\core\MonoDevelop.Core\MonoDevelop.Core.csproj">
+ <Project>{7525BB88-6142-4A26-93B9-A30C6983390A}</Project>
+ <Name>MonoDevelop.Core</Name>
+ <Private>False</Private>
+ </ProjectReference>
+ <ProjectReference Include="..\MonoDevelop.DesignerSupport\MonoDevelop.DesignerSupport.csproj">
+ <Project>{2C24D515-4A2C-445C-8419-C09231913CFA}</Project>
+ <Name>MonoDevelop.DesignerSupport</Name>
+ <Private>False</Private>
+ </ProjectReference>
+ <ProjectReference Include="..\..\core\Mono.Texteditor\Mono.TextEditor.csproj">
+ <Project>{A2329308-3751-4DBD-9A75-5F7B8B024625}</Project>
+ <Name>Mono.TextEditor</Name>
+ <Private>False</Private>
+ </ProjectReference>
+ <ProjectReference Include="..\MonoDevelop.Refactoring\MonoDevelop.Refactoring.csproj">
+ <Project>{100568FC-F4E8-439B-94AD-41D11724E45B}</Project>
+ <Name>MonoDevelop.Refactoring</Name>
+ <Private>False</Private>
+ </ProjectReference>
+ <ProjectReference Include="..\MonoDevelop.SourceEditor2\MonoDevelop.SourceEditor.csproj">
+ <Project>{F8F92AA4-A376-4679-A9D4-60E7B7FBF477}</Project>
+ <Name>MonoDevelop.SourceEditor</Name>
+ <Private>False</Private>
+ </ProjectReference>
+ <ProjectReference Include="..\..\..\external\nrefactory\ICSharpCode.NRefactory\ICSharpCode.NRefactory.csproj">
+ <Project>{3B2A5653-EC97-4001-BB9B-D90F1AF2C371}</Project>
+ <Name>ICSharpCode.NRefactory</Name>
+ <Private>False</Private>
+ </ProjectReference>
+ <ProjectReference Include="..\..\..\external\nrefactory\ICSharpCode.NRefactory.CSharp\ICSharpCode.NRefactory.CSharp.csproj">
+ <Project>{53DCA265-3C3C-42F9-B647-F72BA678122B}</Project>
+ <Name>ICSharpCode.NRefactory.CSharp</Name>
+ <Private>False</Private>
+ </ProjectReference>
+ <ProjectReference Include="..\MonoDevelop.Debugger\MonoDevelop.Debugger.csproj">
+ <Project>{2357AABD-08C7-4808-A495-8FF2D3CDFDB0}</Project>
+ <Name>MonoDevelop.Debugger</Name>
+ <Private>False</Private>
+ </ProjectReference>
+ <ProjectReference Include="..\..\..\external\mono-addins\Mono.Addins\Mono.Addins.csproj">
+ <Project>{91DD5A2D-9FE3-4C3C-9253-876141874DAD}</Project>
+ <Name>Mono.Addins</Name>
+ <Private>False</Private>
+ </ProjectReference>
+ <ProjectReference Include="..\..\..\external\debugger-libs\Mono.Debugging\Mono.Debugging.csproj">
+ <Project>{90C99ADB-7D4B-4EB4-98C2-40BD1B14C7D2}</Project>
+ <Name>Mono.Debugging</Name>
+ <Private>False</Private>
+ </ProjectReference>
+ <ProjectReference Include="..\..\..\external\xwt\Xwt\Xwt.csproj">
+ <Project>{92494904-35FA-4DC9-BDE9-3A3E87AC49D3}</Project>
+ <Name>Xwt</Name>
+ <Private>False</Private>
+ </ProjectReference>
+ <ProjectReference Include="..\TextTemplating\MonoDevelop.TextTemplating\MonoDevelop.TextTemplating.csproj">
+ <Project>{8CCA39DD-8412-4547-BE7F-0C3D3ACC6FAC}</Project>
+ <Name>MonoDevelop.TextTemplating</Name>
+ <Private>False</Private>
+ </ProjectReference>
+ <ProjectReference Include="..\TextTemplating\Mono.TextTemplating\Mono.TextTemplating.csproj">
+ <Project>{A2364D6A-00EF-417C-80A6-815726C70032}</Project>
+ <Name>Mono.TextTemplating</Name>
+ <Private>False</Private>
+ </ProjectReference>
+ <Reference Include="System.Web.Razor">
+ <HintPath>..\..\..\packages\Microsoft.AspNet.Razor.2.0.30506.0\lib\net40\System.Web.Razor.dll</HintPath>
+ </Reference>
+ <Reference Include="System.Web.Helpers">
+ <HintPath>..\..\..\packages\Microsoft.AspNet.WebPages.2.0.30506.0\lib\net40\System.Web.Helpers.dll</HintPath>
+ </Reference>
+ <Reference Include="System.Web.WebPages.Deployment">
+ <HintPath>..\..\..\packages\Microsoft.AspNet.WebPages.2.0.30506.0\lib\net40\System.Web.WebPages.Deployment.dll</HintPath>
+ </Reference>
+ <Reference Include="System.Web.WebPages">
+ <HintPath>..\..\..\packages\Microsoft.AspNet.WebPages.2.0.30506.0\lib\net40\System.Web.WebPages.dll</HintPath>
+ </Reference>
+ <Reference Include="System.Web.WebPages.Razor">
+ <HintPath>..\..\..\packages\Microsoft.AspNet.WebPages.2.0.30506.0\lib\net40\System.Web.WebPages.Razor.dll</HintPath>
+ </Reference>
+ <Reference Include="System.Web.Mvc">
+ <HintPath>..\..\..\packages\Microsoft.AspNet.Mvc.4.0.30506.0\lib\net40\System.Web.Mvc.dll</HintPath>
+ </Reference>
+ <ProjectReference Include="..\Xml\MonoDevelop.Xml.csproj">
+ <Project>{86DFC74A-B0B6-4C73-9E05-9098DA8FA5F1}</Project>
+ <Name>MonoDevelop.Xml</Name>
+ <Private>False</Private>
+ </ProjectReference>
+ </ItemGroup>
+ <ItemGroup>
+ <Reference Include="System" />
+ <Reference Include="System.Xml" />
+ <Reference Include="System.Web" />
+ <Reference Include="System.Drawing.Design" />
+ <Reference Include="System.Design" />
+ <Reference Include="System.Drawing" />
+ <Reference Include="System.Configuration" />
+ <Reference Include="System.Core" />
+ <Reference Include="glib-sharp, Version=2.12.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f">
+ <SpecificVersion>False</SpecificVersion>
+ </Reference>
+ <Reference Include="pango-sharp, Version=2.12.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f">
+ <SpecificVersion>False</SpecificVersion>
+ </Reference>
+ <Reference Include="atk-sharp, Version=2.12.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f">
+ <SpecificVersion>False</SpecificVersion>
+ </Reference>
+ <Reference Include="gdk-sharp, Version=2.12.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f">
+ <SpecificVersion>False</SpecificVersion>
+ </Reference>
+ <Reference Include="gtk-sharp, Version=2.12.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f">
+ <SpecificVersion>False</SpecificVersion>
+ </Reference>
+ <Reference Include="System.Xml.Linq" />
+ <Reference Include="Mono.Posix" />
+ <Reference Include="System.ServiceModel" />
+ <Reference Include="System.Runtime.Serialization" />
+ </ItemGroup>
+ <ItemGroup>
+ <EmbeddedResource Include="Properties\MonoDevelop.AspNet.addin.xml">
+ <LogicalName>MonoDevelop.AspNet.addin.xml</LogicalName>
+ </EmbeddedResource>
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="Html\HtmlSchemaService.cs" />
+ <Compile Include="Html\HtmlSchema.cs" />
+ <Compile Include="Html\DocTypeExtensionNode.cs" />
+ <Compile Include="Html\DocTypeCompletionData.cs" />
+ <Compile Include="Html\HtmlParser.cs" />
+ <Compile Include="Html\ElementTypes.cs" />
+ <Compile Include="Razor\Parser\RazorSymbols.cs" />
+ <Compile Include="Razor\Parser\RazorUtils.cs" />
+ <Compile Include="Razor\RazorSyntaxMode.cs" />
+ <Compile Include="Razor\RazorCSharpFormatter.cs" />
+ <Compile Include="Razor\EditorParserFixed\BackgroundParser.cs" />
+ <Compile Include="Razor\EditorParserFixed\CommonResources.Designer.cs" />
+ <Compile Include="Razor\EditorParserFixed\DisposableAction.cs" />
+ <Compile Include="Razor\EditorParserFixed\RazorEditorParser.cs" />
+ <Compile Include="Razor\EditorParserFixed\RazorEditorTrace.cs" />
+ <Compile Include="Razor\EditorParserFixed\RazorResources.Designer.cs" />
+ <Compile Include="Projects\AspMvcProject.cs" />
+ <Compile Include="Projects\AspMvcProjectConfiguration.cs" />
+ <Compile Include="Projects\AspNetAppProject.cs" />
+ <Compile Include="Projects\AspNetAppProjectBinding.cs" />
+ <Compile Include="Projects\AspNetAppProjectConfiguration.cs" />
+ <Compile Include="Projects\AspNetMSBuildImportProvider.cs" />
+ <Compile Include="WebForms\MasterContentFileDescriptionTemplate.cs" />
+ <Compile Include="Properties\AssemblyInfo.cs" />
+ <Compile Include="Properties\AddinInfo.cs" />
+ <Compile Include="WebForms\ILanguageCompletionBuilder.cs" />
+ <Compile Include="Html\HtmlEditorExtension.cs" />
+ <Compile Include="Html\Parser\HtmlClosingTagState.cs" />
+ <Compile Include="Html\Parser\HtmlScriptBodyState.cs" />
+ <Compile Include="Html\Parser\HtmlTagState.cs" />
+ <Compile Include="Projects\MvcTextTemplateHost.cs" />
+ <Compile Include="Html\BaseHtmlEditorExtension.cs" />
+ <Compile Include="Razor\Parser\RazorCodeBlockState.cs" />
+ <Compile Include="Razor\Parser\RazorCodeFragmentState.cs" />
+ <Compile Include="Razor\Parser\RazorCommentState.cs" />
+ <Compile Include="Razor\Parser\RazorDirectiveState.cs" />
+ <Compile Include="Razor\Parser\RazorExpressionState.cs" />
+ <Compile Include="Razor\Parser\RazorSpeculativeState.cs" />
+ <Compile Include="Razor\Parser\RazorState.cs" />
+ <Compile Include="Razor\Parser\RazorStatementState.cs" />
+ <Compile Include="Razor\Parser\StateEngineService.cs" />
+ <Compile Include="Razor\IRazorCompletionBuilder.cs" />
+ <Compile Include="Razor\RazorCompletion.cs" />
+ <Compile Include="Razor\RazorCSharpEditorExtension.cs" />
+ <Compile Include="Projects\WebSubtype.cs" />
+ <Compile Include="Execution\AspNetExecutionCommand.cs" />
+ <Compile Include="Execution\AspNetExecutionHandler.cs" />
+ <Compile Include="Execution\LineInterceptingTextWriter.cs" />
+ <Compile Include="Execution\XspParameters.cs" />
+ <Compile Include="Execution\BrowserLauncher.cs" />
+ <Compile Include="Execution\XspOptionsPanel.cs" />
+ <Compile Include="Execution\XspOptionsPanelWidget.cs" />
+ <Compile Include="Execution\XspBrowserLauncherConsole.cs" />
+ <Compile Include="Html\HtmlPathCompletion.cs" />
+ <Compile Include="WebForms\WebFormsEditorExtension.cs" />
+ <Compile Include="WebForms\WebFormsSyntaxMode.cs" />
+ <Compile Include="WebForms\WebFormsToolboxLoader.cs" />
+ <Compile Include="WebForms\WebFormsToolboxNode.cs" />
+ <Compile Include="WebForms\WebFormsMemberListBuilder.cs" />
+ <Compile Include="WebForms\WebFormsRegistrationCache.cs" />
+ <Compile Include="WebForms\WebFormsToolboxProvider.cs" />
+ <Compile Include="WebForms\WebFormsCodeBehind.cs" />
+ <Compile Include="WebForms\WebFormsCodeBehindTypeNameCache.cs" />
+ <Compile Include="WebForms\Parser\WebFormsAttributeValueState.cs" />
+ <Compile Include="WebForms\Parser\WebFormsServerCommentState.cs" />
+ <Compile Include="WebForms\Parser\WebFormsDirectiveState.cs" />
+ <Compile Include="WebForms\Parser\WebFormsDirectiveAttributeState.cs" />
+ <Compile Include="WebForms\Parser\WebFormsExpressionState.cs" />
+ <Compile Include="WebForms\Dom\WebFormsDirective.cs" />
+ <Compile Include="WebForms\Dom\WebFormsExpression.cs" />
+ <Compile Include="WebForms\Dom\WebFormsRenderExpression.cs" />
+ <Compile Include="WebForms\Dom\WebFormsHtmlEncodedExpression.cs" />
+ <Compile Include="WebForms\Dom\WebFormsBindingExpression.cs" />
+ <Compile Include="WebForms\Dom\WebFormsResourceExpression.cs" />
+ <Compile Include="WebForms\Dom\WebFormsServerComment.cs" />
+ <Compile Include="WebForms\Dom\WebFormsDomExtensions.cs" />
+ <Compile Include="WebForms\Dom\WebFormsRenderBlock.cs" />
+ <Compile Include="Razor\Dom\RazorComment.cs" />
+ <Compile Include="Razor\Dom\RazorCodeFragment.cs" />
+ <Compile Include="Razor\Dom\RazorCodeBlock.cs" />
+ <Compile Include="Razor\Dom\RazorDirective.cs" />
+ <Compile Include="Razor\Dom\RazorStatement.cs" />
+ <Compile Include="Razor\Dom\RazorImplicitExpression.cs" />
+ <Compile Include="Razor\Dom\RazorExplicitExpression.cs" />
+ <Compile Include="Razor\Dom\RazorExpression.cs" />
+ <Compile Include="WebForms\WebFormsDirectiveCompletion.cs" />
+ <Compile Include="Razor\Parser\RazorOutlineNode.cs" />
+ <Compile Include="Commands\AddControllerDialog.cs" />
+ <Compile Include="Commands\AddViewDialog.cs" />
+ <Compile Include="Commands\AspNetCommands.cs" />
+ <Compile Include="Commands\GoToViewCommandHandler.cs" />
+ <Compile Include="Commands\AddViewFromControllerCommandHandler.cs" />
+ <Compile Include="Commands\GoToControllerCommandHandler.cs" />
+ <Compile Include="Commands\MvcCommandsCommonHandler.cs" />
+ <Compile Include="ProjectPad\AspNetFolderNodeBuilderExtension.cs" />
+ <Compile Include="ProjectPad\AspNetFolderNodeCommandHandler.cs" />
+ <Compile Include="ProjectPad\AspNetProjectNodeBuilderExtension.cs" />
+ <Compile Include="ProjectPad\AspNetProjectNodeCommandHandler.cs" />
+ <Compile Include="Razor\Generator\FileUtil.cs" />
+ <Compile Include="Razor\Generator\MarkupRewriter.cs" />
+ <Compile Include="Razor\Generator\PreprocessedAttributeBlockCodeGenerator.cs" />
+ <Compile Include="Razor\Generator\PreprocessedAttributeRewriter.cs" />
+ <Compile Include="Razor\Generator\PreprocessedCSharpRazorCodeParser.cs" />
+ <Compile Include="Razor\Generator\PreprocessedDynamicAttributeBlockCodeGenerator.cs" />
+ <Compile Include="Razor\Generator\PreprocessedLiteralAttributeCodeGenerator.cs" />
+ <Compile Include="Razor\Generator\PreprocessedRazorHost.cs" />
+ <Compile Include="Razor\Generator\PreprocessedTemplateCodeTransformer.cs" />
+ <Compile Include="Razor\Generator\RazorTemplatePreprocessor.cs" />
+ <Compile Include="Razor\Generator\RazorWriterHelper.cs" />
+ <Compile Include="Razor\Generator\RewritingRazorTemplateEngine.cs" />
+ <Compile Include="Projects\AspNetMvcFileTemplateCondition.cs" />
+ <Compile Include="WebForms\WebFormsParser.cs" />
+ <Compile Include="WebForms\WebFormsParsedDocument.cs" />
+ <Compile Include="WebForms\WebFormsPageInfo.cs" />
+ <Compile Include="WebForms\SuggestedHandlerCompletionData.cs" />
+ <Compile Include="Razor\Parser\RazorRootState.cs" />
+ <Compile Include="WebForms\Parser\WebFormsRootState.cs" />
+ <Compile Include="Razor\RazorCSharpParser.cs" />
+ <Compile Include="Razor\RazorCSharpParsedDocument.cs" />
+ <Compile Include="Razor\RazorPageInfo.cs" />
+ <Compile Include="WebForms\WebFormsTypeContext.cs" />
+ </ItemGroup>
+ <ItemGroup>
+ <None Include="Makefile.am" />
+ <None Include="packages.config" />
+ <None Include="Razor\Razor-templates.xml">
+ <SubType>Designer</SubType>
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="CodeTemplates\CSharp\AddController\ControllerWithEmptyReadAndWriteActions.tt">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="CodeTemplates\CSharp\AddController\Empty.tt">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="CodeTemplates\CSharp\AddView\Aspx\Empty.tt">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="CodeTemplates\CSharp\AddView\Razor\Empty.tt">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="Templates\Mvc\Controller.xft.xml">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="Templates\Mvc\GlobalAsax.xft.xml">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="Templates\Mvc\LayoutPage.xft.xml">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="Templates\Mvc\PartialViewPageRazor.xft.xml">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="Templates\Mvc\UserControl.xft.xml">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="Templates\Mvc\ViewContentPage.xft.xml">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="Templates\Mvc\ViewMasterPage.xft.xml">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="Templates\Mvc\ViewPage.xft.xml">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="Templates\Mvc\ViewPageRazor.xft.xml">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="Templates\Mvc\WebConfigApp.xft.xml">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="Templates\Mvc\WebConfigViews.xft.xml">
+ <SubType>Designer</SubType>
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="Templates\WebConfig-Application.xft.xml">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="Templates\WebConfig-SubDir.xft.xml">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="Templates\WebForms\GlobalAsax-Empty.xft.xml">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="Templates\WebForms\GlobalAsax-CodeBehind.xft.xml">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="Templates\WebForms\MasterPage-CodeBehind.xft.xml">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="Templates\WebForms\MasterPage-Empty.xft.xml">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="Templates\WebForms\NestedMasterPage.xft.xml">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="Templates\WebForms\WebContentForm.xft.xml">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="Templates\WebForms\WebControl-Empty.xft.xml">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="Templates\WebForms\WebForm-CodeBehind.xft.xml">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="Templates\WebForms\NestedMasterPage-CodeBehind.xft.xml">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="Templates\WebForms\WebControl-CodeBehind.xft.xml">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="Templates\WebForms\WebForm-Empty.xft.xml">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="Templates\WebForms\WebHandler-CodeBehind.xft.xml">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="Templates\WebForms\WebService-Empty.xft.xml">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="Templates\WebForms\WebService-CodeBehind.xft.xml">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="Templates\WebForms\WebHandler-Empty.xft.xml">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="Templates\WebForms\WebContentForm-CodeBehind.xft.xml">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="Templates\PreprocessedRazorTemplate.xft.xml">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="Templates\MvcCommon\_Layout.cshtml">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="Templates\MvcCommon\_ViewStart.cshtml">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="Templates\MvcCommon\Error.cshtml">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="Templates\MvcCommon\HomeController.cs">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="Templates\MvcCommon\HomeControllerTest.cs">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="Templates\MvcCommon\Index.cshtml">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="Templates\MvcCommon\ViewPageRazor.cshtml">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="Templates\Projects\MvcProjectWithUnitTest.xpt.xml">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="Templates\Projects\MvcProject.xpt.xml">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="Templates\Projects\EmptyProject.xpt.xml">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="Templates\Projects\EmptyMvcProject.xpt.xml">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="Templates\Projects\MvcRazorProject.xpt.xml">
+ <SubType>Designer</SubType>
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="Templates\Projects\MvcRazorProjectWithUnitTest.xpt.xml">
+ <SubType>Designer</SubType>
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ <None Include="Templates\Projects\WebApplication.xpt.xml">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </None>
+ </ItemGroup>
+ <ItemGroup>
+ <Content Include="Html\Schemas\readme.txt">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="Html\Schemas\W3C-License.html">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="Html\Schemas\xhtml1-frameset.xsd">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="Html\Schemas\xhtml1-strict.xsd">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ <Content Include="Html\Schemas\xhtml1-transitional.xsd">
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
+ </Content>
+ </ItemGroup>
+ <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
+ <ProjectExtensions>
+ <MonoDevelop>
+ <Properties>
+ <Policies>
+ <DotNetNamingPolicy DirectoryNamespaceAssociation="PrefixedHierarchical" ResourceNamePolicy="FileName" />
+ </Policies>
+ </Properties>
+ </MonoDevelop>
+ </ProjectExtensions>
+ <ItemGroup>
+ <Folder Include="WebForms\" />
+ <Folder Include="Razor\" />
+ <Folder Include="Templates\WebForms\" />
+ <Folder Include="Projects\" />
+ <Folder Include="Properties\" />
+ <Folder Include="Html\Parser\" />
+ <Folder Include="Html\Schemas\" />
+ <Folder Include="Execution\" />
+ <Folder Include="WebForms\Dom\" />
+ <Folder Include="Razor\Dom\" />
+ <Folder Include="Commands\" />
+ <Folder Include="ProjectPad\" />
+ <Folder Include="Templates\Projects\" />
+ </ItemGroup>
+ <Target Name="BeforeBuild">
+ <PropertyGroup>
+ <NuGet>..\..\..\external\nuget-binary\NuGet.exe</NuGet>
+ <NuGet Condition="$(OS)=='Unix'">mono $(NuGet)</NuGet>
+ <SlnDir>..\..\..</SlnDir>
+ </PropertyGroup>
+ <Exec Command="$(NuGet) restore -SolutionDirectory $(SlnDir)" />
+ </Target>
+</Project>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/ChangeLog b/main/src/addins/AspNet/MonoDevelop.AspNet/ChangeLog
deleted file mode 100644
index 4b94c7347a..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/ChangeLog
+++ /dev/null
@@ -1,3359 +0,0 @@
-2010-07-21 Mike Krüger <mkrueger@novell.com>
-
- * Makefile.am:
- * MonoDevelop.AspNet.csproj:
- * MonoDevelop.AspNet/WebTypeManager.cs:
- * MonoDevelop.AspNet/AspNetAppProject.cs: Track API changes.
-
-2010-07-21 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.AspNet/AspNetSyntaxMode.cs: Track API changes.
-
-2010-07-18 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.AspNet/AspNetToolboxNode.cs:
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Track API
- changes.-
-
-2010-07-18 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.AspNet/AspNetToolboxNode.cs:
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs:
- * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Use
- TextEditorData infrastructure.
-
-2010-07-18 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.AspNet.Gui/HtmlEditorExtension.cs:
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Track API
- changes.
-
-2010-07-17 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.AspNet/AspNetSyntaxMode.cs: Track API changes.
-
-2010-07-17 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.AspNet/AspNetSyntaxMode.cs: Changed
- highlighting.
-
-2010-07-16 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.AspNet/AspNetSyntaxMode.cs: Track API changes.
-
-2010-07-15 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Fixed 'Bug
- 621658 - Parameter hints disappear afterkeystroke'.
-
-2010-07-15 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs:
- * MonoDevelop.AspNet.Gui/ILanguageCompletionBuilder.cs: Worked
- on 'Bug 621658 - Parameter hints disappear afterkeystroke'.
-
-2010-07-13 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetSyntaxMode.cs: Added styles for
- templated regions in files, e.g. ASP.NET and T4.
-
-2010-07-12 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Html/HtmlParser.cs:
- * MonoDevelop.AspNet/CodeBehind.cs:
- * MonoDevelop.AspNet/AspNetAppProject.cs:
- * MonoDevelop.AspNet.Parser/AspNetParser.cs:
- * MonoDevelop.AspNet/AspNetParserService.cs:
- * MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs: Track
- ProjectDomService/Parser API.
-
- * MonoDevelop.AspNet.addin.xml: Track ProjectDomService/Parser
- API. Also, treat spark files as html.
-
-2010-07-11 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspProjectDom.cs: Workaround for gmcs
- bug.
-
-2010-06-16 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.AspNet/AspNetSyntaxMode.cs: Fixed 'Bug 611859 -
- aspx highlighting issues'.
-
-2010-06-14 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.AspNet/AspNetExecutionHandler.cs: Track api
- changes.
-
-2010-06-07 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetFileDescriptionTemplate.cs: Track
- SingleFileDescription template API.
-
-2010-06-04 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.AspNet/AspNetSyntaxMode.cs: Fixed 'Bug 611558 -
- Phantom text in editor after typing </script>'.
-
-2010-06-04 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Partial
- support for HTML encoded expressions and script blocks.
-
-2010-06-04 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.StateEngine/AspNetDom.cs:
- * MonoDevelop.AspNet.StateEngine/AspNetExpressionState.cs: Add
- support for HTML encoded expressions in the state engine.
-
- * MonoDevelop.AspNet.StateEngine/HtmlTagState.cs:
- * MonoDevelop.AspNet.StateEngine/HtmlScriptBodyState.cs:
- Support for HTML script blocks.
-
- * Makefile.am:
- * MonoDevelop.AspNet.csproj: Added file to project.
-
-2010-06-02 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs:
- * MonoDevelop.AspNet.Gui/ILanguageCompletionBuilder.cs: Worked
- on ASP.NET completion.
-
-2010-05-31 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.AspNet.csproj: Don't require a specific M.A
- version.
-
-2010-05-30 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/CodeBehind.cs: Moved duplicate field
- elimination code into re-usable method.
-
- * MonoDevelop.AspNet.Gui/AspProjectDom.cs:
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs:
- * MonoDevelop.AspNet.Gui/ILanguageCompletionBuilder.cs: Added
- support for CodeBeside members in embedded completion.
-
- * MonoDevelop.AspNet.Parser/MemberListVisitor.cs: Collect
- locations of items.
-
-2010-05-29 Michael Hutchinson <mhutchinson@novell.com>
-
- * Makefile.am:
- * MonoDevelop.AspNet.csproj:
- * MonoDevelop.AspNet/AspNetAppProject.cs:
- * MonoDevelop.AspNet/RegistrationCache.cs:
- * MonoDevelop.AspNet/ProjectRegisteredControls.cs: Change the
- file info caches so that they don't constantly stat the
- disk. Instead, they use the project file events to flush
- items.
-
-2010-05-29 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/ProjectRegisteredControls.cs: Fix control
- registration.
-
- * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Use
- directory for config search, not filename.
-
-2010-05-28 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProject.cs: Get the web.config
- name from the project. Fixes Bug 610066 - Adding a reference
- to an ASP.NET MVC project causes Web.config to be renamed
- "web.config".
-
-
-2010-05-28 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Parser/PageInfo.cs: More granular version
- of the NRE fix.
-
-2010-05-28 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Parser/PageInfo.cs: Fix an NRE.
-
-2010-05-28 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/WebTypeManager.cs: Cache ProjectDoms.
-
-2010-05-28 Michael Hutchinson <mhutchinson@novell.com>
-
- * Makefile.am:
- * MonoDevelop.AspNet.csproj: Added AspProjectDom to project.
-
- * MonoDevelop.AspNet.Gui/ILanguageCompletionBuilder.cs:
- DocumentInfo now contains the usings, ProjectDoms, script
- region list, class name, base type.
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Only
- rebuild the DocumentInfo when we get a new
- AspNetParsedDocument, not on every keystroke. Track APIs.
-
- * MonoDevelop.AspNet.Gui/AspProjectDom.cs: Moved from
- DomWrapper in AspNetCompletion.cs.
-
- * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Added
- APIs for getting the usings and ProjectDoms for the
- document.
-
-2010-05-28 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProject.cs: Missed a file in
- previous commit.
-
-2010-05-28 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs:
- * MonoDevelop.AspNet.Gui/ILanguageCompletionBuilder.cs: Pass
- the full list of usings to the ILanguageCompletionBuilder.
-
- * MonoDevelop.AspNet/WebTypeManager.cs:
- * MonoDevelop.AspNet/ProjectRegisteredControls.cs:
- Registration cache now tracks imports and assembly
- registrations.
-
- * Makefile.am:
- * MonoDevelop.AspNet.csproj: Add Sysytem.Xml.Linq reference.
-
-2010-05-28 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.Html/PathCompletion.cs:
- * MonoDevelop.AspNet/MasterContentFileDescriptionTemplate.cs:
- Fix incorrect use of ShowCustomDialog/RunCustomDialog.
-
-2010-05-27 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/CodeBehind.cs:
- * MonoDevelop.AspNet.Parser/MemberListVisitor.cs:
- * MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs: Fixed Bug
- 524051 - .as?x.designer.cs code generated by MonoDevelop
- includes fields already present in the main class.
-
-2010-05-27 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/CodeBehind.cs:
- * MonoDevelop.AspNet/WebTypeManager.cs:
- * MonoDevelop.AspNet/AspNetToolboxNode.cs:
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs:
- * MonoDevelop.AspNet.Parser/WebFormReferenceManager.cs:
- * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Move
- all the WebTypeManager static utility-type methods onto a
- WebTypeContext class. Reduces arguments and will make it
- easier to cache stuff.
-
-2010-05-26 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/WebTypeManager.cs: Added method for
- getting the IType for an HTML control.
-
- * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Added
- method for looking up IType of arbitrary tag.
-
-2010-05-26 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProjectBinding.cs: Fix creating
- ASP.NET single file projects. Fixes Bug 603521 - Command
- errors opening aspx file.
-
-2010-05-21 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Deployment/WebDeployService.cs:
- * MonoDevelop.AspNet.Deployment/WebDeployOptionsPanelWidget.cs:
- Clean up dialog placement.
-
-2010-05-19 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Make
- prefix generation and directive insertion APIs more
- flexible.
-
- * MonoDevelop.AspNet.Parser/PageInfo.cs: Make it possible to
- inject directives to an existing info.
-
- * Makefile.am:
- * MonoDevelop.AspNet.csproj:
- * MonoDevelop.AspNet.Parser/PageDirectiveVisitor.cs: Removed
- unneeded class.
-
- * MonoDevelop.AspNet/AspNetToolboxNode.cs: Use new
- ItextToolboxItem and DocumentReferenceManager APIs to insert
- new directives into the DOM only when the item is actually
- inserted into the editor. Fixes Bug 543721 - Auto-added
- control directives sometimes fail.
-
-2010-05-18 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Parser/PageInfo.cs:
- * MonoDevelop.AspNet.Parser/AspNetParser.cs:
- * MonoDevelop.AspNet.Parser.Dom/RootNode.cs:
- * MonoDevelop.AspNet.Parser/AspNetParsedDocument.cs: Collect
- more information from the document for C# completion.
-
-2010-05-18 Michael Hutchinson <mhutchinson@novell.com>
-
- * Makefile.am:
- * gtk-gui/gui.stetic:
- * MonoDevelop.AspNet.csproj:
- * MonoDevelop.AspNet/CodeBehind.cs:
- * MonoDevelop.AspNet.Parser/Document.cs:
- * MonoDevelop.AspNet.Parser/PageInfo.cs:
- * MonoDevelop.AspNet/AspNetAppProject.cs:
- * MonoDevelop.AspNet/AspNetSyntaxMode.cs:
- * MonoDevelop.AspNet/AspNetToolboxNode.cs:
- * MonoDevelop.AspNet.Parser/AspNetParser.cs:
- * MonoDevelop.AspNet.Parser.Dom/RootNode.cs:
- * MonoDevelop.AspNet/AspNetToolboxProvider.cs:
- * MonoDevelop.AspNet.Parser/PageInfoVisitor.cs:
- * MonoDevelop.AspNet.Parser/MemberListVisitor.cs:
- * MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs:
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs:
- * MonoDevelop.AspNet.Parser/AspNetParsedDocument.cs:
- * MonoDevelop.AspNet.Parser/PageDirectiveVisitor.cs:
- * MonoDevelop.AspNet.Parser/WebFormReferenceManager.cs:
- * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs:
- * MonoDevelop.AspNet/MasterContentFileDescriptionTemplate.cs:
- Heavy refactoring and tidying of ASP.NET parser code to
- support future changes.
-
-2010-05-12 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProject.cs:
- * MonoDevelop.AspNet/AspNetAppProjectConfiguration.cs: Fix Bug
- 602154 - bin/ directory not created when building ASP.Net
- Web Application template.
-
-2010-05-11 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.Html/PathCompletion.cs:
- * MonoDevelop.Html/DocTypeCompletionData.cs:
- * MonoDevelop.AspNet.Gui/BaseHtmlEditorExtension.cs:
- * MonoDevelop.AspNet.Parser/SuggestedHandlerCompletionData.cs:
- Track API changes.
-
-2010-05-07 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProject.cs:
- * MonoDevelop.AspNet/AspNetExecutionHandler.cs: Fix checks to
- allow .NET 4.
-
-2010-04-28 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.Html/PathCompletion.cs:
- * MonoDevelop.Html/DocTypeCompletionData.cs:
- * MonoDevelop.AspNet.Parser/SuggestedHandlerCompletionData.cs:
- Track API changes.
-
-2010-04-26 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.AspNet/AspNetSyntaxMode.cs:
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Worked on
- ASP.NET highlighting.
-
-2010-04-21 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Worked on
- ASP.NET completion.
-
-2010-04-20 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.AspNet.Gui/ILanguageCompletionBuilder.cs:
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Worked on
- ASP.NET completion.
-
-2010-04-20 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.AspNet.Gui/ILanguageCompletionBuilder.cs: fixed
- ASP.NET completion.
-
-2010-04-19 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs:
- * MonoDevelop.AspNet.Gui/ILanguageCompletionBuilder.cs: Worked
- on ASP.NET completion.
-
-2010-03-22 Lluis Sanchez Gual <lluis@novell.com>
-
- * AssemblyInfo.cs:
- * MonoDevelop.AspNet.addin.xml: Bumped MD version.
-
-2010-03-17 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.AspNet.csproj: Remove import off mono.addins
- targets.
-
-2010-03-17 Lluis Sanchez Gual <lluis@novell.com>
-
- * Makefile.am:
- * gtk-gui/gui.stetic:
- * MonoDevelop.AspNet.csproj:
- * MonoDevelop.AspNet.addin.xml:
- * MonoDevelop.Html/PathCompletion.cs:
- * MonoDevelop.AspNet/XspParameters.cs:
- * MonoDevelop.AspNet/WebTypeManager.cs:
- * MonoDevelop.Html/HtmlSchemaService.cs:
- * MonoDevelop.AspNet.Parser/Document.cs:
- * MonoDevelop.AspNet/AspNetAppProject.cs:
- * MonoDevelop.AspNet.Parser/Directive.cs:
- * MonoDevelop.AspNet/AspNetToolboxNode.cs:
- * MonoDevelop.AspNet.Gui/BrowserLauncher.cs:
- * MonoDevelop.AspNet.Gui/XspOptionsPanel.cs:
- * MonoDevelop.Html/DocTypeCompletionData.cs:
- * MonoDevelop.AspNet.Completion/SimpleLists.cs:
- * MonoDevelop.Html/HtmlCompletionDataProvider.cs:
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs:
- * MonoDevelop.AspNet.Gui/BaseHtmlEditorExtension.cs:
- * MonoDevelop.AspNet.Deployment/WebDeployService.cs:
- * MonoDevelop.AspNet.Deployment/WebDeployCommands.cs:
- * MonoDevelop.AspNet.Gui/AspNetConfigurationPanel.cs:
- * MonoDevelop.AspNet/AspNetAppProjectConfiguration.cs:
- * MonoDevelop.AspNet.Gui/ILanguageCompletionBuilder.cs:
- * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs:
- * MonoDevelop.AspNet.Deployment/WebDeployLaunchDialog.cs:
- * MonoDevelop.AspNet.Deployment/WebDeployOptionsPanel.cs:
- * MonoDevelop.AspNet/ProjectFolderNodeBuilderExtension.cs:
- * MonoDevelop.AspNet/MasterContentFileDescriptionTemplate.cs:
- * MonoDevelop.AspNet.Parser/SuggestedHandlerCompletionData.cs:
- Merged MD.Projects into MD.Core, and MD.Projects.Gui,
- MD.Core.Gui and MD.Components into MD.Ide.
-
-2010-03-03 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Parser/Directive.cs:
- * MonoDevelop.AspNet.Deployment/AspNetDeployServiceExtension.cs:
- Track ProjectFile Link API.
-
-2010-02-18 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.Html/PathCompletion.cs:
- * MonoDevelop.Html/DocTypeCompletionData.cs:
- * MonoDevelop.AspNet.Parser/SuggestedHandlerCompletionData.cs:
- Track api changes.
-
-2010-02-16 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.AspNet.addin.xml: Added some conditions to avoid
- early loading of extensions.
-
- * MonoDevelop.AspNet.Gui/HtmlEditorExtension.cs:
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: File
- extensions are now declared in the node metadata.
-
-2010-01-28 Lluis Sanchez Gual <lluis@novell.com>
-
- * gtk-gui/generated.cs:
- * gtk-gui/MonoDevelop.AspNet.Gui.XspOptionsPanelWidget.cs:
- * gtk-gui/MonoDevelop.AspNet.Deployment.WebTargetEditor.cs:
- * gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployTargetEditor.cs:
- * gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployLaunchDialog.cs:
- * gtk-gui/MonoDevelop.AspNet.Gui.AspNetConfigurationPanelWidget.cs:
- * gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployOptionsPanelWidget.cs:
- Flush.
-
-2010-01-28 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.AspNet/AspNetMSBuildImportProvider.cs: Track api
- changes.
-
-2010-01-27 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.Html/PathCompletion.cs:
- * MonoDevelop.Html/DocTypeCompletionData.cs:
- * MonoDevelop.AspNet.Parser/SuggestedHandlerCompletionData.cs:
- Track API changes.
-
-2010-01-14 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs: Implement
- the new SupportsItem method.
-
-2010-01-08 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.AspNet/LineInterceptingTextWriter.cs: fixed
- possible null ref.
-
-2010-01-07 mkrueger <${AuthorEmail}>
-
- * MonoDevelop.AspNet/LineInterceptingTextWriter.cs: Fixed null
- reference exception.
-
-2009-12-11 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetExecutionHandler.cs: Use "xsp1" not
- "xsp", but include a fallback so that it still works without
- wrapper scripts, as xsp1 is xsp.exe.
-
-2009-12-07 Michael Hutchinson <mhutchinson@novell.com>
-
- * Makefile.am:
- * MonoDevelop.AspNet.csproj:
- * MonoDevelop.AspNet/AspNetAppProject.cs:
- * MonoDevelop.AspNet/LineInterceptingTextWriter.cs: Move the
- LineInterceptingTextWriter to another file and make it
- public. Implement proper support for crlf.
-
-2009-12-07 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProject.cs: Scan a few more
- output lines to check whether xsp has started.
-
-2009-12-04 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProject.cs:
- * MonoDevelop.AspNet.Gui/BrowserLauncher.cs: Scan xsp output
- for "Listening on port: " to detect when it's started,
- instead of polling the server.
-
-2009-12-02 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Deployment/WebDeployService.cs: Name
- threads to make debugging easier.
-
-2009-12-02 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs:
- * MonoDevelop.AspNet.Gui/ILanguageCompletionBuilder.cs: Worked
- on ASP.NET code completion.
-
-2009-12-01 Mike Krüger <mkrueger@novell.com>
-
- * Makefile.am:
- * MonoDevelop.AspNet.csproj:
- * MonoDevelop.AspNet.addin.xml:
- * MonoDevelop.AspNet.Parser.Dom/RootNode.cs:
- * MonoDevelop.AspNet.Parser.Dom/ExpressionNode.cs:
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs:
- * MonoDevelop.AspNet.Gui/ILanguageCompletionBuilder.cs: Worked
- on ASP.NET code completion.
-
-2009-12-01 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProject.cs:
- * MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs:
- * MonoDevelop.AspNet.Deployment/WebDeployService.cs:
- * MonoDevelop.AspNet.Deployment/AspNetDeployServiceExtension.cs:
- Introduced the ConfigurationSelector class to all methods
- that previously took a configuration name as string. This
- eliminates the ambiguity between solution configuration
- names and project configuration names.
-
-2009-11-20 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProject.cs: Track API. Set
- UserAssemblyPaths. Get correct configuration.
-
- * MonoDevelop.AspNet/AspNetExecutionCommand.cs: Add property
- for list of user assemblies.
-
-2009-11-19 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Fix bad
- flags manipulation. Fixes Bug 556514 - asp.net Autogenerated
- function are not public.
-
-2009-11-11 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.AspNet/CodeBehind.cs: Strip the implicit
- namespace from the generated compilation unit. Required for
- VB.
-
-2009-11-11 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProjectConfiguration.cs:
- Simplify creation of new ASP.NET MVC configurations.
-
-2009-11-09 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.csproj: Wire the soft debug addin into
- the build.
-
-2009-10-30 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/BrowserLauncher.cs: Fake a
- IProcessAsyncOperation so that is can be returned from an
- execution handler.
-
-2009-10-30 Lluis Sanchez Gual <lluis@novell.com>
-
- * AssemblyInfo.cs:
- * MonoDevelop.AspNet.addin.xml: Bump MD version.
-
-2009-10-29 Lluis Sanchez Gual <lluis@novell.com>
-
- * gtk-gui/generated.cs:
- * gtk-gui/MonoDevelop.AspNet.Gui.XspOptionsPanelWidget.cs:
- * gtk-gui/MonoDevelop.AspNet.Deployment.WebTargetEditor.cs:
- * gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployTargetEditor.cs:
- * gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployLaunchDialog.cs:
- * gtk-gui/MonoDevelop.AspNet.Gui.AspNetConfigurationPanelWidget.cs:
- * gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployOptionsPanelWidget.cs:
- Flush.
-
-2009-10-09 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Track
- namespace renamings.
-
-2009-10-08 Ankit Jain <jankit@novell.com>
-
- * MonoDevelop.AspNet.csproj: Mark *-sharp references,
- with SpecificVersion=false. Import md.targets .
-
-2009-10-07 Lluis Sanchez Gual <lluis@novell.com>
-
- * AssemblyInfo.cs:
- * MonoDevelop.AspNet.addin.xml: Bump MD version.
-
-2009-10-06 Michael Hutchinson <mhutchinson@novell.com>
-
- * Makefile.am:
- * MonoDevelop.AspNet.csproj: Update.
-
- * MonoDevelop.Html/PathCompletion.cs: Creates completion lists
- for picking file paths.
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs:
- * MonoDevelop.AspNet.Gui/BaseHtmlEditorExtension.cs: Tweak API
- so classes can return completion lists instead of modifying
- one they're given.
-
- * MonoDevelop.AspNet.Parser/Directive.cs: Complete paths for
- register src and for masterpagefile. Finally fix the
- register directive attribute completion too.
-
-2009-10-02 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProject.cs:
- * MonoDevelop.Html/DocTypeCompletionData.cs:
- * MonoDevelop.AspNet/ProjectRegisteredControls.cs:
- * MonoDevelop.AspNet.Parser/WebFormReferenceManager.cs: Use
- ordinal string compares where appropriate.
-
-2009-10-02 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Take
- tag name into account when resolving type from control
- registration directives. Only compare prefix once per
- directive, and use case-insensitive ordinal comparisons.
- Fixes bug #543727.
-
-2009-10-01 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/WebTypeManager.cs:
- * MonoDevelop.AspNet/AspNetAppProject.cs: Resolve user
- controls from referenced projects. Fixes "Bug 519651 -
- Custom Controls cannot be registered in ASP.NET pages".
-
-2009-09-30 Michael Hutchinson <mhutchinson@novell.com>
-
- * gtk-gui/gui.stetic:
- * gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployLaunchDialog.cs:
- Enable horizontal scroll so the dialog doesn't get
- oversized.
-
-2009-09-21 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Tidy up a
- few things, and fix some FIXMEs.
-
-2009-09-21 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/CodeBehind.cs:
- * MonoDevelop.AspNet/AspNetAppProject.cs: Add a cache for
- codebehind type names.
-
- * MonoDevelop.AspNet/ProjectRegisteredControls.cs: Factor out
- FileInfoCache from the control registration cache, so we can
- use it for a type name cache.
-
- * MonoDevelop.AspNet/WebTypeManager.cs: Type UserControls with
- the type of this CodeBehind, if it can be looked up.
-
- * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Fix a
- couple of small bugs in UserControl type lookups.
-
-2009-09-21 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProject.cs: Found a better way
- of removing the encoding declaration from the header.
-
-2009-09-21 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProject.cs: Omit the xml
- declaration when saving the .config file, because it is
- declaring the utf-16 encoding, which wrong when saving the
- content to a utf-8 file. Fixes bug #537846 - Editing
- .aspx-files throws 'Error in text editor extension
- chain'-exception.
-
-2009-09-16 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.AspNet\AspNetExecutionHandler.cs: Set DEVPATH to
- the path of xsp. Required on Windows, so that .NET can find
- Mono.Web.
-
- * MonoDevelop.AspNet\AspNetAppProject.cs: Moved the XSP check
- to the execution handler.
-
-2009-09-12 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.Html/DocTypeCompletionData.cs:
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs:
- * MonoDevelop.AspNet.Parser/SuggestedHandlerCompletionData.cs:
- Track API changes.
-
-2009-09-01 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.AspNet.csproj: Don't require a specific version
- for Mono.Addins.
-
-2009-08-26 Lluis Sanchez Gual <lluis@novell.com>
-
- * gtk-gui/gui.stetic: Update gtk# dependency.
-
-2009-08-20 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProject.cs:
- * MonoDevelop.AspNet/AspNetExecutionCommand.cs:
- * MonoDevelop.AspNet/AspNetExecutionHandler.cs: Run xsp on the
- correct target runtime. Support using a bundled xsp if it
- doesn't exist in the target runtime.
-
-2009-08-19 Lluis Sanchez Gual <lluis@novell.com>
-
- * Makefile.am:
- * MonoDevelop.AspNet.csproj:
- * MonoDevelop.AspNet.addin.xml:
- * MonoDevelop.AspNet/AspNetMSBuildImportProvider.cs: Use the
- new extension point for generating msbuild imports.
-
-2009-08-13 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.AspNet/WebTypeManager.cs:
- * MonoDevelop.AspNet/AspNetAppProject.cs:
- * MonoDevelop.AspNet/AspNetToolboxLoader.cs:
- * MonoDevelop.AspNet/AspNetToolboxProvider.cs: Use the new
- AssemblyContext class to query and resolve assemblies.
-
-2009-08-12 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.csproj: Include the ASP.NET MVC and
- TextTemplating addins in the main solution and build.
-
-2009-08-10 Lluis Sanchez Gual <lluis@novell.com>
-
- * AspNetAddIn.csproj: Don't local-copy project references.
-
-2009-08-06 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProjectConfiguration.cs:
- Override and implement CopyFrom. Should allow the config
- editing panel to store values.
-
-2009-08-04 Lluis Sanchez Gual <lluis@novell.com>
-
- * AspNetAddIn.csproj: Don't local copy assemblies.
-
-2009-07-31 Lluis Sanchez Gual <lluis@novell.com>
-
- * gtk-gui/MonoDevelop.AspNet.Gui.AspNetConfigurationPanelWidget.cs:
- Flush.
-
-2009-07-31 Lluis Sanchez Gual <lluis@novell.com>
-
- * gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployTargetEditor.cs:
- * gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployLaunchDialog.cs:
- Flush.
-
-2009-07-28 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetConfigurationPanel.cs:
- * MonoDevelop.AspNet.Gui/AspNetConfigurationPanelWidget.cs:
- Remove unnecessary field.
-
-2009-07-28 Michael Hutchinson <mhutchinson@novell.com>
-
- * Makefile.am:
- * gtk-gui/gui.stetic:
- * AspNetAddIn.csproj:
- * MonoDevelop.AspNet.Gui/AspNetFileSelector.cs:
- * gtk-gui/MonoDevelop.AspNet.Gui.AspNetFileSelector.cs:
- * MonoDevelop.AspNet/MasterContentFileDescriptionTemplate.cs:
- Move AspNetFileSelector to
- MonoDevelop.Project.Gui.Dialogs.ProjectFileSelectorDialog.
-
-2009-07-24 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProjectBinding.cs: Track api
- changes. Patch by Viktoria Dudka.
-
-2009-07-17 Mike Krüger <mkrueger@novell.com>
-
- * Makefile.am:
- * AspNetAddIn.csproj: Fixed build.
-
-2009-07-16 Mike Krüger <mkrueger@novell.com>
-
- * Makefile.am:
- * AspNetAddIn.csproj:
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Started to
- work on ASP.NET code completion.
-
-2009-07-15 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.AspNet/AspNetSyntaxMode.cs: Worked on
- highlighting support for code blocks.
-
-2009-07-14 Mike Krüger <mkrueger@novell.com>
-
- * Makefile.am:
- * AspNetAddIn.csproj:
- * MonoDevelop.AspNet.addin.xml:
- * MonoDevelop.AspNet/AspNetSyntaxMode.cs: Added ASP.NET C#
- region syntax highlighting.
-
-2009-07-06 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProject.cs: Properly map the
- configuration name to a configuration.
-
-2009-07-06 Michael Hutchinson <mhutchinson@novell.com>
-
- * Templates/WebForm-Empty.xft.xml:
- * Templates/WebApplication.xpt.xml:
- * Templates/MasterPage-Empty.xft.xml:
- * Templates/WebForm-CodeBehind.xft.xml:
- * Templates/MasterPage-CodeBehind.xft.xml:
- * Templates/WebForm-CodeBehindNonPartial.xft.xml:
- * Templates/MasterPage-CodeBehindNonPartial.xft.xml: Make head
- tag into server tag so that theming works. Patch from
- Alfredo De Vito.
-
-2009-07-02 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/CodeBehind.cs: Move CodeBehindWriter from
- MonoDevelop.AspNet to MonoDevelop.DesignerSupport.
-
-2009-06-23 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.AspNet/AspNetToolboxNode.cs:
- * MonoDevelop.AspNet.Gui/BrowserLauncher.cs:
- * MonoDevelop.AspNet.Gui/AspNetFileSelector.cs: Use the new
- DesktopService instead of PlatformService.
-
-2009-06-15 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/WebTypeManager.cs: Track assembly lookup
- APIs. Fix bad logic that could cause NRE.
-
- * MonoDevelop.AspNet/AspNetAppProject.cs:
- * MonoDevelop.AspNet/AspNetToolboxLoader.cs:
- * MonoDevelop.AspNet/AspNetToolboxProvider.cs: Track assembly
- lookup APIs.
-
-2009-05-21 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.AspNet/AspNetFileDescriptionTemplate.cs:
- * MonoDevelop.AspNet/MasterContentFileDescriptionTemplate.cs:
- Track api changes.
-
-2009-05-19 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.AspNet\CodeBehind.cs:
- * MonoDevelop.AspNet\AspNetAppProject.cs:
- * MonoDevelop.AspNet.Gui\AspNetFileSelector.cs:
- * MonoDevelop.AspNet\ProjectFolderNodeBuilderExtension.cs: Use
- the new FilePath class for handling file and directory
- paths.
-
-2009-04-27 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProject.cs:
- * MonoDevelop.AspNet/AspNetExecutionCommand.cs: Added
- TargetRuntime parameter to AspNetExecutionComand.
-
-2009-04-27 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.AspNet/AspNetFileDescriptionTemplate.cs: Track
- API changes.
-
-2009-04-23 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/CodeBehind.cs: Notify fileservice when a
- file that isn't open has been changed. Fixes "Bug 496278 -
- C# completion doesn't update when designer codebehind is
- updated".
-
-2009-04-23 Michael Hutchinson <mhutchinson@novell.com>
-
- * Templates/WebContentForm-CodeBehind.xft.xml: Fix the
- DependsOn value. Thanks to Dax@daxxfiles.net for the patch.
-
-2009-04-20 Lluis Sanchez Gual <lluis@novell.com>
-
- * Makefile.am:
- * AspNetAddIn.csproj:
- * MonoDevelop.AspNet.addin.xml:
- * MonoDevelop.AspNet/AspNetAppProject.cs:
- * MonoDevelop.AspNet/AspNetExecutionHandler.cs:
- * MonoDevelop.AspNet/AspNetExecutionCommand.cs: Use an
- IExecutionHandler and an ExecutionCommand to handle the
- execution of asp.net projects. This will allow supporting
- special execution modes such as debug or profile.
-
-2009-04-20 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetFileSelector.cs: Renamed
- PixbufService to ImageService.
-
-2009-04-20 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetFileSelector.cs: Track API
- changes.
-
-
-2009-04-17 Mike Kestner <mkestner@novell.com>
-
- * AspNetAddin.csproj: don't require specific gtk-sharp version.
-
-2009-04-17 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetFileSelector.cs: Removed icon
- service.
-
-2009-04-16 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.AspNet/WebTypeManager.cs:
- * MonoDevelop.AspNet/AspNetAppProject.cs:
- * MonoDevelop.AspNet/AspNetToolboxNode.cs:
- * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Moved
- SystemAssemblyService and related classes to the namespace
- MonoDevelop.Core.Assemblies.
-
-2009-04-15 Lluis Sanchez Gual <lluis@novell.com>
-
- * AssemblyInfo.cs:
- * MonoDevelop.AspNet.addin.xml: Bump MD version.
-
-2009-04-15 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.AspNet/WebTypeManager.cs:
- * MonoDevelop.AspNet/AspNetAppProject.cs:
- * MonoDevelop.AspNet/AspNetToolboxNode.cs:
- * MonoDevelop.AspNet/AspNetToolboxLoader.cs:
- * MonoDevelop.AspNet/AspNetToolboxProvider.cs:
- * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Track
- api changes to support multiple target runtimes.
-
-2009-04-09 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/MasterContentFileDescriptionTemplate.cs:
- Add a using.
-
-2009-03-20 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProject.cs: Fix output directory
- for newly created projects, since DotNetProject changes it
- during project creation.
-
-2009-03-17 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.Html/HtmlParser.cs:
- * MonoDevelop.AspNet.Parser/AspNetParser.cs:
- * MonoDevelop.AspNet/MasterContentFileDescriptionTemplate.cs:
- Track API changes.
-
-2009-03-16 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProject.cs: Migrate bad output
- directories from MD1 format. Set proper output directory for
- new configurations.
-
- * MonoDevelop.AspNet/AspNetAppProjectConfiguration.cs: Remove
- output directory hacks.
-
-2009-03-13 Andrés G. Aragoneses <aaragoneses@novell.com>
-
- * gtk-gui/gui.stetic:
- * gtk-gui/MonoDevelop.AspNet.Deployment.WebTargetEditor.cs:
- Making some strings not translatable.
-
-2009-03-11 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/CodeBehind.cs: Work around text editor
- bug (#484574) that caused modifications to open files not to
- be saved. Only try to save files that we've modified.
-
- * MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs: Force type
- database to update during build. Fixes "Bug 484122 -
- [Regression] Default C# Asp.Net template fails to compile".
- Remove dead code.
-
-2009-03-06 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetFileSelector.cs: Show
- directories that contain project files, even if the
- directories aren't explicitly in the project. Don't
- duplicate directories that have children that are explictly
- in the project.
-
-2009-03-06 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Don't crash
- on documents without doctypes. Better root element
- completion for web controls and master children.
-
-2009-03-04 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs:
- * MonoDevelop.AspNet.Gui/BaseHtmlEditorExtension.cs: Track
- doctype parsing changes. Fix jumping to selections.
-
-2009-03-04 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProject.cs: Changed the way
- execution handlers work. We are not using platform ids
- anymore. Instead, we use command strings when looking for
- execution handlers. IExecutionHandlerFactory has been
- removed and now everything is handled by IExecutionHandler,
- which has a new CanExecute method. This model is more simple
- and more generic.
-
-2009-02-27 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/ProjectFolderNodeBuilderExtension.cs:
- Save the project after adding a special folder.
-
-2009-02-27 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/ProjectFolderNodeBuilderExtension.cs:
- More efficient query for existing folders. Attach node
- builder to more limited range of node types. Show special
- folders even if they exist in the project, or users might
- get confused when the menu vanishes.
-
- * MonoDevelop.AspNet/AspNetAppProject.cs: Slim down the list
- of special folders to ones for web apps rather than sites.
- Make virtual.
-
- * MonoDevelop.AspNet.addin.xml: Remove unused attribute.
-
-2009-02-24 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/CodeBehind.cs:
- * MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs: Move
- codebehind generation code from VerifyCodeBehindBuildStep to
- CodeBehind and refactor it into something more re-usable.
-
-2009-02-24 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProject.cs: Fix swapped
- parameters in ResolveVirtualPath.
-
- * MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs: Generate
- strongly typed master accessor property if the MasterType
- directive is present.
-
-2009-02-24 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Parser/PageInfo.cs: More properties in
- ToString.
-
- * MonoDevelop.AspNet.Parser/PageInfoVisitor.cs: Ignore case of
- MasterType directive.
-
-2009-02-24 Michael Hutchinson <mhutchinson@novell.com>
-
- * Templates/WebContentForm.xft.xml:
- * Templates/NestedMasterPage.xft.xml:
- * Templates/WebContentForm-CodeBehind.xft.xml:
- * Templates/NestedMasterPage-CodeBehind.xft.xml: Fix
- MasterPageFile attribute name.
-
-2009-02-24 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Parser/Directive.cs: Add completion for
- MasterType directive.
-
-2009-02-24 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetFileSelector.cs: Diplay project
- tree and its icons correctly.
-
-2009-02-24 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/MasterContentFileDescriptionTemplate.cs:
- Add new template type that allows user to pick a master page
- and stubs out content regions.
-
- * Makefile.am:
- * gtk-gui/gui.stetic:
- * AspNetAddIn.csproj:
- * MonoDevelop.AspNet.addin.xml: Updated.
-
- * Templates/MasterPage-Empty.xft.xml:
- * Templates/MasterPage-CodeBehind.xft.xml:
- * Templates/MasterPage-CodeBehindNonPartial.xft.xml: Correct
- names.
-
- * Templates/WebContentForm.xft.xml:
- * Templates/NestedMasterPage.xft.xml:
- * Templates/WebContentForm-CodeBehind.xft.xml:
- * Templates/NestedMasterPage-CodeBehind.xft.xml: New
- templates.
-
- * MonoDevelop.AspNet.Gui/AspNetFileSelector.cs:
- * gtk-gui/MonoDevelop.AspNet.Gui.AspNetFileSelector.cs: Added
- a UI for picking a master page.
-
- * MonoDevelop.AspNet.Parser/ContentPlaceHolderVisitor.cs: A
- visitor for finding the contentplaceholder ids of a master
- page.
-
-2009-02-24 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProject.cs: Add methods for
- handling virtual paths.
-
- * MonoDevelop.AspNet.Parser/PageInfo.cs:
- * MonoDevelop.AspNet.Parser/PageInfoVisitor.cs: Capture
- MasterPageType info.
-
-2009-02-23 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.AspNet.addin.xml: Track merge of the project pad
- context menu.
-
-2009-02-20 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetFileDescriptionTemplate.cs: Track
- API.
-
-2009-02-20 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProject.cs: Add an attempt at
- resolving assemblies from bin.
-
-2009-02-20 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/WebTypeManager.cs:
- * MonoDevelop.AspNet/AspNetAppProject.cs:
- * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Track
- assembly database API behaviour. Improve assembly resolution
- error handling. Fixes "Bug 477476 - Template for ASP.Net Web
- Application doesn't work by default." and restores ASP.NET
- code completion and codebehind generation.
-
-2009-02-11 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/HtmlEditorExtension.cs:
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Track API.
-
-2009-02-08 Michael Hutchinson <mhutchinson@novell.com>
-
- * AspNetAddIn.csproj: Copy schemas to output directory.
-
-2009-02-07 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Remove
- unnecessary "base" instance access, as csc doesn't like it.
-
-2009-02-06 Lluis Sanchez Gual <lluis@novell.com>
-
- * AspNetAddIn.mdp:
- * AspNetAddIn.csproj: Migrated to MSBuild file format.
-
-2009-02-04 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Track
- BindingService API.
-
-2009-02-03 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Allow
- forced completion for fields/properties in expressions.
-
- * MonoDevelop.AspNet.StateEngine/AspNetFreeState.cs: Add
- rollback so that expressions can be differentiated. Fixes
- field/property completion in expressions.
-
-2009-02-03 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Parser/SuggestedHandlerCompletionData.cs:
- Track BindingService API. Fixes event completion bugs.
-
-2009-02-03 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/WebTypeManager.cs:
- * MonoDevelop.AspNet/ProjectRegisteredControls.cs:
- * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs:
- Implement full type lookup and listing mechanisms for
- controls registered in web.config. Enables full code
- completion for these controls. Fixes "Bug 470488 - Controls
- registered in web.config do not have code completion".
-
-2009-02-03 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProject.cs: Add a
- ControlRegistrationCache to the project to cache web.config
- control registrations.
-
- * MonoDevelop.AspNet/ProjectRegisteredControls.cs: Use a
- custom class for encapsulating registration info instead of
- TagPrefixInfo, so we can attach extra data.
-
- * MonoDevelop.AspNet/WebTypeManager.cs: Use project's
- ControlRegistrationCache for type lookups.
-
-2009-02-03 Lluis Sanchez Gual <lluis@novell.com>
-
- * AssemblyInfo.cs:
- * MonoDevelop.AspNet.addin.xml: Bump MD version.
-
-2009-02-03 Lluis Sanchez Gual <lluis@novell.com>
-
- * gtk-gui/generated.cs:
- * gtk-gui/MonoDevelop.AspNet.Gui.XspOptionsPanelWidget.cs:
- * gtk-gui/MonoDevelop.AspNet.Deployment.WebTargetEditor.cs:
- * gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployTargetEditor.cs:
- * gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployLaunchDialog.cs:
- * gtk-gui/MonoDevelop.AspNet.Gui.AspNetConfigurationPanelWidget.cs:
- *
- gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployOptionsPanelWidget.cs:
- Flush.
-
-2009-01-30 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetFileDescriptionTemplate.cs: Propagate a
- policy parent SolutionItem through project/file creation so that
- policies can always be resolved correctly.
-
-2009-01-29 Michael Hutchinson <mhutchinson@novell.com>
-
- * Makefile.am:
- * AspNetAddIn.mdp:
- * MonoDevelop.AspNet/ProjectRegisteredControls.cs: Add a class to load
- and cache control registrations from web.config files. It's intended
- to be bound to the AspNetAppProject, for documents to look to for
- completion and resolving types.
-
-2009-01-28 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/WebTypeManager.cs: Don't pass a null
- TargetFramework to SystemAssemblySevice, or it explodes. Propagate
- project info to the web.config handler so that it can resolve
- assemblies with the correct TargetFramework.
-
-2009-01-28 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: If the
- special-casing of the asp prefix to System.Web.dll fails to resolve
- the type, do a full lookup. Fixes the asp prefix with other controls,
- as is common with e.g. System.Web.Extensions.
-
-2009-01-28 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Parser/MemberListVisitor.cs: Log type resolution
- errors to the document's error list.
-
- * MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs: Make sure the
- member list is initialised before outputting errors, so that type
- resolution errors show up in the error pad. Treat them as warnings
- until we can be 100% sure that they're not mistakes on MD's part.
-
-2009-01-21 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProject.cs: Execute xsp in the project's
- BaseDirectory, not the SourceDirectory, since the bin directory is
- already assumed to be in BaseDirectory, and SourceDirectory seems to
- be obsolete. Fixes running ASP.NET csproj projects in certain
- circumstances.
-
-2009-01-21 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/BaseHtmlEditorExtension.cs: Remove closing tag
- completion as the base class handles it now.
-
-2009-01-16 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProject.cs:
- * MonoDevelop.AspNet/AspNetAppProjectBinding.cs:
- * MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs:
- * MonoDevelop.AspNet.Parser/AspNetParsedDocument.cs:
- * MonoDevelop.AspNet.MD1Serialization/MD1AspNetCustomDataItem.cs: Track
- DetermineWebSubtype API.
-
- * Templates/WebForm-Empty.xft.xml:
- * Templates/WebApplication.xpt.xml:
- * Templates/WebControl-Empty.xft.xml:
- * Templates/WebHandler-Empty.xft.xml:
- * Templates/GlobalAsax-Empty.xft.xml:
- * Templates/WebService-Empty.xft.xml:
- * Templates/MasterPage-Empty.xft.xml:
- * Templates/WebConfig-SubDir.xft.xml:
- * Templates/WebForm-CodeBehind.xft.xml:
- * Templates/WebConfig-Application.xft.xml:
- * Templates/MasterPage-CodeBehind.xft.xml:
- * Templates/WebHandler-CodeBehind.xft.xml:
- * Templates/WebService-CodeBehind.xft.xml:
- * Templates/GlobalAsax-CodeBehind.xft.xml:
- * Templates/WebControl-CodeBehind.xft.xml:
- * Templates/WebForm-CodeBehindNonPartial.xft.xml:
- * Templates/MasterPage-CodeBehindNonPartial.xft.xml:
- * Templates/WebControl-CodeBehindNonPartial.xft.xml: Don't explicitly
- set a build action, since it was wrong for MSBuild files, and the
- default works fine.
-
-2009-01-16 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Deployment/AspNetDeployServiceExtension.cs: Deploy
- all files marked as "Content" rather than all ASP.NET files.
-
-2009-01-16 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProject.cs: Add JavaScript to WebSubType.
-
-2009-01-16 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProject.cs: Add css, xhtml, html, htm to
- the WebSubTypes enum. This means that their default build action is
- "Content", so they get deployed by default. Should fix "Bug 466855 -
- CSS files in App_Themes/theme_name/ are not deployed".
-
-2009-01-14 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProject.cs: Don't try to update web.config
- when references are removed during project loading. Fixes "Bug 465852
- - MonoDevelop 2.0 (trunk) does not load ASP.NET projects from 1.0."
-
-2008-12-12 Lluis Sanchez Gual <lluis@novell.com>
-
- * AspNetAddIn.mdp: All projects now require fx 3.5.
-
-2008-12-11 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.AspNet/WebTypeManager.cs:
- * MonoDevelop.AspNet/AspNetAppProject.cs:
- * MonoDevelop.AspNet/AspNetToolboxNode.cs:
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs:
- * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Track API
- changes.
-
-2008-12-09 Lluis Sanchez Gual <lluis@novell.com>
-
- * AspNetAddIn.mdp: Don't require a specific version of Mono.Addins.
-
-2008-12-05 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Ignore
- PersistChildrenAttribute, as it does more harm than good. It's
- essentially the opposite of ParseChildrenAttribute, but it's often
- incorrectly set, whereas ParseChildrenAttribute is almost invariably
- correct. Also, assume that any property tagged with a
- TemplateContainerAttribute has an InnerProperty persistence mode.
-
-2008-12-05 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Add TODO markers for
- ParseChildrenAttribute.ChildControlType support.
-
-2008-12-04 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProject.cs: Implemented CanExecute.
-
- * MonoDevelop.AspNet.Gui/BrowserLauncher.cs: Track api changes.
-
-2008-12-04 Lluis Sanchez Gual <lluis@novell.com>
-
- * Makefile.am: Make it work for parallel build.
-
-2008-12-03 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.addin.xml: Set correct packing for Web deployment
- panel.
-
-2008-12-03 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.addin.xml: Move options panels to more appropriate
- categories.
-
- * gtk-gui/gui.stetic: Flush.
-
-2008-12-02 Michael Hutchinson <mhutchinson@novell.com>
-
- * Makefile.am:
- * AspNetAddIn.mdp:
- * AssemblyInfo.cs: Add AssemblyInfo.cs files that are autogenerated from
- the addin manifests.
-
-2008-11-27 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Use
- DocumentationService to look up class documentation lazily.
-
-2008-11-26 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProject.cs: If project's CompileTarget
- isn't "Library", automatically fix it, since older versions of MD did
- not set it correctly.
-
-2008-11-25 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Html/HtmlParser.cs: Implement multiple root element
- validation since parser no longer handles this.
-
-2008-11-19 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Improve accuracy of
- completions for controls' children. Add support for completing
- properties' childen.
-
- * MonoDevelop.AspNet/WebTypeManager.cs:
- * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Extend lookup
- methods to be able to look for types other than Control.
-
-2008-11-18 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.StateEngine/HtmlTagState.cs: Improve error location
- precision for implicitly self-closing tags.
-
-2008-11-18 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Improve element
- completion.
-
- * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Make
- AspTagCompletionData public.
-
- * MonoDevelop.AspNet.Gui/BaseHtmlEditorExtension.cs: Expose methods to
- subclass.
-
-2008-11-18 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Use ASP.NET
- serialisation attributes to improve completion. Display properties as
- children when appropriate; don't display properties as attributes or
- controls as children when inappropriate.
-
- * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Add a shortcut
- for HTML controls.
-
-2008-11-17 Michael Hutchinson <mhutchinson@novell.com>
-
- * Templates/WebApplication.xpt.xml: Fix case of asp:button.
-
- * MonoDevelop.AspNet/WebTypeManager.cs: Make sure all type name lookups
- are case insensitive (seems that MonoDevelop's defaults changed).
- Fixes Bug 445850 - [Regression] The C# Asp Web application template
- fails to compile .
-
- * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Trivial 1.1 to
- 2.0 API update.
-
-2008-11-14 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.StateEngine/HtmlTagState.cs:
- * MonoDevelop.AspNet.StateEngine/HtmlClosingTagState.cs: Implement new
- parser states that handle implicit tag closing for HTML.
-
- * Makefile.am:
- * AspNetAddIn.mdp: Updated.
-
- * MonoDevelop.Html/HtmlParser.cs:
- * MonoDevelop.AspNet.Gui/BaseHtmlEditorExtension.cs:
- * MonoDevelop.AspNet.StateEngine/AspNetFreeState.cs: Use the new HTML
- parsing states.
-
- * MonoDevelop.Html/ElementTypes.cs: Lookups to determine if an HTML tags
- is block/inline/empty/paragraph.
-
-2008-11-14 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/BaseHtmlEditorExtension.cs: Flag schema for
- update when doctype changes.
-
-2008-11-14 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/WebTypeManager.cs: Use project to resolve target
- .NET version for assemblies.
-
- * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Resolve types
- of items from register directives. Lazy-load descriptions.
-
-2008-11-13 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/WebTypeManager.cs:
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs:
- * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Include
- controls referenced by Register directives when listing tags.
-
-2008-11-13 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.addin.xml: Specify position for build step.
-
- * MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs: Enable designer class
- updating for UserControls and MasterPages.
-
-2008-11-13 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/BaseHtmlEditorExtension.cs: Split out the HTML
- editor extension. Add document outlining.
-
- * Makefile.am:
- * AspNetAddIn.mdp: Updated.
-
- * MonoDevelop.AspNet.addin.xml:
- * MonoDevelop.Html/HtmlParser.cs: Added an HTML parser.
-
- * MonoDevelop.AspNet.Gui/HtmlEditorExtension.cs: Split out the HTML
- editor extension. Add document outlining. Mostly extracted from
- Moonlight addin.
-
-2008-11-12 Michael Hutchinson <mhutchinson@novell.com>
-
- * Makefile.am:
- * AspNetAddIn.mdp:
- * MonoDevelop.AspNet.Gui/HtmlTextEditorExtension.cs:
- * MonoDevelop.AspNet.Gui/BaseHtmlEditorExtension.cs: Renamed file.
-
-2008-11-12 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs:
- * MonoDevelop.AspNet.Gui/HtmlTextEditorExtension.cs: Move re-usable HTML
- editing into base class in preparation for other changes.
-
-2008-11-12 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/HtmlTextEditorExtension.cs: Tidy up
- doctype->schema resolution code, and only try to resolve doctype when
- it changes. Use case-insensitive completion.
-
-2008-11-11 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Track fix in text
- editor's completion line/col indexing. It's now 1-indexed, as it
- should be. Fix attribute value type resolution fallback.
-
- * MonoDevelop.AspNet.Parser/Document.cs: Comment out some noisy debug
- code.
-
-2008-11-06 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProject.cs: Use new API; move default
- build action code into GetDefaultBuildAction override.
-
-2008-11-05 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.AspNet.addin.xml: Bump MD version.
-
-2008-11-04 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProject.cs: Override new
- IsLibraryBasedProjectType property, consolidating code in base class.
-
-2008-11-03 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProject.cs: Set CompileTarget to library
- on base class, not just overriding the values on the property. Fixes
- Bug 436275 - MD ASP.Net project does not build in VS2005.
-
-2008-11-02 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProject.cs: Track MD core API to re-enable
- running of ASP.NET projects.
-
-2008-10-28 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.AspNet.addin.xml: fixed 'Bug 399737 - Code completion
- busted for referenced assemblies that are not in GAC, are outside of
- the solution, and which are referenced by other non-GAC outside
- referenced assemblies'.
-
-2008-10-27 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Fix directive name
- completion triggering.
-
-2008-10-24 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.StateEngine/AspNetDom.cs:
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs:
- * MonoDevelop.AspNet.StateEngine/AspNetDirectiveState.cs:
- * MonoDevelop.AspNet.StateEngine/AspNetExpressionState.cs:
- * MonoDevelop.AspNet.StateEngine/AspNetServerCommentState.cs: Changed
- Xml StateEngine from offset-based positions to line/column positions.
-
-2008-10-22 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProject.cs: Better default build action
- for auto-added codebehind files.
-
-2008-10-22 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/CodeBehind.cs:
- * MonoDevelop.AspNet/AspNetAppProject.cs:
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Moved
- codebehind/designer lookup functionality to
- MonoDevelop.DesignerSupport.
-
-2008-10-16 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Add simple
- field/property completions in render and databinding expressions.
-
-2008-10-16 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Finally fix event
- handler completion with the new MD Code DOM.
-
-2008-10-16 Michael Hutchinson <mhutchinson@novell.com>
-
- * Makefile.am:
- * AspNetAddIn.mdp: Updated.
-
- * MonoDevelop.AspNet.addin.xml: Enable HtmlEditorExtension for HTML
- completion.
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs:
- * MonoDevelop.AspNet.Gui/HtmlTextEditorExtension.cs: Refactor HTML
- completion from AspNetEditorExtension into an HtmlEditorExtension
- base class.
-
-2008-10-16 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Completion/SimpleLists.cs: Remove unused methods.
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Move code to base
- class. Implement more directive completions.
-
- * MonoDevelop.AspNet.Parser/Directive.cs: Change API to alter lists
- instead of creating them.
-
-2008-10-15 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Move more into the
- base class. Implement directive name completion.
-
- * MonoDevelop.AspNet.Parser/Directive.cs: Remove unused parameters.
-
-2008-10-15 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Parser.Internal/AspParser.cs: Improve error
- reporting.
-
-2008-10-14 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Track API. Work
- around some bugs in directive completion until they're fixed
- properly.
-
- * Makefile.am:
- * AspNetAddIn.mdp: Updated.
-
- * MonoDevelop.AspNet.Completion/SimpleLists.cs: Add utility methods for
- simple completion lists with default values.
-
- * MonoDevelop.AspNet.Parser/Directive.cs: Add attribute completion for
- all directives. Some work towards completing directive names and
- values.
-
- * MonoDevelop.AspNet.Parser/AspNetParsedDocument.cs: Add a WebSubType
- property.
-
-2008-10-13 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Parser/Directive.cs: Add more attributes.
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Remove code that's
- moved to base class.
-
-2008-10-09 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Parser/Directive.cs:
- * MonoDevelop.Html/HtmlCompletionDataProvider.cs:
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs:
- * MonoDevelop.Html/DocTypeCompletionDataProvider.cs: Track APIs.
-
- * Makefile.am:
- * AspNetAddIn.mdp: Updated.
-
-2008-10-09 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Html/DocTypeCompletionData.cs:
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs:
- * MonoDevelop.AspNet.Parser/SuggestedHandlerCompletionData.cs: Track
- CompletionData API.
-
-2008-10-08 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Parser/Directive.cs: Track API.
-
- * Makefile.am:
- * AspNetAddIn.mdp: Updated.
-
- * MonoDevelop.AspNet.Parser/SimpleCompletionData.cs: Moved to
- MonoDevelop.Projects.Gui.
-
- * MonoDevelop.AspNet.Parser/AspNetCompilationUnit.cs: Not needed;
- deleted.
-
-2008-10-07 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Html/DocTypeCompletionData.cs:
- * MonoDevelop.AspNet.Parser/SimpleCompletionData.cs:
- * MonoDevelop.AspNet.Parser/SuggestedHandlerCompletionData.cs: Track
- API.
-
-2008-10-03 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Moved lots of code
- down to the BaseXmlEditorExtension.
- * AspNetAddIn.mdp, Makefile.am: Updated.
- * MonoDevelop.AspNet.Parser/AspNetParsedDocument.cs: Renamed. Add
- NonSerializable flag.
-
-2008-10-03 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs,
- MonoDevelop.AspNet.Parser/SimpleCompletionData.cs,
- MonoDevelop.AspNet.Parser/Directive.cs: Enable some simple
- completion for directive attributes.
-
-2008-10-01 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProject.cs: Track API.
- * MonoDevelop.AspNet.addin.xml, MonoDevelop.AspNet.MD1Serialization,
- MonoDevelop.AspNet.MD1Serialization/MD1AspNetCustomDataItem.cs,
- MonoDevelop.AspNet.MD1Serialization/md1format.xml,
- MonoDevelop.AspNet.Deployment/WebDeployService.cs,
- MonoDevelop.AspNet.Deployment/WebDeployResolver.cs,
- MonoDevelop.AspNet.Deployment/AspNetDeployServiceExtension.cs,
- AspNetAddIn.mdp, Makefile.am: Integrate deployment with the
- deployment service chnages; makes it much cleaner. Track "arbitrary
- build action" API changes; this improves compatibility with VS Web
- Apps.
-
-2008-09-29 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.Html/DocTypeCompletionData.cs,
- MonoDevelop.AspNet.Parser/SuggestedHandlerCompletionData.cs,
- MonoDevelop.AspNet.Parser/SimpleCompletionData.cs: Implemented
- IComparable <ICompletionData>.
-
-2008-09-26 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs,
- MonoDevelop.AspNet.Parser/AspNetCompilationUnit.cs,
- MonoDevelop.AspNet.Parser/AspNetParser.cs,
- MonoDevelop.AspNet.Parser/CompilationUnitVisitor.cs,
- MonoDevelop.AspNet/AspNetParserService.cs,
- MonoDevelop.AspNet/AspNetToolboxNode.cs,
- MonoDevelop.AspNet/CodeBehind.cs,
- MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs: Track API.
-
-2008-09-25 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Parser/CompilationUnitVisitor.cs: Track API.
-
-2008-09-18 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.Html/HtmlCompletionDataProvider.cs,
- MonoDevelop.Html/DocTypeCompletionDataProvider.cs,
- MonoDevelop.AspNet.Parser/SimpleCompletionData.cs: Track api
- changes.
-
-2008-09-12 Lluis Sanchez Gual <lluis@novell.com>
-
- * gtk-gui/MonoDevelop.AspNet.Gui.XspOptionsPanelWidget.cs,
- gtk-gui/generated.cs,
- gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployLaunchDialog.cs,
- gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployTargetEditor.cs,
- gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployOptionsPanelWidget.cs,
- gtk-gui/MonoDevelop.AspNet.Gui.AspNetConfigurationPanelWidget.cs,
- gtk-gui/MonoDevelop.AspNet.Deployment.WebTargetEditor.cs: Updated
- generated code.
-
-2008-09-12 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs,
- MonoDevelop.AspNet/AspNetToolboxNode.cs,
- MonoDevelop.AspNet/WebTypeManager.cs: Track api changes.
-
-2008-09-10 Michael Hutchinson <mhutchinson@novell.com>
-
- * Makefile.am, AspNetAddIn.mdp: Updated.
- * MonoDevelop.AspNet.Parser/SimpleCompletionData.cs: Utility completion
- data classes -- in C#3!
- * MonoDevelop.AspNet.Parser/Directive.cs: Work-in-progress on directive
- completion.
-
-2008-09-10 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.AspNet/CodeBehind.cs,
- MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs,
- MonoDevelop.AspNet/AspNetParserService.cs,
- MonoDevelop.AspNet/AspNetToolboxNode.cs,
- MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs,
- MonoDevelop.AspNet.Parser/CompilationUnitVisitor.cs,
- MonoDevelop.AspNet.Parser/AspNetParser.cs: Changed compilation
- unit/document meta information interface.
-
-2008-09-04 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.AspNet/ProjectFolderNodeBuilderExtension.cs: Moved the
- extensible tree view to its own directory.
-
-2008-09-03 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.AspNet/AspNetToolboxNode.cs, AspNetAddIn.mdp: Changes
- caused by parser service change.
-
-2008-08-22 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Fix attribute value
- completion.
-
-2008-08-20 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.StateEngine/AspNetFreeState.cs: Replace C#3
- automatic properties into C# 2 properties. Fixes build on Mono <
- 1.9. Thanks to Joshua Simmons for the patch.
-
-2008-08-12 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Parser.Internal/AspTokenizer.cs,
- MonoDevelop.AspNet.Parser.Internal/Directive.cs,
- MonoDevelop.AspNet.Parser.Internal/AspParser.cs,
- MonoDevelop.AspNet.Parser.Internal/Location.cs,
- MonoDevelop.AspNet.Parser.Internal/ParseException.cs,
- MonoDevelop.AspNet.Parser.Dom/ILocation.cs: Update from mcs SVN
- HEAD. Fixes "Bug 409109 - The ASP.NET Editor crashes if you leave a
- tag opened".
-
-2008-08-08 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProject.cs: Use Loading property instead
- of filename nullness hack.
- * MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs: Simplify code
- generation appraoch for partial classes: if the file.aspx (etc)
- file is newer than the corresponding file.aspx.designer.* file,
- regenerate the designer class entirely. This means that we no
- longer require refactoring support, so the feature now works with
- Boo and VB.NET.
-
-
-
- Also remove support for adding members to non-partial CodeBehind
- classes.
- * MonoDevelop.AspNet/AspNetAppProjectConfiguration.cs,
- MonoDevelop.AspNet.Gui/AspNetConfigurationPanelWidget.cs,
- gtk-gui/MonoDevelop.AspNet.Gui.AspNetConfigurationPanelWidget.cs,
- gtk-gui/gui.stetic: Remove option for autogenerating members in
- non-partial CodeBehind classes. Add an option for disabling
- Codebehind updating altogether.
-
-2008-08-05 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs: Add null check.
-
-2008-08-01 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.StateEngine/AspNetExpressionState.cs,
- MonoDevelop.AspNet.StateEngine/AspNetAttributeValueState.cs,
- MonoDevelop.AspNet.StateEngine/AspNetFreeState.cs,
- MonoDevelop.AspNet.StateEngine/AspNetSpeculativeExpressionState.cs,
- MonoDevelop.AspNet.StateEngine/AspNetServerCommentState.cs:
- Implement attribute value expressions.
- * AspNetAddIn.mdp, Makefile.am: Updated.
-
-2008-07-31 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Show all kinds of
- nodes in the path bar, and allow selecting them.
- * MonoDevelop.AspNet.StateEngine/AspNetDirectiveState.cs,
- MonoDevelop.AspNet.StateEngine/AspNetExpressionState.cs: Fix start
- offsets.
- * MonoDevelop.AspNet.StateEngine/AspNetDom.cs: Add friendly
- representations.
- * MonoDevelop.AspNet.StateEngine/AspNetSpeculativeExpressionState.cs,
- MonoDevelop.AspNet.StateEngine/AspNetFreeState.cs: Implement
- speculatives states. Works for expressions and server comments
- within tags, though not within attributes.
-
-2008-07-31 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/WebTypeManager.cs,
- MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Clean up
- System.Web lookup code.
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Fix the System.Web
- fallbacks using new DOM. Respect project's runtime version.
-
-2008-07-31 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Add comment and
- CDATA completion. Only trigger tag completion in the free state.
- * MonoDevelop.AspNet/WebTypeManager.cs: Simplify lookups using new
- DOM's methods. They're still broken due to the DOM database
- returning bad values.
-
-2008-07-30 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/WebTypeManager.cs,
- MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: More porting to
- new DOM.
- * MonoDevelop.AspNet.StateEngine/AspNetSpeculativeExpressionState.cs: A
- "speculative state" to replace the MalformedTagState. Can create a
- server comment, or
- * MonoDevelop.AspNet.StateEngine/AspNetServerCommentState.cs: Tidying
- up.
- * AspNetAddIn.mdp, Makefile.am: Updated.
-
-2008-07-30 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.StateEngine/AspNetExpressionState.cs,
- MonoDevelop.AspNet.StateEngine/AspNetFreeState.cs,
- MonoDevelop.AspNet.StateEngine/AspNetServerCommentState.cs,
- MonoDevelop.AspNet.StateEngine/AspNetDirectiveState.cs: API change
- to allow more that one character of rollback.
-
-2008-07-29 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Filter out
- attributes that are already in the tag.
-
-2008-07-29 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.StateEngine/AspNetExpressionState.cs: Complete the
- handling of expressions (in free state).
-
-2008-07-29 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.StateEngine/AspNetServerCommentState.cs: Implement
- server comments handling (in the free state).
-
-2008-07-29 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.StateEngine/AspNetFreeState.cs,
- MonoDevelop.AspNet.StateEngine/AspNetDirectiveState.cs,
- MonoDevelop.AspNet.StateEngine/AspNetDom.cs: Complete the handling
- of directives. Server comments and expressions are still broken.
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Continue port to new
- DOM. Enable AspNetFreeState parser instead of XML one.
- * MonoDevelop.AspNet.Parser/AspNetParser.cs: Remove debug code.
-
-2008-07-29 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProject.cs,
- MonoDevelop.AspNet/AspNetParserService.cs,
- MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Translated old
- code to new dom.
-
-2008-07-29 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.AspNet/CodeBehind.cs,
- MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs,
- MonoDevelop.AspNet.Parser/SuggestedHandlerCompletionData.cs:
- Changes for converted refactoring infrastructure.
-
-2008-07-28 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetToolboxNode.cs,
- MonoDevelop.AspNet/WebTypeManager.cs,
- MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs,
- MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Partial port
- to new DOM. A *few* features are working again, but it's not nearly
- done. Need to be able to get assembly parse contexts to make
- progress.
-
-2008-07-28 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Fix document outline
- view with new parser infrastructure.
-
-2008-07-28 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs,
- MonoDevelop.AspNet/AspNetLanguageBinding.cs,
- MonoDevelop.AspNet.addin.xml,
- MonoDevelop.AspNet.Parser/AspNetCompilationUnit.cs,
- MonoDevelop.AspNet.Parser/CompilationUnitVisitor.cs,
- MonoDevelop.AspNet.Parser/AspNetExpressionFinder.cs,
- MonoDevelop.AspNet.Parser/AspNetParser.cs,
- MonoDevelop.AspNet.Parser/LocatedParserException.cs: Port to new
- parser infrastructure so the ASP.NET pages get parsed.
- * MonoDevelop.AspNet.StateEngine/AspNetExpressionState.cs,
- MonoDevelop.AspNet.StateEngine/AspNetServerCommentState.cs,
- MonoDevelop.AspNet.StateEngine/AspNetDom.cs,
- MonoDevelop.AspNet.StateEngine/AspNetDirectiveState.cs: More
- in-progress work on ASP.NET extensions to the XML parser.
- * AspNetAddIn.mdp, Makefile.am: Updated.
-
-2008-07-25 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.StateEngine/AspNetExpressionState.cs,
- MonoDevelop.AspNet.StateEngine/AspNetAttributeValueState.cs,
- MonoDevelop.AspNet.StateEngine/AspNetFreeState.cs,
- MonoDevelop.AspNet.StateEngine/AspNetDom.cs: Commit initial work on
- ASP.NET parser extensions.
- * Makefile.am, AspNetAddIn.mdp: Updated.
-
-2008-07-25 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Put path bar update
- on a timeout so that it doesn't make selection too laggy.
-
-2008-07-24 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Improve triggering
- of attribute value completion.
-
-2008-07-24 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: For
- System.Drawing.Color names colours autocompletion entries, use a
- block of the colour as the icon. Don't show system colours.
-
-2008-07-23 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Implemented node
- selection with the path bar using the new parser. Much more
- reliable, but still breaks on selecting the node the caret's in.
- * gtk-gui/objects.xml, AspNetAddIn.mdp, Makefile.am: Removed
- objects.xml.
-
-2008-07-23 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.StateEngine/AspNetSpecialState.cs: Unneeded;
- removed.
- * MonoDevelop.AspNet.StateEngine/AspNetFreeState.cs: Stubbed.
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Use the new XML
- parser for ASP.NET completion.
- * gtk-gui/objects.xml, gtk-gui/gui.stetic, AspNetAddIn.mdp,
- Makefile.am: Updated.
- * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Fix tag prefix
- auto-generation logic.
- * MonoDevelop.AspNet.Parser/CompilationUnitVisitor.cs: Don't fold
- regions by default.
-
-2008-07-21 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.AspNet.Deployment/WebDeployTarget.cs,
- MonoDevelop.AspNet/AspNetAppProject.cs,
- MonoDevelop.AspNet/AspNetAppProjectBinding.cs,
- MonoDevelop.AspNet/AspNetAppProjectConfiguration.cs,
- MonoDevelop.AspNet/AspNetToolboxNode.cs,
- MonoDevelop.AspNet/XspParameters.cs: Moved serialization engine to
- MonoDevelop.Core. Use new syntax for specifying attribute scope.
-
-2008-07-14 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.AspNet.addin.xml: Added javascript mime type (Bug 400896
- - Syntax Mode for Javascript).
-
-2008-06-25 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.StateEngine/AspNetSpecialState.cs,
- MonoDevelop.AspNet.StateEngine/AspNetFreeState.cs,
- MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Rework stack
- cloning and character rejection mechanisms in XML/ASP state engine.
-
-2008-06-25 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Parser/SuggestedHandlerCompletionData.cs: Track
- API.
-
-2008-06-25 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/CodeBehind.cs: Use case-insensitive checks on
- filenames.
-
-2008-06-19 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Track BindingService
- API. Fix possible skipping of Gdk.Threads.Leave().
- * MonoDevelop.Html/DocTypeCompletionDataProvider.cs,
- MonoDevelop.Html/HtmlCompletionDataProvider.cs,
- MonoDevelop.Html/HtmlSchemaService.cs: Minor change to doctype
- completion data API.
-
-2008-06-13 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProject.cs: Fix a logic error that caused
- an exception when creating a new file group with a CodeBehind file
- but no designer file.
- * Templates/WebApplication.xpt.xml: Move event hander to the user code
- class, not the designer class. Add protected button member because
- some languagee bindings can't auto-add it. Fixes "Bug 400301 -
- [Regression] The default VB Asp.Net template fails to compile".
-
-2008-06-10 Michael Hutchinson <mhutchinson@novell.com>
-
- * Templates/WebService-CodeBehind.xft.xml,
- Templates/WebHandler-CodeBehind.xft.xml,
- Templates/WebForm-CodeBehindNonPartial.xft.xml,
- Templates/WebForm-CodeBehind.xft.xml,
- Templates/WebControl-CodeBehindNonPartial.xft.xml,
- Templates/WebControl-CodeBehind.xft.xml,
- Templates/MasterPage-CodeBehindNonPartial.xft.xml,
- Templates/GlobalAsax-CodeBehind.xft.xml,
- Templates/MasterPage-CodeBehind.xft.xml: Set grouping/dependencies
- on new files.
- * MonoDevelop.AspNet/AspNetAppProject.cs: Set grouping dependencies on
- added files, and auto-add parents/children.
-
-2008-06-10 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Parser/AspNetCompilationUnit.cs: Remove old
- CodeBehind grouping mechanism.
-
-2008-06-10 Andres G. Aragoneses <aaragoneses@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProject.cs: Implement feature to allow
- unmanaged project references in a managed project (bug#397490).
-
-2008-06-04 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.AspNet.addin.xml: Bump MD version.
-
-2008-06-02 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProjectConfiguration.cs: Fix path of
- compiled output assembly.
-
-2008-05-28 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProject.cs: Fixes for ASP.NET projects
- with new project model.
- * Templates/WebApplication.xpt.xml: Add some "Hello World"-type code to
- new ASP.NET C# projects. Fixes "Bug 361348 - C# ASP.Net template
- doesn't indicate by default that it's working when run".
-
-2008-05-28 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Parser/PageInfoVisitor.cs: Actually prevent
- register directives overwriting page info with blank info.
-
-2008-05-27 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProject.cs: Fix ASP.NET projects loading
- with the new project model. There *may* be problems with build
- paths.
- * MonoDevelop.AspNet.Parser/PageInfoVisitor.cs: Prevent register
- directives overwriting page info with blank info.
-
-2008-05-22 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetToolboxNode.cs,
- MonoDevelop.AspNet/WebTypeManager.cs, Makefile.am, AspNetAddIn.mdp,
- MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs,
- MonoDevelop.AspNet.Parser/PageDirectiveVisitor.cs: Implemented
- auto-adding of register directives and project references when a
- control is added from the toolbox.
-
-2008-05-22 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Html/HtmlSchemaService.cs,
- MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Remove threaded
- schema loading. Implement an alternative lazy schema loading
- system.
-
-2008-05-22 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.AspNet.addin.xml: Merged the extension points for project
- and solution option panels into a single extension point. A single
- extension point will now be used for all kinds of items. Extension
- conditions can be used to make panels visible only for some
- specific item types.
-
-2008-05-22 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProject.cs,
- MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs: Replaced
- ICompilerResult/DefaultCompilerResult/CompilerResults by a new
- BuildResult class, which has owner information at error level, so
- it is possible to know which project generated an error when
- building a solution. Updated Task and TaskService to use the new
- owner information.
-
-2008-05-21 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProject.cs: Filter out runtime versions
- that aren't 1.1 or 2.0.
-
-2008-05-21 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetToolboxLoader.cs: Record the supported
- runtime versions.
- * MonoDevelop.AspNet/AspNetToolboxNode.cs: Filter the item from the
- text editor toolbox if the supported runtimes don't match the
- current project.
-
-2008-05-21 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProject.cs: The Deserialize event may not
- be called in some file formats, so don't use it to control the
- project loading.
-
-2008-05-21 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProjectBinding.cs,
- MonoDevelop.AspNet/AspNetAppProject.cs,
- MonoDevelop.AspNet/CodeBehind.cs,
- MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs,
- MonoDevelop.AspNet/AspNetParserService.cs,
- MonoDevelop.AspNet/AspNetToolboxNode.cs,
- MonoDevelop.AspNet/WebTypeManager.cs,
- MonoDevelop.AspNet/AspNetAppProjectConfiguration.cs,
- MonoDevelop.AspNet.addin.xml,
- MonoDevelop.AspNet.Deployment/WebDeployService.cs,
- MonoDevelop.AspNet.Deployment/WebDeployOptionsPanel.cs,
- MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs,
- MonoDevelop.AspNet.Gui/AspNetConfigurationPanel.cs,
- MonoDevelop.AspNet.Gui/AspNetConfigurationPanelWidget.cs,
- MonoDevelop.AspNet.Gui/XspOptionsPanel.cs,
- MonoDevelop.AspNet.Gui/XspOptionsPanelWidget.cs,
- gtk-gui/gui.stetic, AspNetAddIn.mdp, Makefile.am,
- MonoDevelop.AspNet.Parser/WebFormReferenceManager.cs,
- MonoDevelop.AspNet.Parser/SuggestedHandlerCompletionData.cs,
- MonoDevelop.AspNet.Parser/Document.cs: New project model changes.
-
-2008-05-19 Michael Hutchinson <mhutchinson@novell.com>
-
- * Makefile.am: Remove conditional build for ASP.NET support; there's no
- longer any reason to disable it.
-
-2008-05-16 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetToolboxNode.cs: Change ITextToolboxNode API
- so that nodes have more control over when they're shown.
-
-2008-05-15 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetToolboxProvider.cs: Moved from AspNetEdit.
- * MonoDevelop.AspNet/AspNetToolboxLoader.cs: Implement correct loading
- of items in System.Web 1.1.
- * MonoDevelop.AspNet/AspNetToolboxNode.cs: Improve support for default
- tag text. Markup for property grid.
- * MonoDevelop.AspNet.addin.xml: Register provider moved from
- AspNetEdit.
- * Makefile.am, AspNetAddIn.mdp: Updated.
-
-2008-05-09 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetDisplayBinding.cs: Remove unneeded display
- binding.
- * MonoDevelop.AspNet/AspNetAppProject.cs: Remove bound WebTypeManager
- instance.
- * MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs: Add copyright.
- * MonoDevelop.AspNet/AspNetToolboxLoader.cs,
- MonoDevelop.AspNet/AspNetToolboxNode.cs: Toolbox loader for ASP.NET
- toolbox items that makes then available to the text editor too.
- * MonoDevelop.AspNet/AspNetParserService.cs: A place for parser-access
- convenience methods.
- * MonoDevelop.AspNet/WebTypeManager.cs: Make static. Take project as
- argument rather than being bound to it.
- * MonoDevelop.AspNet.addin.xml: Register new toolbox loader. Update
- mimetypes. Remove unneeded display binding.
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Prevent some NREs.
- * AspNetAddIn.mdp, Makefile.am: Updated.
- * MonoDevelop.AspNet.Parser/Document.cs: If bound project is null, look
- it up.
- * MonoDevelop.AspNet.Parser/CompilationUnitVisitor.cs: Prevent possible
- NRE.
- * MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Add
- functionality for looking up and generating prefixes, for text
- toolbox nodes.
-
-2008-05-02 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Fix positions when
- selecting nodes.
-
-2008-05-02 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Use a data func for
- the outline treeview. Shorten many overlong lines.
-
-2008-05-02 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Parser.Dom/ParentNode.cs: Make parent nodes
- enumerable.
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Implement document
- outline support for ASP.NET documents. Still a couple of issues:
- the parser doesn't provide the document at startup, so it won't
- show anything until the file is changed. It also may have
- performance problems on large files.
-
-2008-05-02 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProject.cs,
- MonoDevelop.AspNet/CodeBehind.cs,
- MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs,
- MonoDevelop.AspNet.Parser/Document.cs,
- MonoDevelop.AspNet.Parser/CompilationUnitVisitor.cs,
- MonoDevelop.AspNet.Parser/AspNetParser.cs,
- MonoDevelop.AspNet.Parser/PageInfoVisitor.cs,
- MonoDevelop.AspNet.Parser/PageInfo.cs,
- MonoDevelop.AspNet.Parser/AspNetCompilationUnit.cs: Replace
- direscrt use of the ASP.NET docuemnt parser with use of the parser
- service. Flesh out the parsed compilation units.
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Use compilation
- units from parser service instead of parsing on every keystroke.
- * AspNetAddIn.mdp, Makefile.am: Updated
-
-2008-05-02 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.addin.xml,
- MonoDevelop.AspNet/AspNetCodeBehindProvider.cs: Remove use of
- removed extension point.
-
-2008-04-30 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetLanguageBinding.cs,
- MonoDevelop.Html/HtmlCompletionDataProvider.cs,
- MonoDevelop.AspNet.addin.xml, Makefile.am, AspNetAddIn.mdp,
- MonoDevelop.AspNet.Parser/Document.cs,
- MonoDevelop.AspNet.Parser/CompilationUnitVisitor.cs,
- MonoDevelop.AspNet.Parser/AspNetExpressionFinder.cs,
- MonoDevelop.AspNet.Parser/AspNetParser.cs,
- MonoDevelop.AspNet.Parser/AspNetCompilationUnit.cs: Add support for
- simple folding and error underlining in ASP.NET pages.
- * MonoDevelop.AspNet.Parser.Dom/RootNode.cs: Add support for simple
- folding and error underlining in ASP.NET pages. Fix mimetypes.
-
-2008-04-30 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Add ability to
- select paths (partially working).
-
-2008-04-28 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Implement path bar
- support.
- * AspNetAddIn.mdp, Makefile.am,
- MonoDevelop.AspNet.Parser/AspNetIndentStack.cs: Remove old indent
- stack.
-
-2008-04-25 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.StateEngine/AspNetSpecialState.cs,
- MonoDevelop.AspNet.StateEngine/AspNetFreeState.cs: Change XML state
- engine API to allow cloning a single node (as an alternative to the
- whole stack).
-
-2008-04-18 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.StateEngine/AspNetFreeState.cs: Add support for
- XML processing instructions.
-
-2008-04-18 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.StateEngine/AspNetSpecialState.cs,
- MonoDevelop.AspNet.StateEngine/AspNetFreeState.cs: Minimal states
- for ASP.NET parsing. Still need to handle expressions within
- attribute values.
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Use new state engine
- for triggering completion. Haven't exorcised full document parse
- yet -- need it for doctype etc. Also need it (but low-priority,
- threaded?) for filtering existing attributes.
- * Makefile.am, AspNetAddIn.mdp: Updated.
-
-2008-04-14 Michael Hutchinson <mhutchinson@novell.com>
-
-
-
-2008-04-14 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/WebTypeManager.cs: Remove debug code.
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Greatly improve
- completion triggering behaviour. Most noticeable with tag
- attributes.
-
-2008-04-11 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Add server-side
- comments to completion list.
- * MonoDevelop.AspNet.Parser/AspNetIndentStack.cs: Add more states,
- document all the states' meaning, and handle closing some states.
-
-2008-04-11 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Html/HtmlSchema.cs: Avoid unused variable warning.
- * gtk-gui/gui.stetic: Updated.
- * MonoDevelop.AspNet.Parser/AspNetIndentStack.cs: Woked on indent
- stack. Not complete yet.
-
-2008-04-11 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.AspNet.addin.xml: Use the new mime type extension to
- register new file types.
-
-2008-04-08 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Add completion for
- colours, enums and booleans. Walk into base members when attempting
- attribute completion.
-
-2008-04-08 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/CodeBehind.cs: Add method for getting a
- non-designer class.
- * MonoDevelop.AspNet/WebTypeManager.cs,
- MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Add various
- control lookup methods, including listing of ASP.NET controls.
- * MonoDevelop.Html/HtmlSchema.cs: Minor cleanup.
- * MonoDevelop.Html/HtmlSchemaService.cs: Improve lazy loading. Allow
- forced preloading in a thread.
- * MonoDevelop.AspNet.addin.xml: Remove HTML 4 Transitional doctype
- extension, as it's a hardcoded default.
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Track API. Implement
- ASP.NET control and attribute completion. Implement attribute value
- completion (and handler stubbing) for events. Improve completion
- triggering accuracy. Add documentation for completion items.
- Implement close tag completion for parent tags. Lazily load HTML
- schemas, and use default schema while they load. Force HTML schema
- service to load in background when docuement opened.
- * AspNetAddIn.mdp, Makefile.am: Updated.
- * MonoDevelop.AspNet.Parser/SuggestedHandlerCompletionData.cs:
- Completion data type that inserts a method into a class if it's
- picked.
- * MonoDevelop.AspNet.Parser/AspNetIndentStack.cs: Partial (still
- unused) implementation of indenter stack.
-
-2008-04-02 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Parser.Dom/RootNode.cs: Fix build and close
- correct tags.
-
-2008-04-02 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Parser.Dom/ParentNode.cs,
- MonoDevelop.AspNet.Parser.Dom/RootNode.cs: Add a mechanism for
- determining/indicating whether a tag has been closed.
- * MonoDevelop.Html/DocTypeCompletionData.cs: Remove debug message.
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Implement closing
- tag completion for unclosed tags. Reduce spurious completion
- triggering.
-
-2008-04-01 Michael Hutchinson <mhutchinson@novell.com>
-
- * Schemas, Schemas/xhtml1-transitional.xsd, Schemas/W3C-License.html,
- Schemas/xhtml1-strict.xsd, Schemas/readme.txt,
- Schemas/xhtml1-frameset.xsd: Add W3C XHTML 1.0 schemas.
- * MonoDevelop.Html/DocTypeCompletionData.cs,
- MonoDevelop.Html/DocTypeCompletionDataProvider.cs: Implement
- completion provider for doctype declarations.
- * MonoDevelop.Html/HtmlSchema.cs: Change to an association between an
- doctype and an IXmlCompletionProvider from the XmlEditor.
- * MonoDevelop.Html/HtmlSchemaService.cs: Load doctypes and associated
- schemas from extension point. Expose default doctypes, and
- mechanisms for getting completion providers for any registered
- doctype, as well as a completion provider for doctypes themselves.
- * MonoDevelop.Html/DocTypeExtensionNode.cs,
- MonoDevelop.AspNet.addin.xml: Added HTML(/SGML/XML) doctypes as an
- extension point.
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Implement HTML code
- completion for aspx files.
- * Makefile.am, AspNetAddIn.mdp: Updated.
-
-2008-03-10 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Deployment/WebDeployLaunchDialog.cs: Fix namespace
- of panel.
-
-2008-03-06 Michael Hutchinson <mhutchinson@novell.com>
-
- * Templates/WebConfig-SubDir.xft.xml:
- * Templates/WebConfig-Application.xft.xml: Improve descriptions.
-
-2008-03-04 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet/AspNetAppProject.cs: Improve browser launching code.
- * MonoDevelop.AspNet.Gui/BrowserLauncher.cs: Move browser launcher code and
- make it into a re-usable IAsyncOperation.
- * AspNetAddIn.mdp, Makefile.am: Updated.
- * MonoDevelop.AspNet.Parser/Regexes.cs: Improve server tag regex.
-
-2008-03-04 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.AspNet.Deployment/WebDeployService.cs,
- MonoDevelop.AspNet/XspParameters.cs,
- MonoDevelop.AspNet/AspNetAppProject.cs: Worked on gnome hig compliant
- alerts.
-
-2008-03-03 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs: Improve ASP.NET code
- completion. Now parser updates on-the-fly and suggestions are
- contextual.
- * gtk-gui/gui.stetic, AspNetAddIn.mdp, Makefile.am: Updated.
- * MonoDevelop.AspNet.Parser.Dom/ParentNode.cs,
- MonoDevelop.AspNet.Parser.Dom/Node.cs: Minor API name change.
- * MonoDevelop.AspNet.Parser.Dom/RootNode.cs: Catch and collect
- parser-reported exceptions rather than blowing up.
- * MonoDevelop.Html, MonoDevelop.Html/HtmlSchema.cs,
- MonoDevelop.Html/HtmlSchemaService.cs: Skeletion of system for
- schema-controlled HTML completion.
- * MonoDevelop.AspNet.Parser/Document.cs,
- MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs: Make it easier to
- build a parser document directly rather than going through the project.
- * MonoDevelop.AspNet.Parser/Regexes.cs: Utility class, unused right now.
- * MonoDevelop.AspNet.Parser/LocatedParserException.cs: Allow flagging error
- as a warning.
-
-2008-03-02 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Parser.Internal/ParseException.cs: Fix ILocation
- capturing.
- * MonoDevelop.AspNet.Parser.Dom/ParentNode.cs,
- MonoDevelop.AspNet.Parser.Dom/Visitor.cs,
- MonoDevelop.AspNet.Parser.Dom/TagNode.cs: Implement QuickExit so that
- visitor can terminate early.
- * MonoDevelop.AspNet.Parser.Dom/RootNode.cs: Add some support for implicit
- tag closing like in HTML4, making parser more robust with sloppy input.
- Implement QuickExit so that visitor can terminate early.
- * MonoDevelop.AspNet.Parser/LocatedParserException.cs: Fix possible NREs.
- Override ToString().
- * MonoDevelop.AspNet.Parser/PageInfoVisitor.cs: Capture doctype. Use quick
- exit when desired information found.
-
-2008-02-27 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs, Makefile.am,
- AspNetAddIn.mdp, MonoDevelop.AspNet.addin.xml: Add the beginnings of a
- code completion system for ASP.NET.
- * MonoDevelop.AspNet.Parser.Dom/ParentNode.cs,
- MonoDevelop.AspNet.Parser.Dom/TagNode.cs,
- MonoDevelop.AspNet.Parser.Dom/Node.cs,
- MonoDevelop.AspNet.Parser.Dom/RootNode.cs,
- MonoDevelop.AspNet.Parser/Document.cs: Improve error resilience. Improve
- debug messages. Finish the node search system.
-
-2008-02-27 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.AspNet.Parser/Internal:
- * MonoDevelop.AspNet.Parser/Tree:
- * MonoDevelop.AspNet.Parser.Internal:
- * MonoDevelop.AspNet.Parser.Dom:
- * AspNetAddIn.mdp:
- * Makefile.am: Finish restructuring directories to reflect namespaces.
-
- * MonoDevelop.AspNet.addin.xml: Clean up whitespace.
-
-2008-02-27 Michael Hutchinson <mhutchinson@novell.com>
-
- * Deployment, MonoDevelop.AspNet, Gui, Parser,
- MonoDevelop.AspNet.Deployment, MonoDevelop.AspNet.Gui, Project,
- AspNetAddIn.mdp, Makefile.am, MonoDevelop.AspNet.Parser: Restructure
- directories to reflect namespaces.
-
-2008-02-26 Michael Hutchinson <mhutchinson@novell.com>
-
- * Deployment/WebDeployService.cs, Deployment/WebDeployCommands.cs,
- Deployment/WebDeployLaunchDialog.cs,
- Deployment/WebDeployOptionsPanel.cs,
- Deployment/WebDeployOptionsPanelWidget.cs,
- Gui/AspNetConfigurationPanel.cs, Gui/AspNetConfigurationPanelWidget.cs,
- Gui/XspOptionsPanel.cs, Gui/XspOptionsPanelWidget.cs,
- Project/AspNetDisplayBinding.cs, Project/AspNetCommands.cs,
- Project/ProjectFolderNodeBuilderExtension.cs,
- Project/AspNetAppProjectBinding.cs,
- Project/AspNetMSBuildProjectExtension.cs, Project/XspParameters.cs,
- Project/AspNetAppProject.cs, Project/CodeBehind.cs,
- Project/VerifyCodeBehindBuildStep.cs,
- Project/AspNetAppProjectConfiguration.cs,
- Project/AspNetCodeBehindProvider.cs,
- Project/AspNetFileDescriptionTemplate.cs, Project/WebTypeManager.cs,
- gtk-gui/MonoDevelop.AspNet.Gui.XspOptionsPanelWidget.cs,
- gtk-gui/AspNetAddIn.AspNetConfigurationPanelWidget.cs,
- gtk-gui/AspNetAddIn.XspOptionsPanelWidget.cs,
- gtk-gui/MonoDevelop.AspNet.Gui.AspNetConfigurationPanelWidget.cs,
- gtk-gui/gui.stetic, AspNetAddIn.addin.xml, AspNetAddIn.mdp, Makefile.am,
- Parser/Tree/ParentNode.cs, Parser/Tree/ServerCommentNode.cs,
- Parser/Tree/Visitor.cs, Parser/Tree/ServerIncludeNode.cs,
- Parser/Tree/ILocation.cs, Parser/Tree/TagNode.cs,
- Parser/Tree/DirectiveNode.cs, Parser/Tree/Node.cs,
- Parser/Tree/ExpressionNode.cs, Parser/Tree/RootNode.cs,
- Parser/Tree/TextNode.cs, Parser/WebFormReferenceManager.cs,
- Parser/DebugStringVisitor.cs, Parser/Document.cs,
- Parser/MemberListVisitor.cs, Parser/LocatedParserException.cs,
- Parser/Internal/TagType.cs, Parser/Internal/AspTokenizer.cs,
- Parser/Internal/Directive.cs, Parser/Internal/AspParser.cs,
- Parser/Internal/TagAttributes.cs, Parser/Internal/Location.cs,
- Parser/Internal/ParseException.cs, Parser/Internal/StrUtils.cs,
- Parser/DocumentReferenceManager.cs, Parser/PageInfoVisitor.cs,
- MonoDevelop.AspNet.addin.xml: Finish renaming AspNetAddIn and its
- corresponding namespaces to MonoDevelop.Aspnet.
-
-2008-02-26 Michael Hutchinson <mhutchinson@novell.com>
-
- * Project/AspNetFileDescriptionTemplate.cs: Fix string formatting call.
-
-2008-02-26 Michael Hutchinson <mhutchinson@novell.com>
-
- * AspNetAddIn.mdp, Makefile.am, Parser/Tree/ParentNode.cs,
- Parser/Tree/ServerCommentNode.cs, Parser/Tree/Visitor.cs,
- Parser/Tree/TagNode.cs, Parser/Tree/DirectiveNode.cs,
- Parser/Tree/Node.cs, Parser/Tree/ExpressionNode.cs,
- Parser/Tree/RootNode.cs, Parser/Tree/TextNode.cs,
- Parser/DebugStringVisitor.cs, Parser/Document.cs,
- Parser/Internal/Location.cs: Implement dumping a debug view of the parse
- tree, and binary searching for the parse node at a given location in the
- file.
-
-2008-02-23 Mike Krüger <mkrueger@novell.com>
-
- * AspNetAddIn.mdp, Makefile.am: Removed some unused glade and gnome-sharp
- references (only the unused). But I'll continue to remove glade, we need
- to lower the dependency tree a bit.
-
-2008-02-20 Marek Safar <marek.safar@gmail.com>
-
- * Project/VerifyCodeBehindBuildStep.cs: Fixed missing parenthesis.
-
-2008-02-20 Michael Hutchinson <mhutchinson@novell.com>
-
- * Project/IAspNetLanguageBinding.cs,
- Project/AspNetFileDescriptionTemplate.cs,
- Templates/WebService-CodeBehind.xft.xml,
- Templates/WebForm-CodeBehind.xft.xml,
- Templates/MasterPage-Empty.xft.xml,
- Templates/WebControl-CodeBehindNonPartial.xft.xml,
- Templates/WebService-Empty.xft.xml,
- Templates/WebHandler-CodeBehind.xft.xml,
- Templates/WebForm-Empty.xft.xml,
- Templates/WebControl-CodeBehind.xft.xml,
- Templates/MasterPage-CodeBehindNonPartial.xft.xml,
- Templates/WebConfig-Application.xft.xml,
- Templates/WebHandler-Empty.xft.xml, Templates/GlobalAsax-Empty.xft.xml,
- Templates/WebControl-Empty.xft.xml,
- Templates/MasterPage-CodeBehind.xft.xml,
- Templates/WebForm-CodeBehindNonPartial.xft.xml: Add a mechanism for
- having the ASP.NET language code be different from MD's internal
- language codes, and use it to make VB.NET pages work OOTB.
- * AspNetAddIn.mdp, Makefile.am: Updated.
- * Parser/Tree/Visitor.cs, Parser/Tree/ExpressionNode.cs,
- Parser/Tree/RootNode.cs: The way the parser's currently used, it doesn't
- need to understand expressions, so rather than throwing a
- NotImplementedException, just insert them into the AST and carry on.
- Means that CodeBehind generation can be used for a much larger subset of
- aspx pages.
-
-2008-02-09 Mike Krüger <mkrueger@novell.com>
-
- * AspNetAddIn.addin.xml, AspNetAddIn.mdp, Makefile.am: Removed source editor
- dependency.
-
-2008-02-05 Mike Krüger <mkrueger@novell.com>
-
- * AspNetAddIn.addin.xml: Structured main menu.
-
-2008-01-25 Lluis Sanchez Gual <lluis@novell.com>
-
- * AspNetAddIn.addin.xml: Update MD version.
-
-2008-01-22 Lluis Sanchez Gual <lluis@novell.com>
-
- * AspNetAddIn.addin.xml: Updated add-in category and description.
-
-2008-01-19 Ankit Jain <jankit@novell.com>
-
- * AspNetMSBuildProjectExtension.cs: Track changes in MSBuildProjectExtension.
-
-2008-01-15 Michael Hutchinson <mhutchinson@novell.com>
-
- * Templates/WebService-CodeBehind.xft.xml,
- Templates/WebForm-CodeBehind.xft.xml,
- Templates/MasterPage-Empty.xft.xml,
- Templates/WebControl-CodeBehindNonPartial.xft.xml,
- Templates/WebConfig-SubDir.xft.xml, Templates/WebService-Empty.xft.xml,
- Templates/WebHandler-CodeBehind.xft.xml,
- Templates/WebForm-Empty.xft.xml,
- Templates/GlobalAsax-CodeBehind.xft.xml,
- Templates/WebControl-CodeBehind.xft.xml,
- Templates/MasterPage-CodeBehindNonPartial.xft.xml,
- Templates/WebConfig-Application.xft.xml,
- Templates/WebApplication-Empty.xpt.xml,
- Templates/WebHandler-Empty.xft.xml, Templates/GlobalAsax-Empty.xft.xml,
- Templates/WebControl-Empty.xft.xml,
- Templates/MasterPage-CodeBehind.xft.xml,
- Templates/WebForm-CodeBehindNonPartial.xft.xml,
- Templates/WebApplication.xpt.xml: Make template categories translatable.
-
-2008-01-03 Michael Hutchinson <mhutchinson@novell.com>
-
- * Project/VerifyCodeBehindBuildStep.cs: Only try to add members to
- CodeBehind if the needed refactoring options are supported.
-
-2008-01-02 Michael Hutchinson <mhutchinson@novell.com>
-
- * Templates/WebService-CodeBehind.xft.xml,
- Templates/WebForm-CodeBehind.xft.xml,
- Templates/WebControl-CodeBehindNonPartial.xft.xml,
- Templates/WebService-Empty.xft.xml,
- Templates/WebHandler-CodeBehind.xft.xml,
- Templates/WebControl-CodeBehind.xft.xml,
- Templates/MasterPage-CodeBehindNonPartial.xft.xml,
- Templates/WebHandler-Empty.xft.xml,
- Templates/MasterPage-CodeBehind.xft.xml,
- Templates/WebForm-CodeBehindNonPartial.xft.xml: Use ${EscapedIdentifier}
- instead of ${Name} so that files can be created with names like
- "Default" and work correctly in VB.NET.
-
-2007-12-14 Lluis Sanchez Gual <lluis@novell.com>
-
- * AspNetAddIn.mdp: Updated project files. The order of extended properties
- won't change anymore.
-
-2007-12-13 Lluis Sanchez Gual <lluis@novell.com>
-
- * Project/AspNetAppProject.cs: Moved PlatformService to MD.Core.Gui. Removed
- old FileIconService class, which is now implemented in PlatformService.
-
-2007-12-13 Lluis Sanchez Gual <lluis@novell.com>
-
- * Deployment/WebDeployTargetEditor.cs: Track api changes.
- * gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployLaunchDialog.cs,
- gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployOptionsPanelWidget.cs,
- gtk-gui/gui.stetic: Updated.
-
-2007-12-13 Lluis Sanchez Gual <lluis@novell.com>
-
- * Project/AspNetAppProject.cs: API cleanup.
-
-2007-12-13 Lluis Sanchez Gual <lluis@novell.com>
-
- * gtk-gui/AspNetAddIn.XspOptionsPanelWidget.cs,
- gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployTargetEditor.cs,
- gtk-gui/gui.stetic: Fix alignment of some labels.
-
-2007-12-12 Lluis Sanchez Gual <lluis@novell.com>
-
- * AspNetAddIn.addin.xml: Bump add-in versions.
-
-2007-12-06 Geoff Norton <gnorton@novell.com>
-
- * Project/AspNetAppProject.cs: Use PlatformService to launch a browser
- instead of Gnome.Url.Show.
-
-2007-12-04 Lluis Sanchez Gual <lluis@novell.com>
-
- * gtk-gui/objects.xml, AspNetAddIn.addin.xml, AspNetAddIn.mdp, Makefile.am:
- Directory reorganization.
-
-2007-11-20 Michael Hutchinson <mhutchinson@novell.com>
-
- * Project/AspNetAppProject.cs: Don't try to compile if no files are set to
- compile, as compilers/bindings (e.g. CSharpBinding) will error out if no
- files are set to compile.
-
-2007-11-09 Michael Hutchinson <mhutchinson@novell.com>
-
- * Deployment/WebDeployService.cs, Project/AspNetAppProject.cs,
- Parser/Document.cs: Track LoggingService API changes.
-
-2007-11-02 Lluis Sanchez Gual <lluis@novell.com>
-
- * Project/VerifyCodeBehindBuildStep.cs: Use RootCombine instead of
- CurrentOpenCombine when possible.
-
-2007-10-30 Michael Hutchinson <mhutchinson@novell.com>
-
- * Deployment/WebDeployService.cs, Deployment/WebDeployCommands.cs,
- Deployment/WebDeployLaunchDialog.cs,
- gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployLaunchDialog.cs,
- gtk-gui/gui.stetic: Enable web deploy dialog even if no targets exist,
- but add a button for editng/adding targets. Fixes "Bug 337804 - Web
- Deployment should be easier to configure".
-
-2007-10-30 Michael Hutchinson <mhutchinson@novell.com>
-
- * Project/AspNetAppProjectConfiguration.cs: Fix "Bug 337819 - Directory
- change warning shown when creating a new Web Project.". Re-opens "Bug
- 333419 - Output dir in ASP.NET project don't work", though it's now
- possible to work around the latter by setting an XML attribute in the
- project file.
-
-2007-10-30 Lluis Sanchez Gual <lluis@novell.com>
-
- * AspNetAddIn.addin.xml: Use the html file icon for some known asp.net
- files.
-
-2007-10-29 Michael Hutchinson <mhutchinson@novell.com>
-
- * AspNetAddIn.addin.xml: Use WebHandler-CodeBehind template.
-
-2007-10-29 Lluis Sanchez Gual <lluis@novell.com>
-
- * AspNetAddIn.addin.xml: Bump MD version.
-
-2007-10-26 Michael Hutchinson <mhutchinson@novell.com>
-
- * Project/VerifyCodeBehindBuildStep.cs: Fix string formatting index in a
- gettext call.
-
-2007-10-25 Michael Hutchinson <mhutchinson@novell.com>
-
- * Project/AspNetAppProject.cs: No need to handle monitor's cancel request,
- as AggregatedOperationMonitor does this for us.
-
-2007-10-24 Lluis Sanchez Gual <lluis@novell.com>
-
- * Templates/WebApplication-Empty.xpt.xml, Templates/WebApplication.xpt.xml:
- Updated project icons.
-
-2007-10-17 Michael Hutchinson <mhutchinson@novell.com>
-
- * Project/WebTypeManager.cs: Don't do web.config control lookups for 1.1
- projects.
- * Parser/WebFormReferenceManager.cs: Track API change.
- * Parser/MemberListVisitor.cs, Parser/DocumentReferenceManager.cs: Handle
- the "type" property of "input" HTML controls.
-
-2007-10-16 Michael Hutchinson <mhutchinson@novell.com>
-
- * Project/AspNetAppProject.cs, Project/VerifyCodeBehindBuildStep.cs,
- Parser/MemberListVisitor.cs, Parser/LocatedParserException.cs,
- Parser/Internal/ParseException.cs: Rework error handling to include
- location info for document parse errors.
- * Project/WebTypeManager.cs, Parser/WebFormReferenceManager.cs,
- Parser/DocumentReferenceManager.cs: Rework type lookups for registered
- controls. Now handles custom controls and user controls, whether
- registered in aspx file or web.config.
- * AspNetAddIn.mdp, Makefile.am: Updated.
- * Parser/Document.cs: Collect parse errors instead of dying in constructor.
-
-2007-10-15 Michael Hutchinson <mhutchinson@novell.com>
-
- * Project/AspNetAppProject.cs: Copy refs to output path during compile. Not
- sure it's necessary, as the Run/Deploy commands do the copy too, and
- people shouldn't be running their site without executing one of these
- commands first. However, we have had a few bug reports about this
- behaviour, so it's better to do what people expect.
- * Project/VerifyCodeBehindBuildStep.cs: Report ASP.NET parser and Codebehind
- member generation errors as compile warnings, with file/line number
- info. Use Gettext for i18n of warnings.
- * AspNetAddIn.mdp: Updated.
-
-2007-10-12 Michael Hutchinson <mhutchinson@novell.com>
-
- * Project/AspNetAppProjectConfiguration.cs: Allowing changing the output
- directory to a directory other than "bin", but only after warning the
- user that this may prevent the projct from running/deploying correctly.
- Enables some unusual use cases, and doesn't affect other people.
-
-2007-10-12 Michael Hutchinson <mhutchinson@novell.com>
-
- * Project/VerifyCodeBehindBuildStep.cs: Change how partial classes are
- handled during code generation to work around the fact that they don't
- have all of the information that the 'full' class does.
-
-2007-10-08 Michael Hutchinson <mhutchinson@novell.com>
-
- * Project/AspNetAppProject.cs: Use xsp2 if using 2.0 runtime (regression
- introduced in previous commit).
-
-2007-10-03 Michael Hutchinson <mhutchinson@novell.com>
-
- * Project/AspNetAppProject.cs: Launch xsp directly rather than via SH. Made
- possible by changes to IExecutionHandler/ProcessService allowing setting
- environment variables on new console processes. Fixes xsp shutdown (xsp
- instances were not closes and were blocking ports). Hopefully fixes
- #330327.
-
- Also, don't force copy output refs.
-
-2007-10-02 Michael Hutchinson <mhutchinson@novell.com>
-
- * Deployment/WebDeployService.cs: Build before deploying.
- * Deployment/WebDeployTargetEditor.cs: Catch errors if file copy handler
- can't be found.
-
-2007-10-02 Michael Hutchinson <mhutchinson@novell.com>
-
- * Project/VerifyCodeBehindBuildStep.cs: Make errors in Codebehind generation
- into warnings rather than preventing build.
-
-2007-09-28 Michael Hutchinson <mhutchinson@novell.com>
-
- * Project/AspNetAppProject.cs: Check for xsp before running it.
-
-2007-09-28 Michael Hutchinson <mhutchinson@novell.com>
-
- * Deployment/WebTargetEditor.cs, Deployment/WebDeployService.cs,
- Deployment/WebDeployCommands.cs, Deployment/WebDeployResolver.cs,
- Deployment/WebDeployTargetCollection.cs, Deployment/WebDeployTarget.cs,
- Deployment/WebDeployWindow.cs, Deployment/WebDeployLaunchDialog.cs,
- Deployment/WebDeployOptionsPanel.cs,
- Deployment/WebDeployTargetEditor.cs,
- Deployment/WebDeployOptionsPanelWidget.cs, AspNetAddIn.addin.xml,
- gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployLaunchDialog.cs,
- gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployTargetEditor.cs,
- gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployOptionsPanelWidget.cs,
- gtk-gui/MonoDevelop.AspNet.Deployment.WebTargetEditor.cs: Add new web
- deployment UI and services.
- * Project/AspNetAppProject.cs: Add WebDeployTargets property. Use new web
- targets when returning DeployFiles. Fix NRE when language binding not
- recognised.
- * gtk-gui/generated.cs, gtk-gui/AspNetAddIn.XspOptionsPanelWidget.cs,
- gtk-gui/objects.xml, gtk-gui/gui.stetic, AspNetAddIn.mdp, Makefile.am,
- Gui/XspOptionsPanel.cs: Updated.
-
-2007-09-27 Ankit Jain <jankit@novell.com>
-
- Add support for VS2005 WebApplication projects.
- * Project/AspNetMSBuildProjectExtension.cs: New.
- * AspNetAddIn.addin.xml: Add Extension.
- * AspNetAddIn.mdp: Update.
- * Makefile.am: Update.
-
-2007-09-21 Michael Hutchinson <mhutchinson@novell.com>
-
- * Project/AspNetAppProject.cs: Make write-safe by using TextFile API rather
- than direct save.
-
-2007-09-21 Lluis Sanchez Gual <lluis@novell.com>
-
- * AspNetAddIn.addin.xml: Bump MD version.
-
-2007-09-20 Michael Hutchinson <mhutchinson@novell.com>
-
- * Project/AspNetAppProject.cs: Added reference change handlers to update the
- referenced assembly list in web.config.
-
-2007-09-12 Michael Hutchinson <mhutchinson@novell.com>
-
- * Gui/XspOptionsPanelWidget.cs,
- gtk-gui/AspNetAddIn.XspOptionsPanelWidget.cs, gtk-gui/gui.stetic: Fix
- bugs from stetic conversion: panel status update handler and permissible
- port range setting.
- * Project/AspNetAppProject.cs: Restructure execution code to handle errors
- better and make it possible to set MONO_OPTIONS="--debug" when calling
- xsp.
-
-2007-09-11 Michael Hutchinson <mhutchinson@novell.com>
-
- * Gui/XspOptionsPanel.cs, Gui/XspOptionsPanelWidget.cs, AspNetAddIn.glade,
- gtk-gui/generated.cs,
- gtk-gui/AspNetAddIn.AspNetConfigurationPanelWidget.cs,
- gtk-gui/AspNetAddIn.XspOptionsPanelWidget.cs, gtk-gui/gui.stetic,
- AspNetAddIn.mdp, Makefile.am: Migrate XspOptionsPanel from glade to
- stetic.
- * Gui/AspNetConfigurationPanelWidget.cs,
- Project/AspNetFileDescriptionTemplate.cs: Remove unused fields.
-
-2007-09-11 Michael Hutchinson <mhutchinson@novell.com>
-
- * Project/ProjectFolderNodeBuilderExtension.cs, Project/AspNetCommands.cs,
- AspNetAddIn.addin.xml, AspNetAddIn.mdp, Makefile.am: Add a command/menu
- for creating ASP.NET special directories.
- * Project/AspNetAppProject.cs: Add more WebSubtypes. Use GettextCatalog for
- MessageService call. Add method for discovering non-existent special
- ASP.NET directories.
- * Project/VerifyCodeBehindBuildStep.cs: Don't prevent compilation if
- documents can't be parsed.
-
-2007-09-10 Michael Hutchinson <mhutchinson@novell.com>
-
- * Project/AspNetAppProject.cs: Fire SetDefaultBuildAction only when adding
- new files, not when deserialising the project. Add a "Code" WebSubtype.
- * AspNetAddIn.addin.xml, AspNetAddIn.mdp, Makefile.am,
- Templates/WebConfig-SubDir.xft.xml,
- Templates/WebConfig-Application.xft.xml: Add Web.config templates.
- * Templates/WebForm-CodeBehind.xft.xml,
- Templates/GlobalAsax-CodeBehind.xft.xml,
- Templates/WebControl-CodeBehind.xft.xml,
- Templates/GlobalAsax-Empty.xft.xml,
- Templates/MasterPage-CodeBehind.xft.xml: More tweaks to templates.
- * Templates/WebApplication.xpt.xml: Add web.config to default project
- template.
-
-2007-09-10 Michael Hutchinson <mhutchinson@novell.com>
-
- * AspNetAddIn.addin.xml, AspNetAddIn.mdp, Makefile.am: Updated.
- * Templates/WebService-CodeBehind.xft.xml,
- Templates/WebForm-CodeBehind.xft.xml,
- Templates/MasterPage-Empty.xft.xml, Templates/WebService-Empty.xft.xml,
- Templates/WebForm-Empty.xft.xml,
- Templates/WebHandler-CodeBehind.xft.xml,
- Templates/WebControl-CodeBehind.xft.xml,
- Templates/WebHandler-Empty.xft.xml,
- Templates/MasterPage-CodeBehind.xft.xml,
- Templates/WebControl-Empty.xft.xml, Templates/WebApplication.xpt.xml:
- Remove deprecated FileOptions node.
- * Templates/WebControl-CodeBehindNonPartial.xft.xml,
- Templates/MasterPage-CodeBehindNonPartial.xft.xml,
- Templates/WebForm-CodeBehindNonPartial.xft.xml: Add non-partial-type
- templates.
- * Templates/GlobalAsax-CodeBehind.xft.xml,
- Templates/GlobalAsax-Empty.xft.xml: Add Global.asax templates.
- * Templates/WebApplication-Empty.xpt.xml: Add empty project template.
-
-2007-09-06 Michael Hutchinson <mhutchinson@novell.com>
-
- * Templates/WebService-CodeBehind.xft.xml,
- Templates/WebHandler-Empty.xft.xml, Templates/WebService-Empty.xft.xml,
- Templates/WebControl-Empty.xft.xml, Templates/WebForm-Empty.xft.xml,
- Templates/WebHandler-CodeBehind.xft.xml: Limit to be shown for ASP.NET
- projects.
- * Templates/WebControl-CodeBehind.xft.xml,
- Templates/WebForm-CodeBehind.xft.xml: Limit to be shown for ASP.NET
- projects. Require partial class support.
- * Templates/MasterPage-Empty.xft.xml: Limit to be shown for ASP.NET
- projects. Require 2.0 runtime.
- * Templates/MasterPage-CodeBehind.xft.xml: Limit to be shown for ASP.NET
- projects. Require 2.0 runtime. Require partial class support.
-
-2007-09-05 Michael Hutchinson <mhutchinson@novell.com>
-
- * Project/AspNetAppProject.cs: Set correct BuildAction for added ASP.NET
- files. Convert cachedDocuments to generic collection.
-
-2007-09-05 Michael Hutchinson <mhutchinson@novell.com>
-
- * AspNetAddIn.addin.xml, AspNetAddIn.mdp, Makefile.am,
- Templates/CodeBehindWebControl.xft.xml,
- Templates/CodeBehindWebForm.xft.xml,
- Templates/CodeBehindWebHandler.xft.xml,
- Templates/CodeBehindWebService.xft.xml,
- Templates/EmptyWebControl.xft.xml, Templates/EmptyWebForm.xft.xml,
- Templates/EmptyWebHandler.xft.xml, Templates/EmptyWebService.xft.xml,
- Templates/MasterPage-CodeBehind.xft.xml,
- Templates/MasterPage-Empty.xft.xml,
- Templates/MasterPageWithCodeBehind.xft.xml,
- Templates/MasterPageWithNoCodeBehind.xft.xml,
- Templates/WebControl-CodeBehind.xft.xml,
- Templates/WebControl-Empty.xft.xml,
- Templates/WebForm-CodeBehind.xft.xml, Templates/WebForm-Empty.xft.xml,
- Templates/WebHandler-CodeBehind.xft.xml,
- Templates/WebHandler-Empty.xft.xml,
- Templates/WebService-CodeBehind.xft.xml,
- Templates/WebService-Empty.xft.xml, Templates/WebApplication.xpt.xml:
- Rename template files.
-
-2007-09-05 Michael Hutchinson <mhutchinson@novell.com>
-
- * Templates/CodeBehindWebControl.xft.xml,
- Templates/CodeBehindWebForm.xft.xml,
- Templates/MasterPageWithCodeBehind.xft.xml: Use SuppressAutoOpen to stop
- designer CodeBehind files from opening automatically when created.
-
-2007-09-05 Michael Hutchinson <mhutchinson@novell.com>
-
- * Templates/WebApplication.xpt.xml: Use new FileReferenceTemplate to
- reference CodeBehindWebForm instead of duplicating whole template.
-
-2007-09-05 Michael Hutchinson <mhutchinson@novell.com>
-
- * Project/XspParameters.cs: Fix some compile warnings.
- * Templates/CodeBehindWebHandler.xft.xml, Templates/EmptyWebForm.xft.xml,
- Templates/CodeBehindWebControl.xft.xml,
- Templates/CodeBehindWebService.xft.xml,
- Templates/CodeBehindWebForm.xft.xml,
- Templates/MasterPageWithNoCodeBehind.xft.xml,
- Templates/MasterPageWithCodeBehind.xft.xml,
- Templates/EmptyWebHandler.xft.xml, Templates/WebApplication.xpt.xml,
- Templates/EmptyWebControl.xft.xml, Templates/EmptyWebService.xft.xml:
- Use partial classes where possible. Default to deploying ASP.NET files
- rather than building them. Remove "Hello world" code. Default to 2.0
- runtime.
-
-2007-08-31 Mike Krüger <mkrueger@novell.com>
-
- * Gui/AspNetConfigurationPanel.cs, Gui/AspNetConfigurationPanelWidget.cs,
- Gui/XspOptionsPanel.cs: Changes due to new property infrastructure.
-
-2007-08-31 Ankit Jain <jankit@novell.com>
-
- * Templates/WebApplication.xpt.xml: Set BuildAction for aspx file to
- FileCopy.
-
-2007-08-09 Lluis Sanchez Gual <lluis@novell.com>
-
- * AspNetAddIn.addin.xml, AspNetAddIn.mdp, Makefile.am: Reorganized the
- extension point hierarchy. Embedded all add-in manifests as resources.
-
-2007-08-01 Michael Hutchinson <m.j.hutchinson@gmail.com>
-
- * AspNetAppProject.cs: Fix the IDeployable implementation. The target
- directory names should be handled by an ASP.NET-specific
- IDirectoryResolver, not the GetDeployFiles method.
-
-2007-07-25 Lluis Sanchez Gual <lluis@novell.com>
-
- * AspNetAddIn.mdp: Updated.
-
-2007-06-19 Michael Hutchinson <m.j.hutchinson@gmail.com>
-
- * Project/CodeBehind.cs: Oops, remove some development code in which
- caused sharing violations.
-
-2007-06-19 Lluis Sanchez Gual <lluis@novell.com>
-
- * gtk-gui/AspNetAddIn.AspNetConfigurationPanelWidget.cs,
- AspNetAddIn.mdp: Changed some old 2.4 dependencies to 2.8. Use
- GettextCatalog for localizable strings.
-
-2007-06-18 Michael Hutchinson <m.j.hutchinson@gmail.com>
-
- * Gui/AspNetConfigurationPanel.cs,
- Gui/AspNetConfigurationPanelWidget.cs, AspNetAddIn.glade,
- gtk-gui/generated.cs,
- gtk-gui/AspNetAddIn.AspNetConfigurationPanelWidget.cs,
- gtk-gui/objects.xml, gtk-gui/gui.stetic: More Stetic! Convert
- configuration panel widget from Glade to Stetic.
- * Project/CodeBehind.cs: Some shared code for handling CodeBehind.
- * Project/VerifyCodeBehindBuildStep.cs: Use partial classes if they're
- present.
- * Project/AspNetAppProjectConfiguration.cs: Silence the error when user
- picks non-library target type. Rename AutoGenerateCodeBehindMembers
- to GenerateNonPartialCodeBehindMembers.
- * Project/AspNetCodeBehindProvider.cs: Use code from Codebehind class.
- * AspNetAddIn.mdp, Makefile.am: Added files.
-
-2007-06-08 Michael Hutchinson <m.j.hutchinson@gmail.com>
-
- * Parser/Document.cs: Report parse errors on console, not in dialogue.
-
- * Parser/PageInfoVisitor.cs: Add CodeFile property.
-
-2007-05-31 Lluis Sanchez Gual <lluis@novell.com>
-
- * AspNetAddIn.addin.xml: Fix typo.
-
-2007-05-11 Lluis Sanchez Gual <lluis@novell.com>
-
- * AspNetAddIn.mdp: Copy the .addins.xml file to the output dir.
-
-2007-05-11 Lluis Sanchez Gual <lluis@novell.com>
-
- * AspNetAddIn.mdp: Don't copy project references.
-
-2007-05-09 Lluis Sanchez Gual <lluis@novell.com>
-
- * AspNetAddIn.mdp, Makefile.am: Reference shared assemblies from the
- correct location.
-
-2007-05-08 Lluis Sanchez Gual <lluis@novell.com>
-
- * AspNetAddIn.addin.xml: Fix add-in dependency.
-
-2007-05-07 Michael Hutchinson <m.j.hutchinson@gmail.com>
-
- * Project/VerifyCodeBehindBuildStep.cs: Make updating files thread-safe.
-
-2007-05-04 Lluis Sanchez Gual <lluis@novell.com>
-
- * AspNetAddIn.addin.xml, AspNetAddIn.mdp, Makefile.am: Migration to
- Mono.Addins.
-
-2007-04-21 Lluis Sanchez Gual <lluis@novell.com>
-
- * Project/AspNetAppProject.cs: Track api changes.
-
-2007-04-19 Lluis Sanchez Gual <lluis@novell.com>
-
- * Project/AspNetAppProject.cs: Track api changes.
- * AspNetAddIn.addin.xml, Makefile.am: Added dependency to
- MonoDevelop.Deployment.
- * AspNetAddIn.mdp: Don't copy referenced assemblies.
-
-2007-02-25 Michael Hutchinson <m.j.hutchinson@gmail.com>
-
- * Project/AspNetAppProject.cs:
- Remove DoPreBuild override as it's a deprecated build extension point.
- Now set AspNetAppProjectConfiguration.SourceDirectory via a FileName
- override, which is more robust.
- Implement GetDeployFiles to handle ASP.NET bin folder.
-
-2007-02-21 Ankit Jain <jankit@novell.com>
-
- * Project/VerifyCodeBehindBuildStep.cs: Warn the user if
- AutoGenerateCodeBehindMembers is false.
-
-2007-02-16 Lluis Sanchez Gual <lluis@novell.com>
-
- * AspNetAddIn.addin.xml: Change add-in versions to 0.13.
-
-2007-02-15 Lluis Sanchez Gual <lluis@novell.com>
-
- * AspNetAddIn.mdp, Makefile.am: Synchronized the MD project and the
- Makefile
-
-2007-02-07 Lluis Sanchez Gual <lluis@novell.com>
-
- * Project/VerifyCodeBehindBuildStep.cs, AspNetAddIn.addin.xml,
- AspNetAddIn.mdp: Replace the IBuildStep implementation by a
- ProjectServiceExtension subclass. IBuildStep is not available
- anymore.
-
-2007-02-05 Michael Hutchinson <m.j.hutchinson@gmail.com>
-
- * Templates/MasterPageWithCodeBehind.xft.xml:
- * Project/AspNetDisplayBinding.cs:
- * Parser/PageInfoVisitor.cs: Fix errors in last commit that came from
- my misunderstanding of how the CodeBehind model doesn't apply to
- MasterPages. The CodeBehindService will need support for the
- CodeBeside model at some point.
-
-2007-02-04 Michael Hutchinson <m.j.hutchinson@gmail.com>
-
- * Parser/Tree/DirectiveNode.cs: Workaround for parser bug, so that
- Codebehind for MasterPages can be found.
-
- * Parser/Internal/*: Update from mcs class tree.
-
- * Parser/PageInfoVisitor.cs:
- * Project/AspNetDisplayBinding.cs: Handle MasterPages.
-
-2007-02-04 John Anderson <sontek@gmail.com>
-
- * Templates/MasterPageWithNoCodeBehind.xft.xml:
- * Templates/MasterPageWithCodeBehind.xft.xml:
- * Makefile.am:
- * AspNetAddIn.mdp:
- * AspNetAddIn.addin.xml: Added templates for MasterPages.
-
-2007-02-01 Michael Hutchinson <m.j.hutchinson@gmail.com>
-
- * Project/AspNetAppProject.cs: More informative error messages.
-
- * Project/AspNetCodeBehindProvider.cs: Track API changes.
-
-2007-01-18 Michael Hutchinson <m.j.hutchinson@gmail.com>
-
- * Templates/CodeBehindWebControl.xft.xml: Use the proper filename
- rather than "Default".
-
-2007-01-18 Michael Hutchinson <m.j.hutchinson@gmail.com>
-
- * AspNetAddIn/Parser/Internal/TagType.cs:
- * AspNetAddIn/Parser/Internal/AspParser.cs:
- * AspNetAddIn/Parser/Internal/ParseException.cs:
- Make classes and members public so that AspNetAddIn's parser can
- consume them. Can revert this when AspNetEdit uses the whole parser
- rather that just the tokeniser as it does ATM.
-
-2006-09-19 Jacob Ilsø Christensen <jacobilsoe@gmail.com>
-
- * AspNetAddIn.mdp: Updated.
-
-2006-09-16 Michael Hutchinson <m.j.hutchinson@gmail.com>
-
- * Gui/AspNetConfigurationPanel.cs:
- * AspNetAddIn.glade:
- * Project/AspNetAppProjectConfiguration.cs:
- * AspNetAddIn.addin.xml:
- * Project/VerifyCodeBehindBuildStep.cs:
- Added a new option that can be used to disable compilation-time
- CodeBehind verification for different configurations.
-
- * Makefile.am:
- * AspNetAddIn.mdp: Add Gui/AspNetConfigurationPanel.cs to the build.
-
-2006-09-13 Michael Hutchinson <m.j.hutchinson@gmail.com>
-
- * Project/AspNetAppProject.cs: Fix parsed document caching. Check if file
- can be parsed before parsing, instead of at cache lookup.
-
-2006-08-21 Michael Hutchinson <m.j.hutchinson@gmail.com>
-
- * Project/AspNetDisplayBinding.cs:
- * Project/AspNetAppProject.cs:
- * Parser/PageInfoVisitor.cs: Add support for Global.asax CodeBehind.
-
- * Project/AspNetCodeBehindProvider.cs:
- * Project/AspNetAppProject.cs: Don't try to create Documents for files
- that we can't parse.
-
- * Project/AspNetAppProject.cs: Improve web server launch checking code.
-
-2006-08-21 Michael Hutchinson <m.j.hutchinson@gmail.com>
-
- * Project/VerifyCodeBehindBuildStep.cs: Make sure modified files are
- saved before compilation.
- Update the parser database to make sure our parse information is
- valid.
-
- * Project/AspNetAppProject.cs: Add an operation cancel handler.
-
- * Parser/Document.cs: trap file loading exceptions.
-
-2006-08-05 Michael Hutchinson <m.j.hutchinson@gmail.com>
-
- * Project/VerifyCodeBehindBuildStep.cs:
- Track changes in BindingService.
- * AspNetAddIn.mdp: Remove nonexistent file.
-
-2006-07-25 Michael Hutchinson <m.j.hutchinson@gmail.com>
-
- * Project/AspNetAppProject.cs:
- Become aware of Project.DoPreBuild; let it create the correct output
- directory for us.
- * Project/VerifyCodeBehindBuildStep.cs:
- Refactored some functionality into Monodevelop.DesignerSupport.
- BindingService.
-
-
-2006-07-21 Michael Hutchinson <m.j.hutchinson@gmail.com>
-
- * Project/AspNetAppProject.cs:
- * Project/VerifyCodeBehindBuildStep.cs:
- Move Codebehind verification into a separate build step.
-
- * Project/CodeBehindClassBuilder.cs:
- * Project/AspNetCodeBehindProvider.cs:
- Deleted. Functionality moved to MonoDevelop.DesignerSupport.
- * Project/AspNetAppProject.cs:
- * AspNetAddIn.addin.xml:
- * Project/CodeBehindProjectFileExtension.cs:
- Implement CodeBehindProvider architecture.
-
- * Parser/PageInfoVisitor.cs:
- Find CodeBehind info for more filetypes.
-
- * Templates/CodeBehindWebHandler.xft.xml:
- * Templates/CodeBehindWebControl.xft.xml:
- * Templates/CodeBehindWebForm.xft.xml:
- * Templates/WebApplication.xpt.xml:
- Remove unnecessary underscores in CodeBehind class names.
-
- * Templates/CodeBehindWebService.xft.xml:
- * Templates/EmptyWebService.xft.xml:
- New templates.
-
-
- * Project/AspNetDisplayBinding.cs:
- New file. For now, makes it possible to open ASP.NET mime types.
-
- * AspNetAddIn.addin.xml:
- * Makefile.am:
- * AspNetAddIn.mdp:
- Include new files, remove old ones.
-
-2006-07-04 Michael Hutchinson <m.j.hutchinson@gmail.com>
-
- * Templates/CodeBehindWebControl.xft.xml:
- * Templates/CodeBehindWebForm.xft.xml:
-
- * Project/AspNetAppProject.cs:
- * Project/CodeBehindProjectFileExtension.cs:
- Don't always throw exceptions when CodeBehind not found.
-
- * AspNetAddIn.addin.xml:
- * Project/CodeBehindProjectFileExtension.cs:
- Change "HideCodeBehind" option to "ShowCodeBehindFiles"
-
- * Project/AspNetFileDescriptionTemplate.cs:
- Move translation functionality to child CodeTranslationFileDescriptionTemplate.
- Move name substitution functionality to SingleFileDescriptionTemplate.
-
- * Templates/CodeBehindWebHandler.xft.xml:
- * Templates/EmptyWebForm.xft.xml:
- * Templates/CodeBehindWebControl.xft.xml:
- * Templates/CodeBehindWebForm.xft.xml:
- * Templates/EmptyWebHandler.xft.xml:
- * Templates/WebApplication.xpt.xml:
- * Templates/EmptyWebControl.xft.xml:
- Track AspNetFileDescriptionTemplate changes.
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/AspNetDeployServiceExtension.cs b/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/AspNetDeployServiceExtension.cs
deleted file mode 100644
index 5675337d7c..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/AspNetDeployServiceExtension.cs
+++ /dev/null
@@ -1,70 +0,0 @@
-//
-// AspNetDeployServiceExtension.cs
-//
-// Author:
-// Michael Hutchinson <mhutchinson@novell.com>
-//
-// Copyright (C) 2008 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System;
-using System.IO;
-
-using MonoDevelop.Projects;
-using MonoDevelop.Deployment;
-
-namespace MonoDevelop.AspNet.Deployment
-{
-
-
- public class AspNetDeployServiceExtension : DeployServiceExtension
- {
-
- public override DeployFileCollection GetProjectDeployFiles (DeployContext ctx, Project project,
- ConfigurationSelector configuration)
- {
- DeployFileCollection files = base.GetProjectDeployFiles (ctx, project, configuration);
-
- AspNetAppProject aspProj = project as AspNetAppProject;
-
- //none of this needs to happen if it's just happening during solution build
- if (aspProj == null || ctx.ProjectBuildOnly)
- return files;
-
- //audit the DeployFiles to make sure they're allowed and laid out for ASP.NET
- foreach (DeployFile df in files) {
- //rewrite ProgramFiles target to ASP.NET's "bin" target
- if (df.TargetDirectoryID == TargetDirectory.ProgramFiles) {
- df.RelativeTargetPath = Path.Combine ("bin", df.RelativeTargetPath);
- }
- }
-
- //add all ASP.NET files marked as content. They go relative to the application root, which we assume to be ProgramFiles
- foreach (ProjectFile pf in aspProj.Files) {
- if (pf.BuildAction == BuildAction.Content)
- files.Add (new DeployFile (aspProj, pf.FilePath, pf.ProjectVirtualPath, TargetDirectory.ProgramFiles));
- }
-
- return files;
- }
- }
-}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/WebDeployCommands.cs b/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/WebDeployCommands.cs
deleted file mode 100644
index 0c6bfebe70..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/WebDeployCommands.cs
+++ /dev/null
@@ -1,55 +0,0 @@
-// WebDeployCommands.cs
-//
-// Author:
-// Michael Hutchinson <mhutchinson@novell.com>
-//
-// Copyright (C) 2007 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-
-using MonoDevelop.Components.Commands;
-using MonoDevelop.AspNet;
-using MonoDevelop.Ide;
-
-namespace MonoDevelop.AspNet.Deployment
-{
-
- public enum WebDeployCommands
- {
- DeployProject,
- }
-
- class ProjectDeployHandler : CommandHandler
- {
- protected override void Run ()
- {
- AspNetAppProject project = (AspNetAppProject) IdeApp.ProjectOperations.CurrentSelectedProject;
- WebDeployService.DeployDialog (project);
- }
-
- protected override void Update (CommandInfo info)
- {
- AspNetAppProject project = IdeApp.ProjectOperations.CurrentSelectedProject as AspNetAppProject;
- info.Visible = (project != null);
- info.Enabled = (project != null);
- }
- }
-}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/WebDeployLaunchDialog.cs b/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/WebDeployLaunchDialog.cs
deleted file mode 100644
index 7ea86210d2..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/WebDeployLaunchDialog.cs
+++ /dev/null
@@ -1,130 +0,0 @@
-// WebDeployLaunchDialog.cs
-//
-// Author:
-// Michael Hutchinson <mhutchinson@novell.com>
-//
-// Copyright (C) 2007 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-using System;
-using System.Collections.Generic;
-using Gtk;
-
-using MonoDevelop.AspNet;
-using MonoDevelop.Ide;
-
-namespace MonoDevelop.AspNet.Deployment
-{
-
- public partial class WebDeployLaunchDialog : Dialog
- {
- Gtk.ListStore targetStore = new Gtk.ListStore (typeof (string), typeof(WebDeployTarget), typeof (bool));
- const int LISTCOL_Text = 0;
- const int LISTCOL_Target = 1;
- const int LISTCOL_Checked = 2;
- AspNetAppProject project;
-
- public WebDeployLaunchDialog (AspNetAppProject project)
- {
- this.Build();
-
- this.project = project;
-
- //set up the sort order
- targetStore.SetSortFunc (LISTCOL_Text, delegate (TreeModel m, TreeIter a, TreeIter b) {
- return string.Compare ((string) m.GetValue (a, LISTCOL_Text), (string) m.GetValue (b, LISTCOL_Text));
- });
- targetStore.SetSortColumnId (LISTCOL_Text, SortType.Ascending);
-
- //set up the view
- targetView.Model = targetStore;
- targetView.HeadersVisible = false;
-
- CellRendererToggle toggleRenderer = new CellRendererToggle ();
- toggleRenderer.Activatable = true;
- toggleRenderer.Xpad = 6;
- TreeViewColumn checkCol = new TreeViewColumn ("", toggleRenderer, "active", LISTCOL_Checked);
- checkCol.Expand = false;
- targetView.AppendColumn (checkCol);
- toggleRenderer.Toggled += HandleToggle;
-
- CellRendererText textRenderer = new CellRendererText ();
- textRenderer.WrapMode = Pango.WrapMode.WordChar;
- targetView.AppendColumn ("", textRenderer, "markup", LISTCOL_Text);
-
- fillStore ();
- }
-
- void fillStore ()
- {
- int count = 0;
- TreeIter lastIter = TreeIter.Zero;
- foreach (WebDeployTarget target in project.WebDeployTargets) {
- if (target.ValidForDeployment) {
- lastIter = targetStore.AppendValues (target.GetMarkup (), target, false);
- count++;
- }
- }
-
- //select some targets by default if appropriate
- if (count == 1) {
- targetStore.SetValue (lastIter, LISTCOL_Checked, true);
- }
- //FIXME: store/load other selections in .userprefs file
- UpdateButtonState ();
- }
-
- public ICollection<WebDeployTarget> GetSelectedTargets ()
- {
- List<WebDeployTarget> targets = new List<WebDeployTarget> ();
- foreach (object[] row in targetStore)
- if (((bool)row [LISTCOL_Checked]) == true)
- targets.Add ((WebDeployTarget) row [LISTCOL_Target]);
- return targets;
- }
-
- void HandleToggle (object sender, ToggledArgs e)
- {
- TreeIter iter;
- if (targetStore.GetIter (out iter, new TreePath (e.Path))) {
- bool currentVal = (bool) targetStore.GetValue (iter, LISTCOL_Checked);
- targetStore.SetValue (iter, LISTCOL_Checked, !currentVal);
- }
- UpdateButtonState ();
- }
-
- void UpdateButtonState ()
- {
- bool targetSelected = false;
- foreach (object[] row in targetStore)
- if (((bool)row [LISTCOL_Checked]) == true)
- targetSelected = true;
- buttonDeploy.Sensitive = targetSelected;
- }
-
- protected virtual void editTargetsClicked (object sender, System.EventArgs e)
- {
- IdeApp.ProjectOperations.ShowOptions (project, "MonoDevelop.AspNet.Deployment");
- targetStore.Clear ();
- fillStore ();
- }
- }
-}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/WebDeployOptionsPanel.cs b/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/WebDeployOptionsPanel.cs
deleted file mode 100644
index 55dc29d769..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/WebDeployOptionsPanel.cs
+++ /dev/null
@@ -1,54 +0,0 @@
-// WebDeployOptionsPanel.cs
-//
-// Author:
-// Michael Hutchinson <mhutchinson@novell.com>
-//
-// Copyright (C) 2007 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-using System;
-using Gtk;
-
-using MonoDevelop.Ide.Projects;
-using MonoDevelop.Core;
-using MonoDevelop.AspNet;
-using MonoDevelop.Ide.Gui.Dialogs;
-
-namespace MonoDevelop.AspNet.Deployment
-{
-
- public class WebDeployOptionsPanel : ItemOptionsPanel
- {
- WebDeployOptionsPanelWidget panel;
-
- public override Widget CreatePanelWidget ()
- {
- AspNetAppProject project = (AspNetAppProject) ConfiguredProject;
- return panel = new WebDeployOptionsPanelWidget (project);
- }
-
- public override void ApplyChanges ()
- {
- AspNetAppProject project = (AspNetAppProject) ConfiguredProject;
- panel.Store (project);
- }
- }
-}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/WebDeployOptionsPanelWidget.cs b/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/WebDeployOptionsPanelWidget.cs
deleted file mode 100644
index c1fb4f5453..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/WebDeployOptionsPanelWidget.cs
+++ /dev/null
@@ -1,135 +0,0 @@
-// WebDeployOptionsPanelWidget.cs
-//
-// Author:
-// Michael Hutchinson <mhutchinson@novell.com>
-//
-// Copyright (C) 2007 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-using System;
-using Gtk;
-
-using MonoDevelop.Core;
-using MonoDevelop.AspNet;
-
-namespace MonoDevelop.AspNet.Deployment
-{
-
- public partial class WebDeployOptionsPanelWidget : Gtk.Bin
- {
- Gtk.ListStore targetList = new Gtk.ListStore (typeof (string), typeof(WebDeployTarget));
- const int LISTCOL_TEXT = 0;
- const int LISTCOL_TARGET = 1;
-
- //because MD doesn't use an instant-apply settings model, we have to make a local
- //copy of the collection to amke sure that cancelling changes works
- WebDeployTargetCollection localCollection;
-
- public WebDeployOptionsPanelWidget (AspNetAppProject project)
- {
- localCollection = project.WebDeployTargets.Clone ();
-
- //fill model and set it up
- this.Build ();
- foreach (WebDeployTarget target in localCollection) {
- targetList.AppendValues (target.GetMarkup (), target);
- }
- targetView.HeadersVisible = false;
- targetList.SetSortFunc (LISTCOL_TEXT, delegate (TreeModel m, TreeIter a, TreeIter b) {
- return string.Compare ((string) m.GetValue (a, LISTCOL_TEXT), (string) m.GetValue (b, LISTCOL_TEXT));
- });
- targetList.SetSortColumnId (LISTCOL_TEXT, SortType.Ascending);
-
- //set up the view
- targetView.Model = targetList;
- targetView.AppendColumn ("", new Gtk.CellRendererText (), "markup", LISTCOL_TEXT);
- targetView.Selection.Changed += delegate (object sender, EventArgs e) {
- UpdateButtonState ();
- };
-
- UpdateButtonState ();
- }
-
- public void Store (AspNetAppProject project)
- {
- project.WebDeployTargets.Clear ();
- foreach (WebDeployTarget target in localCollection)
- project.WebDeployTargets.Add ((WebDeployTarget) target.Clone ());
- }
-
- protected virtual void AddActivated (object sender, System.EventArgs e)
- {
- WebDeployTarget newTarget = new WebDeployTarget ();
- localCollection.Add (newTarget);
- TreeIter newIter = targetList.AppendValues (newTarget.GetMarkup(), newTarget);
- targetView.Selection.SelectIter (newIter);
- RunEditor (newTarget);
- UpdateTextForIter (newIter);
- }
-
- void UpdateTextForIter (TreeIter iter)
- {
- WebDeployTarget target = (WebDeployTarget) targetList.GetValue (iter, LISTCOL_TARGET);
- targetList.SetValue (iter, LISTCOL_TEXT, target.GetMarkup ());
- }
-
- protected virtual void RemoveActivated (object sender, System.EventArgs e)
- {
- TreeIter iter;
- if(targetView.Selection.GetSelected (out iter)) {
- WebDeployTarget targetToRemove = (WebDeployTarget) targetList.GetValue (iter, LISTCOL_TARGET);
- localCollection.Remove (targetToRemove);
- targetList.Remove (ref iter);
- }
-
- if (targetList.IterIsValid (iter) || (localCollection.Count > 0 && targetList.IterNthChild (out iter, localCollection.Count - 1)))
- targetView.Selection.SelectIter (iter);
- }
-
- protected virtual void EditActivated (object sender, System.EventArgs e)
- {
- TreeIter iter;
- if (targetView.Selection.GetSelected (out iter)) {
- WebDeployTarget target = (WebDeployTarget) targetList.GetValue (iter, LISTCOL_TARGET);
- RunEditor (target);
- UpdateTextForIter (iter);
- }
- }
-
- void UpdateButtonState ()
- {
- TreeIter iter;
- bool selected = targetView.Selection.GetSelected (out iter);
- editButton.Sensitive = selected;
- removeButton.Sensitive = selected;
- }
-
- void RunEditor (WebDeployTarget target)
- {
- var targetEditor = new WebDeployTargetEditor ();
- targetEditor.Load (target);
- targetEditor.Show ();
-
- if (MonoDevelop.Ide.MessageService.ShowCustomDialog (targetEditor, (Gtk.Window) Toplevel) == (int) ResponseType.Ok)
- targetEditor.Save (target);
- }
- }
-}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/WebDeployResolver.cs b/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/WebDeployResolver.cs
deleted file mode 100644
index aa9c5e7a4c..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/WebDeployResolver.cs
+++ /dev/null
@@ -1,52 +0,0 @@
-// WebDeployResolver.cs
-//
-// Author:
-// Michael Hutchinson <mhutchinson@novell.com>
-//
-// Copyright (C) 2007 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-using System;
-using System.IO;
-
-using MonoDevelop.Deployment;
-
-namespace MonoDevelop.AspNet.Deployment
-{
-
- public class WebDeployResolver : IDirectoryResolver
- {
-
- public string GetDirectory (DeployContext context, string folderId)
- {
- if (folderId == TargetDirectory.ProgramFiles)
- return string.Empty;
-
- // While this would seem to be what the deploy API expects, for a web deploy it could
- // produces results the user wouldn't expect
- //if (context.Prefix != null)
- // directory = Path.Combine (context.Prefix, directory);
-
- return null;
- }
- }
-
-}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/WebDeployService.cs b/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/WebDeployService.cs
deleted file mode 100644
index 352048d0b1..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/WebDeployService.cs
+++ /dev/null
@@ -1,148 +0,0 @@
-// WebDeployService.cs
-//
-// Author:
-// Michael Hutchinson <mhutchinson@novell.com>
-//
-// Copyright (C) 2007 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-using System;
-using System.Threading;
-using System.Collections.Generic;
-using Gtk;
-
-using MonoDevelop.Core;
-using MonoDevelop.Ide.ProgressMonitoring;
-using MonoDevelop.Deployment;
-using MonoDevelop.Deployment.Gui;
-using MonoDevelop.AspNet;
-using MonoDevelop.Projects;
-using MonoDevelop.Ide;
-
-namespace MonoDevelop.AspNet.Deployment
-{
-
- public class WebDeployService
- {
- private WebDeployService ()
- {
- }
-
- static public void Deploy (AspNetAppProject project, WebDeployTarget target, ConfigurationSelector configuration)
- {
- Deploy (project, new WebDeployTarget[] { target }, configuration);
- }
-
- static public void Deploy (AspNetAppProject project, ICollection<WebDeployTarget> targets, ConfigurationSelector configuration)
- {
- //project needs to be built before it can be deployed
- IdeApp.ProjectOperations.Build (project);
-
- //set up and launch a copying thread
- DeployThreadParams threadParams = new DeployThreadParams ();
- threadParams.Context = new DeployContext (new WebDeployResolver (), null, null);
- threadParams.Files = MonoDevelop.Deployment.DeployService.GetDeployFiles (threadParams.Context,
- project, configuration);
-
- Dictionary<string, string> taskAliases = new Dictionary<string,string> ();
- foreach (WebDeployTarget target in targets) {
- threadParams.Targets.Add ((WebDeployTarget) target.Clone ());
- taskAliases.Add (target.LocationName, target.GetMarkup ());
- }
-
- var monitor = new MultiTaskDialogProgressMonitor (true, true, true, taskAliases);
- monitor.SetDialogTitle (MonoDevelop.Core.GettextCatalog.GetString ("Web Deployment Progress"));
- monitor.SetOperationTitle (MonoDevelop.Core.GettextCatalog.GetString ("Deploying {0}...", project.Name));
- threadParams.Monitor = monitor;
-
- Thread deployThread = new Thread (new ParameterizedThreadStart (DoDeploy));
- deployThread.Name = "Web deploy";
- deployThread.Start (threadParams);
- }
-
-
- static void DoDeploy (object o)
- {
- var threadParams = (DeployThreadParams) o;
- try {
- IFileReplacePolicy replacePolicy = new DialogFileReplacePolicy ();
-
- foreach (WebDeployTarget target in threadParams.Targets) {
- if (threadParams.Monitor.IsCancelRequested)
- break;
- try {
-
- target.FileCopier.CopyFiles (threadParams.Monitor, replacePolicy,
- threadParams.Files, threadParams.Context);
- }
- catch (OperationCanceledException ex) {
- threadParams.Monitor.ReportError (GettextCatalog.GetString ("Web deploy aborted."), ex);
- break;
- }
- catch (InvalidOperationException ex) {
- threadParams.Monitor.ReportError (GettextCatalog.GetString ("Web deploy aborted."), ex);
- break;
- }
- }
- } catch (Exception e) {
- MonoDevelop.Core.LoggingService.LogError ("Unhandled exception in the web deploy thread", e);
- MonoDevelop.Ide.MessageService.ShowException (e, "Web deploy failed due to unhandled exception");
- } finally {
- try {
- threadParams.Monitor.Dispose ();
- } catch (Exception ex2) {
- MonoDevelop.Core.LoggingService.LogError ("Unhandled exception disposing the web deploy thread", ex2);
- }
- }
- }
-
- static public void DeployDialog (AspNetAppProject project)
- {
- var dialog = new WebDeployLaunchDialog (project) {
- Modal = true,
- };
-
- ICollection<WebDeployTarget> targets = null;
-
- var response = ResponseType.None;
- try {
- do {
- response = (ResponseType) MessageService.RunCustomDialog (dialog, MessageService.RootWindow);
- } while (response != ResponseType.Ok && response != ResponseType.Cancel && response != ResponseType.DeleteEvent);
-
- if (response == Gtk.ResponseType.Ok)
- targets = dialog.GetSelectedTargets ();
- } finally {
- dialog.Destroy ();
- }
- if (targets != null && targets.Count > 0)
- Deploy (project, targets, IdeApp.Workspace.ActiveConfiguration);
- }
-
- class DeployThreadParams
- {
- public List<WebDeployTarget> Targets = new List<WebDeployTarget> ();
- public DeployFileCollection Files;
- public IProgressMonitor Monitor;
- public DeployContext Context;
- }
- }
-}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/WebDeployTarget.cs b/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/WebDeployTarget.cs
deleted file mode 100644
index 6e6a9beb9e..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/WebDeployTarget.cs
+++ /dev/null
@@ -1,105 +0,0 @@
-// WebDeployTarget.cs
-//
-// Author:
-// Michael Hutchinson <mhutchinson@novell.com>
-//
-// Copyright (C) 2007 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-using System;
-
-using MonoDevelop.Core.Serialization;
-using MonoDevelop.Deployment;
-
-namespace MonoDevelop.AspNet.Deployment
-{
-
-
- public class WebDeployTarget
- {
- [ItemProperty ("Name")]
- internal string name;
-
- [ItemProperty ("FileCopier")]
- FileCopyConfiguration fileCopier;
-
- internal WebDeployTargetCollection parent;
-
- public WebDeployTarget ()
- {
- }
-
- public object Clone ()
- {
- return MemberwiseClone ();
- }
-
- public string Name {
- get { return name; }
- set {
- name = value;
- //when bound to a parent, check to avoid name collisions
- if (parent != null)
- parent.EnforceUniqueName (this);
- }
- }
-
- //returns GTK markup for lists
- public string GetMarkup ()
- {
- string locationLabel = MonoDevelop.Core.GettextCatalog.GetString ("Location: {0}", LocationName);
- return string.Format ("<b>{0}</b>\n{1}", Name, locationLabel);
- }
-
- public string LocationName {
- get {
- return ValidForDeployment ?
- fileCopier.FriendlyLocation :
- MonoDevelop.Core.GettextCatalog.GetString ("Not set");
- }
- }
-
- public bool ValidForDeployment {
- get {
- return (fileCopier != null && !string.IsNullOrEmpty (fileCopier.FriendlyLocation));
- }
- }
-
- public FileCopyConfiguration FileCopier
- {
- get { return fileCopier; }
- set { fileCopier = value; }
- }
-
- public override bool Equals (object o)
- {
- WebDeployTarget other = o as WebDeployTarget;
- if (other != null)
- return fileCopier == other.fileCopier && name == other.name;
- return false;
- }
-
- public override int GetHashCode ()
- {
- return fileCopier.GetHashCode () + name.GetHashCode ();
- }
- }
-}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/WebDeployTargetCollection.cs b/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/WebDeployTargetCollection.cs
deleted file mode 100644
index 5e4a9feca2..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/WebDeployTargetCollection.cs
+++ /dev/null
@@ -1,146 +0,0 @@
-// DeployTargets.cs
-//
-// Author:
-// Michael Hutchinson <mhutchinson@novell.com>
-//
-// Copyright (C) 2007 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-using System;
-using System.Collections;
-
-namespace MonoDevelop.AspNet.Deployment
-{
-
- public class WebDeployTargetCollection : CollectionBase
- {
-
- public int Add (WebDeployTarget target)
- {
- return List.Add (target);
- }
-
- public WebDeployTarget this [int index] {
- get {
- return (WebDeployTarget) List [index];
- }
- }
-
- public WebDeployTarget this [string name] {
- get {
- foreach (WebDeployTarget c in this)
- if (c.Name == name)
- return c;
- return null;
- }
- }
-
- public void Remove (WebDeployTarget target)
- {
- List.Remove (target);
- }
-
- public void Remove (string name)
- {
- int nameAt = ContainsName (name);
- if (nameAt >= 0)
- List.RemoveAt (nameAt);
- }
-
- int ContainsName (string name)
- {
- for (int i = 0; i < Count; i++)
- if (this [i].Name == name)
- return i;
- return -1;
- }
-
- //this is used to ensure that each target has a unique name within the collection
- bool settingName = false;
- internal void EnforceUniqueName (WebDeployTarget target)
- {
- if (settingName)
- return;
-
- bool foundSameName = false;
- if (!string.IsNullOrEmpty (target.Name)) {
- foreach (WebDeployTarget c in this)
- if (c != target && c.Name == target.Name)
- foundSameName = true;
- }
- if (!foundSameName)
- return;
-
- int newIndex = 1;
- do {
- string newName = MonoDevelop.Core.GettextCatalog.GetString ("Web Deploy Target {0}", newIndex);
- if (ContainsName (newName) < 0) {
- settingName = true;
- target.name = newName;
- settingName = false;
- return;
- }
- newIndex++;
- } while (newIndex < int.MaxValue);
- throw new InvalidOperationException ("Ran out of indices for default target names.");
- }
-
- protected override void OnSet (int index, object oldValue, object newValue)
- {
- WebDeployTarget target = (WebDeployTarget) newValue;
- target.parent = this;
- EnforceUniqueName (target);
- base.OnSet (index, oldValue, newValue);
- }
-
- protected override void OnInsert (int index, object value)
- {
- WebDeployTarget target = (WebDeployTarget) value;
- target.parent = this;
- EnforceUniqueName (target);
- base.OnInsert (index, value);
- }
-
- protected override void OnRemove (int index, object value)
- {
- WebDeployTarget target = (WebDeployTarget) value;
- target.parent = null;
- base.OnRemove (index, value);
- }
-
-
- internal WebDeployTargetCollection Clone ()
- {
- WebDeployTargetCollection clone = new WebDeployTargetCollection ();
- foreach (WebDeployTarget target in this)
- clone.Add ((WebDeployTarget) target.Clone ());
- return clone;
- }
-
- public bool ContainsTargetValidForDeployment ()
- {
- foreach (WebDeployTarget target in this)
- if (target.ValidForDeployment)
- return true;
- return false;
- }
- }
-}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/WebDeployTargetEditor.cs b/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/WebDeployTargetEditor.cs
deleted file mode 100644
index 1f474d2901..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/WebDeployTargetEditor.cs
+++ /dev/null
@@ -1,64 +0,0 @@
-// WebDeployTargetEditor.cs
-//
-// Author:
-// Michael Hutchinson <mhutchinson@novell.com>
-//
-// Copyright (C) 2007 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-using System;
-
-using MonoDevelop.Deployment;
-using MonoDevelop.Deployment.Targets;
-using MonoDevelop.Deployment.Gui;
-
-namespace MonoDevelop.AspNet.Deployment
-{
-
- public partial class WebDeployTargetEditor : Gtk.Dialog
- {
- FileCopyConfigurationSelector selector;
- public WebDeployTargetEditor()
- {
- this.Build();
-
- selector = new FileCopyConfigurationSelector ();
- fileCopyBox.PackStart (selector, true, true, 0);
- }
-
- public void Load (WebDeployTarget target)
- {
- nameEntry.Text = target.Name;
- FileCopyConfiguration fConfig = null;
- try {
- fConfig = target.FileCopier == null? null : target.FileCopier.Clone ();
- } catch (InvalidOperationException) {// if the handler can't be found
- }
- selector.Configuration = fConfig;
- }
-
- public void Save (WebDeployTarget target)
- {
- target.Name = nameEntry.Text;
- target.FileCopier = selector.Configuration;
- }
- }
-}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/WebDeployWindow.cs b/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/WebDeployWindow.cs
deleted file mode 100644
index a71d71e7a7..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/WebDeployWindow.cs
+++ /dev/null
@@ -1,167 +0,0 @@
-// WebDeployWindow.cs
-//
-// Author:
-// Michael Hutchinson <mhutchinson@novell.com>
-//
-// Copyright (C) 2007 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-using System;
-using System.Collections.Generic;
-using System.Threading;
-using Gtk;
-
-using MonoDevelop.Ide.Gui;
-using MonoDevelop.Deployment;
-using MonoDevelop.Core;
-using MonoDevelop.Core.ProgressMonitoring;
-using AspNetAddIn;
-
-namespace MonoDevelop.AspNet.Deployment
-{
-
- public partial class WebDeployWindow : Gtk.Dialog//, IProgressMonitor, IAsyncOperation
- {
- IList<WebDeployTarget> targets;
- AspNetAppProject project;
- DeployFileCollection deployFiles;
-
- public WebDeployWindow (AspNetAppProject project, IList<WebDeployTarget> targets)
- {
- this.Build();
- this.targets = targets;
- this.project = project;
- deployFiles = project.GetDeployFiles ();
- }
- /*
- protected override void OnRealized ()
- {
- base.OnRealized ();
- }
-
- void LaunchDeployThread ()
- {
- Thread deployThread = new Thread (DeployThread);
- deployThread.Start ();
- }
-
- void DeployThread ()
- {
- IFileReplacePolicy replacePolicy = new MonoDevelop.Deployment.Gui.DialogFileReplacePolicy ();
-
- foreach (WebDeployTarget target in targets) {
- FileCopyHandler handler = target.FileCopier.Handler;
- //handler.CopyFiles (this, replacePolicy, target.FileCopier, deployFiles);
- }
-
-#region IProgressMonitor
-
- ProgressTracker progressTracker = new ProgressTracker ();
-
- public void IProgressMonitor.ReportError (string message, System.Exception exception)
- {
- }
-
- public void IProgressMonitor.ReportSuccess (string message)
- {
- }
-
- public void IProgressMonitor.ReportWarning (string message)
- {
- }
-
- public void IProgressMonitor.Step (int work)
- {
- progressTracker.Step (work);
- }
-
- public void IProgressMonitor.EndTask ()
- {
- progressTracker.EndTask ();
- }
-
- public void IProgressMonitor.BeginStepTask (string name, int totalWork, int stepSize)
- {
- progressTracker.BeginStepTask (name, totalWork, stepSize);
- }
-
- public void IProgressMonitor.BeginTask (string name, int totalWork)
- {
- progressTracker.BeginTask (name, totalWork);
- }
-
- public System.IO.TextWriter IProgressMonitor.Log {
- get { return null; }
- }
-
- MonitorHandler IProgressMonitor_cancelRequested;
- event MonitorHandler IProgressMonitor.CancelRequested {
- add {
- lock(privateLock)
- IProgressMonitor_cancelRequested += value;
- }
- remove {
- lock (privateLock)
- IProgressMonitor_cancelRequested -= value;
- }
- }
-
- bool IProgressMonitor_cancelRequested = false;
- bool IProgressMonitor.IsCancelRequested {
- //FIXME
- get { return false; }
- }
-
- IAsyncOperation IProgressMonitor.AsyncOperation {
- get { return (IAsyncOperation) this; }
- }
-
- object privateLock = new object ();
- object IProgressMonitor.SyncRoot {
- get { return privateLock; }
- }
-
-#endregion
-
-#region IAsyncOperation
- void IAsyncOperation.WaitForCompleted ()
- {
- }
-
- void IAsyncOperation.Cancel ()
- {
- }
-
- event MonoDevelop.Core.OperationHandler IAsyncOperation.Completed;
-
- bool IAsyncOperation.IsCompleted {
- get {
- }
- }
-
- bool IAsyncOperation.Success {
- get {
- }
- }
-
-#endregion*/
- }
-}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Gui/AspNetConfigurationPanel.cs b/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Gui/AspNetConfigurationPanel.cs
deleted file mode 100644
index 553c3b5a4e..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Gui/AspNetConfigurationPanel.cs
+++ /dev/null
@@ -1,62 +0,0 @@
-//
-// AspNetConfigurationPanel.cs: Edits complication configuration options
-// of an AspNetAppProject
-//
-// Authors:
-// Michael Hutchinson <m.j.hutchinson@gmail.com>
-//
-// Copyright (C) 2006 Michael Hutchinson
-//
-//
-// This source code is licenced under The MIT License:
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System;
-using Gtk;
-using MonoDevelop.Ide.Projects;
-using MonoDevelop.Core;
-using MonoDevelop.Ide.Gui.Dialogs;
-
-namespace MonoDevelop.AspNet.Gui
-{
-
- class AspNetConfigurationPanel : MultiConfigItemOptionsPanel
- {
- AspNetConfigurationPanelWidget panel;
-
- public override Widget CreatePanelWidget ()
- {
- return panel = new AspNetConfigurationPanelWidget ();
- }
-
- public override void LoadConfigData ()
- {
- panel.Load ((AspNetAppProjectConfiguration) CurrentConfiguration);
- }
-
- public override void ApplyChanges ()
- {
- panel.Store ((AspNetAppProjectConfiguration) CurrentConfiguration);
- }
- }
-}
-
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Gui/AspNetConfigurationPanelWidget.cs b/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Gui/AspNetConfigurationPanelWidget.cs
deleted file mode 100644
index 20d857f6e2..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Gui/AspNetConfigurationPanelWidget.cs
+++ /dev/null
@@ -1,32 +0,0 @@
-// ------------------------------------------------------------------------------
-// <autogenerated>
-// This code was generated by a tool.
-// Mono Runtime Version: 2.0.50727.42
-//
-// Changes to this file may cause incorrect behavior and will be lost if
-// the code is regenerated.
-// </autogenerated>
-// ------------------------------------------------------------------------------
-
-using MonoDevelop.Core;
-
-namespace MonoDevelop.AspNet.Gui
-{
- partial class AspNetConfigurationPanelWidget : Gtk.Bin
- {
- public AspNetConfigurationPanelWidget ()
- {
- this.Build();
- }
-
- public void Load (AspNetAppProjectConfiguration configuration)
- {
- disableCodeBehindGeneration.Active = configuration.DisableCodeBehindGeneration;
- }
-
- public void Store (AspNetAppProjectConfiguration configuration)
- {
- configuration.DisableCodeBehindGeneration = disableCodeBehindGeneration.Active;
- }
- }
-}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Gui/AspProjectDom.cs b/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Gui/AspProjectDom.cs
deleted file mode 100644
index 6b29cee292..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Gui/AspProjectDom.cs
+++ /dev/null
@@ -1,84 +0,0 @@
-////
-//// AspProjectDom.cs
-////
-//// Author:
-//// Michael Hutchinson <mhutchinson@novell.com>
-////
-//// Copyright (c) 2010 Novell, Inc. (http://www.novell.com)
-////
-//// Permission is hereby granted, free of charge, to any person obtaining a copy
-//// of this software and associated documentation files (the "Software"), to deal
-//// in the Software without restriction, including without limitation the rights
-//// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-//// copies of the Software, and to permit persons to whom the Software is
-//// furnished to do so, subject to the following conditions:
-////
-//// The above copyright notice and this permission notice shall be included in
-//// all copies or substantial portions of the Software.
-////
-//// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-//// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-//// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-//// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-//// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-//// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-//// THE SOFTWARE.
-//using System;
-//using System.Collections.Generic;
-//using System.Linq;
-//using ICSharpCode.NRefactory.TypeSystem;
-//using ICSharpCode.NRefactory.TypeSystem.Implementation;
-//
-//
-//namespace MonoDevelop.AspNet.Gui
-//{
-// /// <summary>
-// /// This wraps a project dom and adds the compilation information from the ASP.NET page to the DOM to lookup members
-// /// on the page.
-// /// </summary>
-// class AspProjectDomWrapper : TypeResolveContextDecorator
-// {
-// DocumentInfo info;
-//
-// //FIXME: use all the doms
-// //FIXME: merge the items from the members visitor too
-// public AspProjectDomWrapper (DocumentInfo info) : base (info.References[0])
-// {
-// this.info = info;
-// }
-//
-// ITypeDefinition constructedType = null;
-// ITypeDefinition CheckType (ITypeDefinition type)
-// {
-// if (type == null)
-// return null;
-// var cu = info.ParsedDocument;
-// var firstType = cu.TopLevelTypeDefinitions.FirstOrDefault ();
-// if (firstType != null && firstType.FullName == type.FullName) {
-// if (constructedType != null)
-// return constructedType;
-// constructedType = CompoundTypeDefinition.Create (new [] { firstType, type, info.CodeBesideClass });
-//// constructedType.GetProjectContent () = this;
-// return constructedType;
-// }
-// return type;
-// }
-//
-// public override ITypeDefinition GetTypeDefinition (string nameSpace, string name, int typeParameterCount, StringComparer nameComparer)
-// {
-// return CheckType (base.GetTypeDefinition (nameSpace, name, typeParameterCount, nameComparer));
-// }
-//
-// public override IEnumerable<ITypeDefinition> GetTypes()
-// {
-// return base.GetTypes ().Select (t => CheckType (t));
-// }
-//
-// public override IEnumerable<ITypeDefinition> GetTypes(string nameSpace, StringComparer nameComparer)
-// {
-// return base.GetTypes (nameSpace, nameComparer).Select (t => CheckType (t));
-// }
-//
-// }
-//}
-//
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Gui/XspOptionsPanelWidget.cs b/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Gui/XspOptionsPanelWidget.cs
deleted file mode 100644
index cabb69c96f..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Gui/XspOptionsPanelWidget.cs
+++ /dev/null
@@ -1,119 +0,0 @@
-// XspOptionsPanelWidget.cs
-//
-// Author:
-// Michael Hutchinson <mhutchinson@novell.com>
-//
-// Copyright (C) 2007 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-using System;
-using Gtk;
-
-using MonoDevelop.Core;
-
-namespace MonoDevelop.AspNet.Gui
-{
-
-
- public partial class XspOptionsPanelWidget : Gtk.Bin
- {
-
- public XspOptionsPanelWidget (AspNetAppProject project)
- {
- this.Build();
-
- XspParameters xPar = project.XspParameters;
-
- //index should be equivalent to XspSslMode enum
- ((ListStore) sslMode.Model).Clear ();
- sslMode.AppendText (GettextCatalog.GetString ("None"));
- sslMode.AppendText (GettextCatalog.GetString ("Enabled"));
- sslMode.AppendText (GettextCatalog.GetString ("Accept Client Certificates"));
- sslMode.AppendText (GettextCatalog.GetString ("Require Client Certificates"));
-
- //index should be equivalent to XspSslProtocol enum
- ((ListStore) sslProtocol.Model).Clear ();
- sslProtocol.AppendText (GettextCatalog.GetString ("Default"));
- sslProtocol.AppendText ("TLS");
- sslProtocol.AppendText ("SSL 2");
- sslProtocol.AppendText ("SSL 3");
-
- ((ListStore) keyType.Model).Clear ();
- keyType.AppendText (GettextCatalog.GetString ("None"));
- keyType.AppendText ("Pkcs12");
- keyType.AppendText ("PVK");
-
- ((ListStore) passwordOptions.Model).Clear ();
- passwordOptions.AppendText (GettextCatalog.GetString ("None"));
- passwordOptions.AppendText (GettextCatalog.GetString ("Ask"));
- passwordOptions.AppendText (GettextCatalog.GetString ("Store (insecure)"));
-
- //set to valid port range
- portNumber.SetRange (0, UInt16.MaxValue);
-
- //load all options
- ipAddress.Text = xPar.Address;
- portNumber.Value = xPar.Port;
- verboseCheck.Active = xPar.Verbose;
- sslMode.Active = (int) xPar.SslMode;
- sslProtocol.Active = (int) xPar.SslProtocol;
- keyType.Active = (int) xPar.KeyType;
- keyLocation.Path = xPar.PrivateKeyFile;
- certLocation.Path = xPar.CertificateFile;
- passwordOptions.Active = (int) xPar.PasswordOptions;
- passwordEntry.Text = xPar.PrivateKeyPassword;
- }
-
- public void Store (AspNetAppProject project)
- {
- XspParameters xPar = project.XspParameters;
-
- xPar.Address = ipAddress.Text;
- xPar.Port = System.Convert.ToUInt16 (portNumber.Value);
- xPar.Verbose = verboseCheck.Active;
- xPar.SslMode = (XspSslMode) sslMode.Active;
- xPar.SslProtocol = (XspSslProtocol) sslProtocol.Active;
- xPar.KeyType = (XspKeyType) keyType.Active;
- xPar.PrivateKeyFile = keyLocation.Path;
- xPar.CertificateFile = certLocation.Path;
- xPar.PasswordOptions = (XspPasswordOptions) passwordOptions.Active;
- xPar.PrivateKeyPassword = passwordEntry.Text;
- }
-
- void updateSensitivity (object sender, EventArgs e)
- {
- bool sslEnabled = ((XspSslMode) sslMode.Active) != XspSslMode.None;
- sslProtocol.Sensitive = sslEnabled;
- keyType.Sensitive = sslEnabled;
-
- bool keyEnabled = (sslEnabled)? (keyType.Active != 0) : false;
- keyLocation.Sensitive = keyEnabled;
- passwordOptions.Sensitive = keyEnabled;
-
- bool certEnabled = (keyEnabled)? (keyType.Active == 2) : false;
- certLocation.Sensitive = certEnabled;
-
- passwordEntry.Sensitive = (keyEnabled)? (passwordOptions.Active == 2) : false;
- if (!passwordEntry.Sensitive)
- passwordEntry.Text = "";
- }
- }
-}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs b/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs
deleted file mode 100755
index 1ddfec16b4..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Parser/DocumentReferenceManager.cs
+++ /dev/null
@@ -1,450 +0,0 @@
-//
-// DocumentReferenceManager.cs: Handles web type lookups for ASP.NET documents.
-//
-// Authors:
-// Michael Hutchinson <mhutchinson@novell.com>
-//
-// Copyright (C) 2007 Novell, Inc (http://www.novell.com)
-//
-//
-// This source code is licenced under The MIT License:
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System;
-using System.Collections.Generic;
-using System.Globalization;
-
-using MonoDevelop.Core;
-//using MonoDevelop.AspNet.Parser.Dom;
-using MonoDevelop.Projects.Text;
-using MonoDevelop.Ide.CodeCompletion;
-using MonoDevelop.Ide.Gui;
-using System.IO;
-using System.Linq;
-using Mono.TextEditor;
-using ICSharpCode.NRefactory.TypeSystem;
-using MonoDevelop.Ide.TypeSystem;
-using MonoDevelop.Xml.StateEngine;
-using MonoDevelop.AspNet.StateEngine;
-
-namespace MonoDevelop.AspNet.Parser
-{
-
-
- public class DocumentReferenceManager
- {
- public DocumentReferenceManager (AspNetAppProject project)
- {
- this.Project = project;
- TypeCtx = new WebTypeContext (project);
- }
-
- protected IEnumerable<RegisterDirective> RegisteredTags {
- get { return Doc.Info.RegisteredTags; }
- }
-
- public AspNetParsedDocument Doc { get; set; }
- public AspNetAppProject Project { get; private set; }
- public WebTypeContext TypeCtx { get; private set; }
-
- string DirectoryPath { get { return Path.GetDirectoryName (Doc.FileName); } }
-
- public string GetTypeName (string tagPrefix, string tagName)
- {
- return GetTypeName (tagPrefix, tagName, null);
- }
-
- public string GetTypeName (string tagPrefix, string tagName, string htmlTypeAttribute)
- {
- if (tagPrefix == null || tagPrefix.Length < 1)
- return WebTypeContext.HtmlControlLookup (tagName, htmlTypeAttribute);
-
- if (0 == string.Compare (tagPrefix, "asp", StringComparison.OrdinalIgnoreCase)) {
- string systemType = TypeCtx.SystemTypeNameLookup (tagName);
- if (!string.IsNullOrEmpty (systemType))
- return systemType;
- }
-
- foreach (var rd in RegisteredTags) {
- if (string.Compare (rd.TagPrefix, tagPrefix, StringComparison.OrdinalIgnoreCase) != 0)
- continue;
-
- var ard = rd as AssemblyRegisterDirective;
- if (ard != null) {
- var dom = TypeCtx.ResolveAssembly (ard.Assembly);
- if (dom == null)
- continue;
-
- string fullName = WebTypeContext.AssemblyTypeNameLookup (dom, ard.Namespace, tagName);
- if (fullName != null)
- return fullName;
- }
-
- var crd = rd as ControlRegisterDirective;
- if (crd != null && string.Compare (crd.TagName, tagName, StringComparison.OrdinalIgnoreCase) == 0) {
- string fullName = TypeCtx.GetUserControlTypeName (crd.Src, Doc.FileName);
- if (fullName != null)
- return fullName;
- }
- }
-
- //returns null if type not found
- return TypeCtx.GetRegisteredTypeName (DirectoryPath, tagPrefix, tagName);
- }
-
- public IType GetType (string tagPrefix, string tagName, string htmlTypeAttribute)
- {
- if (tagPrefix == null || tagPrefix.Length < 1)
- return TypeCtx.HtmlControlTypeLookup (tagName, htmlTypeAttribute);
-
- if (0 == string.Compare (tagPrefix, "asp", StringComparison.OrdinalIgnoreCase)) {
- var systemType = TypeCtx.SystemTypeLookup (tagName);
- if (systemType != null)
- return systemType;
- }
-
- foreach (var rd in RegisteredTags) {
- if (string.Compare (rd.TagPrefix, tagPrefix, StringComparison.OrdinalIgnoreCase) != 0)
- continue;
-
- var ard = rd as AssemblyRegisterDirective;
- if (ard != null) {
- var dom = TypeCtx.ResolveAssembly (ard.Assembly);
- if (dom != null) {
- var type = WebTypeContext.AssemblyTypeLookup (dom, ard.Namespace, tagName);
- if (type != null)
- return type;
- }
- continue;
- }
-
- var crd = rd as ControlRegisterDirective;
- if (crd != null && string.Compare (crd.TagName, tagName, StringComparison.OrdinalIgnoreCase) == 0) {
- var type = TypeCtx.GetUserControlType (crd.Src, Doc.FileName);
- if (type != null)
- return type;
- }
- }
-
- //returns null if type not found
- return TypeCtx.GetRegisteredType (DirectoryPath, tagPrefix, tagName);
- }
-
- public IEnumerable<CompletionData> GetControlCompletionData ()
- {
- return GetControlCompletionData (ReflectionHelper.ParseReflectionName ("System.Web.UI.Control").Resolve (TypeSystemService.GetCompilation (Project)));
- }
-
- public IEnumerable<CompletionData> GetControlCompletionData (IType baseType)
- {
- bool isSWC = baseType.FullName == "System.Web.UI.Control";
-
- string aspPrefix = "asp:";
- foreach (IType cls in WebTypeContext.ListSystemControlClasses (baseType, Project))
- yield return new AspTagCompletionData (aspPrefix, cls);
-
- foreach (var rd in RegisteredTags) {
- if (!rd.IsValid ())
- continue;
-
- var ard = rd as AssemblyRegisterDirective;
- if (ard != null) {
- var dom = TypeCtx.ResolveAssembly (ard.Assembly);
- if (dom == null)
- continue;
-
- string prefix = ard.TagPrefix + ":";
- foreach (IType cls in WebTypeContext.ListControlClasses (baseType, dom, ard.Namespace))
- yield return new AspTagCompletionData (prefix, cls);
- continue;
- }
-
- if (!isSWC)
- continue;
-
- ControlRegisterDirective cd = rd as ControlRegisterDirective;
- if (cd != null) {
- yield return new CompletionData (string.Concat (cd.TagPrefix, ":", cd.TagName),
- Gtk.Stock.GoForward);
- }
- }
-
- //return controls from web.config
- foreach (var cd in TypeCtx.GetRegisteredTypeCompletionData (DirectoryPath, baseType))
- yield return cd;
- }
-
- public IType GetControlType (string tagPrefix, string tagName)
- {
- if (String.IsNullOrEmpty (tagPrefix))
- return null;
-
- IType type = null;
- if (0 == string.Compare (tagPrefix, "asp", StringComparison.OrdinalIgnoreCase)) {
- type = TypeCtx.SystemTypeLookup (tagName);
- if (type != null)
- return type;
- }
-
- foreach (var rd in RegisteredTags) {
- if (string.Compare (rd.TagPrefix, tagPrefix, StringComparison.OrdinalIgnoreCase) != 0)
- continue;
-
- AssemblyRegisterDirective ard = rd as AssemblyRegisterDirective;
- if (ard != null) {
- var dom = TypeCtx.ResolveAssembly (ard.Assembly);
- if (dom == null)
- continue;
- type = WebTypeContext.AssemblyTypeLookup (dom, ard.Namespace, tagName);
- if (type != null)
- return type;
- continue;
- }
-
- var crd = rd as ControlRegisterDirective;
- if (crd != null && string.Compare (crd.TagName, tagName, StringComparison.OrdinalIgnoreCase) == 0) {
- return TypeCtx.GetUserControlType (crd.Src, Doc.FileName);
- }
- }
-
- //returns null if type not found
- return TypeCtx.GetRegisteredType (DirectoryPath, tagPrefix, tagName);
- }
-
- public string GetTagPrefix (IType control)
- {
- if (control.Namespace == "System.Web.UI.WebControls")
- return "asp";
- else if (control.Namespace == "System.Web.UI.HtmlControls")
- return string.Empty;
-
- foreach (var rd in RegisteredTags) {
- var ard = rd as AssemblyRegisterDirective;
- if (ard != null && ard.Namespace == control.Namespace)
- return ard.TagPrefix;
- }
-
- // returns null if no result found
- return TypeCtx.GetControlPrefix (DirectoryPath, control);
- }
-
- IEnumerable<RegisterDirective> GetDirectivesForPrefix (string prefix)
- {
- return RegisteredTags.Where (t => string.Equals (t.TagPrefix, prefix, StringComparison.OrdinalIgnoreCase));
- }
-
- /// <summary>
- /// Gets a tag prefix, also returning the directive that would have to be added if necessary.
- /// </summary>
- public string GetTagPrefixWithNewDirective (IType control, string assemblyName, string desiredPrefix,
- out RegisterDirective directiveNeededToAdd)
- {
- directiveNeededToAdd = null;
- string existingPrefix = GetTagPrefix (control);
- if (existingPrefix != null)
- return existingPrefix;
-
- //TODO: detect control name conflicts
- string prefix = desiredPrefix;
- if (desiredPrefix == null)
- prefix = GetPrefix (control);
-
- var an = MonoDevelop.Core.Assemblies.SystemAssemblyService.ParseAssemblyName (assemblyName);
-
- directiveNeededToAdd = new AssemblyRegisterDirective (prefix, control.Namespace, an.Name);
-
- return prefix;
- }
-
- #region "Refactoring" operations -- things that modify the file
-
- public void AddAssemblyReferenceToProject (string assemblyName, string assemblyLocation)
- {
- //build an reference to the assembly
- MonoDevelop.Projects.ProjectReference pr;
- if (string.IsNullOrEmpty (assemblyLocation)) {
- pr = new MonoDevelop.Projects.ProjectReference
- (MonoDevelop.Projects.ReferenceType.Package, assemblyName);
- } else {
- pr = new MonoDevelop.Projects.ProjectReference
- (MonoDevelop.Projects.ReferenceType.Assembly, assemblyLocation);
- }
-
- //add the reference if it doesn't match an existing one
- bool match = false;
- foreach (var p in Project.References)
- if (p.Equals (pr))
- match = true;
- if (!match)
- Project.References.Add (pr);
- }
-
- string GetPrefix (IType control)
- {
- //FIXME: make this work
- /*
- foreach (IAttributeSection attSec in control.CompilationUnit.Attributes) {
- foreach (IAttribute att in attSec.Attributes) {
- if (att.PositionalArguments != null && att.PositionalArguments.Length == 2
- && ExprToStr (att.PositionalArguments[0]) == control.Namespace) {
- string prefix = ExprToStr (att.PositionalArguments [1]);
- if (prefix != null)
- return prefix;
- }
-
- if (att.Name == "System.Web.UI.TagPrefixAttribute") {
- bool match = false;
- foreach (NamedAttributeArgument arg in att.NamedArguments) {
- if (arg.Name == "NamespaceName"
- && ExprToStr (arg.Expression) == control.Namespace) {
- match = true;
- break;
- }
- }
- foreach (NamedAttributeArgument arg in att.NamedArguments) {
- if (arg.Name == "TagPrefix") {
- string prefix = ExprToStr (arg.Expression);
- if (prefix != null)
- return prefix;
- }
- }
- }
- }
- }
- */
- //generate a new prefix base on initials of namespace
- string[] namespaces = control.Namespace.Split ('.');
- char[] charr = new char[namespaces.Length];
- for (int i = 0; i < charr.Length; i++)
- charr[i] = char.ToLower (namespaces[i][0]);
-
- //find a variant that doesn't match an existing prefix
- string trialPrefix = new string (charr);
- string trial = trialPrefix;
-
- for (int trialSuffix = 1; trialSuffix < int.MaxValue; trialSuffix++) {
- using (IEnumerator<RegisterDirective> en = GetDirectivesForPrefix (trial).GetEnumerator())
- if (!en.MoveNext ())
- return trial;
- trial = trialPrefix + trialSuffix;
- }
- throw new InvalidOperationException ("Ran out of integer suffixes for tag prefixes");
- }
-
- string ExprToStr (System.CodeDom.CodeExpression expr)
- {
- System.CodeDom.CodePrimitiveExpression p = expr as System.CodeDom.CodePrimitiveExpression;
- return p != null? p.Value as string : null;
- }
-
- public void AddRegisterDirective (RegisterDirective directive, TextEditorData editor, bool preserveCaretPosition)
- {
- var node = GetRegisterInsertionPointNode ();
- if (node == null)
- return;
-
- Doc.Info.RegisteredTags.Add (directive);
-
- var line = Math.Max (node.Region.EndLine, node.Region.BeginLine);
- var pos = editor.Document.LocationToOffset (line, editor.Document.GetLine (line - 1).Length);
- if (pos < 0)
- return;
-
- using (var undo = editor.OpenUndoGroup ()) {
- var oldCaret = editor.Caret.Offset;
-
- var inserted = editor.Insert (pos, editor.EolMarker + directive.ToString ());
- if (preserveCaretPosition) {
- editor.Caret.Offset = (pos < oldCaret)? oldCaret + inserted : oldCaret;
- }
- }
- }
-
- AspNetDirective GetRegisterInsertionPointNode ()
- {
- foreach (XNode node in Doc.XDocument.AllDescendentNodes) {
- if (node is AspNetDirective) {
- AspNetDirective directive = node as AspNetDirective;
-
- switch (directive.Name.Name.ToLower ()) {
- case "page":
- case "control":
- case "master":
- case "register":
- return directive;
- }
- } else if (node is XElement) {
- return null;
- }
- }
- return null;
- }
-
- #endregion
-
- public IEnumerable<string> GetUsings ()
- {
- var usings = new HashSet<string> (Project.RegistrationCache.GetNamespacesForPath (DirectoryPath));
- foreach (var s in Doc.Info.Imports)
- usings.Add (s);
- return usings;
- }
-
- public IList<ICompilation> GetDoms ()
- {
- var asms = new HashSet<string> (Project.RegistrationCache.GetAssembliesForPath (DirectoryPath));
- foreach (var s in Doc.Info.Assemblies)
- asms.Add (s.Name);
-
- var doms = new List<ICompilation> ();
- doms.Add (TypeCtx.Compilation);
-/*
- foreach (var asmName in asms) {
- var dom = TypeCtx.ResolveAssembly (asmName);
- if (dom != null)
- doms.Add (dom);
- }*/
- return doms;
- }
- }
-
- //lazily loads docs
- class AspTagCompletionData : CompletionData
- {
- IType cls;
-
- public AspTagCompletionData (string prefix, IType cls)
- : base (prefix + cls.Name, Gtk.Stock.GoForward)
- {
- this.cls = cls;
- }
-
- public override string Description {
- get {
- if (base.Description == null && cls != null)
- base.Description = AmbienceService.GetSummaryMarkup (cls.GetDefinition ());
- return base.Description;
- }
- set { base.Description = value; }
- }
- }
-}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Parser/MemberListVisitor.cs b/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Parser/MemberListVisitor.cs
deleted file mode 100644
index c2819e6edc..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Parser/MemberListVisitor.cs
+++ /dev/null
@@ -1,205 +0,0 @@
-//
-// MemberListVisitor.cs: Collects members from ASP.NET document tree,
-// for code completion and other services.
-//
-// Authors:
-// Michael Hutchinson <m.j.hutchinson@gmail.com>
-//
-// Copyright (C) 2006 Michael Hutchinson
-//
-//
-// This source code is licenced under The MIT License:
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System;
-using System.Collections.Generic;
-
-using MonoDevelop.Core;
-using MonoDevelop.AspNet.Parser.Dom;
-using ICSharpCode.NRefactory.TypeSystem;
-using ICSharpCode.NRefactory.CSharp;
-using ICSharpCode.NRefactory;
-using MonoDevelop.Xml.StateEngine;
-using MonoDevelop.AspNet.StateEngine;
-
-namespace MonoDevelop.AspNet.Parser
-{
- //purpose is to find all named tags for code completion and compilation of base class
- public class MemberListVisitor : Visitor
- {
- DocumentReferenceManager refMan;
-
- public MemberListVisitor (DocumentReferenceManager refMan)
- {
- this.refMan = refMan;
- this.Errors = new List<Error> ();
- this.Members = new Dictionary<string,CodeBehindMember> ();
- }
-
- public override void Visit (TagNode node)
- {
- if (!node.Attributes.IsRunAtServer ())
- return;
-
- string id = node.Attributes ["id"] as string;
-
- if (id == null)
- return;
-
- if (Members.ContainsKey (id)) {
- AddError (ErrorType.Error, node.Location, GettextCatalog.GetString ("Tag ID must be unique within the document: '{0}'.", id));
- return;
- }
-
- string [] s = node.TagName.Split (':');
- string prefix = (s.Length == 1)? "" : s[0];
- string name = (s.Length == 1)? s[0] : s[1];
- if (s.Length > 2) {
- AddError (ErrorType.Error, node.Location, GettextCatalog.GetString ("Malformed tag name: '{0}'.", node.TagName));
- return;
- }
-
- IType type = null;
- try {
- type = refMan.GetType (prefix, name, node.Attributes ["type"] as string);
- } catch (Exception e) {
- AddError (ErrorType.Error, node.Location, "Unknown parser error:" + e.ToString ());
- return;
- }
-
- if (type == null) {
- AddError (ErrorType.Error, node.Location, GettextCatalog.GetString ("The tag type '{0}{1}{2}' has not been registered.", prefix, string.IsNullOrEmpty(prefix)? string.Empty:":", name));
- return;
- }
-
- Members [id] = new CodeBehindMember (id, type, new TextLocation (node.Location.BeginLine, node.Location.BeginColumn));
- }
-
- internal void AddError (ErrorType type, ILocation location, string message)
- {
- Errors.Add (new Error (type, message, location.BeginLine, location.BeginColumn));
- }
-
- public IDictionary<string,CodeBehindMember> Members { get; private set; }
- public IList<Error> Errors { get; private set; }
- }
-
- public class MemberListBuilder
- {
- DocumentReferenceManager docRefMan;
- XDocument xDocument;
-
- public IDictionary<string,CodeBehindMember> Members { get; private set; }
- public IList<Error> Errors { get; private set; }
-
- public MemberListBuilder (DocumentReferenceManager refMan, XDocument xDoc)
- {
- docRefMan = refMan;
- xDocument = xDoc;
-
- Errors = new List<Error> ();
- Members = new Dictionary<string,CodeBehindMember> ();
- }
-
- public void Build ()
- {
- try {
- AddMember (xDocument.RootElement);
- } catch (Exception ex) {
- Errors.Add (new Error (ErrorType.Error, "Unknown parser error: " + ex.ToString ()));
- }
- }
-
- void AddMember (XElement element)
- {
- string id = GetAttributeValueCI (element.Attributes, "id");
- if (IsRunatServer (element) && (id != string.Empty)) {
-
- if (Members.ContainsKey (id)) {
- Errors.Add (new Error (
- ErrorType.Error,
- GettextCatalog.GetString ("Tag ID must be unique within the document: '{0}'.", id),
- element.Region
- )
- );
- } else {
- string controlType = GetAttributeValueCI (element.Attributes, "type");
- IType type = docRefMan.GetType (element.Name.Prefix, element.Name.Name, controlType);
-
- if (type == null) {
- Errors.Add (
- new Error (
- ErrorType.Error,
- GettextCatalog.GetString ("The tag type '{0}{1}{2}' has not been registered.",
- element.Name.Prefix,
- element.Name.HasPrefix ? string.Empty : ":",
- element.Name.Name),
- element.Region
- )
- );
- } else
- Members [id] = new CodeBehindMember (id, type, element.Region.Begin);
- }
-
- }
- foreach (XNode node in element.Nodes) {
- if (node is XElement)
- AddMember (node as XElement);
- }
- }
-
- bool IsRunatServer (XElement el)
- {
- XName runat = new XName ("runat");
- foreach (XAttribute attr in el.Attributes) {
- if ((attr.Name.ToLower () == runat) && (attr.Value.ToLower () == "server"))
- return true;
- }
- return false;
- }
-
- string GetAttributeValueCI (XAttributeCollection attributes, string key)
- {
- XName nameKey = new XName (key.ToLowerInvariant ());
-
- foreach (XAttribute attr in attributes) {
- if (attr.Name.ToLower () == nameKey)
- return attr.Value;
- }
- return string.Empty;
- }
- }
-
- public class CodeBehindMember
- {
- public CodeBehindMember (string name, IType type, TextLocation location)
- {
- this.Name = name;
- this.Type = type;
- this.Location = location;
- }
-
- public string Name { get; private set; }
- public IType Type { get; private set; }
- public TextLocation Location { get; private set; }
- }
-}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Parser/Regexes.cs b/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Parser/Regexes.cs
deleted file mode 100644
index 255c0969bb..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Parser/Regexes.cs
+++ /dev/null
@@ -1,63 +0,0 @@
-//
-// QuickInfo.cs
-//
-// Author:
-// Michael Hutchinson <mhutchinson@novell.com>
-//
-// Copyright (C) 2008 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System;
-using System.Text.RegularExpressions;
-
-namespace MonoDevelop.AspNet.Parser
-{
-
-
- public static class Regexes
- {
- public static Regex DocType {
- get {
- return new Regex (@"<!DOCTYPE\s+(\w+)\s+PUBLIC\s+""(.+)""\s+""(.+)""\s*>",
- RegexOptions.Compiled | RegexOptions.Singleline);
- }
- }
-
- public static Regex Directive {
- get {
- return new Regex (@"<%@\s*(\w+)\s+(.*)%>", RegexOptions.Compiled | RegexOptions.Singleline);
- }
- }
-
- public static Regex Expression {
- get {
- return new Regex (@"<%\s*([=$#]?)(.*)%>", RegexOptions.Compiled | RegexOptions.Singleline);
- }
- }
-
- public static Regex ServerTag {
- get {
- return new Regex (@"<\s*(?<prefix>\w+:)?(?<name>\w+)(?<attributes>(?:[^"">']|""[^""]*""|'[^']*')*runat\s*=\s*""server""(?:[^"">']|""[^""]*""|'[^']*')*>)", RegexOptions.Compiled | RegexOptions.Singleline);
- }
- }
- }
-}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Parser/WebFormReferenceManager.cs b/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Parser/WebFormReferenceManager.cs
deleted file mode 100644
index 0488c53d2f..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Parser/WebFormReferenceManager.cs
+++ /dev/null
@@ -1,181 +0,0 @@
-//
-// WebFormReferenceManager.cs: Tracks references within an ASP.NET document, and
-// resolves types from tag names
-//
-// Authors:
-// Michael Hutchinson <m.j.hutchinson@gmail.com>
-//
-// Copyright (C) 2006 Michael Hutchinson
-//
-//
-// This source code is licenced under The MIT License:
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System;
-using System.Globalization;
-using System.Collections.Generic;
-using System.Web;
-using System.Web.UI;
-using System.Web.UI.Design;
-
-using MonoDevelop.Projects;
-using MonoDevelop.Ide.Gui;
-
-namespace MonoDevelop.AspNet.Parser
-{
- public class WebFormReferenceManager : DocumentReferenceManager, IWebFormReferenceManager
- {
- int prefixIndex = 0;
-
- public WebFormReferenceManager (AspNetAppProject project) : base (project)
- {
- }
-
- #region IWebFormReferenceManager Members
-
- public Type GetObjectType (string tagPrefix, string typeName)
- {
- string fullName = GetTypeName (tagPrefix, typeName);
- if (fullName == null)
- throw new Exception (string.Format ("The tag type '{0}{1}{2}' has not been registered.", tagPrefix, string.IsNullOrEmpty(tagPrefix)? string.Empty:":", typeName));
- Type type = System.Type.GetType (fullName, false);
- if (type != null)
- return type;
- throw new NotImplementedException ("Cannot yet load custom types out-of-process.");
- }
-
- public string GetRegisterDirectives ()
- {
- var sb = new System.Text.StringBuilder ();
-
- foreach (var directive in RegisteredTags) {
- var ard = directive as AssemblyRegisterDirective;
-
- if (ard != null)
- sb.AppendFormat ("<%@ Register {0}=\"{1}\" {2}=\"{3}\" {4}=\"{5}\" %>", "TagPrefix", ard.TagPrefix, "Namespace", ard.Namespace, "Assembly", ard.Assembly);
- else {
- ControlRegisterDirective crd = (ControlRegisterDirective) directive;
- sb.AppendFormat ("<%@ Register {0}=\"{1}\" {2}=\"{3}\" {4}=\"{5}\" %>", "TagPrefix", crd.TagPrefix, "TagName", crd.TagName, "Src", crd.Src);
- }
- }
-
- return sb.ToString ();
- }
-
- public string GetTagPrefix (Type objectType)
- {
- if (objectType.Namespace.StartsWith ("System.Web.UI"))
- return "asp";
-
- foreach (var directive in RegisteredTags) {
- AssemblyRegisterDirective ard = directive as AssemblyRegisterDirective;
-
- if (ard != null)
- if (string.Compare (ard.Namespace, objectType.Namespace, StringComparison.OrdinalIgnoreCase) == 0)
- return directive.TagPrefix;
- }
-
- throw new Exception ("A tag prefix has not been registered for " + objectType.ToString ());
- }
-
- #endregion
-
- #region Add/Remove references
-
- public void AddReference (Type type)
- {
- RegisterTagPrefix (type);
- }
-
- public void AddReference (Type type, string prefix)
- {
- if (type.Assembly == typeof(System.Web.UI.WebControls.WebControl).Assembly)
- return;
-
- //check namespace is not already registered foreach (var directive in RegisteredTags) {
- AssemblyRegisterDirective ard = directive as AssemblyRegisterDirective;
- if (0 == string.Compare (ard.Namespace, type.Namespace, StringComparison.Ordinal))
- throw new Exception ("That namespace is already registered with another prefix");
-
- if (0 == string.Compare (directive.TagPrefix, prefix, StringComparison.OrdinalIgnoreCase)) {
- //duplicate prefix; generate a new one.
- //FIXME: possibility of stack overflow with too many default prefixes in existing document
- AddReference (type);
- return;
- }
- }
-
- Project.References.Add (new ProjectReference (ReferenceType.Assembly, type.Assembly.ToString ()));
- /*
- TODO: insert the reference into the document tree
- */
- }
-
- #endregion
-
- #region 2.0 WebFormsReferenceManager members
-
- public string RegisterTagPrefix (Type type)
- {
- if (type.Assembly == typeof(System.Web.UI.WebControls.WebControl).Assembly)
- return "asp";
-
- string prefix = null;
-
- //check if there's a prefix for this namespace in the assembly
- var atts = (TagPrefixAttribute[]) type.Assembly.GetCustomAttributes (typeof (TagPrefixAttribute), true);
- foreach (var tpa in atts)
- if (0 == string.Compare (tpa.NamespaceName, type.Namespace, StringComparison.Ordinal))
- prefix = tpa.TagPrefix;
-
- //generate default prefix
- if (prefix == null) {
- prefix = "cc" + prefixIndex.ToString ();
- prefixIndex++;
- }
-
- AddReference (type, prefix);
-
- return prefix;
- }
-
- public string GetUserControlPath (string tagPrefix, string tagName)
- {
- foreach (var directive in RegisteredTags) {
- var crd = directive as ControlRegisterDirective;
-
- if (crd != null && (string.Compare (crd.TagPrefix, tagPrefix, StringComparison.OrdinalIgnoreCase) == 0)
- && (string.Compare (crd.TagName, tagName, StringComparison.OrdinalIgnoreCase) == 0))
- return crd.Src;
- }
-
- throw new Exception ("That tag has not been registered");
- }
-
- public Type GetType (string tagPrefix, string tagName)
- {
- return GetObjectType (tagPrefix, tagName);
- }
-
- #endregion 2.0 WebFormsReferenceManager members
- }
-}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.StateEngine/AspNetDom.cs b/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.StateEngine/AspNetDom.cs
deleted file mode 100644
index 091196955e..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.StateEngine/AspNetDom.cs
+++ /dev/null
@@ -1,271 +0,0 @@
-//
-// AspNetDom.cs
-//
-// Author:
-// Michael Hutchinson <mhutchinson@novell.com>
-//
-// Copyright (C) 2008 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System;
-using System.Text;
-using System.Diagnostics;
-using System.Collections.Generic;
-
-using MonoDevelop.Xml.StateEngine;
-using ICSharpCode.NRefactory.CSharp;
-using ICSharpCode.NRefactory.TypeSystem;
-using ICSharpCode.NRefactory;
-using System.Linq;
-
-namespace MonoDevelop.AspNet.StateEngine
-{
-
- public class AspNetDirective : XNode, IAttributedXObject
- {
- XName name;
- XAttributeCollection attributes;
-
- public AspNetDirective (TextLocation start) : base (start)
- {
- attributes = new XAttributeCollection (this);
- }
-
- public AspNetDirective (TextLocation start, XName name) : this (start)
- {
- this.name = name;
- }
-
- protected AspNetDirective ()
- {
- attributes = new XAttributeCollection (this);
- }
-
- public XAttributeCollection Attributes {
- get { return attributes; }
- }
-
- public XName Name {
- get { return name; }
- set {
- Debug.Assert (!IsNamed, "Should not name node more than once.");
- name = value;
- }
- }
-
- public override bool IsComplete { get { return base.IsComplete && IsNamed; } }
- public bool IsNamed { get { return name.IsValid; } }
-
- protected override XObject NewInstance ()
- {
- return new AspNetDirective ();
- }
-
- protected override void ShallowCopyFrom (XObject copyFrom)
- {
- base.ShallowCopyFrom (copyFrom);
- AspNetDirective copyFromEl = (AspNetDirective) copyFrom;
- name = copyFromEl.name; //XName is immutable value type
- }
-
- public override string ToString ()
- {
- return string.Format ("[AspNetDirective Name='{0}' Location='{1}'", name.FullName, this.Region);
- }
-
- public override void BuildTreeString (StringBuilder builder, int indentLevel)
- {
- builder.Append (' ', indentLevel * 2);
- builder.AppendFormat ("[AspNetDirective Name='{0}' Location='{1}' Children=", name.FullName, this.Region);
- builder.AppendLine ();
-
- builder.Append (' ', indentLevel * 2);
- builder.Append ("Attributes=");
- builder.AppendLine ();
-
- foreach (XAttribute att in Attributes)
- att.BuildTreeString (builder, indentLevel + 1);
-
- builder.Append (' ', indentLevel * 2);
- builder.AppendLine ("]");
- }
-
- public override string FriendlyPathRepresentation {
- get { return "<%@ " + name.FullName + " %>"; }
- }
-
- }
-
- public abstract class AspNetExpression : XNode
- {
- public AspNetExpression (DomRegion region) : base (region) {}
- public AspNetExpression (TextLocation start) : base (start) {}
- protected AspNetExpression () {}
- }
-
-
- public class AspNetRenderExpression : AspNetExpression
- {
- public AspNetRenderExpression (DomRegion region) : base (region) {}
- public AspNetRenderExpression (TextLocation start) : base (start) {}
- protected AspNetRenderExpression () {}
-
- protected override XObject NewInstance () { return new AspNetRenderExpression (); }
-
- public override string ToString ()
- {
- return string.Format ("[AspNetRenderExpression Location='{0}'", this.Region);
- }
-
- public override string FriendlyPathRepresentation {
- get { return "<%= %>"; }
- }
- }
-
- public class AspNetHtmlEncodedExpression : AspNetExpression
- {
- public AspNetHtmlEncodedExpression (DomRegion region) : base (region) {}
- public AspNetHtmlEncodedExpression (TextLocation start) : base (start) {}
- protected AspNetHtmlEncodedExpression () {}
-
- protected override XObject NewInstance () { return new AspNetHtmlEncodedExpression (); }
-
- public override string ToString ()
- {
- return string.Format ("[AspNetHtmlEncodedExpression Location='{0}'", this.Region);
- }
-
- public override string FriendlyPathRepresentation {
- get { return "<%: %>"; }
- }
- }
-
- public class AspNetDataBindingExpression : AspNetExpression
- {
- public AspNetDataBindingExpression (DomRegion region) : base (region) {}
- public AspNetDataBindingExpression (TextLocation start) : base (start) {}
- protected AspNetDataBindingExpression () {}
-
- protected override XObject NewInstance () { return new AspNetDataBindingExpression (); }
-
- public override string ToString ()
- {
- return string.Format ("[AspNetDataBindingExpression Location='{0}'", this.Region);
- }
-
- public override string FriendlyPathRepresentation {
- get { return "<%# %>"; }
- }
- }
-
- public class AspNetResourceExpression : AspNetExpression
- {
- public AspNetResourceExpression (DomRegion region) : base (region) {}
- public AspNetResourceExpression (TextLocation start) : base (start) {}
- protected AspNetResourceExpression () {}
-
- protected override XObject NewInstance () { return new AspNetResourceExpression (); }
-
- public override string ToString ()
- {
- return string.Format ("[AspNetResourceExpression Location='{0}'", this.Region);
- }
-
- public override string FriendlyPathRepresentation {
- get { return "<%$ %>"; }
- }
- }
-
- public class AspNetServerComment : XNode
- {
- public AspNetServerComment (DomRegion region) : base (region) {}
- public AspNetServerComment (TextLocation start) : base (start) {}
- protected AspNetServerComment () {}
-
- protected override XObject NewInstance () { return new AspNetServerComment (); }
-
- public override string ToString ()
- {
- return string.Format ("[AspNetServerComment Location='{0}'", this.Region);
- }
-
- public override string FriendlyPathRepresentation {
- get { return "<%-- --%>"; }
- }
- }
-
- public class AspNetRenderBlock : XNode
- {
- public AspNetRenderBlock (DomRegion region) : base (region) {}
- public AspNetRenderBlock (TextLocation start) : base (start) {}
- protected AspNetRenderBlock () {}
-
- protected override XObject NewInstance () { return new AspNetRenderBlock (); }
-
- public override string ToString ()
- {
- return string.Format ("[AspNetRenderBlock Location='{0}'", this.Region);
- }
-
-
- public override string FriendlyPathRepresentation {
- get { return "<% %>"; }
- }
- }
-
- public static class AspNetDomExtensions
- {
- static XName scriptName = new XName ("script");
- static XName runatName = new XName ("runat");
- static XName idName = new XName ("id");
-
- public static bool IsRunatServer (this XElement el)
- {
- var val = el.Attributes.GetValue (runatName, true);
- return string.Equals (val, "server", StringComparison.OrdinalIgnoreCase);
- }
-
- public static string GetId (this IAttributedXObject el)
- {
- return el.Attributes.GetValue (idName, true);
- }
-
- public static bool IsServerScriptTag (this XElement el)
- {
- return XName.Equals (el.Name, scriptName, true) && IsRunatServer (el);
- }
-
- public static IEnumerable<T> WithName<T> (this IEnumerable<XNode> nodes, XName name, bool ignoreCase) where T : XNode, INamedXObject
- {
- return nodes.OfType<T> ().Where (el => XName.Equals (el.Name, name, ignoreCase));
- }
-
- public static IEnumerable<string> GetAllPlaceholderIds (this XDocument doc)
- {
- return doc.AllDescendentNodes
- .WithName<XElement> (new XName ("asp", "ContentPlaceHolder"), true)
- .Where (x => x.IsRunatServer ())
- .Select (x => x.GetId ())
- .Where (id => !string.IsNullOrEmpty (id));
- }
- }
-}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.addin.xml b/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.addin.xml
deleted file mode 100644
index 4ca499a0b9..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.addin.xml
+++ /dev/null
@@ -1,263 +0,0 @@
-<ExtensionModel>
-
- <Runtime>
- <Import file="Schemas/xhtml1-strict.xsd" />
- <Import file="Schemas/xhtml1-transitional.xsd" />
- <Import file="Schemas/xhtml1-frameset.xsd" />
- </Runtime>
-
- <Extension path = "/MonoDevelop/ProjectModel/MSBuildItemTypes">
- <DotNetProjectSubtype
- id="MonoDevelop.AspNet.AspNetAppProject"
- guid="{349c5851-65df-11da-9384-00065b846f21}"
- type="MonoDevelop.AspNet.AspNetAppProject"
- />
- </Extension>
-
- <ExtensionPoint path = "/MonoDevelop/Html/DocTypes">
- <ExtensionNode name = "DocType" type = "MonoDevelop.Html.DocTypeExtensionNode" />
- </ExtensionPoint>
-
- <ExtensionPoint path = "/MonoDevelop/Asp/CompletionBuilders">
- <ExtensionNode name="Class" />
- </ExtensionPoint>
-
- <Extension path = "/MonoDevelop/Ide/FileTemplates">
- <FileTemplate id = "WebForm-Empty"
- resource = "WebForm-Empty.xft.xml"/>
- <FileTemplate id = "WebForm-CodeBehind"
- resource = "WebForm-CodeBehind.xft.xml"/>
- <FileTemplate id = "WebForm-CodeBehindNonPartial"
- resource = "WebForm-CodeBehindNonPartial.xft.xml"/>
-
- <FileTemplate id = "WebHandler-Empty"
- resource = "WebHandler-Empty.xft.xml"/>
- <FileTemplate id = "WebHandler-CodeBehind"
- resource = "WebHandler-CodeBehind.xft.xml"/>
-
- <FileTemplate id = "WebControl-Empty"
- resource = "WebControl-Empty.xft.xml"/>
- <FileTemplate id = "WebControl-CodeBehind"
- resource = "WebControl-CodeBehind.xft.xml"/>
- <FileTemplate id = "WebControl-CodeBehindNonPartial"
- resource = "WebControl-CodeBehindNonPartial.xft.xml"/>
-
- <FileTemplate id = "WebService-Empty"
- resource = "WebService-Empty.xft.xml"/>
- <FileTemplate id = "WebService-CodeBehind"
- resource = "WebService-CodeBehind.xft.xml"/>
-
- <FileTemplate id = "MasterPage-Empty"
- resource = "MasterPage-Empty.xft.xml" />
- <FileTemplate id = "MasterPage-CodeBehind"
- resource = "MasterPage-CodeBehind.xft.xml" />
- <FileTemplate id = "MasterPage-CodeBehindNonPartial"
- resource = "MasterPage-CodeBehindNonPartial.xft.xml" />
-
- <FileTemplate id = "NestedMasterPage"
- resource = "NestedMasterPage.xft.xml" />
- <FileTemplate id = "NestedMasterPage-CodeBehind"
- resource = "NestedMasterPage-CodeBehind.xft.xml" />
-
- <FileTemplate id = "GlobalAsax-Empty"
- resource = "GlobalAsax-Empty.xft.xml" />
- <FileTemplate id = "GlobalAsax-CodeBehind"
- resource = "GlobalAsax-CodeBehind.xft.xml" />
-
- <FileTemplate id = "WebConfig-Application"
- resource = "WebConfig-Application.xft.xml" />
- <FileTemplate id = "WebConfig-SubDir"
- resource = "WebConfig-SubDir.xft.xml" />
-
- <FileTemplate id = "WebContentForm-CodeBehind"
- resource = "WebContentForm-CodeBehind.xft.xml" />
- <FileTemplate id = "WebContentForm"
- resource = "WebContentForm.xft.xml" />
- </Extension>
-
- <Extension path = "/MonoDevelop/Ide/FileTemplateTypes">
- <FileTemplateType name = "AspNetFile" class = "MonoDevelop.AspNet.AspNetFileDescriptionTemplate"/>
- <FileTemplateType name = "AspNetMasterContentFile" class = "MonoDevelop.AspNet.MasterContentFileDescriptionTemplate"/>
- </Extension>
-
- <Extension path = "/MonoDevelop/Ide/ProjectTemplates">
- <ProjectTemplate id = "WebApplication" resource = "WebApplication.xpt.xml"/>
- <ProjectTemplate id = "WebApplication-Empty" resource = "WebApplication-Empty.xpt.xml"/>
- </Extension>
-
- <Extension path = "/MonoDevelop/Ide/FileFilters">
- <FileFilter id = "AspNetWebFiles"
- insertafter = "Xml"
- _label = "ASP.NET Files"
- extensions = "*.aspx,*.ashx,*.asmx,*.ascx,*.master,*.asax" />
- <FileFilter id = "Html"
- _label = "HTML Files"
- extensions = "*.htm,*.html"/>
- </Extension>
-
- <Extension path = "/MonoDevelop/ProjectModel/ProjectBindings">
- <ProjectBinding id = "AspNetApplication" class = "MonoDevelop.AspNet.AspNetAppProjectBinding" />
- </Extension>
-
- <Extension path = "/MonoDevelop/TypeSystem/Parser">
- <Parser class = "MonoDevelop.AspNet.Parser.AspNetParser" mimeType="application/x-aspx, application/x-ascx, application/x-master-page" />
- <Parser class = "MonoDevelop.Html.HtmlParser" mimeType="text/html, application/x-spark" />
- </Extension>
-
- <Extension path = "/MonoDevelop/ProjectModel/SerializableClasses">
- <DataType class = "MonoDevelop.AspNet.AspNetAppProject" />
- <DataType class = "MonoDevelop.AspNet.AspNetAppProjectConfiguration" />
- <DataType class = "MonoDevelop.AspNet.AspNetToolboxNode" />
- </Extension>
-
- <Extension path = "/MonoDevelop/ProjectModel/Gui/ItemOptionPanels/Run">
- <Condition id="ItemType" value="MonoDevelop.AspNet.AspNetAppProject">
- <Section id = "XspOptions"
- _label = "XSP Web Server"
- class = "MonoDevelop.AspNet.Gui.XspOptionsPanel"/>
- </Condition>
- </Extension>
-
- <Extension path = "/MonoDevelop/ProjectModel/Gui/ItemOptionPanels/Build">
- <Condition id="ItemType" value="MonoDevelop.AspNet.AspNetAppProject">
- <Section id = "AspNetConfiguration"
- _label = "ASP.NET Options"
- class = "MonoDevelop.AspNet.Gui.AspNetConfigurationPanel"/>
- </Condition>
- </Extension>
-
- <Extension path = "/MonoDevelop/ProjectModel/Gui/ItemOptionPanels/Deployment">
- <Condition id="ItemType" value="MonoDevelop.AspNet.AspNetAppProject">
- <Section id = "MonoDevelop.AspNet.Deployment"
- _label = "Web Deployment Targets"
- class = "MonoDevelop.AspNet.Deployment.WebDeployOptionsPanel"
- fill = "true" />
- </Condition>
- </Extension>
-
- <Extension path = "/MonoDevelop/ProjectModel/ProjectServiceExtensions">
- <Condition id="ItemType" value="MonoDevelop.AspNet.AspNetAppProject">
- <Class class = "MonoDevelop.AspNet.VerifyCodeBehindBuildStep" insertafter="MidStep" />
- </Condition>
- </Extension>
-
- <Extension path = "/MonoDevelop/DesignerSupport/ToolboxLoaders">
- <Class id="AspNetToolboxLoader" class="MonoDevelop.AspNet.AspNetToolboxLoader"/>
- </Extension>
-
- <Extension path = "/MonoDevelop/DesignerSupport/ToolboxProviders">
- <Class id="AspNetDefaultControlToolboxProvider" class="MonoDevelop.AspNet.AspNetToolboxProvider"/>
- </Extension>
-
- <Extension path = "/MonoDevelop/Ide/Commands">
- <Category _name = "ASP.NET" id = "AspNet">
- <Command id = "MonoDevelop.AspNet.AspNetCommands.AddAspNetDirectory"
- _label = "ASP.NET Directory"
- type="array" />
- <Command id = "MonoDevelop.AspNet.Deployment.WebDeployCommands.DeployProject"
- defaultHandler = "MonoDevelop.AspNet.Deployment.ProjectDeployHandler"
- _label = "Deploy to Web..." />
- </Category>
- </Extension>
-
- <Extension path = "/MonoDevelop/Ide/ContextMenu/ProjectPad/Add">
- <Condition id="ItemType" value="MonoDevelop.AspNet.AspNetAppProject">
- <ItemSet id = "AspNetDirectories" _label = "ASP.NET Directory" insertafter = "MonoDevelop.Ide.Commands.ProjectCommands.NewFolder" autohide = "true">
- <CommandItem id = "MonoDevelop.AspNet.AspNetCommands.AddAspNetDirectory" />
- </ItemSet>
- </Condition>
- </Extension>
-
- <Extension path = "/MonoDevelop/Ide/Pads/ProjectPad">
- <NodeBuilder id="MonoDevelop.AspNet.ProjectFolderNodeBuilderExtension" class = "MonoDevelop.AspNet.ProjectFolderNodeBuilderExtension"/>
- </Extension>
-
- <Extension path = "/MonoDevelop/Ide/ContextMenu/ProjectPad/Tools">
- <Condition id="ItemType" value="MonoDevelop.AspNet.AspNetAppProject">
- <CommandItem id = "MonoDevelop.AspNet.Deployment.WebDeployCommands.DeployProject" insertafter="MonoDevelop.Ide.Commands.ProjectCommands.ExportSolution"/>
- </Condition>
- </Extension>
-
- <Extension path = "/MonoDevelop/Ide/MainMenu/Project">
- <CommandItem id = "MonoDevelop.AspNet.Deployment.WebDeployCommands.DeployProject" insertafter="MonoDevelop.Ide.Commands.ProjectCommands.ExportSolution"/>
- </Extension>
-
- <Extension path = "/MonoDevelop/SourceEditor2/CustomModes">
- <SyntaxMode mimeTypes="application/x-aspx" class="MonoDevelop.AspNet.AspNetSyntaxMode"/>
- </Extension>
-
- <Extension path = "/MonoDevelop/Core/MimeTypes">
- <MimeType id="application/x-aspx" _description="ASP.NET page" icon="md-html-file-icon" isText="true">
- <File pattern="*.aspx" />
- </MimeType>
- <MimeType id="application/x-ascx" _description="ASP.NET user control" icon="md-html-file-icon" isText="true">
- <File pattern="*.ascx" />
- </MimeType>
- <MimeType id="application/x-asax" _description="ASP.NET global application class" icon="md-html-file-icon" isText="true">
- <File pattern="*.asax" />
- </MimeType>
- <MimeType id="application/x-ashx" _description="ASP.NET handler" icon="md-html-file-icon" isText="true">
- <File pattern="*.ashx" />
- </MimeType>
- <MimeType id="application/x-asmx" _description="ASP.NET web service" icon="md-html-file-icon" isText="true">
- <File pattern="*.asmx" />
- </MimeType>
- <MimeType id="application/x-asix" _description="ASP.NET image generator" icon="md-html-file-icon" isText="true">
- <File pattern="*.asix" />
- </MimeType>
- <MimeType id="application/x-master-page" _description="ASP.NET master page" icon="md-html-file-icon" isText="true">
- <File pattern="*.master|*.Master" />
- </MimeType>
- <MimeType id="application/javascript" _description="Javascript source code" icon="md-html-file-icon" isText="true">
- <File pattern="*.js" />
- </MimeType>
- <MimeType id="text/css" _description="CSS document" icon="md-html-file-icon" isText="true">
- <File pattern="*.css" />
- </MimeType>
- <MimeType id="text/x-less" _description="LESS, CSS document" icon="md-html-file-icon" isText="true">
- <File pattern="*.less" />
- </MimeType>
- <MimeType id="text/html" _description="HTML document" icon="md-html-file-icon" isText="true">
- <File pattern="*.html|*.htm" />
- </MimeType>
- <MimeType id="application/x-spark" _description="Spark View template" icon="md-html-file-icon" isText="true"
- baseType="text/html">
- <File pattern="*.spark" />
- </MimeType>
- <MimeType id="application/typescript" _description="Typescript source code" icon="md-html-file-icon" isText="true">
- <File pattern="*.ts" />
- </MimeType>
- </Extension>
-
- <Extension path = "/MonoDevelop/Ide/TextEditorExtensions">
- <Class fileExtensions=".aspx, .ascx, .master" class = "MonoDevelop.AspNet.Gui.AspNetEditorExtension" />
- <Class fileExtensions=".html, .htm, .spark" class = "MonoDevelop.AspNet.Gui.HtmlEditorExtension" />
- </Extension>
-
- <Extension path = "/MonoDevelop/Html/DocTypes">
- <DocType name = "XHTML 1.0 Strict"
- fullName = "&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Strict//EN&quot;
-&quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&quot;>"
- xsdFile = "xhtml1-strict.xsd" />
- <DocType name = "XHTML 1.0 Transitional"
- fullName = "&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Transitional//EN&quot;
-&quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&quot;>"
- xsdFile = "xhtml1-transitional.xsd" />
- <DocType name = "XHTML 1.0 Frameset"
- fullName = "&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Frameset//EN&quot;
-&quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd&quot;>"
- xsdFile = "xhtml1-frameset.xsd" />
- </Extension>
-
- <Extension path = "/MonoDevelop/Deployment/DeployServiceExtensions">
- <Class id="AspNetDeploy" insertbefore="PrepareDeploy" class = "MonoDevelop.AspNet.Deployment.AspNetDeployServiceExtension" />
- </Extension>
-
- <Extension path = "/MonoDevelop/Core/ExecutionHandlers">
- <ExecutionHandler id="AspNet" class = "MonoDevelop.AspNet.AspNetExecutionHandler"/>
- </Extension>
-
- <Extension path = "/MonoDevelop/Ide/CompletionCharacters">
- <Complete language="Html" commitOnSpace="True" commitChars="{}[]().,:;+-*/%&amp;|^!~=&lt;&gt;?@#'&quot;\" />
- </Extension>
-</ExtensionModel>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.csproj b/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.csproj
deleted file mode 100644
index b1151bf720..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.csproj
+++ /dev/null
@@ -1,322 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
- <PropertyGroup>
- <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
- <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
- <ProductVersion>8.0.30703</ProductVersion>
- <SchemaVersion>2.0</SchemaVersion>
- <ProjectGuid>{1CF94D07-5480-4D10-A3CD-2EBD5E87B02E}</ProjectGuid>
- <OutputType>Library</OutputType>
- <AssemblyName>MonoDevelop.AspNet</AssemblyName>
- <RootNamespace>MonoDevelop.AspNet</RootNamespace>
- </PropertyGroup>
- <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
- <DebugSymbols>True</DebugSymbols>
- <DebugType>full</DebugType>
- <Optimize>false</Optimize>
- <OutputPath>..\..\..\..\build\AddIns\MonoDevelop.AspNet</OutputPath>
- <ErrorReport>prompt</ErrorReport>
- <WarningLevel>4</WarningLevel>
- <Execution>
- <Execution clr-version="Net_2_0" />
- </Execution>
- <DefineConstants>DEBUG</DefineConstants>
- <NoWarn>1591;1573</NoWarn>
- <DocumentationFile>..\..\..\..\build\AddIns\MonoDevelop.AspNet\MonoDevelop.AspNet.xml</DocumentationFile>
- </PropertyGroup>
- <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
- <DebugType>pdbonly</DebugType>
- <Optimize>True</Optimize>
- <OutputPath>..\..\..\..\build\AddIns\MonoDevelop.AspNet</OutputPath>
- <ErrorReport>prompt</ErrorReport>
- <WarningLevel>4</WarningLevel>
- <Execution>
- <Execution clr-version="Net_2_0" />
- </Execution>
- <DebugSymbols>true</DebugSymbols>
- <NoWarn>1591;1573</NoWarn>
- <DocumentationFile>..\..\..\..\build\AddIns\MonoDevelop.AspNet\MonoDevelop.AspNet.xml</DocumentationFile>
- </PropertyGroup>
- <ItemGroup>
- <ProjectReference Include="..\..\..\core\MonoDevelop.Ide\MonoDevelop.Ide.csproj">
- <Project>{27096E7F-C91C-4AC6-B289-6897A701DF21}</Project>
- <Name>MonoDevelop.Ide</Name>
- <Private>False</Private>
- </ProjectReference>
- <ProjectReference Include="..\..\..\core\MonoDevelop.Core\MonoDevelop.Core.csproj">
- <Project>{7525BB88-6142-4A26-93B9-A30C6983390A}</Project>
- <Name>MonoDevelop.Core</Name>
- <Private>False</Private>
- </ProjectReference>
- <ProjectReference Include="..\..\MonoDevelop.DesignerSupport\MonoDevelop.DesignerSupport.csproj">
- <Project>{2C24D515-4A2C-445C-8419-C09231913CFA}</Project>
- <Name>MonoDevelop.DesignerSupport</Name>
- <Private>False</Private>
- </ProjectReference>
- <ProjectReference Include="..\..\Deployment\MonoDevelop.Deployment\MonoDevelop.Deployment.csproj">
- <Project>{9BC670A8-1851-40EC-9685-279F4C98433D}</Project>
- <Name>MonoDevelop.Deployment</Name>
- <Private>False</Private>
- </ProjectReference>
- <ProjectReference Include="..\..\Deployment\MonoDevelop.Deployment.Linux\MonoDevelop.Deployment.Linux.csproj">
- <Project>{BA9020AD-A2D1-47C8-9A7C-756162C38296}</Project>
- <Name>MonoDevelop.Deployment.Linux</Name>
- <Private>False</Private>
- </ProjectReference>
- <ProjectReference Include="..\..\MonoDevelop.XmlEditor\MonoDevelop.XmlEditor.csproj">
- <Project>{86DFC74A-B0B6-4C73-9E05-9098DA8FA5F1}</Project>
- <Name>MonoDevelop.XmlEditor</Name>
- <Private>False</Private>
- </ProjectReference>
- <ProjectReference Include="..\..\..\core\Mono.Texteditor\Mono.TextEditor.csproj">
- <Project>{A2329308-3751-4DBD-9A75-5F7B8B024625}</Project>
- <Name>Mono.TextEditor</Name>
- <Private>False</Private>
- </ProjectReference>
- <ProjectReference Include="..\..\MonoDevelop.Refactoring\MonoDevelop.Refactoring.csproj">
- <Project>{100568FC-F4E8-439B-94AD-41D11724E45B}</Project>
- <Name>MonoDevelop.Refactoring</Name>
- <Private>False</Private>
- </ProjectReference>
- <ProjectReference Include="..\..\MonoDevelop.SourceEditor2\MonoDevelop.SourceEditor.csproj">
- <Project>{F8F92AA4-A376-4679-A9D4-60E7B7FBF477}</Project>
- <Name>MonoDevelop.SourceEditor</Name>
- <Private>False</Private>
- </ProjectReference>
- <ProjectReference Include="..\..\..\..\external\nrefactory\ICSharpCode.NRefactory\ICSharpCode.NRefactory.csproj">
- <Project>{3B2A5653-EC97-4001-BB9B-D90F1AF2C371}</Project>
- <Name>ICSharpCode.NRefactory</Name>
- <Private>False</Private>
- </ProjectReference>
- <ProjectReference Include="..\..\..\..\external\nrefactory\ICSharpCode.NRefactory.CSharp\ICSharpCode.NRefactory.CSharp.csproj">
- <Project>{53DCA265-3C3C-42F9-B647-F72BA678122B}</Project>
- <Name>ICSharpCode.NRefactory.CSharp</Name>
- <Private>False</Private>
- </ProjectReference>
- <ProjectReference Include="..\..\MonoDevelop.Debugger\MonoDevelop.Debugger.csproj">
- <Project>{2357AABD-08C7-4808-A495-8FF2D3CDFDB0}</Project>
- <Name>MonoDevelop.Debugger</Name>
- <Private>False</Private>
- </ProjectReference>
- <ProjectReference Include="..\..\..\..\external\mono-addins\Mono.Addins\Mono.Addins.csproj">
- <Project>{91DD5A2D-9FE3-4C3C-9253-876141874DAD}</Project>
- <Name>Mono.Addins</Name>
- <Private>False</Private>
- </ProjectReference>
- <ProjectReference Include="..\..\..\..\external\debugger-libs\Mono.Debugging\Mono.Debugging.csproj">
- <Project>{90C99ADB-7D4B-4EB4-98C2-40BD1B14C7D2}</Project>
- <Name>Mono.Debugging</Name>
- <Private>False</Private>
- </ProjectReference>
- <ProjectReference Include="..\..\..\..\external\xwt\Xwt\Xwt.csproj">
- <Project>{92494904-35FA-4DC9-BDE9-3A3E87AC49D3}</Project>
- <Name>Xwt</Name>
- <Private>False</Private>
- </ProjectReference>
- </ItemGroup>
- <ItemGroup>
- <Reference Include="System" />
- <Reference Include="System.Xml" />
- <Reference Include="System.Web" />
- <Reference Include="System.Drawing.Design" />
- <Reference Include="System.Design" />
- <Reference Include="System.Drawing" />
- <Reference Include="System.Configuration" />
- <Reference Include="System.Core" />
- <Reference Include="glib-sharp, Version=2.12.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f">
- <SpecificVersion>False</SpecificVersion>
- </Reference>
- <Reference Include="pango-sharp, Version=2.12.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f">
- <SpecificVersion>False</SpecificVersion>
- </Reference>
- <Reference Include="atk-sharp, Version=2.12.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f">
- <SpecificVersion>False</SpecificVersion>
- </Reference>
- <Reference Include="gdk-sharp, Version=2.12.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f">
- <SpecificVersion>False</SpecificVersion>
- </Reference>
- <Reference Include="gtk-sharp, Version=2.12.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f">
- <SpecificVersion>False</SpecificVersion>
- </Reference>
- <Reference Include="System.Xml.Linq" />
- <Reference Include="Mono.Posix" />
- </ItemGroup>
- <ItemGroup>
- <EmbeddedResource Include="MonoDevelop.AspNet.addin.xml">
- <LogicalName>MonoDevelop.AspNet.addin.xml</LogicalName>
- </EmbeddedResource>
- <EmbeddedResource Include="Templates\WebForm-Empty.xft.xml">
- <LogicalName>WebForm-Empty.xft.xml</LogicalName>
- </EmbeddedResource>
- <EmbeddedResource Include="Templates\WebHandler-Empty.xft.xml">
- <LogicalName>WebHandler-Empty.xft.xml</LogicalName>
- </EmbeddedResource>
- <EmbeddedResource Include="Templates\WebControl-Empty.xft.xml">
- <LogicalName>WebControl-Empty.xft.xml</LogicalName>
- </EmbeddedResource>
- <EmbeddedResource Include="Templates\WebControl-CodeBehind.xft.xml">
- <LogicalName>WebControl-CodeBehind.xft.xml</LogicalName>
- </EmbeddedResource>
- <EmbeddedResource Include="Templates\WebForm-CodeBehind.xft.xml">
- <LogicalName>WebForm-CodeBehind.xft.xml</LogicalName>
- </EmbeddedResource>
- <EmbeddedResource Include="Templates\WebHandler-CodeBehind.xft.xml">
- <LogicalName>WebHandler-CodeBehind.xft.xml</LogicalName>
- </EmbeddedResource>
- <EmbeddedResource Include="Templates\WebApplication.xpt.xml">
- <LogicalName>WebApplication.xpt.xml</LogicalName>
- </EmbeddedResource>
- <EmbeddedResource Include="Templates\WebService-Empty.xft.xml">
- <LogicalName>WebService-Empty.xft.xml</LogicalName>
- </EmbeddedResource>
- <EmbeddedResource Include="Templates\WebService-CodeBehind.xft.xml">
- <LogicalName>WebService-CodeBehind.xft.xml</LogicalName>
- </EmbeddedResource>
- <EmbeddedResource Include="Templates\MasterPage-CodeBehind.xft.xml">
- <LogicalName>MasterPage-CodeBehind.xft.xml</LogicalName>
- </EmbeddedResource>
- <EmbeddedResource Include="Templates\MasterPage-Empty.xft.xml">
- <LogicalName>MasterPage-Empty.xft.xml</LogicalName>
- </EmbeddedResource>
- <EmbeddedResource Include="gtk-gui\gui.stetic">
- <LogicalName>gui.stetic</LogicalName>
- </EmbeddedResource>
- <EmbeddedResource Include="Templates\GlobalAsax-CodeBehind.xft.xml">
- <LogicalName>GlobalAsax-CodeBehind.xft.xml</LogicalName>
- </EmbeddedResource>
- <EmbeddedResource Include="Templates\GlobalAsax-Empty.xft.xml">
- <LogicalName>GlobalAsax-Empty.xft.xml</LogicalName>
- </EmbeddedResource>
- <EmbeddedResource Include="Templates\MasterPage-CodeBehindNonPartial.xft.xml">
- <LogicalName>MasterPage-CodeBehindNonPartial.xft.xml</LogicalName>
- </EmbeddedResource>
- <EmbeddedResource Include="Templates\WebControl-CodeBehindNonPartial.xft.xml">
- <LogicalName>WebControl-CodeBehindNonPartial.xft.xml</LogicalName>
- </EmbeddedResource>
- <EmbeddedResource Include="Templates\WebForm-CodeBehindNonPartial.xft.xml">
- <LogicalName>WebForm-CodeBehindNonPartial.xft.xml</LogicalName>
- </EmbeddedResource>
- <EmbeddedResource Include="Templates\WebApplication-Empty.xpt.xml">
- <LogicalName>WebApplication-Empty.xpt.xml</LogicalName>
- </EmbeddedResource>
- <EmbeddedResource Include="Templates\WebConfig-Application.xft.xml">
- <LogicalName>WebConfig-Application.xft.xml</LogicalName>
- </EmbeddedResource>
- <EmbeddedResource Include="Templates\WebConfig-SubDir.xft.xml">
- <LogicalName>WebConfig-SubDir.xft.xml</LogicalName>
- </EmbeddedResource>
- <EmbeddedResource Include="Templates\WebContentForm-CodeBehind.xft.xml">
- <LogicalName>WebContentForm-CodeBehind.xft.xml</LogicalName>
- </EmbeddedResource>
- <EmbeddedResource Include="Templates\NestedMasterPage.xft.xml">
- <LogicalName>NestedMasterPage.xft.xml</LogicalName>
- </EmbeddedResource>
- <EmbeddedResource Include="Templates\NestedMasterPage-CodeBehind.xft.xml">
- <LogicalName>NestedMasterPage-CodeBehind.xft.xml</LogicalName>
- </EmbeddedResource>
- <EmbeddedResource Include="Templates\WebContentForm.xft.xml">
- <LogicalName>WebContentForm.xft.xml</LogicalName>
- </EmbeddedResource>
- </ItemGroup>
- <ItemGroup>
- <Compile Include="MonoDevelop.AspNet\AspNetAppProject.cs" />
- <Compile Include="MonoDevelop.AspNet\AspNetAppProjectBinding.cs" />
- <Compile Include="MonoDevelop.AspNet\AspNetAppProjectConfiguration.cs" />
- <Compile Include="MonoDevelop.AspNet\AspNetFileDescriptionTemplate.cs" />
- <Compile Include="MonoDevelop.AspNet.Parser\WebFormReferenceManager.cs" />
- <Compile Include="MonoDevelop.AspNet\XspParameters.cs" />
- <Compile Include="MonoDevelop.AspNet.Gui\XspOptionsPanel.cs" />
- <Compile Include="MonoDevelop.AspNet\VerifyCodeBehindBuildStep.cs" />
- <Compile Include="MonoDevelop.AspNet.Gui\AspNetConfigurationPanel.cs" />
- <Compile Include="gtk-gui\generated.cs" />
- <Compile Include="MonoDevelop.AspNet\CodeBehind.cs" />
- <Compile Include="MonoDevelop.AspNet.Gui\AspNetConfigurationPanelWidget.cs" />
- <Compile Include="MonoDevelop.AspNet\ProjectFolderNodeBuilderExtension.cs" />
- <Compile Include="MonoDevelop.AspNet\AspNetCommands.cs" />
- <Compile Include="MonoDevelop.AspNet.Gui\XspOptionsPanelWidget.cs" />
- <Compile Include="MonoDevelop.AspNet.Deployment\WebDeployOptionsPanelWidget.cs" />
- <Compile Include="MonoDevelop.AspNet.Deployment\WebDeployOptionsPanel.cs" />
- <Compile Include="gtk-gui\MonoDevelop.AspNet.Deployment.WebDeployOptionsPanelWidget.cs" />
- <Compile Include="MonoDevelop.AspNet.Deployment\WebDeployTargetCollection.cs" />
- <Compile Include="MonoDevelop.AspNet.Deployment\WebDeployTarget.cs" />
- <Compile Include="MonoDevelop.AspNet.Deployment\WebTargetEditor.cs" />
- <Compile Include="gtk-gui\MonoDevelop.AspNet.Deployment.WebTargetEditor.cs" />
- <Compile Include="MonoDevelop.AspNet.Deployment\WebDeployTargetEditor.cs" />
- <Compile Include="gtk-gui\MonoDevelop.AspNet.Deployment.WebDeployTargetEditor.cs" />
- <Compile Include="MonoDevelop.AspNet.Deployment\WebDeployLaunchDialog.cs" />
- <Compile Include="gtk-gui\MonoDevelop.AspNet.Deployment.WebDeployLaunchDialog.cs" />
- <Compile Include="MonoDevelop.AspNet.Deployment\WebDeployService.cs" />
- <Compile Include="MonoDevelop.AspNet.Deployment\WebDeployCommands.cs" />
- <Compile Include="MonoDevelop.AspNet.Deployment\WebDeployResolver.cs" />
- <Compile Include="MonoDevelop.AspNet\WebTypeManager.cs" />
- <Compile Include="MonoDevelop.AspNet.Parser\DocumentReferenceManager.cs" />
- <Compile Include="MonoDevelop.AspNet\IAspNetLanguageBinding.cs" />
- <Compile Include="gtk-gui\MonoDevelop.AspNet.Gui.AspNetConfigurationPanelWidget.cs" />
- <Compile Include="gtk-gui\MonoDevelop.AspNet.Gui.XspOptionsPanelWidget.cs" />
- <Compile Include="MonoDevelop.AspNet.Gui\AspNetEditorExtension.cs" />
- <Compile Include="MonoDevelop.Html\HtmlSchemaService.cs" />
- <Compile Include="MonoDevelop.Html\HtmlSchema.cs" />
- <Compile Include="MonoDevelop.AspNet.Parser\Regexes.cs" />
- <Compile Include="MonoDevelop.AspNet.Gui\BrowserLauncher.cs" />
- <Compile Include="MonoDevelop.Html\DocTypeExtensionNode.cs" />
- <Compile Include="MonoDevelop.Html\DocTypeCompletionData.cs" />
- <Compile Include="MonoDevelop.AspNet.Parser\SuggestedHandlerCompletionData.cs" />
- <Compile Include="MonoDevelop.AspNet.StateEngine\AspNetFreeState.cs" />
- <Compile Include="MonoDevelop.Html\HtmlCompletionDataProvider.cs" />
- <Compile Include="MonoDevelop.AspNet.Parser\AspNetParser.cs" />
- <Compile Include="MonoDevelop.AspNet.Parser\AspNetParsedDocument.cs" />
- <Compile Include="MonoDevelop.AspNet.Parser\PageInfo.cs" />
- <Compile Include="MonoDevelop.AspNet\AspNetToolboxLoader.cs" />
- <Compile Include="MonoDevelop.AspNet\AspNetToolboxNode.cs" />
- <Compile Include="MonoDevelop.AspNet\AspNetToolboxProvider.cs" />
- <Compile Include="MonoDevelop.AspNet.StateEngine\AspNetExpressionState.cs" />
- <Compile Include="MonoDevelop.AspNet.StateEngine\AspNetDom.cs" />
- <Compile Include="MonoDevelop.AspNet.StateEngine\AspNetDirectiveState.cs" />
- <Compile Include="MonoDevelop.AspNet.StateEngine\AspNetServerCommentState.cs" />
- <Compile Include="MonoDevelop.AspNet.Deployment\AspNetDeployServiceExtension.cs" />
- <Compile Include="MonoDevelop.AspNet.Parser\Directive.cs" />
- <Compile Include="MonoDevelop.AspNet.Completion\SimpleLists.cs" />
- <Compile Include="MonoDevelop.AspNet.Gui\BaseHtmlEditorExtension.cs" />
- <Compile Include="MonoDevelop.AspNet.Gui\HtmlEditorExtension.cs" />
- <Compile Include="MonoDevelop.Html\HtmlParser.cs" />
- <Compile Include="MonoDevelop.Html\ElementTypes.cs" />
- <Compile Include="MonoDevelop.AspNet.StateEngine\HtmlTagState.cs" />
- <Compile Include="MonoDevelop.AspNet.StateEngine\HtmlClosingTagState.cs" />
- <Compile Include="AssemblyInfo.cs" />
- <Compile Include="MonoDevelop.AspNet\MasterContentFileDescriptionTemplate.cs" />
- <Compile Include="MonoDevelop.AspNet\AspNetExecutionCommand.cs" />
- <Compile Include="MonoDevelop.AspNet\AspNetExecutionHandler.cs" />
- <Compile Include="MonoDevelop.AspNet\AspNetSyntaxMode.cs" />
- <Compile Include="MonoDevelop.AspNet\AspNetMSBuildImportProvider.cs" />
- <Compile Include="MonoDevelop.Html\PathCompletion.cs" />
- <Compile Include="MonoDevelop.AspNet.Gui\ILanguageCompletionBuilder.cs" />
- <Compile Include="MonoDevelop.AspNet\LineInterceptingTextWriter.cs" />
- <Compile Include="MonoDevelop.AspNet.Gui\AspProjectDom.cs" />
- <Compile Include="MonoDevelop.AspNet\RegistrationCache.cs" />
- <Compile Include="MonoDevelop.AspNet.StateEngine\HtmlScriptBodyState.cs" />
- <Compile Include="MonoDevelop.AspNet.Parser\MemberListBuilder.cs" />
- <Compile Include="MonoDevelop.AspNet.StateEngine\AspNetAttributeValueState.cs" />
- <Compile Include="AddinInfo.cs" />
- </ItemGroup>
- <ItemGroup>
- <None Include="Makefile.am" />
- </ItemGroup>
- <ItemGroup>
- <Content Include="Schemas\xhtml1-frameset.xsd">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </Content>
- <Content Include="Schemas\xhtml1-strict.xsd">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </Content>
- <Content Include="Schemas\xhtml1-transitional.xsd">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </Content>
- <Content Include="Schemas\readme.txt">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </Content>
- <Content Include="Schemas\W3C-License.html">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </Content>
- </ItemGroup>
- <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
-</Project>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetFileDescriptionTemplate.cs b/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetFileDescriptionTemplate.cs
deleted file mode 100644
index 6d86d58b67..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetFileDescriptionTemplate.cs
+++ /dev/null
@@ -1,145 +0,0 @@
-//
-// AspNetFileDescriptionTemplate.cs: Template that translates regions of C#
-// into the current .NET language, and substitutes them into the template.
-//
-// Authors:
-// Michael Hutchinson <m.j.hutchinson@gmail.com>
-//
-// Copyright (C) 2006 Michael Hutchinson
-//
-//
-// This source code is licenced under The MIT License:
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System;
-using System.Collections;
-using System.Collections.Generic;
-using System.CodeDom;
-using System.CodeDom.Compiler;
-using System.Xml;
-using System.IO;
-
-using MonoDevelop.Core;
-using MonoDevelop.Ide.Templates;
-using MonoDevelop.Projects;
-
-namespace MonoDevelop.AspNet
-{
-
- public class AspNetFileDescriptionTemplate : SingleFileDescriptionTemplate
- {
- string content;
- Hashtable codeAreas = new Hashtable ();
-
- public override void Load (XmlElement filenode, FilePath baseDirectory)
- {
- //pull out the main area
- XmlElement fileText = filenode ["FileText"];
- if (fileText == null)
- throw new InvalidOperationException ("Invalid ASP.NET template: FileText element not found.");
- content = fileText.InnerText;
-
- //collect all of the code substitution areas
- foreach (XmlNode xn in filenode.GetElementsByTagName ("CodeTranslationFile")) {
- XmlElement xe = xn as XmlElement;
- if (xe == null)
- continue;
-
- string name = xe.GetAttribute ("TagName");
-
- if ((name == null) || (name.Length == 0))
- throw new InvalidOperationException ("Invalid ASP.NET template: CodeTranslationFile must have valid TagName.");
-
- //This is overzealous, but better safe than sorry
- char [] forbiddenChars = "`-=[];'#,./\\¬!\"£$%^&*()_+{}:@~|<>?".ToCharArray ();
- if (name.IndexOfAny (forbiddenChars) > -1)
- throw new InvalidOperationException ("Invalid ASP.NET template: TagName must be alphanumeric.");
-
- if (codeAreas.ContainsKey (name))
- throw new InvalidOperationException ("Invalid ASP.NET template: all TagNames must be unique within the AspNetFile.");
-
- var templ = FileDescriptionTemplate.CreateTemplate (xe, baseDirectory) as CodeTranslationFileDescriptionTemplate;
-
- if (templ == null)
- throw new InvalidOperationException ("Invalid ASP.NET template: invalid CodeTranslationFile.");
-
- codeAreas [name] = templ;
- }
-
- base.Load (filenode, baseDirectory);
- }
-
- public override string CreateContent (string language)
- {
- return content;
- }
-
- public override void ModifyTags (SolutionItem policyParent, Project project, string language, string identifier, string fileName, ref Dictionary<string,string> tags)
- {
- tags ["Doctype"] = "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">";
-
- //get a language binding
- IDotNetLanguageBinding langbinding = null;
- if (project == null) {
- langbinding = (IDotNetLanguageBinding) LanguageBindingService.GetBindingPerLanguageName (language);
- } else {
- DotNetProject dnp = (DotNetProject) project;
- langbinding = dnp.LanguageBinding;
- }
-
- // work out the ASP.NET language code. Although it's originally a hack around MD's VBNet language name
- // not corresponding to any of the valid ASP.NET codes, we also provide an interface that
- // non-core language bindings can implement to advertise that they support ASP.NET
- string languageCode = language;
- if (langbinding is IAspNetLanguageBinding) {
- languageCode = ((IAspNetLanguageBinding) langbinding).AspNetLanguageCode;
- } else if (language == "VBNet") {
- languageCode = "VB";
- } else if (language != "C#") {
- LoggingService.LogWarning ("The language binding '{0}' does not have explicit support for ASP.NET", language);
- }
- tags ["AspNetLanguage"] = languageCode;
-
- base.ModifyTags (policyParent, project, language, identifier, fileName, ref tags);
-
- //nothing after this point is relevant to tag substitution for filenames,
- //and some will even crash, so drop out now
- if (fileName == null)
- return;
-
- // Build tags for ${CodeRegion:#} substitutions
- foreach (string regionName in codeAreas.Keys) {
- var templ = (CodeTranslationFileDescriptionTemplate) codeAreas [regionName];
-
- //makes CodeTranslationFile's internal name substitition easier
- var name = (string) tags ["Name"];
- templ.GetFileName (policyParent, project, language, project == null? null :project.BaseDirectory, name);
-
- Stream stream = templ.CreateFileContent (policyParent, project, language, fileName, identifier);
- StreamReader reader = new StreamReader (stream);
- tags ["CodeRegion:"+regionName] = reader.ReadToEnd ();
- reader.Close ();
- stream.Close ();
- }
- }
- }
-}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs b/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs
deleted file mode 100644
index 31bac16e8b..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/VerifyCodeBehindBuildStep.cs
+++ /dev/null
@@ -1,99 +0,0 @@
-//
-// VerifyCodeBehindBuildStep.cs
-//
-// Author:
-// Michael Hutchinson <mhutchinson@novell.com>
-//
-// Copyright (C) 2006-2007 Michael Hutchinson
-// Copyright (C) 2007-2008 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-
-using System;
-using System.IO;
-using System.Collections.Generic;
-
-using MonoDevelop.Projects;
-using MonoDevelop.Core.ProgressMonitoring;
-using MonoDevelop.Core;
-using MonoDevelop.DesignerSupport;
-using MonoDevelop.AspNet.Parser;
-using MonoDevelop.Ide.TypeSystem;
-
-namespace MonoDevelop.AspNet
-{
-
- public class VerifyCodeBehindBuildStep : ProjectServiceExtension
- {
- public override bool SupportsItem (IBuildTarget item)
- {
- var aspProject = item as AspNetAppProject;
- return aspProject != null && aspProject.LanguageBinding != null;
- }
-
- protected override BuildResult Build (IProgressMonitor monitor, SolutionEntityItem project, ConfigurationSelector configuration)
- {
- var aspProject = project as AspNetAppProject;
-
- //get the config object and validate
- AspNetAppProjectConfiguration config = (AspNetAppProjectConfiguration)aspProject.GetConfiguration (configuration);
- if (config == null || config.DisableCodeBehindGeneration) {
- return base.Build (monitor, project, configuration);
- }
-
- var writer = CodeBehindWriter.CreateForProject (monitor, aspProject);
- if (!writer.SupportsPartialTypes) {
- return base.Build (monitor, project, configuration);
- }
-
- var result = new BuildResult ();
-
- monitor.BeginTask ("Updating CodeBehind designer files", 0);
-
- foreach (var file in aspProject.Files) {
- ProjectFile designerFile = CodeBehind.GetDesignerFile (file);
- if (designerFile == null)
- continue;
-
- if (File.GetLastWriteTimeUtc (designerFile.FilePath) > File.GetLastWriteTimeUtc (file.FilePath))
- continue;
-
- monitor.Log.WriteLine ("Updating CodeBehind for file '{0}'", file);
- result.Append (CodeBehind.UpdateDesignerFile (writer, aspProject, file, designerFile));
- }
-
- writer.WriteOpenFiles ();
-
- monitor.EndTask ();
-
- if (writer.WrittenCount > 0)
- monitor.Log.WriteLine ("{0} CodeBehind designer classes updated.", writer.WrittenCount);
- else
- monitor.Log.WriteLine ("No changes made to CodeBehind classes.");
-
- if (result.Failed)
- return result;
-
- return result.Append (base.Build (monitor, project, configuration));
- }
- }
-}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/WebTypeManager.cs b/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/WebTypeManager.cs
deleted file mode 100755
index 631c07312d..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/WebTypeManager.cs
+++ /dev/null
@@ -1,449 +0,0 @@
-//
-// WebTypeManager.cs: Handles ASP.NET type lookups for web projects.
-//
-// Authors:
-// Michael Hutchinson <mhutchinson@novell.com>
-//
-// Copyright (C) 2007 Novell, Inc (http://www.novell.com)
-//
-//
-// This source code is licenced under The MIT License:
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System;
-using System.Collections.Generic;
-using System.Xml;
-using System.IO;
-using System.Linq;
-using System.Configuration;
-using System.Web.Configuration;
-
-using MonoDevelop.Core;
-using MonoDevelop.Projects.Text;
-using MonoDevelop.Ide.Gui;
-using MonoDevelop.Ide.CodeCompletion;
-using MonoDevelop.Core.Assemblies;
-using ICSharpCode.NRefactory.TypeSystem;
-using MonoDevelop.Ide.TypeSystem;
-using ICSharpCode.NRefactory.TypeSystem.Implementation;
-
-namespace MonoDevelop.AspNet
-{
- public class WebTypeContext
- {
- const string sysWebAssemblyName = "System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a";
-
- public WebTypeContext (AspNetAppProject project)
- {
- if (project == null)
- throw new ArgumentException ("project");
- Project = project;
- SystemWebDom = GetSystemWebDom (project);
- if (Compilation == null)
- throw new InvalidOperationException ("Could not load parse database for project");
- }
-
- public AspNetAppProject Project { get; private set; }
- public ICompilation SystemWebDom { get; private set; }
- public ICompilation Compilation { get { return TypeSystemService.GetCompilation (Project);} }
-
- public TargetFramework TargetFramework {
- get { return Project.TargetFramework; }
- }
-
- //FIXME: this shouldn't be public
- public static ICompilation GetSystemWebDom (AspNetAppProject project)
- {
- return GetSystemWebDom (project.TargetRuntime, project.TargetFramework);
- }
-
- static ICompilation GetSystemWebDom (TargetRuntime runtime, TargetFramework targetFramework)
- {
- string file = runtime.AssemblyContext.GetAssemblyNameForVersion (sysWebAssemblyName, targetFramework);
- if (string.IsNullOrEmpty (file))
- throw new Exception ("System.Web assembly name not found for framework " + targetFramework.Id);
- file = runtime.AssemblyContext.GetAssemblyLocation (file, targetFramework);
- if (string.IsNullOrEmpty (file))
- throw new Exception ("System.Web assembly file not found for framework " + targetFramework.Id);
- var dom = new SimpleCompilation (TypeSystemService.LoadAssemblyContext (runtime, targetFramework, file), new IAssemblyReference[] {
- TypeSystemService.LoadAssemblyContext (runtime, targetFramework, typeof (object).Assembly.Location)
- });
- if (dom == null)
- throw new Exception ("System.Web parse database not found for framework " + targetFramework.Id + " file '" + file + "'");
- return dom;
- }
-
- #region Assembly resolution
-
- Dictionary<string,ICompilation> cachedDoms = new Dictionary<string, ICompilation> ();
-
- public ICompilation ResolveAssembly (string assemblyName)
- {
- ICompilation dom;
- if (!cachedDoms.TryGetValue (assemblyName, out dom)) {
- cachedDoms [assemblyName] = dom = Project.ResolveAssemblyDom (assemblyName);
- if (dom == null)
- LoggingService.LogWarning ("Failed to obtain completion database for '{0}'", assemblyName);
- }
- return dom;
- }
-
- #endregion
-
- public IType GetRegisteredType (string webDirectory, string tagPrefix, string tagName)
- {
- //global control registration not possible in ASP.NET 1.1
- if (TargetFramework.ClrVersion == MonoDevelop.Core.ClrVersion.Net_1_1)
- return null;
-
- //read the web.config files at each level
- //look up a level if a result not found until we hit the project root
- foreach (var info in Project.RegistrationCache.GetControlsForPath (webDirectory)) {
- if (!info.PrefixMatches (tagPrefix))
- continue;
- if (info.IsAssembly) {
- var dom = ResolveAssembly (info.Assembly);
- if (dom == null)
- continue;
-
- var type = AssemblyTypeLookup (dom, info.Namespace, tagName);
- if (type != null)
- return type;
- }
- if (info.IsUserControl && info.NameMatches (tagName)) {
- var type = GetUserControlType (info.Source, info.ConfigFile);
- if (type != null)
- return type;
- }
- }
-
- return GetMachineRegisteredType (tagPrefix, tagName);
- }
-
- public string GetRegisteredTypeName (string webDirectory, string tagPrefix, string tagName)
- {
- IType t = GetRegisteredType (webDirectory, tagPrefix, tagName);
- if (t != null)
- return t.FullName;
-
- //NOTE: we can't just fall through to GetRegisteredType, as we may be able to determine usercontrols
- return null;
- }
-
- public IEnumerable<CompletionData> GetRegisteredTypeCompletionData (string webDirectory, IType baseType)
- {
- //global control registration not possible in ASP.NET 1.1
- if (TargetFramework.ClrVersion == MonoDevelop.Core.ClrVersion.Net_1_1)
- yield break;
-
- //read the web.config files at each level
- //look up a level if a result not found until we hit the project root
- foreach (var info in Project.RegistrationCache.GetControlsForPath (webDirectory)) {
- if (info.IsAssembly) {
- var dom = ResolveAssembly (info.Assembly);
- if (dom == null)
- continue;
- foreach (var t in ListControlClasses (baseType, dom, info.Namespace))
- yield return new MonoDevelop.AspNet.Parser.AspTagCompletionData (info.TagPrefix + ":", t);
- }
- else if (info.IsUserControl) {
- //TODO: resolve docs
- //IType t = GetUserControlType (project, info.Source, info.ConfigFile);
- //if (t != null)
- yield return new CompletionData (info.TagPrefix + ":" + info.TagName, Gtk.Stock.GoForward);
- }
- }
-
- foreach (CompletionData cd in GetMachineRegisteredTypeCompletionData (baseType))
- yield return cd;
- }
-
- public string GetMachineRegisteredTypeName (string tagPrefix, string tagName)
- {
- var t = GetMachineRegisteredType (tagPrefix, tagName);
- if (t != null)
- return t.FullName;
- return null;
- }
-
- public IType GetMachineRegisteredType (string tagPrefix, string tagName)
- {
- //check in machine.config
- var config = ConfigurationManager.OpenMachineConfiguration ();
- var pages = (PagesSection) config.GetSection ("system.web/pages");
-
- foreach (TagPrefixInfo tpxInfo in pages.Controls) {
- if (tpxInfo.TagPrefix != tagPrefix)
- continue;
- var dom = ResolveAssembly (tpxInfo.Assembly);
- if (dom == null)
- continue;
- IType type = AssemblyTypeLookup (dom, tpxInfo.Namespace, tagName);
- if (type != null)
- return type;
- //user controls don't make sense in machine.config; ignore them
- }
- return null;
- }
-
- public IEnumerable<MonoDevelop.Ide.CodeCompletion.CompletionData> GetMachineRegisteredTypeCompletionData (IType baseType)
- {
- var config = ConfigurationManager.OpenMachineConfiguration ();
- var pages = (PagesSection) config.GetSection ("system.web/pages");
-
- foreach (TagPrefixInfo tpxInfo in pages.Controls) {
- if (!string.IsNullOrEmpty (tpxInfo.Namespace) && !string.IsNullOrEmpty (tpxInfo.Assembly) && !string.IsNullOrEmpty (tpxInfo.TagPrefix)) {
- var dom = ResolveAssembly (tpxInfo.Assembly);
- if (dom != null)
- foreach (var type in ListControlClasses (baseType, dom, tpxInfo.Namespace))
- yield return new MonoDevelop.AspNet.Parser.AspTagCompletionData (tpxInfo.TagPrefix, type);
- }
- }
- }
-
- #region HTML type lookups
-
- public static string HtmlControlLookup (string tagName)
- {
- return HtmlControlLookup (tagName, null);
- }
-
- public static string HtmlControlLookup (string tagName, string typeAttribute)
- {
- string htmc = "System.Web.UI.HtmlControls.";
- switch (tagName.ToLower ()) {
- case "a":
- return htmc + "HtmlAnchor";
- case "button":
- return htmc + "HtmlButton";
- case "form":
- return htmc + "HtmlForm";
- case "head":
- return htmc + "HtmlHead";
- case "img":
- return htmc + "HtmlImage";
- case "input":
- string val = lookupHtmlInput (typeAttribute);
- return val != null? htmc + val : null;
- case "link":
- return htmc + "HtmlLink";
- case "meta":
- return htmc + "HtmlMeta";
- case "select":
- return htmc + "HtmlSelect";
- case "table":
- return htmc + "HtmlTable";
- case "th":
- case "td":
- return htmc + "HtmlTableCell";
- case "tr":
- return htmc + "HtmlTableRow";
- case "textarea":
- return htmc + "HtmlTextArea";
- case "title":
- return htmc + "HtmlTitle";
- default:
- return htmc + "HtmlGenericControl";
- }
- }
-
- static string lookupHtmlInput (string type)
- {
- switch (type != null? type.ToLower () : null)
- {
- case "button":
- case "reset":
- case "submit":
- return "HtmlInputButton";
- case "checkbox":
- return "HtmlInputCheckBox";
- case "file":
- return "HtmlInputFile";
- case "hidden":
- return "HtmlInputHidden";
- case "image":
- return "HtmlInputImage";
- case "password":
- return "HtmlInputText";
- case "radio":
- return "HtmlInputRadioButton";
- case "text":
- return "HtmlInputText";
- default:
- return "HtmlInputControl";
- }
- }
-
- public IType HtmlControlTypeLookup (string tagName, string typeAttribute)
- {
- var str = HtmlControlLookup (tagName, typeAttribute);
- if (str != null) {
- return ReflectionHelper.ParseReflectionName (str).Resolve (SystemWebDom);
- }
- return null;
- }
-
- #endregion
-
- #region System type listings
-
- public static IEnumerable<IType> ListSystemControlClasses (IType baseType, AspNetAppProject project)
- {
- return ListControlClasses (baseType, GetSystemWebDom (project), "System.Web.UI.WebControls");
- }
-
- public static IEnumerable<IType> ListControlClasses (IType baseType, ICompilation database, string namespac)
- {
- if (database == null)
- yield break;
- var baseTypeDefinition = baseType.GetDefinition ();
- if (baseTypeDefinition == null)
- yield break;
- //return classes if they derive from system.web.ui.control
- foreach (var type in baseTypeDefinition.GetSubTypeDefinitions ().Where (t => t.Namespace == namespac))
- if (!type.IsAbstract && type.IsPublic)
- yield return type;
-
- if (!baseTypeDefinition.IsAbstract && baseTypeDefinition.IsPublic && baseTypeDefinition.Namespace == namespac) {
- yield return baseType;
- }
- }
-
- #endregion
-
- #region Control type lookups
-
- public string SystemTypeNameLookup (string tagName)
- {
- IType cls = SystemTypeLookup (tagName);
- return cls != null? cls.FullName : null;
- }
-
- public IType SystemTypeLookup (string tagName)
- {
- return AssemblyTypeLookup (SystemWebDom, "System.Web.UI.WebControls", tagName);
- }
-
- public static string AssemblyTypeNameLookup (ICompilation assemblyDatabase, string namespac, string tagName)
- {
- var cls = AssemblyTypeLookup (assemblyDatabase, namespac, tagName);
- return cls != null? cls.FullName : null;
- }
-
- public static IType AssemblyTypeLookup (ICompilation assemblyDatabase, string namespac, string tagName)
- {
- return (assemblyDatabase == null)
- ? null
- : assemblyDatabase.MainAssembly.GetTypeDefinition (namespac, tagName, 0);
- }
-
- #endregion
-
- public string GetControlPrefix (string webDirectory, IType control)
- {
- if (control.Namespace == "System.Web.UI.WebControls")
- return "asp";
- else if (control.Namespace == "System.Web.UI.HtmlControls")
- return string.Empty;
-
- //todo: handle user controls
- foreach (var info in Project.RegistrationCache.GetControlsForPath (webDirectory)) {
- if (info.IsAssembly && info.Namespace == control.Namespace) {
- var dom = ResolveAssembly (info.Assembly);
- if (dom != null && AssemblyTypeLookup (dom, info.Namespace, control.Name) != null)
- return info.TagPrefix;
- }
- }
-
- //machine.config
- var config = ConfigurationManager.OpenMachineConfiguration ();
- var pages = (PagesSection) config.GetSection ("system.web/pages");
- foreach (TagPrefixInfo tpxInfo in pages.Controls)
- if (!string.IsNullOrEmpty (tpxInfo.Namespace) && !string.IsNullOrEmpty (tpxInfo.TagPrefix)
- && control.Namespace == tpxInfo.Namespace)
- return tpxInfo.TagPrefix;
-
- return null;
- }
-
- public string GetUserControlTypeName (string virtualPath, string relativeToFile)
- {
- string absolute = Project.VirtualToLocalPath (virtualPath, relativeToFile);
- var typeName = Project.GetCodebehindTypeName (absolute);
- return typeName ?? "System.Web.UI.UserControl";
- }
-
- public IType GetUserControlType ( string virtualPath, string relativeToFile)
- {
- string absolute = Project.VirtualToLocalPath (virtualPath, relativeToFile);
- var type = Project.GetCodebehindType (absolute);
- return type ?? AssemblyTypeLookup (SystemWebDom, "System.Web.UI", "UserControl");
- }
-
- #region Global control registration tracking
-
- static XmlTextReader GetConfigReader (string configFile)
- {
- IEditableTextFile textFile =
- MonoDevelop.Ide.TextFileProvider.Instance.GetEditableTextFile (configFile);
- if (textFile != null)
- return new XmlTextReader (textFile.Text, XmlNodeType.Document, null);
- else
- return new XmlTextReader (configFile);
- }
-
- static IEnumerable<TagPrefixInfo> GetRegistrationTags (XmlTextReader reader)
- {
- reader.WhitespaceHandling = WhitespaceHandling.None;
- reader.MoveToContent();
-
- if (reader.Name == "configuration"
- && reader.ReadToDescendant ("system.web") && reader.NodeType == XmlNodeType.Element
- && reader.ReadToDescendant ("pages") && reader.NodeType == XmlNodeType.Element
- && reader.ReadToDescendant ("controls") && reader.NodeType == XmlNodeType.Element
- && reader.ReadToDescendant ("add") && reader.NodeType == XmlNodeType.Element)
- {
- do {
- if (reader.MoveToAttribute ("tagPrefix")) {
- string prefix = reader.Value;
-
- //assemblies
- if (reader.MoveToAttribute ("namespace")) {
- string _namespace = reader.Value;
- string _assembly = reader.MoveToAttribute ("assembly")? reader.Value : null;
- yield return new TagPrefixInfo (prefix, _namespace, _assembly, null, null);
- }
-
- //user controls
- if (reader.MoveToAttribute ("tagName")) {
- string tagName = reader.Value;
- string src = reader.MoveToAttribute ("src")? reader.Value : null;
- yield return new TagPrefixInfo (prefix, null, null, tagName, src);
- }
- }
- } while (reader.ReadToNextSibling ("add"));
- };
- }
-
- #endregion
- }
-}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.Html/HtmlCompletionDataProvider.cs b/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.Html/HtmlCompletionDataProvider.cs
deleted file mode 100644
index c05fb6add1..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.Html/HtmlCompletionDataProvider.cs
+++ /dev/null
@@ -1,76 +0,0 @@
-//
-// HtmlCompletionDataProvider.cs
-//
-// Author:
-// Michael Hutchinson <mhutchinson@novell.com>
-//
-// Copyright (C) 2008 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System;
-using System.Collections.Generic;
-using MonoDevelop.Ide.CodeCompletion;
-
-namespace MonoDevelop.Html
-{
- /*
-
- public class HtmlTagCompletionDataProvider : IMutableCompletionDataProvider
- {
- string parentElement;
- HtmlSchema schema;
-
- public string DefaultCompletionString {
- get { return null; }
- }
-
- public bool IsChanging {
- get { return false; }
- }
-
- public HtmlTagCompletionDataProvider (HtmlSchema schema, string parentElement)
- {
- this.parentElement = parentElement;
- this.schema = schema;
- }
-
- public void Dispose ()
- {
- }
-
- public ICompletionData[] GenerateCompletionData (ICompletionWidget widget, char charTyped)
- {
- if (parentElement != null)
- return schema.CompletionProvider.GetChildElementCompletionData (parentElement);
- else
- return schema.CompletionProvider.GetElementCompletionData ();
- }
-
- public event EventHandler CompletionDataChanging;
-
- public event EventHandler CompletionDataChanged;
-
- public bool AutoCompleteUniqueMatch {
- get { return false; }
- }
- }*/
-}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/MasterPage-CodeBehindNonPartial.xft.xml b/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/MasterPage-CodeBehindNonPartial.xft.xml
deleted file mode 100644
index 4ebcee4f9d..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/MasterPage-CodeBehindNonPartial.xft.xml
+++ /dev/null
@@ -1,54 +0,0 @@
-<?xml version="1.0"?>
-<Template Originator="John Anderson"
- Created="2007/02/03"
- LastModified="2007/02/03">
-
- <!-- Template Header -->
- <TemplateConfiguration>
- <_Name>Master Page with CodeBehind</_Name>
- <Icon>md-html-file-icon</Icon>
- <_Category>ASP.NET</_Category>
- <LanguageName>*</LanguageName>
- <_Description>Creates an ASP.NET Master Page with a CodeBehind class.</_Description>
- <ProjectType>AspNetApp</ProjectType>
- </TemplateConfiguration>
-
- <Conditions>
- <ClrVersion Condition="GreaterThanOrEqual" ClrVersion="Net_2_0" />
- <PartialTypeSupport Requirement="Disabled" />
- </Conditions>
-
- <!-- Template Content -->
- <TemplateFiles>
- <AspNetFile name="${Name}.master">
- <FileText>
- <![CDATA[<%@ Master Language="${AspNetLanguage}" Inherits="${Namespace}.${Name}" %>
-${Doctype}
-<html>
-<head runat="server">
- <title>${Name}</title>
-</head>
-<body>
-<div id="container">
-<form runat="server">
- <asp:contentplaceholder id="contentPlaceHolder" runat="server" />
-</form>
-</div>
-</body>
-</html>]]>
- </FileText>
- </AspNetFile>
-
- <CodeTranslationFile name="${Name}.master.${LanguageExtension}" DependsOn="${Name}.master" >
-<![CDATA[using System;
-using System.Web;
-using System.Web.UI;
-namespace ${Namespace} {
- public class ${EscapedIdentifier} : System.Web.UI.MasterPage
- {
- }
-}
-]]>
- </CodeTranslationFile>
- </TemplateFiles>
-</Template>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebControl-CodeBehindNonPartial.xft.xml b/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebControl-CodeBehindNonPartial.xft.xml
deleted file mode 100644
index 2cfebf91ff..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebControl-CodeBehindNonPartial.xft.xml
+++ /dev/null
@@ -1,41 +0,0 @@
-<?xml version="1.0"?>
-<Template Originator="Michael Hutchinson"
- Created="2006/06/06"
- LastModified="2006/06/18">
-
- <!-- Template Header -->
- <TemplateConfiguration>
- <_Name>User Control with CodeBehind</_Name>
- <_Category>ASP.NET</_Category>
- <Icon>md-html-file-icon</Icon>
- <LanguageName>*</LanguageName>
- <ProjectType>AspNetApp</ProjectType>
- <_Description>Creates an ASP.NET user control with a CodeBehind class.</_Description>
- </TemplateConfiguration>
-
- <Conditions>
- <PartialTypeSupport Requirement="Disabled" />
- </Conditions>
-
- <!-- Template Content -->
- <TemplateFiles>
- <AspNetFile DefaultExtension=".ascx" name="${Name}.ascx">
- <FileText>
-<![CDATA[<%@ Control Language="${AspNetLanguage}" Inherits="${Namespace}.${Name}" %>]]>
- </FileText>
- </AspNetFile>
-
- <CodeTranslationFile name="${Name}.ascx.${LanguageExtension}" DependsOn="${Name}.ascx" >
-<![CDATA[using System;
-using System.Web;
-using System.Web.UI;
-
-namespace ${Namespace} {
-
- public partial class ${EscapedIdentifier} : System.Web.UI.UserControl
- {
- }
-}]]>
- </CodeTranslationFile>
- </TemplateFiles>
-</Template>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebForm-CodeBehindNonPartial.xft.xml b/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebForm-CodeBehindNonPartial.xft.xml
deleted file mode 100644
index f9576b6e5d..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebForm-CodeBehindNonPartial.xft.xml
+++ /dev/null
@@ -1,52 +0,0 @@
-<?xml version="1.0"?>
-<Template Originator="Michael Hutchinson"
- Created="2006/06/09"
- LastModified="2007/09/05">
-
- <!-- Template Header -->
- <TemplateConfiguration>
- <_Name>Web Form with CodeBehind</_Name>
- <Icon>md-html-file-icon</Icon>
- <_Category>ASP.NET</_Category>
- <LanguageName>*</LanguageName>
- <ProjectType>AspNetApp</ProjectType>
- <_Description>Creates an ASP.NET Web Form with a CodeBehind class.</_Description>
- </TemplateConfiguration>
-
- <Conditions>
- <PartialTypeSupport Requirement="Disabled" />
- </Conditions>
-
- <!-- Template Content -->
- <TemplateFiles>
- <AspNetFile name="${Name}.aspx" DefaultExtension=".aspx">
- <FileText>
- <![CDATA[<%@ Page Language="${AspNetLanguage}" Inherits="${Namespace}.${Name}" %>
-${Doctype}
-<html>
-<head runat="server">
- <title>${Name}</title>
-</head>
-<body>
- <form id="form1" runat="server">
- </form>
-</body>
-</html>]]>
- </FileText>
- </AspNetFile>
-
- <CodeTranslationFile name="${Name}.aspx.${LanguageExtension}" DependsOn="${Name}.aspx" >
-<![CDATA[using System;
-using System.Web;
-using System.Web.UI;
-
-namespace ${Namespace} {
-
- public class ${EscapedIdentifier} : System.Web.UI.Page
- {
-
- }
-}]]>
- </CodeTranslationFile>
- </TemplateFiles>
-</Template>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployLaunchDialog.cs b/main/src/addins/AspNet/MonoDevelop.AspNet/gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployLaunchDialog.cs
deleted file mode 100644
index ddd94aeafd..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployLaunchDialog.cs
+++ /dev/null
@@ -1,120 +0,0 @@
-
-// This file has been generated by the GUI designer. Do not modify.
-namespace MonoDevelop.AspNet.Deployment
-{
- public partial class WebDeployLaunchDialog
- {
- private global::Gtk.Label titleLabel;
- private global::Gtk.Label label1;
- private global::Gtk.ScrolledWindow scrolledwindow4;
- private global::Gtk.TreeView targetView;
- private global::Gtk.Button button6;
- private global::Gtk.Button buttonCancel;
- private global::Gtk.Button buttonDeploy;
-
- protected virtual void Build ()
- {
- global::Stetic.Gui.Initialize (this);
- // Widget MonoDevelop.AspNet.Deployment.WebDeployLaunchDialog
- this.Name = "MonoDevelop.AspNet.Deployment.WebDeployLaunchDialog";
- this.Title = global::Mono.Unix.Catalog.GetString ("Deploy to Web");
- this.WindowPosition = ((global::Gtk.WindowPosition)(4));
- this.Modal = true;
- this.BorderWidth = ((uint)(9));
- // Internal child MonoDevelop.AspNet.Deployment.WebDeployLaunchDialog.VBox
- global::Gtk.VBox w1 = this.VBox;
- w1.Name = "dialog1_VBox";
- w1.Spacing = 6;
- w1.BorderWidth = ((uint)(2));
- // Container child dialog1_VBox.Gtk.Box+BoxChild
- this.titleLabel = new global::Gtk.Label ();
- this.titleLabel.Name = "titleLabel";
- this.titleLabel.Xalign = 0F;
- this.titleLabel.LabelProp = global::Mono.Unix.Catalog.GetString ("<big><b>Deploying Web Project...</b></big>");
- this.titleLabel.UseMarkup = true;
- w1.Add (this.titleLabel);
- global::Gtk.Box.BoxChild w2 = ((global::Gtk.Box.BoxChild)(w1 [this.titleLabel]));
- w2.Position = 0;
- w2.Expand = false;
- w2.Fill = false;
- // Container child dialog1_VBox.Gtk.Box+BoxChild
- this.label1 = new global::Gtk.Label ();
- this.label1.Name = "label1";
- this.label1.Xalign = 0F;
- this.label1.LabelProp = global::Mono.Unix.Catalog.GetString ("Targets to which the project should be deployed:");
- w1.Add (this.label1);
- global::Gtk.Box.BoxChild w3 = ((global::Gtk.Box.BoxChild)(w1 [this.label1]));
- w3.Position = 1;
- w3.Expand = false;
- w3.Fill = false;
- w3.Padding = ((uint)(4));
- // Container child dialog1_VBox.Gtk.Box+BoxChild
- this.scrolledwindow4 = new global::Gtk.ScrolledWindow ();
- this.scrolledwindow4.CanFocus = true;
- this.scrolledwindow4.Name = "scrolledwindow4";
- this.scrolledwindow4.ShadowType = ((global::Gtk.ShadowType)(1));
- // Container child scrolledwindow4.Gtk.Container+ContainerChild
- this.targetView = new global::Gtk.TreeView ();
- this.targetView.CanFocus = true;
- this.targetView.Name = "targetView";
- this.scrolledwindow4.Add (this.targetView);
- w1.Add (this.scrolledwindow4);
- global::Gtk.Box.BoxChild w5 = ((global::Gtk.Box.BoxChild)(w1 [this.scrolledwindow4]));
- w5.Position = 2;
- // Internal child MonoDevelop.AspNet.Deployment.WebDeployLaunchDialog.ActionArea
- global::Gtk.HButtonBox w6 = this.ActionArea;
- w6.Name = "dialog1_ActionArea";
- w6.Spacing = 6;
- w6.BorderWidth = ((uint)(5));
- w6.LayoutStyle = ((global::Gtk.ButtonBoxStyle)(4));
- // Container child dialog1_ActionArea.Gtk.ButtonBox+ButtonBoxChild
- this.button6 = new global::Gtk.Button ();
- this.button6.CanFocus = true;
- this.button6.Name = "button6";
- this.button6.UseUnderline = true;
- this.button6.Label = global::Mono.Unix.Catalog.GetString ("_Edit targets");
- global::Gtk.Image w7 = new global::Gtk.Image ();
- w7.Pixbuf = global::Stetic.IconLoader.LoadIcon (this, "gtk-edit", global::Gtk.IconSize.Menu);
- this.button6.Image = w7;
- this.AddActionWidget (this.button6, -11);
- global::Gtk.ButtonBox.ButtonBoxChild w8 = ((global::Gtk.ButtonBox.ButtonBoxChild)(w6 [this.button6]));
- w8.Expand = false;
- w8.Fill = false;
- // Container child dialog1_ActionArea.Gtk.ButtonBox+ButtonBoxChild
- this.buttonCancel = new global::Gtk.Button ();
- this.buttonCancel.CanDefault = true;
- this.buttonCancel.CanFocus = true;
- this.buttonCancel.Name = "buttonCancel";
- this.buttonCancel.UseStock = true;
- this.buttonCancel.UseUnderline = true;
- this.buttonCancel.Label = "gtk-cancel";
- this.AddActionWidget (this.buttonCancel, -6);
- global::Gtk.ButtonBox.ButtonBoxChild w9 = ((global::Gtk.ButtonBox.ButtonBoxChild)(w6 [this.buttonCancel]));
- w9.Position = 1;
- w9.Expand = false;
- w9.Fill = false;
- // Container child dialog1_ActionArea.Gtk.ButtonBox+ButtonBoxChild
- this.buttonDeploy = new global::Gtk.Button ();
- this.buttonDeploy.CanDefault = true;
- this.buttonDeploy.CanFocus = true;
- this.buttonDeploy.Name = "buttonDeploy";
- this.buttonDeploy.UseUnderline = true;
- this.buttonDeploy.Label = global::Mono.Unix.Catalog.GetString ("_Deploy");
- global::Gtk.Image w10 = new global::Gtk.Image ();
- w10.Pixbuf = global::Stetic.IconLoader.LoadIcon (this, "gtk-ok", global::Gtk.IconSize.Menu);
- this.buttonDeploy.Image = w10;
- this.AddActionWidget (this.buttonDeploy, -5);
- global::Gtk.ButtonBox.ButtonBoxChild w11 = ((global::Gtk.ButtonBox.ButtonBoxChild)(w6 [this.buttonDeploy]));
- w11.Position = 2;
- w11.Expand = false;
- w11.Fill = false;
- if ((this.Child != null)) {
- this.Child.ShowAll ();
- }
- this.DefaultWidth = 511;
- this.DefaultHeight = 353;
- this.Hide ();
- this.button6.Clicked += new global::System.EventHandler (this.editTargetsClicked);
- }
- }
-}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployOptionsPanelWidget.cs b/main/src/addins/AspNet/MonoDevelop.AspNet/gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployOptionsPanelWidget.cs
deleted file mode 100644
index 61033baa13..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployOptionsPanelWidget.cs
+++ /dev/null
@@ -1,96 +0,0 @@
-
-// This file has been generated by the GUI designer. Do not modify.
-namespace MonoDevelop.AspNet.Deployment
-{
- public partial class WebDeployOptionsPanelWidget
- {
- private global::Gtk.HBox hbox1;
- private global::Gtk.ScrolledWindow scrolledwindow1;
- private global::Gtk.TreeView targetView;
- private global::Gtk.VBox vbox2;
- private global::Gtk.Button addButton;
- private global::Gtk.Button editButton;
- private global::Gtk.Button removeButton;
-
- protected virtual void Build ()
- {
- global::Stetic.Gui.Initialize (this);
- // Widget MonoDevelop.AspNet.Deployment.WebDeployOptionsPanelWidget
- global::Stetic.BinContainer.Attach (this);
- this.Name = "MonoDevelop.AspNet.Deployment.WebDeployOptionsPanelWidget";
- // Container child MonoDevelop.AspNet.Deployment.WebDeployOptionsPanelWidget.Gtk.Container+ContainerChild
- this.hbox1 = new global::Gtk.HBox ();
- this.hbox1.Name = "hbox1";
- this.hbox1.Spacing = 6;
- // Container child hbox1.Gtk.Box+BoxChild
- this.scrolledwindow1 = new global::Gtk.ScrolledWindow ();
- this.scrolledwindow1.CanFocus = true;
- this.scrolledwindow1.Name = "scrolledwindow1";
- this.scrolledwindow1.ShadowType = ((global::Gtk.ShadowType)(1));
- // Container child scrolledwindow1.Gtk.Container+ContainerChild
- this.targetView = new global::Gtk.TreeView ();
- this.targetView.CanFocus = true;
- this.targetView.Name = "targetView";
- this.scrolledwindow1.Add (this.targetView);
- this.hbox1.Add (this.scrolledwindow1);
- global::Gtk.Box.BoxChild w2 = ((global::Gtk.Box.BoxChild)(this.hbox1 [this.scrolledwindow1]));
- w2.Position = 0;
- // Container child hbox1.Gtk.Box+BoxChild
- this.vbox2 = new global::Gtk.VBox ();
- this.vbox2.Name = "vbox2";
- this.vbox2.Spacing = 6;
- // Container child vbox2.Gtk.Box+BoxChild
- this.addButton = new global::Gtk.Button ();
- this.addButton.CanFocus = true;
- this.addButton.Name = "addButton";
- this.addButton.UseStock = true;
- this.addButton.UseUnderline = true;
- this.addButton.Label = "gtk-add";
- this.vbox2.Add (this.addButton);
- global::Gtk.Box.BoxChild w3 = ((global::Gtk.Box.BoxChild)(this.vbox2 [this.addButton]));
- w3.Position = 0;
- w3.Expand = false;
- w3.Fill = false;
- // Container child vbox2.Gtk.Box+BoxChild
- this.editButton = new global::Gtk.Button ();
- this.editButton.CanFocus = true;
- this.editButton.Name = "editButton";
- this.editButton.UseStock = true;
- this.editButton.UseUnderline = true;
- this.editButton.Label = "gtk-edit";
- this.vbox2.Add (this.editButton);
- global::Gtk.Box.BoxChild w4 = ((global::Gtk.Box.BoxChild)(this.vbox2 [this.editButton]));
- w4.Position = 1;
- w4.Expand = false;
- w4.Fill = false;
- // Container child vbox2.Gtk.Box+BoxChild
- this.removeButton = new global::Gtk.Button ();
- this.removeButton.CanFocus = true;
- this.removeButton.Name = "removeButton";
- this.removeButton.UseStock = true;
- this.removeButton.UseUnderline = true;
- this.removeButton.Label = "gtk-remove";
- this.vbox2.Add (this.removeButton);
- global::Gtk.Box.BoxChild w5 = ((global::Gtk.Box.BoxChild)(this.vbox2 [this.removeButton]));
- w5.Position = 2;
- w5.Expand = false;
- w5.Fill = false;
- this.hbox1.Add (this.vbox2);
- global::Gtk.Box.BoxChild w6 = ((global::Gtk.Box.BoxChild)(this.hbox1 [this.vbox2]));
- w6.Position = 1;
- w6.Expand = false;
- w6.Fill = false;
- this.Add (this.hbox1);
- if ((this.Child != null)) {
- this.Child.ShowAll ();
- }
- this.Show ();
- this.addButton.Activated += new global::System.EventHandler (this.AddActivated);
- this.addButton.Clicked += new global::System.EventHandler (this.AddActivated);
- this.editButton.Activated += new global::System.EventHandler (this.EditActivated);
- this.editButton.Clicked += new global::System.EventHandler (this.EditActivated);
- this.removeButton.Activated += new global::System.EventHandler (this.RemoveActivated);
- this.removeButton.Clicked += new global::System.EventHandler (this.RemoveActivated);
- }
- }
-}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployTargetEditor.cs b/main/src/addins/AspNet/MonoDevelop.AspNet/gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployTargetEditor.cs
deleted file mode 100644
index 86f4a1a292..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/gtk-gui/MonoDevelop.AspNet.Deployment.WebDeployTargetEditor.cs
+++ /dev/null
@@ -1,180 +0,0 @@
-
-// This file has been generated by the GUI designer. Do not modify.
-namespace MonoDevelop.AspNet.Deployment
-{
- public partial class WebDeployTargetEditor
- {
- private global::Gtk.Label label1;
- private global::Gtk.HBox hbox2;
- private global::Gtk.Label label4;
- private global::Gtk.VBox vbox2;
- private global::Gtk.Table table2;
- private global::Gtk.Label label8;
- private global::Gtk.Entry nameEntry;
- private global::Gtk.Label label2;
- private global::Gtk.HBox fileCopyHbox;
- private global::Gtk.Label label5;
- private global::Gtk.VBox vbox3;
- private global::Gtk.HBox fileCopyBox;
- private global::Gtk.Button buttonCancel;
- private global::Gtk.Button buttonOk;
-
- protected virtual void Build ()
- {
- global::Stetic.Gui.Initialize (this);
- // Widget MonoDevelop.AspNet.Deployment.WebDeployTargetEditor
- this.Name = "MonoDevelop.AspNet.Deployment.WebDeployTargetEditor";
- this.Title = global::Mono.Unix.Catalog.GetString ("Edit Web Deployment Target");
- this.TypeHint = ((global::Gdk.WindowTypeHint)(1));
- this.WindowPosition = ((global::Gtk.WindowPosition)(4));
- this.Modal = true;
- this.BorderWidth = ((uint)(9));
- // Internal child MonoDevelop.AspNet.Deployment.WebDeployTargetEditor.VBox
- global::Gtk.VBox w1 = this.VBox;
- w1.Name = "dialog1_VBox";
- w1.Spacing = 7;
- w1.BorderWidth = ((uint)(2));
- // Container child dialog1_VBox.Gtk.Box+BoxChild
- this.label1 = new global::Gtk.Label ();
- this.label1.Name = "label1";
- this.label1.Xalign = 0F;
- this.label1.LabelProp = global::Mono.Unix.Catalog.GetString ("<b>General Options</b>");
- this.label1.UseMarkup = true;
- w1.Add (this.label1);
- global::Gtk.Box.BoxChild w2 = ((global::Gtk.Box.BoxChild)(w1 [this.label1]));
- w2.Position = 0;
- w2.Expand = false;
- w2.Fill = false;
- // Container child dialog1_VBox.Gtk.Box+BoxChild
- this.hbox2 = new global::Gtk.HBox ();
- this.hbox2.Name = "hbox2";
- // Container child hbox2.Gtk.Box+BoxChild
- this.label4 = new global::Gtk.Label ();
- this.label4.WidthRequest = 18;
- this.label4.Name = "label4";
- this.hbox2.Add (this.label4);
- global::Gtk.Box.BoxChild w3 = ((global::Gtk.Box.BoxChild)(this.hbox2 [this.label4]));
- w3.Position = 0;
- w3.Expand = false;
- w3.Fill = false;
- // Container child hbox2.Gtk.Box+BoxChild
- this.vbox2 = new global::Gtk.VBox ();
- this.vbox2.Name = "vbox2";
- this.vbox2.Spacing = 6;
- // Container child vbox2.Gtk.Box+BoxChild
- this.table2 = new global::Gtk.Table (((uint)(2)), ((uint)(2)), false);
- this.table2.Name = "table2";
- this.table2.RowSpacing = ((uint)(6));
- this.table2.ColumnSpacing = ((uint)(6));
- // Container child table2.Gtk.Table+TableChild
- this.label8 = new global::Gtk.Label ();
- this.label8.Name = "label8";
- this.label8.Xalign = 0F;
- this.label8.LabelProp = global::Mono.Unix.Catalog.GetString ("Name:");
- this.table2.Add (this.label8);
- global::Gtk.Table.TableChild w4 = ((global::Gtk.Table.TableChild)(this.table2 [this.label8]));
- w4.XOptions = ((global::Gtk.AttachOptions)(4));
- w4.YOptions = ((global::Gtk.AttachOptions)(4));
- // Container child table2.Gtk.Table+TableChild
- this.nameEntry = new global::Gtk.Entry ();
- this.nameEntry.CanFocus = true;
- this.nameEntry.Name = "nameEntry";
- this.nameEntry.IsEditable = true;
- this.nameEntry.InvisibleChar = '●';
- this.table2.Add (this.nameEntry);
- global::Gtk.Table.TableChild w5 = ((global::Gtk.Table.TableChild)(this.table2 [this.nameEntry]));
- w5.LeftAttach = ((uint)(1));
- w5.RightAttach = ((uint)(2));
- w5.YOptions = ((global::Gtk.AttachOptions)(4));
- this.vbox2.Add (this.table2);
- global::Gtk.Box.BoxChild w6 = ((global::Gtk.Box.BoxChild)(this.vbox2 [this.table2]));
- w6.Position = 0;
- this.hbox2.Add (this.vbox2);
- global::Gtk.Box.BoxChild w7 = ((global::Gtk.Box.BoxChild)(this.hbox2 [this.vbox2]));
- w7.Position = 1;
- w1.Add (this.hbox2);
- global::Gtk.Box.BoxChild w8 = ((global::Gtk.Box.BoxChild)(w1 [this.hbox2]));
- w8.Position = 1;
- w8.Expand = false;
- w8.Fill = false;
- // Container child dialog1_VBox.Gtk.Box+BoxChild
- this.label2 = new global::Gtk.Label ();
- this.label2.Name = "label2";
- this.label2.Xalign = 0F;
- this.label2.LabelProp = global::Mono.Unix.Catalog.GetString ("<b>File Copying</b>");
- this.label2.UseMarkup = true;
- w1.Add (this.label2);
- global::Gtk.Box.BoxChild w9 = ((global::Gtk.Box.BoxChild)(w1 [this.label2]));
- w9.Position = 2;
- w9.Expand = false;
- w9.Fill = false;
- // Container child dialog1_VBox.Gtk.Box+BoxChild
- this.fileCopyHbox = new global::Gtk.HBox ();
- this.fileCopyHbox.Name = "fileCopyHbox";
- // Container child fileCopyHbox.Gtk.Box+BoxChild
- this.label5 = new global::Gtk.Label ();
- this.label5.WidthRequest = 18;
- this.label5.Name = "label5";
- this.fileCopyHbox.Add (this.label5);
- global::Gtk.Box.BoxChild w10 = ((global::Gtk.Box.BoxChild)(this.fileCopyHbox [this.label5]));
- w10.Position = 0;
- w10.Expand = false;
- w10.Fill = false;
- // Container child fileCopyHbox.Gtk.Box+BoxChild
- this.vbox3 = new global::Gtk.VBox ();
- this.vbox3.Name = "vbox3";
- this.vbox3.Spacing = 6;
- // Container child vbox3.Gtk.Box+BoxChild
- this.fileCopyBox = new global::Gtk.HBox ();
- this.fileCopyBox.Name = "fileCopyBox";
- this.fileCopyBox.Spacing = 6;
- this.vbox3.Add (this.fileCopyBox);
- global::Gtk.Box.BoxChild w11 = ((global::Gtk.Box.BoxChild)(this.vbox3 [this.fileCopyBox]));
- w11.Position = 0;
- this.fileCopyHbox.Add (this.vbox3);
- global::Gtk.Box.BoxChild w12 = ((global::Gtk.Box.BoxChild)(this.fileCopyHbox [this.vbox3]));
- w12.Position = 1;
- w1.Add (this.fileCopyHbox);
- global::Gtk.Box.BoxChild w13 = ((global::Gtk.Box.BoxChild)(w1 [this.fileCopyHbox]));
- w13.Position = 3;
- // Internal child MonoDevelop.AspNet.Deployment.WebDeployTargetEditor.ActionArea
- global::Gtk.HButtonBox w14 = this.ActionArea;
- w14.Name = "dialog1_ActionArea";
- w14.Spacing = 10;
- w14.BorderWidth = ((uint)(5));
- w14.LayoutStyle = ((global::Gtk.ButtonBoxStyle)(4));
- // Container child dialog1_ActionArea.Gtk.ButtonBox+ButtonBoxChild
- this.buttonCancel = new global::Gtk.Button ();
- this.buttonCancel.CanDefault = true;
- this.buttonCancel.CanFocus = true;
- this.buttonCancel.Name = "buttonCancel";
- this.buttonCancel.UseStock = true;
- this.buttonCancel.UseUnderline = true;
- this.buttonCancel.Label = "gtk-cancel";
- this.AddActionWidget (this.buttonCancel, -6);
- global::Gtk.ButtonBox.ButtonBoxChild w15 = ((global::Gtk.ButtonBox.ButtonBoxChild)(w14 [this.buttonCancel]));
- w15.Expand = false;
- w15.Fill = false;
- // Container child dialog1_ActionArea.Gtk.ButtonBox+ButtonBoxChild
- this.buttonOk = new global::Gtk.Button ();
- this.buttonOk.CanDefault = true;
- this.buttonOk.CanFocus = true;
- this.buttonOk.Name = "buttonOk";
- this.buttonOk.UseStock = true;
- this.buttonOk.UseUnderline = true;
- this.buttonOk.Label = "gtk-ok";
- this.AddActionWidget (this.buttonOk, -5);
- global::Gtk.ButtonBox.ButtonBoxChild w16 = ((global::Gtk.ButtonBox.ButtonBoxChild)(w14 [this.buttonOk]));
- w16.Position = 1;
- w16.Expand = false;
- w16.Fill = false;
- if ((this.Child != null)) {
- this.Child.ShowAll ();
- }
- this.DefaultWidth = 400;
- this.DefaultHeight = 300;
- this.buttonOk.HasDefault = true;
- this.Hide ();
- }
- }
-}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/gtk-gui/MonoDevelop.AspNet.Deployment.WebTargetEditor.cs b/main/src/addins/AspNet/MonoDevelop.AspNet/gtk-gui/MonoDevelop.AspNet.Deployment.WebTargetEditor.cs
deleted file mode 100644
index 2ab1dd683e..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/gtk-gui/MonoDevelop.AspNet.Deployment.WebTargetEditor.cs
+++ /dev/null
@@ -1,22 +0,0 @@
-
-// This file has been generated by the GUI designer. Do not modify.
-namespace MonoDevelop.AspNet.Deployment
-{
- public partial class WebTargetEditor
- {
- protected virtual void Build ()
- {
- global::Stetic.Gui.Initialize (this);
- // Widget MonoDevelop.AspNet.Deployment.WebTargetEditor
- this.Name = "MonoDevelop.AspNet.Deployment.WebTargetEditor";
- this.Title = "WebTargetEditor";
- this.WindowPosition = ((global::Gtk.WindowPosition)(4));
- if ((this.Child != null)) {
- this.Child.ShowAll ();
- }
- this.DefaultWidth = 400;
- this.DefaultHeight = 300;
- this.Hide ();
- }
- }
-}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/gtk-gui/MonoDevelop.AspNet.Gui.AspNetConfigurationPanelWidget.cs b/main/src/addins/AspNet/MonoDevelop.AspNet/gtk-gui/MonoDevelop.AspNet.Gui.AspNetConfigurationPanelWidget.cs
deleted file mode 100644
index 4df25876bd..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/gtk-gui/MonoDevelop.AspNet.Gui.AspNetConfigurationPanelWidget.cs
+++ /dev/null
@@ -1,78 +0,0 @@
-
-// This file has been generated by the GUI designer. Do not modify.
-namespace MonoDevelop.AspNet.Gui
-{
- internal partial class AspNetConfigurationPanelWidget
- {
- private global::Gtk.VBox vbox1;
- private global::Gtk.Label label1;
- private global::Gtk.HBox hbox1;
- private global::Gtk.Label label2;
- private global::Gtk.VBox vbox2;
- private global::Gtk.CheckButton disableCodeBehindGeneration;
-
- protected virtual void Build ()
- {
- global::Stetic.Gui.Initialize (this);
- // Widget MonoDevelop.AspNet.Gui.AspNetConfigurationPanelWidget
- global::Stetic.BinContainer.Attach (this);
- this.Name = "MonoDevelop.AspNet.Gui.AspNetConfigurationPanelWidget";
- // Container child MonoDevelop.AspNet.Gui.AspNetConfigurationPanelWidget.Gtk.Container+ContainerChild
- this.vbox1 = new global::Gtk.VBox ();
- this.vbox1.Name = "vbox1";
- this.vbox1.Spacing = 6;
- // Container child vbox1.Gtk.Box+BoxChild
- this.label1 = new global::Gtk.Label ();
- this.label1.Name = "label1";
- this.label1.Xalign = 0F;
- this.label1.LabelProp = global::Mono.Unix.Catalog.GetString ("Code Generation");
- this.vbox1.Add (this.label1);
- global::Gtk.Box.BoxChild w1 = ((global::Gtk.Box.BoxChild)(this.vbox1 [this.label1]));
- w1.Position = 0;
- w1.Expand = false;
- w1.Fill = false;
- // Container child vbox1.Gtk.Box+BoxChild
- this.hbox1 = new global::Gtk.HBox ();
- this.hbox1.Name = "hbox1";
- this.hbox1.Spacing = 6;
- // Container child hbox1.Gtk.Box+BoxChild
- this.label2 = new global::Gtk.Label ();
- this.label2.WidthRequest = 18;
- this.label2.Name = "label2";
- this.hbox1.Add (this.label2);
- global::Gtk.Box.BoxChild w2 = ((global::Gtk.Box.BoxChild)(this.hbox1 [this.label2]));
- w2.Position = 0;
- w2.Expand = false;
- w2.Fill = false;
- // Container child hbox1.Gtk.Box+BoxChild
- this.vbox2 = new global::Gtk.VBox ();
- this.vbox2.Name = "vbox2";
- this.vbox2.Spacing = 6;
- // Container child vbox2.Gtk.Box+BoxChild
- this.disableCodeBehindGeneration = new global::Gtk.CheckButton ();
- this.disableCodeBehindGeneration.CanFocus = true;
- this.disableCodeBehindGeneration.Name = "disableCodeBehindGeneration";
- this.disableCodeBehindGeneration.Label = global::Mono.Unix.Catalog.GetString ("Disable automatic updating of CodeBehind partial classes");
- this.disableCodeBehindGeneration.DrawIndicator = true;
- this.disableCodeBehindGeneration.UseUnderline = true;
- this.vbox2.Add (this.disableCodeBehindGeneration);
- global::Gtk.Box.BoxChild w3 = ((global::Gtk.Box.BoxChild)(this.vbox2 [this.disableCodeBehindGeneration]));
- w3.Position = 0;
- w3.Expand = false;
- w3.Fill = false;
- this.hbox1.Add (this.vbox2);
- global::Gtk.Box.BoxChild w4 = ((global::Gtk.Box.BoxChild)(this.hbox1 [this.vbox2]));
- w4.Position = 1;
- this.vbox1.Add (this.hbox1);
- global::Gtk.Box.BoxChild w5 = ((global::Gtk.Box.BoxChild)(this.vbox1 [this.hbox1]));
- w5.Position = 1;
- w5.Expand = false;
- w5.Fill = false;
- this.Add (this.vbox1);
- if ((this.Child != null)) {
- this.Child.ShowAll ();
- }
- this.Show ();
- }
- }
-}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/gtk-gui/MonoDevelop.AspNet.Gui.XspOptionsPanelWidget.cs b/main/src/addins/AspNet/MonoDevelop.AspNet/gtk-gui/MonoDevelop.AspNet.Gui.XspOptionsPanelWidget.cs
deleted file mode 100644
index a089a05cf4..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/gtk-gui/MonoDevelop.AspNet.Gui.XspOptionsPanelWidget.cs
+++ /dev/null
@@ -1,406 +0,0 @@
-
-// This file has been generated by the GUI designer. Do not modify.
-namespace MonoDevelop.AspNet.Gui
-{
- public partial class XspOptionsPanelWidget
- {
- private global::Gtk.VBox vbox1;
- private global::Gtk.Label label1;
- private global::Gtk.HBox hbox2;
- private global::Gtk.Label label4;
- private global::Gtk.VBox vbox2;
- private global::Gtk.Table table2;
- private global::Gtk.Entry ipAddress;
- private global::Gtk.Label label15;
- private global::Gtk.Label label7;
- private global::Gtk.Label label8;
- private global::Gtk.SpinButton portNumber;
- private global::Gtk.CheckButton verboseCheck;
- private global::Gtk.Label label2;
- private global::Gtk.HBox hbox3;
- private global::Gtk.Label label5;
- private global::Gtk.Table table3;
- private global::Gtk.Label label10;
- private global::Gtk.Label label9;
- private global::Gtk.ComboBox sslMode;
- private global::Gtk.ComboBox sslProtocol;
- private global::Gtk.Label label3;
- private global::Gtk.HBox hbox4;
- private global::Gtk.Label label6;
- private global::Gtk.Table table4;
- private global::MonoDevelop.Components.FileEntry certLocation;
- private global::Gtk.HBox hbox5;
- private global::Gtk.ComboBox keyType;
- private global::Gtk.HBox hbox6;
- private global::Gtk.ComboBox passwordOptions;
- private global::Gtk.Entry passwordEntry;
- private global::MonoDevelop.Components.FileEntry keyLocation;
- private global::Gtk.Label label11;
- private global::Gtk.Label label12;
- private global::Gtk.Label label13;
- private global::Gtk.Label label14;
-
- protected virtual void Build ()
- {
- global::Stetic.Gui.Initialize (this);
- // Widget MonoDevelop.AspNet.Gui.XspOptionsPanelWidget
- global::Stetic.BinContainer.Attach (this);
- this.Name = "MonoDevelop.AspNet.Gui.XspOptionsPanelWidget";
- // Container child MonoDevelop.AspNet.Gui.XspOptionsPanelWidget.Gtk.Container+ContainerChild
- this.vbox1 = new global::Gtk.VBox ();
- this.vbox1.Name = "vbox1";
- this.vbox1.Spacing = 12;
- // Container child vbox1.Gtk.Box+BoxChild
- this.label1 = new global::Gtk.Label ();
- this.label1.Name = "label1";
- this.label1.Xalign = 0F;
- this.label1.LabelProp = global::Mono.Unix.Catalog.GetString ("<b>General Options</b>");
- this.label1.UseMarkup = true;
- this.vbox1.Add (this.label1);
- global::Gtk.Box.BoxChild w1 = ((global::Gtk.Box.BoxChild)(this.vbox1 [this.label1]));
- w1.Position = 0;
- w1.Expand = false;
- w1.Fill = false;
- // Container child vbox1.Gtk.Box+BoxChild
- this.hbox2 = new global::Gtk.HBox ();
- this.hbox2.Name = "hbox2";
- // Container child hbox2.Gtk.Box+BoxChild
- this.label4 = new global::Gtk.Label ();
- this.label4.WidthRequest = 18;
- this.label4.Name = "label4";
- this.hbox2.Add (this.label4);
- global::Gtk.Box.BoxChild w2 = ((global::Gtk.Box.BoxChild)(this.hbox2 [this.label4]));
- w2.Position = 0;
- w2.Expand = false;
- w2.Fill = false;
- // Container child hbox2.Gtk.Box+BoxChild
- this.vbox2 = new global::Gtk.VBox ();
- this.vbox2.Name = "vbox2";
- this.vbox2.Spacing = 6;
- // Container child vbox2.Gtk.Box+BoxChild
- this.table2 = new global::Gtk.Table (((uint)(2)), ((uint)(3)), false);
- this.table2.Name = "table2";
- this.table2.RowSpacing = ((uint)(6));
- this.table2.ColumnSpacing = ((uint)(6));
- // Container child table2.Gtk.Table+TableChild
- this.ipAddress = new global::Gtk.Entry ();
- this.ipAddress.CanFocus = true;
- this.ipAddress.Name = "ipAddress";
- this.ipAddress.IsEditable = true;
- this.ipAddress.InvisibleChar = '●';
- this.table2.Add (this.ipAddress);
- global::Gtk.Table.TableChild w3 = ((global::Gtk.Table.TableChild)(this.table2 [this.ipAddress]));
- w3.LeftAttach = ((uint)(1));
- w3.RightAttach = ((uint)(2));
- w3.XOptions = ((global::Gtk.AttachOptions)(4));
- w3.YOptions = ((global::Gtk.AttachOptions)(4));
- // Container child table2.Gtk.Table+TableChild
- this.label15 = new global::Gtk.Label ();
- this.label15.Name = "label15";
- this.label15.LabelProp = global::Mono.Unix.Catalog.GetString ("0 = Random Port");
- this.table2.Add (this.label15);
- global::Gtk.Table.TableChild w4 = ((global::Gtk.Table.TableChild)(this.table2 [this.label15]));
- w4.TopAttach = ((uint)(1));
- w4.BottomAttach = ((uint)(2));
- w4.LeftAttach = ((uint)(2));
- w4.RightAttach = ((uint)(3));
- w4.XOptions = ((global::Gtk.AttachOptions)(4));
- w4.YOptions = ((global::Gtk.AttachOptions)(4));
- // Container child table2.Gtk.Table+TableChild
- this.label7 = new global::Gtk.Label ();
- this.label7.Name = "label7";
- this.label7.Xalign = 0F;
- this.label7.LabelProp = global::Mono.Unix.Catalog.GetString ("Port number:");
- this.table2.Add (this.label7);
- global::Gtk.Table.TableChild w5 = ((global::Gtk.Table.TableChild)(this.table2 [this.label7]));
- w5.TopAttach = ((uint)(1));
- w5.BottomAttach = ((uint)(2));
- w5.XOptions = ((global::Gtk.AttachOptions)(4));
- w5.YOptions = ((global::Gtk.AttachOptions)(4));
- // Container child table2.Gtk.Table+TableChild
- this.label8 = new global::Gtk.Label ();
- this.label8.Name = "label8";
- this.label8.Xalign = 0F;
- this.label8.LabelProp = global::Mono.Unix.Catalog.GetString ("IP address:");
- this.table2.Add (this.label8);
- global::Gtk.Table.TableChild w6 = ((global::Gtk.Table.TableChild)(this.table2 [this.label8]));
- w6.XOptions = ((global::Gtk.AttachOptions)(4));
- w6.YOptions = ((global::Gtk.AttachOptions)(4));
- // Container child table2.Gtk.Table+TableChild
- this.portNumber = new global::Gtk.SpinButton (0, 32767, 1);
- this.portNumber.CanFocus = true;
- this.portNumber.Name = "portNumber";
- this.portNumber.Adjustment.PageIncrement = 10;
- this.portNumber.ClimbRate = 1;
- this.portNumber.Numeric = true;
- this.table2.Add (this.portNumber);
- global::Gtk.Table.TableChild w7 = ((global::Gtk.Table.TableChild)(this.table2 [this.portNumber]));
- w7.TopAttach = ((uint)(1));
- w7.BottomAttach = ((uint)(2));
- w7.LeftAttach = ((uint)(1));
- w7.RightAttach = ((uint)(2));
- w7.XOptions = ((global::Gtk.AttachOptions)(4));
- w7.YOptions = ((global::Gtk.AttachOptions)(4));
- this.vbox2.Add (this.table2);
- global::Gtk.Box.BoxChild w8 = ((global::Gtk.Box.BoxChild)(this.vbox2 [this.table2]));
- w8.Position = 0;
- w8.Expand = false;
- w8.Fill = false;
- // Container child vbox2.Gtk.Box+BoxChild
- this.verboseCheck = new global::Gtk.CheckButton ();
- this.verboseCheck.CanFocus = true;
- this.verboseCheck.Name = "verboseCheck";
- this.verboseCheck.Label = global::Mono.Unix.Catalog.GetString ("Verbose console output");
- this.verboseCheck.DrawIndicator = true;
- this.verboseCheck.UseUnderline = true;
- this.vbox2.Add (this.verboseCheck);
- global::Gtk.Box.BoxChild w9 = ((global::Gtk.Box.BoxChild)(this.vbox2 [this.verboseCheck]));
- w9.Position = 1;
- w9.Expand = false;
- w9.Fill = false;
- this.hbox2.Add (this.vbox2);
- global::Gtk.Box.BoxChild w10 = ((global::Gtk.Box.BoxChild)(this.hbox2 [this.vbox2]));
- w10.Position = 1;
- w10.Expand = false;
- w10.Fill = false;
- this.vbox1.Add (this.hbox2);
- global::Gtk.Box.BoxChild w11 = ((global::Gtk.Box.BoxChild)(this.vbox1 [this.hbox2]));
- w11.Position = 1;
- w11.Expand = false;
- w11.Fill = false;
- // Container child vbox1.Gtk.Box+BoxChild
- this.label2 = new global::Gtk.Label ();
- this.label2.Name = "label2";
- this.label2.Xalign = 0F;
- this.label2.LabelProp = global::Mono.Unix.Catalog.GetString ("<b>Security</b>");
- this.label2.UseMarkup = true;
- this.vbox1.Add (this.label2);
- global::Gtk.Box.BoxChild w12 = ((global::Gtk.Box.BoxChild)(this.vbox1 [this.label2]));
- w12.Position = 2;
- w12.Expand = false;
- w12.Fill = false;
- // Container child vbox1.Gtk.Box+BoxChild
- this.hbox3 = new global::Gtk.HBox ();
- this.hbox3.Name = "hbox3";
- // Container child hbox3.Gtk.Box+BoxChild
- this.label5 = new global::Gtk.Label ();
- this.label5.WidthRequest = 18;
- this.label5.Name = "label5";
- this.hbox3.Add (this.label5);
- global::Gtk.Box.BoxChild w13 = ((global::Gtk.Box.BoxChild)(this.hbox3 [this.label5]));
- w13.Position = 0;
- w13.Expand = false;
- w13.Fill = false;
- // Container child hbox3.Gtk.Box+BoxChild
- this.table3 = new global::Gtk.Table (((uint)(2)), ((uint)(2)), false);
- this.table3.Name = "table3";
- this.table3.RowSpacing = ((uint)(6));
- this.table3.ColumnSpacing = ((uint)(6));
- // Container child table3.Gtk.Table+TableChild
- this.label10 = new global::Gtk.Label ();
- this.label10.Name = "label10";
- this.label10.Xalign = 0F;
- this.label10.LabelProp = global::Mono.Unix.Catalog.GetString ("SSL mode:");
- this.table3.Add (this.label10);
- global::Gtk.Table.TableChild w14 = ((global::Gtk.Table.TableChild)(this.table3 [this.label10]));
- w14.XOptions = ((global::Gtk.AttachOptions)(4));
- w14.YOptions = ((global::Gtk.AttachOptions)(4));
- // Container child table3.Gtk.Table+TableChild
- this.label9 = new global::Gtk.Label ();
- this.label9.Name = "label9";
- this.label9.Xalign = 0F;
- this.label9.LabelProp = global::Mono.Unix.Catalog.GetString ("SSL protocol:");
- this.table3.Add (this.label9);
- global::Gtk.Table.TableChild w15 = ((global::Gtk.Table.TableChild)(this.table3 [this.label9]));
- w15.TopAttach = ((uint)(1));
- w15.BottomAttach = ((uint)(2));
- w15.XOptions = ((global::Gtk.AttachOptions)(4));
- w15.YOptions = ((global::Gtk.AttachOptions)(4));
- // Container child table3.Gtk.Table+TableChild
- this.sslMode = global::Gtk.ComboBox.NewText ();
- this.sslMode.Name = "sslMode";
- this.table3.Add (this.sslMode);
- global::Gtk.Table.TableChild w16 = ((global::Gtk.Table.TableChild)(this.table3 [this.sslMode]));
- w16.LeftAttach = ((uint)(1));
- w16.RightAttach = ((uint)(2));
- w16.XOptions = ((global::Gtk.AttachOptions)(4));
- w16.YOptions = ((global::Gtk.AttachOptions)(4));
- // Container child table3.Gtk.Table+TableChild
- this.sslProtocol = global::Gtk.ComboBox.NewText ();
- this.sslProtocol.Name = "sslProtocol";
- this.table3.Add (this.sslProtocol);
- global::Gtk.Table.TableChild w17 = ((global::Gtk.Table.TableChild)(this.table3 [this.sslProtocol]));
- w17.TopAttach = ((uint)(1));
- w17.BottomAttach = ((uint)(2));
- w17.LeftAttach = ((uint)(1));
- w17.RightAttach = ((uint)(2));
- w17.XOptions = ((global::Gtk.AttachOptions)(4));
- w17.YOptions = ((global::Gtk.AttachOptions)(4));
- this.hbox3.Add (this.table3);
- global::Gtk.Box.BoxChild w18 = ((global::Gtk.Box.BoxChild)(this.hbox3 [this.table3]));
- w18.Position = 1;
- w18.Expand = false;
- w18.Fill = false;
- this.vbox1.Add (this.hbox3);
- global::Gtk.Box.BoxChild w19 = ((global::Gtk.Box.BoxChild)(this.vbox1 [this.hbox3]));
- w19.Position = 3;
- w19.Expand = false;
- w19.Fill = false;
- // Container child vbox1.Gtk.Box+BoxChild
- this.label3 = new global::Gtk.Label ();
- this.label3.Name = "label3";
- this.label3.Xalign = 0F;
- this.label3.LabelProp = global::Mono.Unix.Catalog.GetString ("<b>SSL Key</b>");
- this.label3.UseMarkup = true;
- this.vbox1.Add (this.label3);
- global::Gtk.Box.BoxChild w20 = ((global::Gtk.Box.BoxChild)(this.vbox1 [this.label3]));
- w20.Position = 4;
- w20.Expand = false;
- w20.Fill = false;
- // Container child vbox1.Gtk.Box+BoxChild
- this.hbox4 = new global::Gtk.HBox ();
- this.hbox4.Name = "hbox4";
- // Container child hbox4.Gtk.Box+BoxChild
- this.label6 = new global::Gtk.Label ();
- this.label6.WidthRequest = 18;
- this.label6.Name = "label6";
- this.hbox4.Add (this.label6);
- global::Gtk.Box.BoxChild w21 = ((global::Gtk.Box.BoxChild)(this.hbox4 [this.label6]));
- w21.Position = 0;
- w21.Expand = false;
- w21.Fill = false;
- // Container child hbox4.Gtk.Box+BoxChild
- this.table4 = new global::Gtk.Table (((uint)(4)), ((uint)(2)), false);
- this.table4.Name = "table4";
- this.table4.RowSpacing = ((uint)(6));
- this.table4.ColumnSpacing = ((uint)(6));
- // Container child table4.Gtk.Table+TableChild
- this.certLocation = new global::MonoDevelop.Components.FileEntry ();
- this.certLocation.Name = "certLocation";
- this.table4.Add (this.certLocation);
- global::Gtk.Table.TableChild w22 = ((global::Gtk.Table.TableChild)(this.table4 [this.certLocation]));
- w22.TopAttach = ((uint)(2));
- w22.BottomAttach = ((uint)(3));
- w22.LeftAttach = ((uint)(1));
- w22.RightAttach = ((uint)(2));
- w22.XOptions = ((global::Gtk.AttachOptions)(4));
- w22.YOptions = ((global::Gtk.AttachOptions)(4));
- // Container child table4.Gtk.Table+TableChild
- this.hbox5 = new global::Gtk.HBox ();
- this.hbox5.Name = "hbox5";
- this.hbox5.Spacing = 6;
- // Container child hbox5.Gtk.Box+BoxChild
- this.keyType = global::Gtk.ComboBox.NewText ();
- this.keyType.Name = "keyType";
- this.hbox5.Add (this.keyType);
- global::Gtk.Box.BoxChild w23 = ((global::Gtk.Box.BoxChild)(this.hbox5 [this.keyType]));
- w23.Position = 0;
- w23.Expand = false;
- w23.Fill = false;
- this.table4.Add (this.hbox5);
- global::Gtk.Table.TableChild w24 = ((global::Gtk.Table.TableChild)(this.table4 [this.hbox5]));
- w24.LeftAttach = ((uint)(1));
- w24.RightAttach = ((uint)(2));
- w24.XOptions = ((global::Gtk.AttachOptions)(4));
- w24.YOptions = ((global::Gtk.AttachOptions)(4));
- // Container child table4.Gtk.Table+TableChild
- this.hbox6 = new global::Gtk.HBox ();
- this.hbox6.Name = "hbox6";
- this.hbox6.Spacing = 6;
- // Container child hbox6.Gtk.Box+BoxChild
- this.passwordOptions = global::Gtk.ComboBox.NewText ();
- this.passwordOptions.Name = "passwordOptions";
- this.hbox6.Add (this.passwordOptions);
- global::Gtk.Box.BoxChild w25 = ((global::Gtk.Box.BoxChild)(this.hbox6 [this.passwordOptions]));
- w25.Position = 0;
- w25.Expand = false;
- w25.Fill = false;
- // Container child hbox6.Gtk.Box+BoxChild
- this.passwordEntry = new global::Gtk.Entry ();
- this.passwordEntry.CanFocus = true;
- this.passwordEntry.Name = "passwordEntry";
- this.passwordEntry.IsEditable = true;
- this.passwordEntry.InvisibleChar = '●';
- this.hbox6.Add (this.passwordEntry);
- global::Gtk.Box.BoxChild w26 = ((global::Gtk.Box.BoxChild)(this.hbox6 [this.passwordEntry]));
- w26.Position = 1;
- this.table4.Add (this.hbox6);
- global::Gtk.Table.TableChild w27 = ((global::Gtk.Table.TableChild)(this.table4 [this.hbox6]));
- w27.TopAttach = ((uint)(3));
- w27.BottomAttach = ((uint)(4));
- w27.LeftAttach = ((uint)(1));
- w27.RightAttach = ((uint)(2));
- w27.YOptions = ((global::Gtk.AttachOptions)(4));
- // Container child table4.Gtk.Table+TableChild
- this.keyLocation = new global::MonoDevelop.Components.FileEntry ();
- this.keyLocation.Name = "keyLocation";
- this.table4.Add (this.keyLocation);
- global::Gtk.Table.TableChild w28 = ((global::Gtk.Table.TableChild)(this.table4 [this.keyLocation]));
- w28.TopAttach = ((uint)(1));
- w28.BottomAttach = ((uint)(2));
- w28.LeftAttach = ((uint)(1));
- w28.RightAttach = ((uint)(2));
- w28.XOptions = ((global::Gtk.AttachOptions)(4));
- w28.YOptions = ((global::Gtk.AttachOptions)(4));
- // Container child table4.Gtk.Table+TableChild
- this.label11 = new global::Gtk.Label ();
- this.label11.Name = "label11";
- this.label11.Xalign = 0F;
- this.label11.LabelProp = global::Mono.Unix.Catalog.GetString ("Key type:");
- this.table4.Add (this.label11);
- global::Gtk.Table.TableChild w29 = ((global::Gtk.Table.TableChild)(this.table4 [this.label11]));
- w29.XOptions = ((global::Gtk.AttachOptions)(4));
- w29.YOptions = ((global::Gtk.AttachOptions)(4));
- // Container child table4.Gtk.Table+TableChild
- this.label12 = new global::Gtk.Label ();
- this.label12.Name = "label12";
- this.label12.Xalign = 0F;
- this.label12.LabelProp = global::Mono.Unix.Catalog.GetString ("Key location:");
- this.table4.Add (this.label12);
- global::Gtk.Table.TableChild w30 = ((global::Gtk.Table.TableChild)(this.table4 [this.label12]));
- w30.TopAttach = ((uint)(1));
- w30.BottomAttach = ((uint)(2));
- w30.XOptions = ((global::Gtk.AttachOptions)(4));
- w30.YOptions = ((global::Gtk.AttachOptions)(4));
- // Container child table4.Gtk.Table+TableChild
- this.label13 = new global::Gtk.Label ();
- this.label13.Name = "label13";
- this.label13.Xalign = 0F;
- this.label13.LabelProp = global::Mono.Unix.Catalog.GetString ("Certificate location:");
- this.table4.Add (this.label13);
- global::Gtk.Table.TableChild w31 = ((global::Gtk.Table.TableChild)(this.table4 [this.label13]));
- w31.TopAttach = ((uint)(2));
- w31.BottomAttach = ((uint)(3));
- w31.XOptions = ((global::Gtk.AttachOptions)(4));
- w31.YOptions = ((global::Gtk.AttachOptions)(4));
- // Container child table4.Gtk.Table+TableChild
- this.label14 = new global::Gtk.Label ();
- this.label14.Name = "label14";
- this.label14.Xalign = 0F;
- this.label14.LabelProp = global::Mono.Unix.Catalog.GetString ("Password:");
- this.table4.Add (this.label14);
- global::Gtk.Table.TableChild w32 = ((global::Gtk.Table.TableChild)(this.table4 [this.label14]));
- w32.TopAttach = ((uint)(3));
- w32.BottomAttach = ((uint)(4));
- w32.XOptions = ((global::Gtk.AttachOptions)(4));
- w32.YOptions = ((global::Gtk.AttachOptions)(4));
- this.hbox4.Add (this.table4);
- global::Gtk.Box.BoxChild w33 = ((global::Gtk.Box.BoxChild)(this.hbox4 [this.table4]));
- w33.Position = 1;
- this.vbox1.Add (this.hbox4);
- global::Gtk.Box.BoxChild w34 = ((global::Gtk.Box.BoxChild)(this.vbox1 [this.hbox4]));
- w34.Position = 5;
- w34.Expand = false;
- w34.Fill = false;
- this.Add (this.vbox1);
- if ((this.Child != null)) {
- this.Child.ShowAll ();
- }
- this.Show ();
- this.sslProtocol.Changed += new global::System.EventHandler (this.updateSensitivity);
- this.sslMode.Changed += new global::System.EventHandler (this.updateSensitivity);
- this.passwordOptions.Changed += new global::System.EventHandler (this.updateSensitivity);
- this.keyType.Changed += new global::System.EventHandler (this.updateSensitivity);
- }
- }
-}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/gtk-gui/generated.cs b/main/src/addins/AspNet/MonoDevelop.AspNet/gtk-gui/generated.cs
deleted file mode 100644
index 5cdc11900b..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/gtk-gui/generated.cs
+++ /dev/null
@@ -1,116 +0,0 @@
-
-// This file has been generated by the GUI designer. Do not modify.
-namespace Stetic
-{
- internal class Gui
- {
- private static bool initialized;
-
- internal static void Initialize (Gtk.Widget iconRenderer)
- {
- if ((Stetic.Gui.initialized == false)) {
- Stetic.Gui.initialized = true;
- }
- }
- }
-
- internal class BinContainer
- {
- private Gtk.Widget child;
-
- private Gtk.UIManager uimanager;
-
- public static BinContainer Attach (Gtk.Bin bin)
- {
- BinContainer bc = new BinContainer ();
- bin.SizeRequested += new Gtk.SizeRequestedHandler (bc.OnSizeRequested);
- bin.SizeAllocated += new Gtk.SizeAllocatedHandler (bc.OnSizeAllocated);
- bin.Added += new Gtk.AddedHandler (bc.OnAdded);
- return bc;
- }
-
- private void OnSizeRequested (object sender, Gtk.SizeRequestedArgs args)
- {
- if ((this.child != null)) {
- args.Requisition = this.child.SizeRequest ();
- }
- }
-
- private void OnSizeAllocated (object sender, Gtk.SizeAllocatedArgs args)
- {
- if ((this.child != null)) {
- this.child.Allocation = args.Allocation;
- }
- }
-
- private void OnAdded (object sender, Gtk.AddedArgs args)
- {
- this.child = args.Widget;
- }
-
- public void SetUiManager (Gtk.UIManager uim)
- {
- this.uimanager = uim;
- this.child.Realized += new System.EventHandler (this.OnRealized);
- }
-
- private void OnRealized (object sender, System.EventArgs args)
- {
- if ((this.uimanager != null)) {
- Gtk.Widget w;
- w = this.child.Toplevel;
- if (((w != null) && typeof(Gtk.Window).IsInstanceOfType (w))) {
- ((Gtk.Window)(w)).AddAccelGroup (this.uimanager.AccelGroup);
- this.uimanager = null;
- }
- }
- }
- }
-
- internal class IconLoader
- {
- public static Gdk.Pixbuf LoadIcon (Gtk.Widget widget, string name, Gtk.IconSize size)
- {
- Gdk.Pixbuf res = widget.RenderIcon (name, size, null);
- if ((res != null)) {
- return res;
- } else {
- int sz;
- int sy;
- global::Gtk.Icon.SizeLookup (size, out sz, out sy);
- try {
- return Gtk.IconTheme.Default.LoadIcon (name, sz, 0);
- } catch (System.Exception) {
- if ((name != "gtk-missing-image")) {
- return Stetic.IconLoader.LoadIcon (widget, "gtk-missing-image", size);
- } else {
- Gdk.Pixmap pmap = new Gdk.Pixmap (Gdk.Screen.Default.RootWindow, sz, sz);
- Gdk.GC gc = new Gdk.GC (pmap);
- gc.RgbFgColor = new Gdk.Color (255, 255, 255);
- pmap.DrawRectangle (gc, true, 0, 0, sz, sz);
- gc.RgbFgColor = new Gdk.Color (0, 0, 0);
- pmap.DrawRectangle (gc, false, 0, 0, (sz - 1), (sz - 1));
- gc.SetLineAttributes (3, Gdk.LineStyle.Solid, Gdk.CapStyle.Round, Gdk.JoinStyle.Round);
- gc.RgbFgColor = new Gdk.Color (255, 0, 0);
- pmap.DrawLine (gc, (sz / 4), (sz / 4), ((sz - 1) - (sz / 4)), ((sz - 1) - (sz / 4)));
- pmap.DrawLine (gc, ((sz - 1) - (sz / 4)), (sz / 4), (sz / 4), ((sz - 1) - (sz / 4)));
- return Gdk.Pixbuf.FromDrawable (pmap, pmap.Colormap, 0, 0, 0, 0, sz, sz);
- }
- }
- }
- }
- }
-
- internal class ActionGroups
- {
- public static Gtk.ActionGroup GetActionGroup (System.Type type)
- {
- return Stetic.ActionGroups.GetActionGroup (type.FullName);
- }
-
- public static Gtk.ActionGroup GetActionGroup (string name)
- {
- return null;
- }
- }
-}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/gtk-gui/gui.stetic b/main/src/addins/AspNet/MonoDevelop.AspNet/gtk-gui/gui.stetic
deleted file mode 100644
index 499747ec0d..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/gtk-gui/gui.stetic
+++ /dev/null
@@ -1,1137 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<stetic-interface>
- <configuration>
- <images-root-path>..</images-root-path>
- <target-gtk-version>2.12</target-gtk-version>
- </configuration>
- <import>
- <widget-library name="../../../../../build/bin/MonoDevelop.Ide.dll" />
- <widget-library name="../../../../../build/AddIns/MonoDevelop.DesignerSupport/MonoDevelop.DesignerSupport.dll" />
- <widget-library name="../../../../../build/AddIns/MonoDevelop.Deployment/MonoDevelop.Deployment.Linux.dll" />
- <widget-library name="../../../../../build/bin/Mono.TextEditor.dll" />
- <widget-library name="../../../../../build/AddIns/MonoDevelop.Refactoring/MonoDevelop.Refactoring.dll" />
- <widget-library name="../../../../../build/AddIns/DisplayBindings/SourceEditor/MonoDevelop.SourceEditor2.dll" />
- <widget-library name="../../../../../build/AddIns/MonoDevelop.AspNet/MonoDevelop.AspNet.dll" internal="true" />
- </import>
- <widget class="Gtk.Bin" id="MonoDevelop.AspNet.Gui.AspNetConfigurationPanelWidget" design-size="496 300">
- <property name="MemberName" />
- <property name="GeneratePublic">False</property>
- <child>
- <widget class="Gtk.VBox" id="vbox1">
- <property name="MemberName" />
- <property name="Spacing">6</property>
- <child>
- <widget class="Gtk.Label" id="label1">
- <property name="MemberName" />
- <property name="Xalign">0</property>
- <property name="LabelProp" translatable="yes">Code Generation</property>
- </widget>
- <packing>
- <property name="Position">0</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.HBox" id="hbox1">
- <property name="MemberName" />
- <property name="Spacing">6</property>
- <child>
- <widget class="Gtk.Label" id="label2">
- <property name="MemberName" />
- <property name="WidthRequest">18</property>
- </widget>
- <packing>
- <property name="Position">0</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.VBox" id="vbox2">
- <property name="MemberName" />
- <property name="Spacing">6</property>
- <child>
- <widget class="Gtk.CheckButton" id="disableCodeBehindGeneration">
- <property name="MemberName" />
- <property name="CanFocus">True</property>
- <property name="Label" translatable="yes">Disable automatic updating of CodeBehind partial classes</property>
- <property name="DrawIndicator">True</property>
- <property name="HasLabel">True</property>
- <property name="UseUnderline">True</property>
- </widget>
- <packing>
- <property name="Position">0</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <placeholder />
- </child>
- <child>
- <placeholder />
- </child>
- </widget>
- <packing>
- <property name="Position">1</property>
- <property name="AutoSize">False</property>
- </packing>
- </child>
- <child>
- <placeholder />
- </child>
- </widget>
- <packing>
- <property name="Position">1</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <placeholder />
- </child>
- </widget>
- </child>
- </widget>
- <widget class="Gtk.Bin" id="MonoDevelop.AspNet.Gui.XspOptionsPanelWidget" design-size="358 387">
- <property name="MemberName" />
- <child>
- <widget class="Gtk.VBox" id="vbox1">
- <property name="MemberName" />
- <property name="Spacing">12</property>
- <child>
- <widget class="Gtk.Label" id="label1">
- <property name="MemberName" />
- <property name="Xalign">0</property>
- <property name="LabelProp" translatable="yes">&lt;b&gt;General Options&lt;/b&gt;</property>
- <property name="UseMarkup">True</property>
- </widget>
- <packing>
- <property name="Position">0</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.HBox" id="hbox2">
- <property name="MemberName" />
- <child>
- <widget class="Gtk.Label" id="label4">
- <property name="MemberName" />
- <property name="WidthRequest">18</property>
- </widget>
- <packing>
- <property name="Position">0</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.VBox" id="vbox2">
- <property name="MemberName" />
- <property name="Spacing">6</property>
- <child>
- <widget class="Gtk.Table" id="table2">
- <property name="MemberName" />
- <property name="NRows">2</property>
- <property name="NColumns">3</property>
- <property name="RowSpacing">6</property>
- <property name="ColumnSpacing">6</property>
- <child>
- <placeholder />
- </child>
- <child>
- <widget class="Gtk.Entry" id="ipAddress">
- <property name="MemberName" />
- <property name="CanFocus">True</property>
- <property name="IsEditable">True</property>
- <property name="InvisibleChar">●</property>
- </widget>
- <packing>
- <property name="LeftAttach">1</property>
- <property name="RightAttach">2</property>
- <property name="AutoSize">False</property>
- <property name="XOptions">Fill</property>
- <property name="YOptions">Fill</property>
- <property name="XExpand">False</property>
- <property name="XFill">True</property>
- <property name="XShrink">False</property>
- <property name="YExpand">False</property>
- <property name="YFill">True</property>
- <property name="YShrink">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.Label" id="label15">
- <property name="MemberName" />
- <property name="LabelProp" translatable="yes">0 = Random Port</property>
- </widget>
- <packing>
- <property name="TopAttach">1</property>
- <property name="BottomAttach">2</property>
- <property name="LeftAttach">2</property>
- <property name="RightAttach">3</property>
- <property name="AutoSize">True</property>
- <property name="XOptions">Fill</property>
- <property name="YOptions">Fill</property>
- <property name="XExpand">False</property>
- <property name="XFill">True</property>
- <property name="XShrink">False</property>
- <property name="YExpand">False</property>
- <property name="YFill">True</property>
- <property name="YShrink">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.Label" id="label7">
- <property name="MemberName" />
- <property name="Xalign">0</property>
- <property name="LabelProp" translatable="yes">Port number:</property>
- </widget>
- <packing>
- <property name="TopAttach">1</property>
- <property name="BottomAttach">2</property>
- <property name="AutoSize">True</property>
- <property name="XOptions">Fill</property>
- <property name="YOptions">Fill</property>
- <property name="XExpand">False</property>
- <property name="XFill">True</property>
- <property name="XShrink">False</property>
- <property name="YExpand">False</property>
- <property name="YFill">True</property>
- <property name="YShrink">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.Label" id="label8">
- <property name="MemberName" />
- <property name="Xalign">0</property>
- <property name="LabelProp" translatable="yes">IP address:</property>
- </widget>
- <packing>
- <property name="AutoSize">True</property>
- <property name="XOptions">Fill</property>
- <property name="YOptions">Fill</property>
- <property name="XExpand">False</property>
- <property name="XFill">True</property>
- <property name="XShrink">False</property>
- <property name="YExpand">False</property>
- <property name="YFill">True</property>
- <property name="YShrink">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.SpinButton" id="portNumber">
- <property name="MemberName" />
- <property name="CanFocus">True</property>
- <property name="Upper">32767</property>
- <property name="PageIncrement">10</property>
- <property name="StepIncrement">1</property>
- <property name="ClimbRate">1</property>
- <property name="Numeric">True</property>
- </widget>
- <packing>
- <property name="TopAttach">1</property>
- <property name="BottomAttach">2</property>
- <property name="LeftAttach">1</property>
- <property name="RightAttach">2</property>
- <property name="AutoSize">False</property>
- <property name="XOptions">Fill</property>
- <property name="YOptions">Fill</property>
- <property name="XExpand">False</property>
- <property name="XFill">True</property>
- <property name="XShrink">False</property>
- <property name="YExpand">False</property>
- <property name="YFill">True</property>
- <property name="YShrink">False</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="Position">0</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.CheckButton" id="verboseCheck">
- <property name="MemberName" />
- <property name="CanFocus">True</property>
- <property name="Label" translatable="yes">Verbose console output</property>
- <property name="DrawIndicator">True</property>
- <property name="HasLabel">True</property>
- <property name="UseUnderline">True</property>
- </widget>
- <packing>
- <property name="Position">1</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="Position">1</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="Position">1</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.Label" id="label2">
- <property name="MemberName" />
- <property name="Xalign">0</property>
- <property name="LabelProp" translatable="yes">&lt;b&gt;Security&lt;/b&gt;</property>
- <property name="UseMarkup">True</property>
- </widget>
- <packing>
- <property name="Position">2</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.HBox" id="hbox3">
- <property name="MemberName" />
- <child>
- <widget class="Gtk.Label" id="label5">
- <property name="MemberName" />
- <property name="WidthRequest">18</property>
- </widget>
- <packing>
- <property name="Position">0</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.Table" id="table3">
- <property name="MemberName" />
- <property name="NRows">2</property>
- <property name="NColumns">2</property>
- <property name="RowSpacing">6</property>
- <property name="ColumnSpacing">6</property>
- <child>
- <widget class="Gtk.Label" id="label10">
- <property name="MemberName" />
- <property name="Xalign">0</property>
- <property name="LabelProp" translatable="yes">SSL mode:</property>
- </widget>
- <packing>
- <property name="AutoSize">True</property>
- <property name="XOptions">Fill</property>
- <property name="YOptions">Fill</property>
- <property name="XExpand">False</property>
- <property name="XFill">True</property>
- <property name="XShrink">False</property>
- <property name="YExpand">False</property>
- <property name="YFill">True</property>
- <property name="YShrink">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.Label" id="label9">
- <property name="MemberName" />
- <property name="Xalign">0</property>
- <property name="LabelProp" translatable="yes">SSL protocol:</property>
- </widget>
- <packing>
- <property name="TopAttach">1</property>
- <property name="BottomAttach">2</property>
- <property name="AutoSize">True</property>
- <property name="XOptions">Fill</property>
- <property name="YOptions">Fill</property>
- <property name="XExpand">False</property>
- <property name="XFill">True</property>
- <property name="XShrink">False</property>
- <property name="YExpand">False</property>
- <property name="YFill">True</property>
- <property name="YShrink">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.ComboBox" id="sslMode">
- <property name="MemberName" />
- <property name="IsTextCombo">True</property>
- <property name="Items" translatable="yes" />
- <signal name="Changed" handler="updateSensitivity" />
- </widget>
- <packing>
- <property name="LeftAttach">1</property>
- <property name="RightAttach">2</property>
- <property name="AutoSize">True</property>
- <property name="XOptions">Fill</property>
- <property name="YOptions">Fill</property>
- <property name="XExpand">False</property>
- <property name="XFill">True</property>
- <property name="XShrink">False</property>
- <property name="YExpand">False</property>
- <property name="YFill">True</property>
- <property name="YShrink">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.ComboBox" id="sslProtocol">
- <property name="MemberName" />
- <property name="IsTextCombo">True</property>
- <property name="Items" translatable="yes" />
- <signal name="Changed" handler="updateSensitivity" />
- </widget>
- <packing>
- <property name="TopAttach">1</property>
- <property name="BottomAttach">2</property>
- <property name="LeftAttach">1</property>
- <property name="RightAttach">2</property>
- <property name="AutoSize">True</property>
- <property name="XOptions">Fill</property>
- <property name="YOptions">Fill</property>
- <property name="XExpand">False</property>
- <property name="XFill">True</property>
- <property name="XShrink">False</property>
- <property name="YExpand">False</property>
- <property name="YFill">True</property>
- <property name="YShrink">False</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="Position">1</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="Position">3</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.Label" id="label3">
- <property name="MemberName" />
- <property name="Xalign">0</property>
- <property name="LabelProp" translatable="yes">&lt;b&gt;SSL Key&lt;/b&gt;</property>
- <property name="UseMarkup">True</property>
- </widget>
- <packing>
- <property name="Position">4</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.HBox" id="hbox4">
- <property name="MemberName" />
- <child>
- <widget class="Gtk.Label" id="label6">
- <property name="MemberName" />
- <property name="WidthRequest">18</property>
- </widget>
- <packing>
- <property name="Position">0</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.Table" id="table4">
- <property name="MemberName" />
- <property name="NRows">4</property>
- <property name="NColumns">2</property>
- <property name="RowSpacing">6</property>
- <property name="ColumnSpacing">6</property>
- <child>
- <widget class="MonoDevelop.Components.FileEntry" id="certLocation">
- <property name="MemberName" />
- </widget>
- <packing>
- <property name="TopAttach">2</property>
- <property name="BottomAttach">3</property>
- <property name="LeftAttach">1</property>
- <property name="RightAttach">2</property>
- <property name="AutoSize">True</property>
- <property name="XOptions">Fill</property>
- <property name="YOptions">Fill</property>
- <property name="XExpand">False</property>
- <property name="XFill">True</property>
- <property name="XShrink">False</property>
- <property name="YExpand">False</property>
- <property name="YFill">True</property>
- <property name="YShrink">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.HBox" id="hbox5">
- <property name="MemberName" />
- <property name="Spacing">6</property>
- <child>
- <widget class="Gtk.ComboBox" id="keyType">
- <property name="MemberName" />
- <property name="IsTextCombo">True</property>
- <property name="Items" translatable="yes" />
- <signal name="Changed" handler="updateSensitivity" />
- </widget>
- <packing>
- <property name="Position">0</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <placeholder />
- </child>
- </widget>
- <packing>
- <property name="LeftAttach">1</property>
- <property name="RightAttach">2</property>
- <property name="AutoSize">True</property>
- <property name="XOptions">Fill</property>
- <property name="YOptions">Fill</property>
- <property name="XExpand">False</property>
- <property name="XFill">True</property>
- <property name="XShrink">False</property>
- <property name="YExpand">False</property>
- <property name="YFill">True</property>
- <property name="YShrink">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.HBox" id="hbox6">
- <property name="MemberName" />
- <property name="Spacing">6</property>
- <child>
- <widget class="Gtk.ComboBox" id="passwordOptions">
- <property name="MemberName" />
- <property name="IsTextCombo">True</property>
- <property name="Items" translatable="yes" />
- <signal name="Changed" handler="updateSensitivity" />
- </widget>
- <packing>
- <property name="Position">0</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.Entry" id="passwordEntry">
- <property name="MemberName" />
- <property name="CanFocus">True</property>
- <property name="IsEditable">True</property>
- <property name="InvisibleChar">●</property>
- </widget>
- <packing>
- <property name="Position">1</property>
- <property name="AutoSize">True</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="TopAttach">3</property>
- <property name="BottomAttach">4</property>
- <property name="LeftAttach">1</property>
- <property name="RightAttach">2</property>
- <property name="AutoSize">False</property>
- <property name="YOptions">Fill</property>
- <property name="XExpand">True</property>
- <property name="XFill">True</property>
- <property name="XShrink">False</property>
- <property name="YExpand">False</property>
- <property name="YFill">True</property>
- <property name="YShrink">False</property>
- </packing>
- </child>
- <child>
- <widget class="MonoDevelop.Components.FileEntry" id="keyLocation">
- <property name="MemberName" />
- </widget>
- <packing>
- <property name="TopAttach">1</property>
- <property name="BottomAttach">2</property>
- <property name="LeftAttach">1</property>
- <property name="RightAttach">2</property>
- <property name="AutoSize">True</property>
- <property name="XOptions">Fill</property>
- <property name="YOptions">Fill</property>
- <property name="XExpand">False</property>
- <property name="XFill">True</property>
- <property name="XShrink">False</property>
- <property name="YExpand">False</property>
- <property name="YFill">True</property>
- <property name="YShrink">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.Label" id="label11">
- <property name="MemberName" />
- <property name="Xalign">0</property>
- <property name="LabelProp" translatable="yes">Key type:</property>
- </widget>
- <packing>
- <property name="AutoSize">True</property>
- <property name="XOptions">Fill</property>
- <property name="YOptions">Fill</property>
- <property name="XExpand">False</property>
- <property name="XFill">True</property>
- <property name="XShrink">False</property>
- <property name="YExpand">False</property>
- <property name="YFill">True</property>
- <property name="YShrink">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.Label" id="label12">
- <property name="MemberName" />
- <property name="Xalign">0</property>
- <property name="LabelProp" translatable="yes">Key location:</property>
- </widget>
- <packing>
- <property name="TopAttach">1</property>
- <property name="BottomAttach">2</property>
- <property name="AutoSize">True</property>
- <property name="XOptions">Fill</property>
- <property name="YOptions">Fill</property>
- <property name="XExpand">False</property>
- <property name="XFill">True</property>
- <property name="XShrink">False</property>
- <property name="YExpand">False</property>
- <property name="YFill">True</property>
- <property name="YShrink">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.Label" id="label13">
- <property name="MemberName" />
- <property name="Xalign">0</property>
- <property name="LabelProp" translatable="yes">Certificate location:</property>
- </widget>
- <packing>
- <property name="TopAttach">2</property>
- <property name="BottomAttach">3</property>
- <property name="AutoSize">True</property>
- <property name="XOptions">Fill</property>
- <property name="YOptions">Fill</property>
- <property name="XExpand">False</property>
- <property name="XFill">True</property>
- <property name="XShrink">False</property>
- <property name="YExpand">False</property>
- <property name="YFill">True</property>
- <property name="YShrink">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.Label" id="label14">
- <property name="MemberName" />
- <property name="Xalign">0</property>
- <property name="LabelProp" translatable="yes">Password:</property>
- </widget>
- <packing>
- <property name="TopAttach">3</property>
- <property name="BottomAttach">4</property>
- <property name="AutoSize">True</property>
- <property name="XOptions">Fill</property>
- <property name="YOptions">Fill</property>
- <property name="XExpand">False</property>
- <property name="XFill">True</property>
- <property name="XShrink">False</property>
- <property name="YExpand">False</property>
- <property name="YFill">True</property>
- <property name="YShrink">False</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="Position">1</property>
- <property name="AutoSize">False</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="Position">5</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- </widget>
- </child>
- </widget>
- <widget class="Gtk.Bin" id="MonoDevelop.AspNet.Deployment.WebDeployOptionsPanelWidget" design-size="300 300">
- <property name="MemberName" />
- <child>
- <widget class="Gtk.HBox" id="hbox1">
- <property name="MemberName" />
- <property name="Spacing">6</property>
- <child>
- <widget class="Gtk.ScrolledWindow" id="scrolledwindow1">
- <property name="MemberName" />
- <property name="CanFocus">True</property>
- <property name="ShadowType">In</property>
- <child>
- <widget class="Gtk.TreeView" id="targetView">
- <property name="MemberName" />
- <property name="CanFocus">True</property>
- </widget>
- </child>
- </widget>
- <packing>
- <property name="Position">0</property>
- <property name="AutoSize">True</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.VBox" id="vbox2">
- <property name="MemberName" />
- <property name="Spacing">6</property>
- <child>
- <widget class="Gtk.Button" id="addButton">
- <property name="MemberName" />
- <property name="CanFocus">True</property>
- <property name="UseStock">True</property>
- <property name="Type">StockItem</property>
- <property name="StockId">gtk-add</property>
- <signal name="Activated" handler="AddActivated" />
- <signal name="Clicked" handler="AddActivated" />
- <property name="label">gtk-add</property>
- </widget>
- <packing>
- <property name="Position">0</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.Button" id="editButton">
- <property name="MemberName" />
- <property name="CanFocus">True</property>
- <property name="UseStock">True</property>
- <property name="Type">StockItem</property>
- <property name="StockId">gtk-edit</property>
- <signal name="Activated" handler="EditActivated" />
- <signal name="Clicked" handler="EditActivated" />
- <property name="label">gtk-edit</property>
- </widget>
- <packing>
- <property name="Position">1</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.Button" id="removeButton">
- <property name="MemberName" />
- <property name="CanFocus">True</property>
- <property name="UseStock">True</property>
- <property name="Type">StockItem</property>
- <property name="StockId">gtk-remove</property>
- <signal name="Activated" handler="RemoveActivated" />
- <signal name="Clicked" handler="RemoveActivated" />
- <property name="label">gtk-remove</property>
- </widget>
- <packing>
- <property name="Position">2</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <placeholder />
- </child>
- </widget>
- <packing>
- <property name="Position">1</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- </widget>
- </child>
- </widget>
- <widget class="Gtk.Window" id="MonoDevelop.AspNet.Deployment.WebTargetEditor" design-size="400 300">
- <property name="MemberName" />
- <property name="Visible">False</property>
- <property name="Title">WebTargetEditor</property>
- <property name="WindowPosition">CenterOnParent</property>
- <child>
- <placeholder />
- </child>
- </widget>
- <widget class="Gtk.Dialog" id="MonoDevelop.AspNet.Deployment.WebDeployTargetEditor" design-size="400 300">
- <property name="MemberName" />
- <property name="Visible">False</property>
- <property name="Title" translatable="yes">Edit Web Deployment Target</property>
- <property name="TypeHint">Dialog</property>
- <property name="WindowPosition">CenterOnParent</property>
- <property name="Modal">True</property>
- <property name="BorderWidth">9</property>
- <property name="Buttons">2</property>
- <property name="HelpButton">False</property>
- <child internal-child="VBox">
- <widget class="Gtk.VBox" id="dialog1_VBox">
- <property name="MemberName" />
- <property name="Spacing">7</property>
- <property name="BorderWidth">2</property>
- <child>
- <widget class="Gtk.Label" id="label1">
- <property name="MemberName" />
- <property name="Xalign">0</property>
- <property name="LabelProp" translatable="yes">&lt;b&gt;General Options&lt;/b&gt;</property>
- <property name="UseMarkup">True</property>
- </widget>
- <packing>
- <property name="Position">0</property>
- <property name="AutoSize">False</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.HBox" id="hbox2">
- <property name="MemberName" />
- <child>
- <widget class="Gtk.Label" id="label4">
- <property name="MemberName" />
- <property name="WidthRequest">18</property>
- </widget>
- <packing>
- <property name="Position">0</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.VBox" id="vbox2">
- <property name="MemberName" />
- <property name="Spacing">6</property>
- <child>
- <widget class="Gtk.Table" id="table2">
- <property name="MemberName" />
- <property name="NRows">2</property>
- <property name="NColumns">2</property>
- <property name="RowSpacing">6</property>
- <property name="ColumnSpacing">6</property>
- <child>
- <placeholder />
- </child>
- <child>
- <placeholder />
- </child>
- <child>
- <widget class="Gtk.Label" id="label8">
- <property name="MemberName" />
- <property name="Xalign">0</property>
- <property name="LabelProp" translatable="yes">Name:</property>
- </widget>
- <packing>
- <property name="AutoSize">True</property>
- <property name="XOptions">Fill</property>
- <property name="YOptions">Fill</property>
- <property name="XExpand">False</property>
- <property name="XFill">True</property>
- <property name="XShrink">False</property>
- <property name="YExpand">False</property>
- <property name="YFill">True</property>
- <property name="YShrink">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.Entry" id="nameEntry">
- <property name="MemberName" />
- <property name="CanFocus">True</property>
- <property name="IsEditable">True</property>
- <property name="InvisibleChar">●</property>
- </widget>
- <packing>
- <property name="LeftAttach">1</property>
- <property name="RightAttach">2</property>
- <property name="AutoSize">False</property>
- <property name="YOptions">Fill</property>
- <property name="XExpand">True</property>
- <property name="XFill">True</property>
- <property name="XShrink">False</property>
- <property name="YExpand">False</property>
- <property name="YFill">True</property>
- <property name="YShrink">False</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="Position">0</property>
- <property name="AutoSize">True</property>
- </packing>
- </child>
- <child>
- <placeholder />
- </child>
- </widget>
- <packing>
- <property name="Position">1</property>
- <property name="AutoSize">False</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="Position">1</property>
- <property name="AutoSize">False</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.Label" id="label2">
- <property name="MemberName" />
- <property name="Xalign">0</property>
- <property name="LabelProp" translatable="yes">&lt;b&gt;File Copying&lt;/b&gt;</property>
- <property name="UseMarkup">True</property>
- </widget>
- <packing>
- <property name="Position">2</property>
- <property name="AutoSize">False</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.HBox" id="fileCopyHbox">
- <property name="MemberName" />
- <child>
- <widget class="Gtk.Label" id="label5">
- <property name="MemberName" />
- <property name="WidthRequest">18</property>
- </widget>
- <packing>
- <property name="Position">0</property>
- <property name="AutoSize">False</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.VBox" id="vbox3">
- <property name="MemberName" />
- <property name="Spacing">6</property>
- <child>
- <widget class="Gtk.HBox" id="fileCopyBox">
- <property name="MemberName" />
- <property name="Spacing">6</property>
- <child>
- <placeholder />
- </child>
- </widget>
- <packing>
- <property name="Position">0</property>
- <property name="AutoSize">False</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="Position">1</property>
- <property name="AutoSize">True</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="Position">3</property>
- <property name="AutoSize">False</property>
- </packing>
- </child>
- <child>
- <placeholder />
- </child>
- </widget>
- </child>
- <child internal-child="ActionArea">
- <widget class="Gtk.HButtonBox" id="dialog1_ActionArea">
- <property name="MemberName" />
- <property name="Spacing">10</property>
- <property name="BorderWidth">5</property>
- <property name="Size">2</property>
- <property name="LayoutStyle">End</property>
- <child>
- <widget class="Gtk.Button" id="buttonCancel">
- <property name="MemberName" />
- <property name="CanDefault">True</property>
- <property name="CanFocus">True</property>
- <property name="UseStock">True</property>
- <property name="Type">StockItem</property>
- <property name="StockId">gtk-cancel</property>
- <property name="ResponseId">-6</property>
- <property name="label">gtk-cancel</property>
- </widget>
- <packing>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.Button" id="buttonOk">
- <property name="MemberName" />
- <property name="CanDefault">True</property>
- <property name="HasDefault">True</property>
- <property name="CanFocus">True</property>
- <property name="UseStock">True</property>
- <property name="Type">StockItem</property>
- <property name="StockId">gtk-ok</property>
- <property name="ResponseId">-5</property>
- <property name="label">gtk-ok</property>
- </widget>
- <packing>
- <property name="Position">1</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- </widget>
- </child>
- </widget>
- <widget class="Gtk.Dialog" id="MonoDevelop.AspNet.Deployment.WebDeployLaunchDialog" design-size="511 353">
- <property name="MemberName" />
- <property name="Visible">False</property>
- <property name="Title" translatable="yes">Deploy to Web</property>
- <property name="WindowPosition">CenterOnParent</property>
- <property name="Modal">True</property>
- <property name="BorderWidth">9</property>
- <property name="Buttons">3</property>
- <property name="HelpButton">False</property>
- <child internal-child="VBox">
- <widget class="Gtk.VBox" id="dialog1_VBox">
- <property name="MemberName" />
- <property name="Spacing">6</property>
- <property name="BorderWidth">2</property>
- <child>
- <widget class="Gtk.Label" id="titleLabel">
- <property name="MemberName" />
- <property name="Xalign">0</property>
- <property name="LabelProp" translatable="yes">&lt;big&gt;&lt;b&gt;Deploying Web Project...&lt;/b&gt;&lt;/big&gt;</property>
- <property name="UseMarkup">True</property>
- </widget>
- <packing>
- <property name="Position">0</property>
- <property name="AutoSize">False</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.Label" id="label1">
- <property name="MemberName" />
- <property name="Xalign">0</property>
- <property name="LabelProp" translatable="yes">Targets to which the project should be deployed:</property>
- </widget>
- <packing>
- <property name="Position">1</property>
- <property name="AutoSize">False</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- <property name="Padding">4</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.ScrolledWindow" id="scrolledwindow4">
- <property name="MemberName" />
- <property name="CanFocus">True</property>
- <property name="ShadowType">In</property>
- <child>
- <widget class="Gtk.TreeView" id="targetView">
- <property name="MemberName" />
- <property name="CanFocus">True</property>
- </widget>
- </child>
- </widget>
- <packing>
- <property name="Position">2</property>
- <property name="AutoSize">True</property>
- </packing>
- </child>
- </widget>
- </child>
- <child internal-child="ActionArea">
- <widget class="Gtk.HButtonBox" id="dialog1_ActionArea">
- <property name="MemberName" />
- <property name="Spacing">6</property>
- <property name="BorderWidth">5</property>
- <property name="Size">3</property>
- <property name="LayoutStyle">End</property>
- <child>
- <widget class="Gtk.Button" id="button6">
- <property name="MemberName" />
- <property name="CanFocus">True</property>
- <property name="Type">TextAndIcon</property>
- <property name="Icon">stock:gtk-edit Menu</property>
- <property name="Label" translatable="yes">_Edit targets</property>
- <property name="UseUnderline">True</property>
- <property name="ResponseId">-11</property>
- <signal name="Clicked" handler="editTargetsClicked" />
- </widget>
- <packing>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.Button" id="buttonCancel">
- <property name="MemberName" />
- <property name="CanDefault">True</property>
- <property name="CanFocus">True</property>
- <property name="UseStock">True</property>
- <property name="Type">StockItem</property>
- <property name="StockId">gtk-cancel</property>
- <property name="ResponseId">-6</property>
- <property name="label">gtk-cancel</property>
- </widget>
- <packing>
- <property name="Position">1</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.Button" id="buttonDeploy">
- <property name="MemberName" />
- <property name="CanDefault">True</property>
- <property name="CanFocus">True</property>
- <property name="Type">TextAndIcon</property>
- <property name="Icon">stock:gtk-ok Menu</property>
- <property name="Label" translatable="yes">_Deploy</property>
- <property name="UseUnderline">True</property>
- <property name="ResponseId">-5</property>
- </widget>
- <packing>
- <property name="Position">2</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- </widget>
- </child>
- </widget>
-</stetic-interface> \ No newline at end of file
diff --git a/main/src/addins/AspNet/ProjectPad/AspNetFolderNodeBuilderExtension.cs b/main/src/addins/AspNet/ProjectPad/AspNetFolderNodeBuilderExtension.cs
new file mode 100644
index 0000000000..1792b6da63
--- /dev/null
+++ b/main/src/addins/AspNet/ProjectPad/AspNetFolderNodeBuilderExtension.cs
@@ -0,0 +1,44 @@
+//
+// AspNetFolderNodeBuilderExtension.cs
+//
+// Author:
+// Michael Hutchinson <mhutchinson@novell.com>
+//
+// Copyright (c) 2009 Novell, Inc. (http://www.novell.com)
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+
+using System;
+using MonoDevelop.Ide.Gui.Components;
+using MonoDevelop.Ide.Gui.Pads.ProjectPad;
+
+namespace MonoDevelop.AspNet.ProjectPad
+{
+ class AspNetFolderNodeBuilderExtension : NodeBuilderExtension
+ {
+ public override bool CanBuildNode (Type dataType)
+ {
+ return typeof (ProjectFolder).IsAssignableFrom (dataType);
+ }
+
+ public override Type CommandHandlerType {
+ get { return typeof (AspNetFolderNodeCommandHandler); }
+ }
+ }
+}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Gui/FolderNodeBuilderExtension.cs b/main/src/addins/AspNet/ProjectPad/AspNetFolderNodeCommandHandler.cs
index 26a046ac03..30e870fccc 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Gui/FolderNodeBuilderExtension.cs
+++ b/main/src/addins/AspNet/ProjectPad/AspNetFolderNodeCommandHandler.cs
@@ -1,58 +1,47 @@
-//
-// FolderNodeBuilderExtension.cs
-//
-// Author:
-// Michael Hutchinson <mhutchinson@novell.com>
-//
-// Copyright (c) 2009 Novell, Inc. (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
+//
+// AspNetFolderNodeCommandHandler.cs
+//
+// Author:
+// Michael Hutchinson <mhutchinson@novell.com>
+//
+// Copyright (c) 2009 Novell, Inc. (http://www.novell.com)
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
using System;
using MonoDevelop.Components.Commands;
using MonoDevelop.Core;
using MonoDevelop.Ide.Gui.Components;
using MonoDevelop.Ide.Gui.Pads.ProjectPad;
-using MonoDevelop.AspNet.Mvc.TextTemplating;
using MonoDevelop.Ide;
+using MonoDevelop.AspNet.Projects;
+using MonoDevelop.AspNet.Commands;
-namespace MonoDevelop.AspNet.Mvc.Gui
+namespace MonoDevelop.AspNet.ProjectPad
{
- class FolderNodeBuilderExtension : NodeBuilderExtension
+ class AspNetFolderNodeCommandHandler : NodeCommandHandler
{
- public override bool CanBuildNode (Type dataType)
- {
- return typeof (ProjectFolder).IsAssignableFrom (dataType);
- }
-
- public override Type CommandHandlerType {
- get { return typeof (FolderCommandHandler); }
- }
- }
-
- class FolderCommandHandler : NodeCommandHandler
- {
- [CommandUpdateHandler (AspMvcCommands.AddController)]
+ [CommandUpdateHandler (AspNetCommands.AddController)]
public void AddControllerUpdate (CommandInfo info)
{
- var project = CurrentNode.GetParentDataItem (typeof (AspMvcProject), true) as AspMvcProject;
- if (project == null) {
+ var project = CurrentNode.GetParentDataItem (typeof (AspNetAppProject), true) as AspNetAppProject;
+ if (project == null || !project.IsAspMvcProject) {
info.Enabled = info.Visible = false;
return;
}
@@ -62,10 +51,10 @@ namespace MonoDevelop.AspNet.Mvc.Gui
info.Enabled = info.Visible = (pf.Path == rootName || pf.Path.IsChildPathOf (rootName));
}
- [CommandHandler (AspMvcCommands.AddController)]
+ [CommandHandler (AspNetCommands.AddController)]
public void AddController ()
{
- var project = (AspMvcProject) CurrentNode.GetParentDataItem (typeof (AspMvcProject), true);
+ var project = (AspNetAppProject) CurrentNode.GetParentDataItem (typeof (AspNetAppProject), true);
object currentItem = CurrentNode.DataItem;
@@ -79,7 +68,7 @@ namespace MonoDevelop.AspNet.Mvc.Gui
nav.Expanded = true;
}
- public static void AddController (AspMvcProject project, string path, string name)
+ public static void AddController (AspNetAppProject project, string path, string name)
{
var provider = project.LanguageBinding.GetCodeDomProvider ();
if (provider == null)
@@ -134,11 +123,11 @@ namespace MonoDevelop.AspNet.Mvc.Gui
}
}
- [CommandUpdateHandler (AspMvcCommands.AddView)]
+ [CommandUpdateHandler (AspNetCommands.AddView)]
public void AddViewUpdate (CommandInfo info)
{
- var project = CurrentNode.GetParentDataItem (typeof (AspMvcProject), true) as AspMvcProject;
- if (project == null) {
+ var project = CurrentNode.GetParentDataItem (typeof (AspNetAppProject), true) as AspNetAppProject;
+ if (project == null || !project.IsAspMvcProject) {
info.Enabled = info.Visible = false;
return;
}
@@ -148,96 +137,21 @@ namespace MonoDevelop.AspNet.Mvc.Gui
info.Enabled = info.Visible = (pf.Path == rootName || pf.Path.IsChildPathOf (rootName));
}
- [CommandHandler (AspMvcCommands.AddView)]
+ [CommandHandler (AspNetCommands.AddView)]
public void AddView ()
{
- var project = (AspMvcProject) CurrentNode.GetParentDataItem (typeof (AspMvcProject), true);
+ var project = (AspNetAppProject) CurrentNode.GetParentDataItem (typeof (AspNetAppProject), true);
object currentItem = CurrentNode.DataItem;
var folder = CurrentNode.GetParentDataItem (typeof(ProjectFolder), true) as ProjectFolder;
string path = folder != null? folder.Path : project.BaseDirectory;
- AddView (project, path, null);
+ AddViewFromControllerCommandHandler.AddView (project, path, null);
ITreeNavigator nav = Tree.GetNodeAtObject (currentItem);
if (nav != null)
nav.Expanded = true;
}
-
- public static void AddView (AspMvcProject project, string path, string name)
- {
- var provider = project.LanguageBinding.GetCodeDomProvider ();
- if (provider == null)
- throw new InvalidOperationException ("Project language has null CodeDOM provider");
-
- string outputFile = null;
- MvcTextTemplateHost host = null;
- AddViewDialog dialog = null;
-
- try {
- dialog = new AddViewDialog (project);
- dialog.ViewName = name;
-
- bool fileGood = false;
- while (!fileGood) {
- var resp = (Gtk.ResponseType) MessageService.RunCustomDialog (dialog);
- dialog.Hide ();
- if (resp != Gtk.ResponseType.Ok || ! dialog.IsValid ())
- return;
-
- string ext = ".cshtml";
- if (dialog.ActiveViewEngine == "Aspx")
- ext = dialog.IsPartialView ? ".ascx" : ".aspx";
-
- if (!System.IO.Directory.Exists (path))
- System.IO.Directory.CreateDirectory (path);
-
- outputFile = System.IO.Path.Combine (path, dialog.ViewName) + ext;
-
- if (System.IO.File.Exists (outputFile)) {
- fileGood = MessageService.AskQuestion ("Overwrite file?",
- String.Format ("The file '{0}' already exists.\n", dialog.ViewName) +
- "Would you like to overwrite it?", AlertButton.OverwriteFile, AlertButton.Cancel)
- != AlertButton.Cancel;
- } else
- break;
- }
-
- host = new MvcTextTemplateHost {
- LanguageExtension = provider.FileExtension,
- ItemName = dialog.ViewName,
- ViewDataTypeString = ""
- };
-
- if (dialog.HasMaster) {
- host.IsViewContentPage = true;
- host.ContentPlaceholder = dialog.PrimaryPlaceHolder;
- host.MasterPage = dialog.MasterFile;
- host.ContentPlaceHolders = dialog.ContentPlaceHolders;
- }
- else if (dialog.IsPartialView)
- host.IsViewUserControl = true;
- else
- host.IsViewPage = true;
-
- if (dialog.IsStronglyTyped)
- host.ViewDataTypeString = dialog.ViewDataTypeString;
-
- host.ProcessTemplate (dialog.TemplateFile, outputFile);
- MonoDevelop.TextTemplating.TextTemplatingService.ShowTemplateHostErrors (host.Errors);
-
- } finally {
- if (host != null)
- host.Dispose ();
- if (dialog != null)
- dialog.Destroy ();
- }
-
- if (System.IO.File.Exists (outputFile)) {
- project.AddFile (outputFile);
- IdeApp.ProjectOperations.Save (project);
- }
- }
}
}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/WebTargetEditor.cs b/main/src/addins/AspNet/ProjectPad/AspNetProjectNodeBuilderExtension.cs
index 8ff3f73827..da125b8376 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Deployment/WebTargetEditor.cs
+++ b/main/src/addins/AspNet/ProjectPad/AspNetProjectNodeBuilderExtension.cs
@@ -1,8 +1,9 @@
-// WebTargetEditor.cs
-//
+//
+// ProjectFolderNodeBuilderExtension.cs
+//
// Author:
// Michael Hutchinson <mhutchinson@novell.com>
-//
+//
// Copyright (C) 2007 Novell, Inc (http://www.novell.com)
//
// Permission is hereby granted, free of charge, to any person obtaining
@@ -26,17 +27,20 @@
using System;
-namespace MonoDevelop.AspNet.Deployment
+using MonoDevelop.Ide.Gui.Components;
+using MonoDevelop.AspNet.Projects;
+
+namespace MonoDevelop.AspNet.ProjectPad
{
-
-
- public partial class WebTargetEditor : Gtk.Window
+ class AspNetProjectNodeBuilderExtension: NodeBuilderExtension
{
-
- public WebTargetEditor() :
- base(Gtk.WindowType.Toplevel)
+ public override bool CanBuildNode (Type dataType)
{
- this.Build();
+ return typeof(AspNetAppProject).IsAssignableFrom (dataType);
+ }
+
+ public override Type CommandHandlerType {
+ get { return typeof (AspNetProjectNodeCommandHandler); }
}
}
}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/ProjectFolderNodeBuilderExtension.cs b/main/src/addins/AspNet/ProjectPad/AspNetProjectNodeCommandHandler.cs
index faeb2c6ff2..3bf027f7c8 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/ProjectFolderNodeBuilderExtension.cs
+++ b/main/src/addins/AspNet/ProjectPad/AspNetProjectNodeCommandHandler.cs
@@ -1,55 +1,42 @@
-// ProjectFolderNodeBuilderExtension.cs
-//
-// Author:
-// Michael Hutchinson <mhutchinson@novell.com>
-//
-// Copyright (C) 2007 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+// AspNetProjectNodeCommandHandler.cs
+//
+// Author:
+// Michael Hutchinson <mhutchinson@novell.com>
+//
+// Copyright (C) 2007 Novell, Inc (http://www.novell.com)
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
-using System;
using System.Collections.Generic;
-using MonoDevelop.Projects;
-using MonoDevelop.Core;
-using MonoDevelop.Ide.Gui.Pads.ProjectPad;
using MonoDevelop.Components.Commands;
-using MonoDevelop.Ide.Gui.Components;
+using MonoDevelop.Core;
using MonoDevelop.Ide;
+using MonoDevelop.Ide.Gui.Components;
+using MonoDevelop.Projects;
+using MonoDevelop.AspNet.Commands;
+using MonoDevelop.AspNet.Projects;
-namespace MonoDevelop.AspNet
+namespace MonoDevelop.AspNet.ProjectPad
{
-
- public class ProjectFolderNodeBuilderExtension: NodeBuilderExtension
- {
- public override bool CanBuildNode (Type dataType)
- {
- return typeof(AspNetAppProject).IsAssignableFrom (dataType);
- }
-
- public override Type CommandHandlerType {
- get { return typeof (ProjectFolderCommandHandler); }
- }
- }
-
- class ProjectFolderCommandHandler: NodeCommandHandler
+ class AspNetProjectNodeCommandHandler: NodeCommandHandler
{
[CommandHandler (AspNetCommands.AddAspNetDirectory)]
@@ -82,8 +69,7 @@ namespace MonoDevelop.AspNet
foreach (string dir in dirs) {
if (!fullPaths.Contains (proj.BaseDirectory.Combine (dir)))
continue;
-
- CommandInfo cmd = info.Add (dir.Replace("_", "__"), dir);
+ info.Add (dir.Replace("_", "__"), dir);
}
}
@@ -105,5 +91,4 @@ namespace MonoDevelop.AspNet
}
}
-
}
diff --git a/main/src/addins/AspNet/Projects/AspMvcProject.cs b/main/src/addins/AspNet/Projects/AspMvcProject.cs
new file mode 100644
index 0000000000..8161c25ee2
--- /dev/null
+++ b/main/src/addins/AspNet/Projects/AspMvcProject.cs
@@ -0,0 +1,173 @@
+//
+// AspMvcProject.cs
+//
+// Author:
+// Michael Hutchinson <mhutchinson@novell.com>
+//
+// Copyright (c) 2009 Novell, Inc. (http://www.novell.com)
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+
+using System;
+using System.Collections.Generic;
+using System.Xml;
+using MonoDevelop.Projects;
+
+namespace MonoDevelop.AspNet.Projects
+{
+ abstract class AspMvcProject : AspNetAppProject
+ {
+ protected AspMvcProject ()
+ {
+ }
+
+ protected AspMvcProject (string languageName)
+ : base (languageName)
+ {
+ }
+
+ protected AspMvcProject (string languageName, ProjectCreateInformation info, XmlElement projectOptions)
+ : base (languageName, info, projectOptions)
+ {
+ }
+
+ public override SolutionItemConfiguration CreateConfiguration (string name)
+ {
+ var conf = new AspMvcProjectConfiguration (name);
+ conf.CopyFrom (base.CreateConfiguration (name));
+ return conf;
+ }
+
+ public override IEnumerable<string> GetProjectTypes ()
+ {
+ yield return "AspNetMvc";
+ foreach (var t in base.GetProjectTypes ())
+ yield return t;
+ }
+
+ public override bool SupportsFramework (MonoDevelop.Core.Assemblies.TargetFramework framework)
+ {
+ return framework.CanReferenceAssembliesTargetingFramework (MonoDevelop.Core.Assemblies.TargetFrameworkMoniker.NET_3_5);
+ }
+
+ public override bool IsAspMvcProject {
+ get {
+ return true;
+ }
+ }
+ }
+
+ class AspMvc1Project : AspMvcProject
+ {
+ public AspMvc1Project ()
+ {
+ }
+
+ public AspMvc1Project (string languageName)
+ : base (languageName)
+ {
+ }
+
+ public AspMvc1Project (string languageName, ProjectCreateInformation info, XmlElement projectOptions)
+ : base (languageName, info, projectOptions)
+ {
+ }
+
+ protected override string GetDefaultAspNetMvcVersion ()
+ {
+ return "1.0.0.0";
+ }
+ }
+
+ class AspMvc2Project : AspMvcProject
+ {
+ public AspMvc2Project ()
+ {
+ }
+
+ public AspMvc2Project (string languageName)
+ : base (languageName)
+ {
+ }
+
+ public AspMvc2Project (string languageName, ProjectCreateInformation info, XmlElement projectOptions)
+ : base (languageName, info, projectOptions)
+ {
+ }
+
+ protected override string GetDefaultAspNetMvcVersion ()
+ {
+ return "2.0.0.0";
+ }
+ }
+
+ class AspMvc3Project : AspMvcProject
+ {
+ public AspMvc3Project ()
+ {
+ }
+
+ public AspMvc3Project (string languageName)
+ : base (languageName)
+ {
+ }
+
+ public AspMvc3Project (string languageName, ProjectCreateInformation info, XmlElement projectOptions)
+ : base (languageName, info, projectOptions)
+ {
+ }
+
+ public override bool SupportsFramework (MonoDevelop.Core.Assemblies.TargetFramework framework)
+ {
+ return framework.CanReferenceAssembliesTargetingFramework (MonoDevelop.Core.Assemblies.TargetFrameworkMoniker.NET_4_0);
+ }
+
+ protected override string GetDefaultAspNetMvcVersion ()
+ {
+ return "3.0.0.0";
+ }
+ }
+
+ class AspMvc4Project : AspMvcProject
+ {
+ public AspMvc4Project ()
+ {
+ }
+
+ public AspMvc4Project (string languageName)
+ : base (languageName)
+ {
+ }
+
+ public AspMvc4Project (string languageName, ProjectCreateInformation info, XmlElement projectOptions)
+ : base (languageName, info, projectOptions)
+ {
+ }
+
+ public override bool SupportsFramework (MonoDevelop.Core.Assemblies.TargetFramework framework)
+ {
+ return framework.CanReferenceAssembliesTargetingFramework (MonoDevelop.Core.Assemblies.TargetFrameworkMoniker.NET_4_0);
+ }
+
+ protected override string GetDefaultAspNetMvcVersion ()
+ {
+ return "4.0.0.0";
+ }
+ }
+}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/AspMvcProjectConfiguration.cs b/main/src/addins/AspNet/Projects/AspMvcProjectConfiguration.cs
index ebd9499bfc..743a6109fc 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/AspMvcProjectConfiguration.cs
+++ b/main/src/addins/AspNet/Projects/AspMvcProjectConfiguration.cs
@@ -26,7 +26,7 @@
using System;
-namespace MonoDevelop.AspNet.Mvc
+namespace MonoDevelop.AspNet.Projects
{
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetAppProject.cs b/main/src/addins/AspNet/Projects/AspNetAppProject.cs
index 53de5999e2..8fcf1b4a59 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetAppProject.cs
+++ b/main/src/addins/AspNet/Projects/AspNetAppProject.cs
@@ -30,44 +30,36 @@
//
using System;
+using System.Collections.Generic;
using System.IO;
+using System.Linq;
+using System.Reflection;
using System.Xml;
-using System.Collections.Generic;
+
+using ICSharpCode.NRefactory.TypeSystem;
+
using MonoDevelop.Core;
+using MonoDevelop.Core.Assemblies;
using MonoDevelop.Core.Execution;
using MonoDevelop.Core.ProgressMonitoring;
-using MonoDevelop.Projects;
using MonoDevelop.Core.Serialization;
-using MonoDevelop.Deployment;
-using MonoDevelop.Core.Assemblies;
-
-using MonoDevelop.AspNet.Parser;
-using MonoDevelop.AspNet.Deployment;
-using MonoDevelop.AspNet.Gui;
-using ICSharpCode.NRefactory.TypeSystem;
-using MonoDevelop.Ide.TypeSystem;
+using MonoDevelop.Ide.Desktop;
using MonoDevelop.Ide;
+using MonoDevelop.Ide.TypeSystem;
+using MonoDevelop.Projects;
+using MonoDevelop.AspNet.Execution;
+using MonoDevelop.AspNet.WebForms;
-namespace MonoDevelop.AspNet
+namespace MonoDevelop.AspNet.Projects
{
[DataInclude (typeof(AspNetAppProjectConfiguration))]
public class AspNetAppProject : DotNetAssemblyProject
{
[ItemProperty("XspParameters", IsExternal=true)]
- protected XspParameters xspParameters = new XspParameters ();
-
- [ItemProperty ("VerifyCodeBehindFields", IsExternal=true)]
- protected bool verifyCodeBehindFields = true;
-
- [ItemProperty ("VerifyCodeBehindEvents", IsExternal=true)]
- protected bool verifyCodeBehindEvents = true;
-
- [ItemProperty("WebDeployTargets", IsExternal=true)]
- [ItemProperty ("Target", ValueType=typeof(WebDeployTarget), Scope="*")]
- protected WebDeployTargetCollection webDeployTargets = new WebDeployTargetCollection ();
-
- RegistrationCache registrationCache;
- CodeBehindTypeNameCache codebehindTypeNameCache;
+ XspParameters xspParameters = new XspParameters ();
+
+ WebFormsRegistrationCache registrationCache;
+ WebFormsCodeBehindTypeNameCache codebehindTypeNameCache;
#region properties
@@ -82,40 +74,14 @@ namespace MonoDevelop.AspNet
get { return true; }
}
- protected override void OnEndLoad ()
- {
- base.OnEndLoad ();
-
- //FIX: old version of MD didn't set CompileTarget to Library for ASP.NET projects,
- // but implicitly assumed they were always libraries. This is not compatible with VS/MSBuild,
- // so we automatically "upgrade" this value.
- if (CompileTarget != CompileTarget.Library)
- CompileTarget = CompileTarget.Library;
- }
-
public XspParameters XspParameters {
get { return xspParameters; }
}
- public bool VerifyCodeBehindFields {
- get { return verifyCodeBehindFields; }
- set { verifyCodeBehindFields = value; }
- }
-
- //TODO: make this do something
- public bool VerifyCodeBehindEvents {
- get { return verifyCodeBehindEvents; }
- set { verifyCodeBehindEvents = value; }
- }
-
- public WebDeployTargetCollection WebDeployTargets {
- get { return webDeployTargets; }
- }
-
- internal RegistrationCache RegistrationCache {
+ internal WebFormsRegistrationCache RegistrationCache {
get {
if (registrationCache == null)
- registrationCache = new RegistrationCache (this);
+ registrationCache = new WebFormsRegistrationCache (this);
return registrationCache;
}
}
@@ -141,7 +107,7 @@ namespace MonoDevelop.AspNet
Init ();
var binPath = info == null? (FilePath)"bin" : info.BinPath;
- foreach (AspNetAppProjectConfiguration cfg in Configurations)
+ foreach (var cfg in Configurations.Cast<AspNetAppProjectConfiguration> ())
cfg.OutputDirectory = binPath;
}
@@ -149,13 +115,18 @@ namespace MonoDevelop.AspNet
{
var conf = new AspNetAppProjectConfiguration (name);
conf.CopyFrom (base.CreateConfiguration (name));
- conf.OutputDirectory = BaseDirectory.IsNullOrEmpty? "bin" : (string)BaseDirectory.Combine ("bin");
+ conf.OutputDirectory = BaseDirectory.IsNullOrEmpty? "bin" : (string)BaseDirectory.Combine ("bin");
return conf;
}
void Init ()
{
- codebehindTypeNameCache = new CodeBehindTypeNameCache (this);
+ codebehindTypeNameCache = new WebFormsCodeBehindTypeNameCache (this);
+ }
+
+ public new AspNetAppProjectConfiguration GetConfiguration (ConfigurationSelector configuration)
+ {
+ return (AspNetAppProjectConfiguration) base.GetConfiguration (configuration);
}
#endregion
@@ -184,38 +155,37 @@ namespace MonoDevelop.AspNet
if (needsCompile)
return base.DoBuild (monitor, configuration);
- else
- return new BuildResult ();
+ return new BuildResult ();
}
ExecutionCommand CreateExecutionCommand (ConfigurationSelector config, AspNetAppProjectConfiguration configuration)
{
- return new AspNetExecutionCommand () {
+ return new AspNetExecutionCommand {
ClrVersion = configuration.ClrVersion,
DebugMode = configuration.DebugMode,
XspParameters = XspParameters,
BaseDirectory = BaseDirectory,
TargetRuntime = TargetRuntime,
TargetFramework = TargetFramework,
- UserAssemblyPaths = this.GetUserAssemblyPaths (config),
+ UserAssemblyPaths = GetUserAssemblyPaths (config),
EnvironmentVariables = configuration.EnvironmentVariables,
};
}
- protected override bool OnGetCanExecute (MonoDevelop.Projects.ExecutionContext context, ConfigurationSelector config)
+ protected override bool OnGetCanExecute (ExecutionContext context, ConfigurationSelector configuration)
{
- var configuration = (AspNetAppProjectConfiguration) GetConfiguration (config);
- var cmd = CreateExecutionCommand (config, configuration);
+ var cmd = CreateExecutionCommand (configuration, GetConfiguration (configuration));
return context.ExecutionHandler.CanExecute (cmd);
}
- protected override void DoExecute (IProgressMonitor monitor, ExecutionContext context, ConfigurationSelector config)
+ protected override void DoExecute (IProgressMonitor monitor, ExecutionContext context, ConfigurationSelector configuration)
{
//check XSP is available
- var configuration = (AspNetAppProjectConfiguration) GetConfiguration (config);
- var cmd = CreateExecutionCommand (config, configuration);
-
+ var cfg = GetConfiguration (configuration);
+ var cmd = CreateExecutionCommand (configuration, cfg);
+ var browserExcTarget = (BrowserExecutionTarget) context.ExecutionTarget;
+
IConsole console = null;
var operationMonitor = new AggregatedOperationMonitor (monitor);
@@ -234,18 +204,21 @@ namespace MonoDevelop.AspNet
}
}
- if (configuration.ExternalConsole)
- console = context.ExternalConsoleFactory.CreateConsole (!configuration.PauseConsoleOutput);
+ if (cfg.ExternalConsole)
+ console = context.ExternalConsoleFactory.CreateConsole (!cfg.PauseConsoleOutput);
else
- console = context.ConsoleFactory.CreateConsole (!configuration.PauseConsoleOutput);
+ console = context.ConsoleFactory.CreateConsole (!cfg.PauseConsoleOutput);
// The running Port value is now captured in the XspBrowserLauncherConsole object
- string url = String.Format ("http://{0}", this.XspParameters.Address);
+ string url = String.Format ("http://{0}", XspParameters.Address);
if (isXsp) {
console = new XspBrowserLauncherConsole (console, delegate (string port) {
- BrowserLauncher.LaunchDefaultBrowser (String.Format("{0}:{1}", url, port));
+ if (browserExcTarget != null)
+ browserExcTarget.DesktopApp.Launch (String.Format("{0}:{1}", url, port));
+ else
+ BrowserLauncher.LaunchDefaultBrowser (String.Format("{0}:{1}", url, port));
});
}
@@ -254,8 +227,12 @@ namespace MonoDevelop.AspNet
var op = context.ExecutionHandler.Execute (cmd, console);
operationMonitor.AddOperation (op); //handles cancellation
- if (!isXsp)
- BrowserLauncher.LaunchDefaultBrowser (url);
+ if (!isXsp) {
+ if (browserExcTarget != null)
+ browserExcTarget.DesktopApp.Launch (url);
+ else
+ BrowserLauncher.LaunchDefaultBrowser (url);
+ }
op.WaitForCompleted ();
@@ -286,7 +263,7 @@ namespace MonoDevelop.AspNet
public static WebSubtype DetermineWebSubtype (string fileName)
{
- string extension = System.IO.Path.GetExtension (fileName);
+ string extension = Path.GetExtension (fileName);
if (extension == null)
return WebSubtype.None;
extension = extension.ToUpperInvariant ().TrimStart ('.');
@@ -342,6 +319,8 @@ namespace MonoDevelop.AspNet
return WebSubtype.Svg;
case "STYL":
return WebSubtype.Stylus;
+ case "CSHTML":
+ return WebSubtype.Razor;
default:
return WebSubtype.None;
}
@@ -353,54 +332,6 @@ namespace MonoDevelop.AspNet
#endregion
- public ICompilation ResolveAssemblyDom (string assemblyName)
- {
- var parsed = SystemAssemblyService.ParseAssemblyName (assemblyName);
- if (string.IsNullOrEmpty (parsed.Name))
- return null;
-
- var dllName = parsed.Name + ".dll";
-
- foreach (var reference in References) {
- if (reference.ReferenceType == ReferenceType.Package || reference.ReferenceType == ReferenceType.Assembly) {
- foreach (string refPath in reference.GetReferencedFileNames (null))
- if (Path.GetFileName (refPath) == dllName)
- return new ICSharpCode.NRefactory.TypeSystem.Implementation.SimpleCompilation (TypeSystemService.LoadAssemblyContext (TargetRuntime, TargetFramework, refPath));
- } else if (reference.ReferenceType == ReferenceType.Project && parsed.Name == reference.Reference) {
- var p = ParentSolution.FindProjectByName (reference.Reference) as DotNetProject;
- if (p == null) {
- LoggingService.LogWarning ("Project '{0}' referenced from '{1}' could not be found", reference.Reference, this.Name);
- continue;
- }
- return TypeSystemService.GetCompilation (p);
- }
- }
-
- string path = GetAssemblyPath (assemblyName);
- if (path != null)
- return new ICSharpCode.NRefactory.TypeSystem.Implementation.SimpleCompilation (TypeSystemService.LoadAssemblyContext (TargetRuntime, TargetFramework, path));
- return null;
- }
-
- string GetAssemblyPath (string assemblyName)
- {
- var parsed = SystemAssemblyService.ParseAssemblyName (assemblyName);
- if (string.IsNullOrEmpty (parsed.Name))
- return null;
-
- string localName = Path.Combine (Path.Combine (BaseDirectory, "bin"), parsed.Name + ".dll");
- if (File.Exists (localName))
- return localName;
-
- assemblyName = AssemblyContext.GetAssemblyFullName (assemblyName, TargetFramework);
- if (assemblyName == null)
- return null;
- assemblyName = AssemblyContext.GetAssemblyNameForVersion (assemblyName, TargetFramework);
- if (assemblyName == null)
- return null;
- return AssemblyContext.GetAssemblyLocation (assemblyName, TargetFramework);
- }
-
public ProjectFile ResolveVirtualPath (string virtualPath, string relativeToFile)
{
string name = VirtualToLocalPath (virtualPath, relativeToFile);
@@ -411,8 +342,7 @@ namespace MonoDevelop.AspNet
public string VirtualToLocalPath (string virtualPath, string relativeToFile)
{
- if (virtualPath == null || virtualPath.Length == 0 || virtualPath[0] == '/'
- || virtualPath.IndexOf (':') > -1)
+ if (string.IsNullOrEmpty (virtualPath) || virtualPath [0] == '/' || virtualPath.IndexOf (':') > -1)
return null;
FilePath relativeToDir;
@@ -421,7 +351,7 @@ namespace MonoDevelop.AspNet
virtualPath = virtualPath.Substring (2);
else
virtualPath = virtualPath.Substring (1);
- relativeToDir = this.BaseDirectory;
+ relativeToDir = BaseDirectory;
} else {
relativeToDir = String.IsNullOrEmpty (relativeToFile)
? BaseDirectory
@@ -481,7 +411,7 @@ namespace MonoDevelop.AspNet
if (string.IsNullOrEmpty (reference.Reference))
continue;
//these assemblies are referenced automatically by ASP.NET
- if (IsSystemReference (reference.Reference))
+ if (WebFormsRegistrationCache.IsDefaultReference (reference.Reference))
continue;
//bypass non dotnet projects
if ((reference.ReferenceType == ReferenceType.Project) &&
@@ -494,7 +424,7 @@ namespace MonoDevelop.AspNet
if (webConfig == null || !File.Exists (webConfig.FilePath))
return;
- var textFile = MonoDevelop.Ide.TextFileProvider.Instance.GetEditableTextFile (webConfig.FilePath);
+ var textFile = TextFileProvider.Instance.GetEditableTextFile (webConfig.FilePath);
//use textfile API because it's write safe (writes out to another file then moves)
if (textFile == null)
textFile = MonoDevelop.Projects.Text.TextFile.ReadFile (webConfig.FilePath);
@@ -502,7 +432,7 @@ namespace MonoDevelop.AspNet
//can't use System.Web.Configuration.WebConfigurationManager, as it can only access virtual paths within an app
//so need full manual handling
try {
- System.Xml.XmlDocument doc = new XmlDocument ();
+ var doc = new XmlDocument ();
//FIXME: PreserveWhitespace doesn't handle whitespace in attribute lists
//doc.PreserveWhitespace = true;
@@ -527,8 +457,8 @@ namespace MonoDevelop.AspNet
int index = 0;
bool found = false;
while (index < existingAdds.Count) {
- XmlNode node = existingAdds[index];
- XmlAttribute att = (XmlAttribute) node.Attributes.GetNamedItem ("assembly");
+ XmlNode node = existingAdds [index];
+ XmlAttribute att = (XmlAttribute)node.Attributes.GetNamedItem ("assembly");
if (att == null)
continue;
string refAtt = att.Value;
@@ -536,9 +466,8 @@ namespace MonoDevelop.AspNet
existingAdds.RemoveAt (index);
found = true;
break;
- } else {
- index++;
}
+ index++;
}
if (!found) {
XmlElement newAdd = doc.CreateElement ("add");
@@ -564,7 +493,7 @@ namespace MonoDevelop.AspNet
if (tf != null)
tf.Save ();
} catch (Exception e) {
- LoggingService.LogWarning ("Could not modify application web.config in project " + this.Name, e);
+ LoggingService.LogWarning ("Could not modify application web.config in project " + Name, e);
}
}
@@ -587,8 +516,8 @@ namespace MonoDevelop.AspNet
ProjectFile GetWebConfig ()
{
- var webConf = this.BaseDirectory.Combine ("web.config");
- foreach (var file in this.Files)
+ var webConf = BaseDirectory.Combine ("web.config");
+ foreach (var file in Files)
if (string.Compare (file.FilePath.ToString (), webConf, StringComparison.OrdinalIgnoreCase) == 0)
return file;
return null;
@@ -596,43 +525,14 @@ namespace MonoDevelop.AspNet
bool IsWebConfig (FilePath file)
{
- var webConf = this.BaseDirectory.Combine ("web.config");
+ var webConf = BaseDirectory.Combine ("web.config");
return (string.Compare (file, webConf, StringComparison.OrdinalIgnoreCase) == 0);
}
- bool IsSystemReference (string reference)
- {
- foreach (string defaultPrefix in defaultAssemblyRefPrefixes)
- if (reference.StartsWith (defaultPrefix))
- return true;
- return false;
- }
-
- static string[] defaultAssemblyRefPrefixes = new string[] {
- "mscorlib",
- "System,",
- "System.Configuration,",
- "System.Web,",
- "System.Data,",
- "System.Web.Services,",
- "System.Xml,",
- "System.Drawing,",
- "System.EnterpriseServices,",
- "System.Web.Mobile,",
- };
-
#endregion
#region File event handlers
- protected override void OnFileChangedInProject (MonoDevelop.Projects.ProjectFileEventArgs e)
- {
- //if (!DisableCodeBehindGeneration) {
- //FIXME implement codebehind updates
-
- base.OnFileChangedInProject (e);
- }
-
protected override void OnFileAddedToProject (ProjectFileEventArgs e)
{
//short-circuit if the project is being deserialised
@@ -671,12 +571,14 @@ namespace MonoDevelop.AspNet
{
WebSubtype type = DetermineWebSubtype (fileName);
- if (type == WebSubtype.Code)
+ switch (type) {
+ case WebSubtype.Code:
return BuildAction.Compile;
- if (type != WebSubtype.None)
- return BuildAction.Content;
- else
+ case WebSubtype.None:
return base.GetDefaultBuildAction (fileName);
+ default:
+ return BuildAction.Content;
+ }
}
static string[] groupedExtensions = { ".aspx", ".master", ".ashx", ".ascx", ".asmx", ".asax" };
@@ -685,13 +587,17 @@ namespace MonoDevelop.AspNet
public virtual IEnumerable<string> GetSpecialDirectories ()
{
- if (TargetFramework.ClrVersion != MonoDevelop.Core.ClrVersion.Net_2_0)
- yield break;
yield return "App_Browsers";
yield return "App_Data";
yield return "App_GlobalResources";
yield return "App_LocalResources";
yield return "Theme";
+
+ if (IsAspMvcProject) {
+ yield return "Views";
+ yield return "Models";
+ yield return "Controllers";
+ }
// For "web site" projects
// "App_WebReferences", "App_Resources","App_Themes", "App_Code",
@@ -699,7 +605,7 @@ namespace MonoDevelop.AspNet
protected override IList<string> GetCommonBuildActions ()
{
- return new string[] {
+ return new [] {
BuildAction.None,
BuildAction.Compile,
BuildAction.Content,
@@ -707,130 +613,130 @@ namespace MonoDevelop.AspNet
};
}
- public IType GetCodebehindType (string fileName)
- {
- string typeName = GetCodebehindTypeName (fileName);
- if (typeName != null) {
- var dom = TypeSystemService.GetCompilation (this);
- if (dom != null)
- return ReflectionHelper.ParseReflectionName (typeName).Resolve (dom);
- }
- return null;
- }
-
public string GetCodebehindTypeName (string fileName)
{
lock (codebehindTypeNameCache)
return codebehindTypeNameCache.GetCodeBehindTypeName (fileName);
}
-
- class CodeBehindTypeNameCache : ProjectFileCache<AspNetAppProject,string>
+
+ public IList<string> GetCodeTemplates (string type, string subtype = null)
{
- public CodeBehindTypeNameCache (AspNetAppProject proj) : base (proj)
- {
- }
-
- protected override string GenerateInfo (string filename)
- {
- try {
- var doc = TypeSystemService.ParseFile (filename, DesktopService.GetMimeTypeForUri (filename), File.ReadAllText (filename)) as AspNetParsedDocument;
- if (doc != null && !string.IsNullOrEmpty (doc.Info.InheritedClass))
- return doc.Info.InheritedClass;
- } catch (Exception ex) {
- LoggingService.LogError ("Error reading codebehind name for file '" + filename + "'", ex);
- }
- return null;
+ var files = new List<string> ();
+ var names = new HashSet<string> ();
+
+ string asmDir = Path.GetDirectoryName (typeof (AspNetAppProject).Assembly.Location);
+ string lang = LanguageName;
+ if (lang == "C#") {
+ lang = "CSharp";
}
-
- public string GetCodeBehindTypeName (string fileName)
- {
- return Get (fileName);
+
+ if (subtype != null) {
+ type = Path.Combine (type, subtype);
}
+
+ var dirs = new [] {
+ Path.Combine (BaseDirectory, "CodeTemplates", type),
+ Path.Combine (BaseDirectory, "CodeTemplates", lang, type),
+ Path.Combine (asmDir, "CodeTemplates", type),
+ Path.Combine (asmDir, "CodeTemplates", lang, type),
+ };
+
+ foreach (string directory in dirs)
+ if (Directory.Exists (directory))
+ foreach (string file in Directory.GetFiles (directory, "*.tt", SearchOption.TopDirectoryOnly))
+ if (names.Add (Path.GetFileName (file)))
+ files.Add (file);
+
+ return files;
}
- }
-
- public enum WebSubtype
- {
- None = 0,
- Code,
- WebForm,
- WebService,
- WebControl,
- MasterPage,
- WebHandler,
- WebSkin,
- WebImage,
- BrowserDefinition,
- Sitemap,
- Global,
- Config,
- Axd,
- Css,
- Html,
- JavaScript,
- Less,
- Font,
- Svg,
- Sass,
- Stylus
- }
-
-
- class XspBrowserLauncherConsole : IConsole
- {
- IConsole real;
- LineInterceptingTextWriter outWriter;
- Action <string> launchBrowser;
-
- const int MAX_WATCHED_LINES = 30;
-
- public XspBrowserLauncherConsole (IConsole real, Action <string> launchBrowser)
+
+ protected override void PopulateSupportFileList (FileCopySet list, ConfigurationSelector configuration)
{
- this.real = real;
- this.launchBrowser = launchBrowser;
+ base.PopulateSupportFileList (list, configuration);
+
+ //HACK: workaround for MD not local-copying package references
+ foreach (MonoDevelop.Projects.ProjectReference projectReference in References) {
+ if (projectReference.Package != null && projectReference.Package.Name == "system.web.mvc") {
+ if (projectReference.ReferenceType == ReferenceType.Package)
+ foreach (SystemAssembly assem in projectReference.Package.Assemblies)
+ list.Add (assem.Location);
+ break;
+ }
+ }
}
-
- public void Dispose ()
+
+ public string GetAspNetMvcVersion ()
{
- real.Dispose ();
+ foreach (var pref in References) {
+ if (pref.Reference.IndexOf ("System.Web.Mvc", StringComparison.OrdinalIgnoreCase) < 0)
+ continue;
+ switch (pref.ReferenceType) {
+ case ReferenceType.Assembly:
+ case ReferenceType.Package:
+ foreach (var f in pref.GetReferencedFileNames (null)) {
+ if (Path.GetFileNameWithoutExtension (f) != "System.Web.Mvc" || !File.Exists (f))
+ continue;
+ return AssemblyName.GetAssemblyName (f).Version.ToString ();
+ }
+ break;
+ default:
+ continue;
+ }
+ }
+
+ if (IsAspMvcProject)
+ return GetDefaultAspNetMvcVersion ();
+
+ return null;
}
-
- public event EventHandler CancelRequested {
- add { real.CancelRequested += value; }
- remove { real.CancelRequested -= value; }
+
+ public bool SupportsRazorViewEngine {
+ get {
+ return References.Any (r => r.Reference.StartsWith ("System.Web.WebPages.Razor", StringComparison.Ordinal));
+ }
}
-
- public TextReader In {
- get { return real.In; }
+
+ protected virtual string GetDefaultAspNetMvcVersion ()
+ {
+ return "5.1.2";
}
-
- public TextWriter Out {
+
+ public virtual bool IsAspMvcProject {
get {
- if (outWriter == null)
- outWriter = new LineInterceptingTextWriter (real.Out, delegate {
- string line = outWriter.GetLine();
- if (line.Contains ("Listening on port: ")) {
- string port = System.Text.RegularExpressions.Regex.Match (line, "(?<=port: )[0-9]*(?= )").Value;
- launchBrowser (port);
- outWriter.FinishedIntercepting = true;
- } else if (outWriter.LineCount > MAX_WATCHED_LINES) {
- outWriter.FinishedIntercepting = true;
- }
- });
- return outWriter;
+ return References.Any (r => r.Reference.StartsWith ("System.Web.Mvc", StringComparison.Ordinal));
}
}
-
- public TextWriter Error {
- get { return real.Error; }
- }
-
- public TextWriter Log {
- get { return real.Log; }
+
+ class BrowserExecutionTarget : ExecutionTarget
+ {
+ string name, id;
+ public BrowserExecutionTarget (string id, string displayName, DesktopApplication app){
+ this.name = displayName;
+ this.id = id;
+ this.DesktopApp = app;
+ }
+
+ public override string Name {
+ get { return name; }
+ }
+
+ public override string Id {
+ get { return id; }
+ }
+
+ public DesktopApplication DesktopApp { get; private set; }
}
-
- public bool CloseOnDispose {
- get { return real.CloseOnDispose; }
+
+ protected override IEnumerable<ExecutionTarget> OnGetExecutionTargets (ConfigurationSelector configuration)
+ {
+ var apps = new List<ExecutionTarget> ();
+ foreach (var browser in MonoDevelop.Ide.DesktopService.GetApplications ("test.html")) {
+ if (browser.IsDefault)
+ apps.Insert (0, new BrowserExecutionTarget (browser.Id,browser.DisplayName,browser));
+ else
+ apps.Add (new BrowserExecutionTarget (browser.Id,browser.DisplayName,browser));
+ }
+ return apps;
}
}
}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetAppProjectBinding.cs b/main/src/addins/AspNet/Projects/AspNetAppProjectBinding.cs
index 7393ada07c..3a89feac81 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetAppProjectBinding.cs
+++ b/main/src/addins/AspNet/Projects/AspNetAppProjectBinding.cs
@@ -36,7 +36,7 @@ using MonoDevelop.Projects;
using MonoDevelop.Core.Serialization;
using System.Xml;
-namespace MonoDevelop.AspNet
+namespace MonoDevelop.AspNet.Projects
{
//based heavily on DotNetProjectBinding
public class AspNetAppProjectBinding : IProjectBinding
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetAppProjectConfiguration.cs b/main/src/addins/AspNet/Projects/AspNetAppProjectConfiguration.cs
index 07a8e6e268..cc20b7151b 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetAppProjectConfiguration.cs
+++ b/main/src/addins/AspNet/Projects/AspNetAppProjectConfiguration.cs
@@ -30,13 +30,10 @@
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
-using System;
-using MonoDevelop.Core;
using MonoDevelop.Projects;
-using MonoDevelop.Core.Serialization;
-namespace MonoDevelop.AspNet
+namespace MonoDevelop.AspNet.Projects
{
public class AspNetAppProjectConfiguration : DotNetProjectConfiguration
{
@@ -44,25 +41,16 @@ namespace MonoDevelop.AspNet
{
}
- public AspNetAppProjectConfiguration () : base ()
+ public AspNetAppProjectConfiguration ()
{
}
- [ItemProperty ("AspNet/DisableCodeBehindGeneration", DefaultValue = false)]
- bool disableCodeBehindGeneration = false;
-
- public bool DisableCodeBehindGeneration {
- get { return disableCodeBehindGeneration; }
- set { disableCodeBehindGeneration = value; }
- }
-
public override void CopyFrom (ItemConfiguration configuration)
{
base.CopyFrom (configuration);
var cfg = configuration as AspNetAppProjectConfiguration;
if (cfg == null)
return;
- disableCodeBehindGeneration = cfg.disableCodeBehindGeneration;
}
}
}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetMSBuildImportProvider.cs b/main/src/addins/AspNet/Projects/AspNetMSBuildImportProvider.cs
index 0d6ba65c72..40deaca04d 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetMSBuildImportProvider.cs
+++ b/main/src/addins/AspNet/Projects/AspNetMSBuildImportProvider.cs
@@ -29,9 +29,11 @@ using System.Collections.Generic;
using MonoDevelop.Projects;
using MonoDevelop.Projects.Formats.MSBuild;
using Mono.Addins;
+using MonoDevelop.AspNet.Projects;
-namespace MonoDevelop.AspNet
+namespace MonoDevelop.AspNet.Projects
{
+ /*
[Extension]
public class AspNetMSBuildImportProvider: IMSBuildImportProvider
{
@@ -45,7 +47,7 @@ namespace MonoDevelop.AspNet
imports.Remove (target08);
imports.Remove (target10);
- AspNetAppProject project = item as AspNetAppProject;
+ var project = item as AspNetAppProject;
if (project != null) {
if (project.FileFormat.Id == "MSBuild05")
imports.Add (target05);
@@ -56,5 +58,6 @@ namespace MonoDevelop.AspNet
}
}
}
+ */
}
diff --git a/main/src/addins/AspNet/Projects/AspNetMvcFileTemplateCondition.cs b/main/src/addins/AspNet/Projects/AspNetMvcFileTemplateCondition.cs
new file mode 100644
index 0000000000..0a4f581ad1
--- /dev/null
+++ b/main/src/addins/AspNet/Projects/AspNetMvcFileTemplateCondition.cs
@@ -0,0 +1,72 @@
+//
+// AspNetMvcFileTemplateCondition.cs
+//
+// Author:
+// Michael Hutchinson <mhutch@xamarin.com>
+//
+// Copyright (c) 2014 Xamarin Inc.
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+
+using System;
+using System.Xml;
+using MonoDevelop.Ide.Templates;
+using MonoDevelop.Projects;
+
+namespace MonoDevelop.AspNet.Projects
+{
+ class AspNetMvcFileTemplateCondition : FileTemplateCondition
+ {
+ Version minVersion;
+ bool razor;
+
+ public override void Load (XmlElement element)
+ {
+ if (element.HasAttribute ("minVersion"))
+ minVersion = Version.Parse (element.GetAttribute ("minVersion"));
+
+ if (element.HasAttribute ("razor"))
+ razor = bool.Parse (element.GetAttribute ("razor"));
+ }
+
+ public override bool ShouldEnableFor (Project proj, string projectPath)
+ {
+ if (proj == null)
+ return true;
+
+ var aspProj = proj as AspNetAppProject;
+ if (aspProj == null)
+ return false;
+
+ var versionStr = aspProj.GetAspNetMvcVersion ();
+ if (versionStr == null)
+ return false;
+
+ Version version;
+ if (minVersion != null && Version.TryParse (versionStr, out version) && version < minVersion)
+ return false;
+
+ if (razor)
+ return aspProj.SupportsRazorViewEngine;
+
+ return true;
+ }
+ }
+}
+
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/TextTemplating/MvcTextTemplateHost.cs b/main/src/addins/AspNet/Projects/MvcTextTemplateHost.cs
index 437c029a69..6e0af3934f 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/TextTemplating/MvcTextTemplateHost.cs
+++ b/main/src/addins/AspNet/Projects/MvcTextTemplateHost.cs
@@ -28,14 +28,14 @@ using System;
using System.Collections.Generic;
using MonoDevelop.TextTemplating;
-namespace MonoDevelop.AspNet.Mvc.TextTemplating
+namespace MonoDevelop.AspNet.Projects
{
public class MvcTextTemplateHost : MonoDevelopTemplatingHost
{
public MvcTextTemplateHost ()
{
AddMonoDevelopHostImport ();
- Imports.Add ("MonoDevelop.AspNet.Mvc.TextTemplating");
+ Imports.Add (typeof (MvcTextTemplateHost).Namespace);
Refs.Add (typeof (MvcTextTemplateHost).Assembly.Location);
}
@@ -61,7 +61,7 @@ namespace MonoDevelop.AspNet.Mvc.TextTemplating
public string ContentPlaceholder { get; set; }
- public List<System.String> ContentPlaceHolders { get; set; }
+ public List<string> ContentPlaceHolders { get; set; }
public string LanguageExtension { get; set; }
diff --git a/main/src/addins/AspNet/Projects/WebSubtype.cs b/main/src/addins/AspNet/Projects/WebSubtype.cs
new file mode 100644
index 0000000000..24bd85dbb4
--- /dev/null
+++ b/main/src/addins/AspNet/Projects/WebSubtype.cs
@@ -0,0 +1,59 @@
+//
+// WebSubtype.cs
+//
+// Author:
+// Michael Hutchinson <mhutch@xamarin.com>
+//
+// Copyright (c) 2014 Xamarin Inc.
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+
+
+
+namespace MonoDevelop.AspNet.Projects
+{
+
+ public enum WebSubtype
+ {
+ None = 0,
+ Code,
+ WebForm,
+ WebService,
+ WebControl,
+ MasterPage,
+ WebHandler,
+ WebSkin,
+ WebImage,
+ BrowserDefinition,
+ Sitemap,
+ Global,
+ Config,
+ Axd,
+ Css,
+ Html,
+ JavaScript,
+ Less,
+ Font,
+ Svg,
+ Sass,
+ Stylus,
+ Razor
+ }
+
+}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/AddinInfo.cs b/main/src/addins/AspNet/Properties/AddinInfo.cs
index 96022feac1..aa431c1eb8 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/AddinInfo.cs
+++ b/main/src/addins/AspNet/Properties/AddinInfo.cs
@@ -1,19 +1,16 @@
-using System;
using Mono.Addins;
-using Mono.Addins.Description;
[assembly:Addin ("AspNet",
Namespace = "MonoDevelop",
Version = MonoDevelop.BuildInfo.Version,
Category = "Web Development")]
-[assembly:AddinName ("ASP.NET Project Support")]
-[assembly:AddinDescription ("Support for ASP.NET projects, including editing, compiling, previewing and deploying to remote servers")]
+[assembly:AddinName ("Web Project Support")]
+[assembly:AddinDescription ("Support for ASP.NET projects, including editing, compiling and previewing")]
[assembly:AddinDependency ("Core", MonoDevelop.BuildInfo.Version)]
[assembly:AddinDependency ("Ide", MonoDevelop.BuildInfo.Version)]
[assembly:AddinDependency ("DesignerSupport", MonoDevelop.BuildInfo.Version)]
-[assembly:AddinDependency ("Deployment", MonoDevelop.BuildInfo.Version)]
-[assembly:AddinDependency ("XmlEditor", MonoDevelop.BuildInfo.Version)]
+[assembly:AddinDependency ("Xml", MonoDevelop.BuildInfo.Version)]
[assembly:AddinDependency ("SourceEditor2", MonoDevelop.BuildInfo.Version)]
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/AssemblyInfo.cs b/main/src/addins/AspNet/Properties/AssemblyInfo.cs
index 6508a7210d..6508a7210d 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/AssemblyInfo.cs
+++ b/main/src/addins/AspNet/Properties/AssemblyInfo.cs
diff --git a/main/src/addins/AspNet/Properties/MonoDevelop.AspNet.addin.xml b/main/src/addins/AspNet/Properties/MonoDevelop.AspNet.addin.xml
new file mode 100644
index 0000000000..17406e444f
--- /dev/null
+++ b/main/src/addins/AspNet/Properties/MonoDevelop.AspNet.addin.xml
@@ -0,0 +1,394 @@
+<ExtensionModel>
+
+ <Runtime>
+ <Import file = "Html/Schemas/xhtml1-strict.xsd" />
+ <Import file = "Html/Schemas/xhtml1-transitional.xsd" />
+ <Import file = "Html/Schemas/xhtml1-frameset.xsd" />
+
+ <Import file = "Templates/WebForms/GlobalAsax-Empty.xft.xml"/>
+ <Import file = "Templates/WebForms/GlobalAsax-CodeBehind.xft.xml"/>
+ <Import file = "Templates/WebForms/MasterPage-CodeBehind.xft.xml"/>
+ <Import file = "Templates/WebForms/MasterPage-Empty.xft.xml"/>
+ <Import file = "Templates/WebForms/NestedMasterPage.xft.xml"/>
+ <Import file = "Templates/WebForms/WebContentForm.xft.xml"/>
+ <Import file = "Templates/WebForms/WebControl-Empty.xft.xml"/>
+ <Import file = "Templates/WebForms/WebForm-CodeBehind.xft.xml"/>
+ <Import file = "Templates/WebForms/NestedMasterPage-CodeBehind.xft.xml"/>
+ <Import file = "Templates/WebForms/WebControl-CodeBehind.xft.xml"/>
+ <Import file = "Templates/WebForms/WebForm-Empty.xft.xml"/>
+ <Import file = "Templates/WebForms/WebHandler-CodeBehind.xft.xml"/>
+ <Import file = "Templates/WebForms/WebService-Empty.xft.xml"/>
+ <Import file = "Templates/WebForms/WebService-CodeBehind.xft.xml"/>
+ <Import file = "Templates/WebForms/WebHandler-Empty.xft.xml"/>
+ <Import file = "Templates/WebForms/WebContentForm-CodeBehind.xft.xml"/>
+
+ <Import file = "Templates/Mvc/Controller.xft.xml"/>
+ <Import file = "Templates/Mvc/ViewPage.xft.xml"/>
+ <Import file = "Templates/Mvc/ViewContentPage.xft.xml"/>
+ <Import file = "Templates/Mvc/UserControl.xft.xml"/>
+ <Import file = "Templates/Mvc/ViewMasterPage.xft.xml" />
+ <Import file = "Templates/Mvc/GlobalAsax.xft.xml"/>
+ <Import file = "Templates/Mvc/WebConfigApp.xft.xml"/>
+ <Import file = "Templates/Mvc/WebConfigViews.xft.xml"/>
+ <Import file = "Templates/Mvc/LayoutPage.xft.xml" />
+ <Import file = "Templates/Mvc/ViewPageRazor.xft.xml" />
+ <Import file = "Templates/Mvc/PartialViewPageRazor.xft.xml" />
+
+ <Import file = "Templates/Projects/EmptyMvcProject.xpt.xml" />
+ <Import file = "Templates/Projects/EmptyProject.xpt.xml" />
+ <Import file = "Templates/Projects/MvcProject.xpt.xml" />
+ <Import file = "Templates/Projects/MvcProjectWithUnitTest.xpt.xml" />
+ <Import file = "Templates/Projects/MvcRazorProject.xpt.xml" />
+ <Import file = "Templates/Projects/MvcRazorProjectWithUnitTest.xpt.xml"/>
+ <Import file = "Templates/Projects/WebApplication.xpt.xml"/>
+
+ <Import file = "Templates/MvcCommon/_Layout.cshtml"/>
+ <Import file = "Templates/MvcCommon/_ViewStart.cshtml"/>
+ <Import file = "Templates/MvcCommon/Error.cshtml"/>
+ <Import file = "Templates/MvcCommon/HomeController.cs"/>
+ <Import file = "Templates/MvcCommon/HomeControllerTest.cs"/>
+ <Import file = "Templates/MvcCommon/Index.cshtml"/>
+ <Import file = "Templates/MvcCommon/ViewPageRazor.cshtml"/>
+
+ <Import file = "Templates/WebConfig-Application.xft.xml"/>
+ <Import file = "Templates/WebConfig-SubDir.xft.xml"/>
+
+ <Import file = "Templates/PreprocessedRazorTemplate.xft.xml" />
+
+ <Import file = "CodeTemplates/CSharp/AddView/Aspx/Empty.tt" />
+ <Import file = "CodeTemplates/CSharp/AddView/Razor/Empty.tt" />
+ <Import file = "CodeTemplates/CSharp/AddController/Empty.tt" />
+ <Import file = "CodeTemplates/CSharp/AddController/ControllerWithEmptyReadAndWriteActions.tt" />
+
+ <Import file = "Razor/Razor-templates.xml" />
+ </Runtime>
+
+ <ExtensionPoint path = "/MonoDevelop/Html/DocTypes">
+ <ExtensionNode name = "DocType" type = "MonoDevelop.AspNet.Html.DocTypeExtensionNode" />
+ </ExtensionPoint>
+
+ <ExtensionPoint path = "/MonoDevelop/Asp/CompletionBuilders">
+ <ExtensionNode name="Class" />
+ </ExtensionPoint>
+
+ <ExtensionPoint path = "/MonoDevelop/Razor/CompletionBuilders">
+ <ExtensionNode name="Class" />
+ </ExtensionPoint>
+
+ <Extension path = "/MonoDevelop/Ide/ProjectTemplates">
+ <ProjectTemplate id = "AspNet-EmptyMvcProject"
+ file = "Templates/Projects/EmptyMvcProject.xpt.xml" />
+ <ProjectTemplate id = "AspNet-EmptyProject"
+ file = "Templates/Projects/EmptyProject.xpt.xml" />
+ <ProjectTemplate id = "AspNet-MvcProject"
+ file = "Templates/Projects/MvcProject.xpt.xml" />
+ <ProjectTemplate id = "AspNet-MvcProjectWithUnitTest"
+ file = "Templates/Projects/MvcProjectWithUnitTest.xpt.xml" />
+ <ProjectTemplate id = "AspNet-MvcRazorProject"
+ file = "Templates/Projects/MvcRazorProject.xpt.xml" />
+ <ProjectTemplate id = "AspNet-MvcRazorProjectWithUnitTest"
+ file = "Templates/Projects/MvcRazorProjectWithUnitTest.xpt.xml"/>
+ <ProjectTemplate id = "AspNet-WebApplication"
+ file = "Templates/Projects/WebApplication.xpt.xml"/>
+ </Extension>
+
+ <Extension path = "/MonoDevelop/Ide/FileTemplates">
+ <FileTemplate id = "WebForm-Empty"
+ file = "Templates/WebForms/WebForm-Empty.xft.xml"/>
+ <FileTemplate id = "WebForm-CodeBehind"
+ file = "Templates/WebForms/WebForm-CodeBehind.xft.xml"/>
+
+ <FileTemplate id = "WebHandler-Empty"
+ file = "Templates/WebForms/WebHandler-Empty.xft.xml"/>
+ <FileTemplate id = "WebHandler-CodeBehind"
+ file = "Templates/WebForms/WebHandler-CodeBehind.xft.xml"/>
+
+ <FileTemplate id = "WebControl-Empty"
+ file = "Templates/WebForms/WebControl-Empty.xft.xml"/>
+ <FileTemplate id = "WebControl-CodeBehind"
+ file = "Templates/WebForms/WebControl-CodeBehind.xft.xml"/>
+
+ <FileTemplate id = "WebService-Empty"
+ file = "Templates/WebForms/WebService-Empty.xft.xml"/>
+ <FileTemplate id = "WebService-CodeBehind"
+ file = "Templates/WebForms/WebService-CodeBehind.xft.xml"/>
+
+ <FileTemplate id = "MasterPage-Empty"
+ file = "Templates/WebForms/MasterPage-Empty.xft.xml" />
+ <FileTemplate id = "MasterPage-CodeBehind"
+ file = "Templates/WebForms/MasterPage-CodeBehind.xft.xml" />
+
+ <FileTemplate id = "NestedMasterPage"
+ file = "Templates/WebForms/NestedMasterPage.xft.xml" />
+ <FileTemplate id = "NestedMasterPage-CodeBehind"
+ file = "Templates/WebForms/NestedMasterPage-CodeBehind.xft.xml" />
+
+ <FileTemplate id = "GlobalAsax-Empty"
+ file = "Templates/WebForms/GlobalAsax-Empty.xft.xml" />
+ <FileTemplate id = "GlobalAsax-CodeBehind"
+ file = "Templates/WebForms/GlobalAsax-CodeBehind.xft.xml" />
+
+ <FileTemplate id = "WebConfig-Application"
+ file = "Templates/WebConfig-Application.xft.xml" />
+ <FileTemplate id = "WebConfig-SubDir"
+ file = "Templates/WebConfig-SubDir.xft.xml" />
+
+ <FileTemplate id = "WebContentForm-CodeBehind"
+ file = "Templates/WebForms/WebContentForm-CodeBehind.xft.xml" />
+ <FileTemplate id = "WebContentForm"
+ file = "Templates/WebForms/WebContentForm.xft.xml" />
+
+ <FileTemplate id = "AspMvcController"
+ file = "Templates/Mvc/Controller.xft.xml"/>
+ <FileTemplate id = "AspMvcViewPage"
+ file = "Templates/Mvc/ViewPage.xft.xml"/>
+ <FileTemplate id = "AspMvcViewContentPage"
+ file = "Templates/Mvc/ViewContentPage.xft.xml"/>
+ <FileTemplate id = "AspMvcUserControl"
+ file = "Templates/Mvc/UserControl.xft.xml"/>
+ <FileTemplate id = "AspMvcViewMasterPage"
+ file = "Templates/Mvc/ViewMasterPage.xft.xml" />
+ <FileTemplate id = "AspMvcGlobalAsax"
+ file = "Templates/Mvc/GlobalAsax.xft.xml" />
+ <FileTemplate id = "AspMvcWebConfigApp"
+ file = "Templates/Mvc/WebConfigApp.xft.xml" />
+ <FileTemplate id = "AspMvcWebConfigViews"
+ file = "Templates/Mvc/WebConfigViews.xft.xml" />
+ <FileTemplate id = "AspMvcViewPageRazor"
+ file = "Templates/Mvc/ViewPageRazor.xft.xml" />
+ <FileTemplate id = "AspMvcLayoutPage"
+ file = "Templates/Mvc/LayoutPage.xft.xml" />
+ <FileTemplate id = "AspMvcPartialViewPageRazor"
+ file = "Templates/Mvc/PartialViewPageRazor.xft.xml" />
+ <FileTemplate id = "PreprocessedRazorTemplate"
+ file = "Templates/PreprocessedRazorTemplate.xft.xml" />
+ </Extension>
+
+ <Extension path = "/MonoDevelop/Ide/FileTemplateTypes">
+ <FileTemplateType name = "AspNetMasterContentFile" class = "MonoDevelop.AspNet.WebForms.MasterContentFileDescriptionTemplate"/>
+ </Extension>
+
+ <Extension path = "/MonoDevelop/Ide/FileFilters">
+ <FileFilter id = "AspNetWebFiles"
+ insertafter = "Xml"
+ _label = "ASP.NET Files"
+ extensions = "*.aspx,*.ashx,*.asmx,*.ascx,*.master,*.asax,*.cshtml" />
+ <FileFilter id = "Html"
+ _label = "HTML Files"
+ extensions = "*.htm,*.html"/>
+ </Extension>
+
+ <Extension path = "/MonoDevelop/ProjectModel/ProjectBindings">
+ <ProjectBinding id = "AspNetApp" class = "MonoDevelop.AspNet.Projects.AspNetAppProjectBinding" />
+ </Extension>
+
+ <Extension path = "/MonoDevelop/ProjectModel/MSBuildItemTypes">
+ <DotNetProjectSubtype
+ guid="{603C0E0B-DB56-11DC-BE95-000D561079B0}"
+ type="MonoDevelop.AspNet.Projects.AspMvc1Project"
+ useXBuild="true" />
+ <DotNetProjectSubtype
+ guid="{F85E285D-A4E0-4152-9332-AB1D724D3325}"
+ type="MonoDevelop.AspNet.Projects.AspMvc2Project"
+ useXBuild="true" />
+ <DotNetProjectSubtype
+ guid="{E53F8FEA-EAE0-44A6-8774-FFD645390401}"
+ type="MonoDevelop.AspNet.Projects.AspMvc3Project"
+ useXBuild="true" />
+ <DotNetProjectSubtype
+ guid="{E3E379DF-F4C6-4180-9B81-6769533ABE47}"
+ type="MonoDevelop.AspNet.Projects.AspMvc4Project"
+ useXBuild="true" />
+ <DotNetProjectSubtype
+ id="MonoDevelop.AspNet.Projects.AspNetAppProject"
+ guid="{349C5851-65DF-11DA-9384-00065B846F21}"
+ type="MonoDevelop.AspNet.Projects.AspNetAppProject"
+ useXBuild="true" />
+ </Extension>
+
+ <Extension path = "/MonoDevelop/TypeSystem/Parser">
+ <Parser class = "MonoDevelop.AspNet.WebForms.WebFormsParser" mimeType="application/x-aspx, application/x-ascx, application/x-master-page" />
+ <Parser class = "MonoDevelop.AspNet.Html.HtmlParser" mimeType="text/html, application/x-spark" />
+ <Parser class = "MonoDevelop.AspNet.Razor.RazorCSharpParser" mimeType="text/x-cshtml" />
+ </Extension>
+
+ <Extension path = "/MonoDevelop/ProjectModel/SerializableClasses">
+ <DataType class = "MonoDevelop.AspNet.WebForms.WebFormsToolboxNode" />
+ </Extension>
+
+ <Extension path = "/MonoDevelop/ProjectModel/Gui/ItemOptionPanels/Run">
+ <Condition id="ItemType" value="MonoDevelop.AspNet.Projects.AspNetAppProject">
+ <Section id = "XspOptions"
+ _label = "XSP Web Server"
+ class = "MonoDevelop.AspNet.Execution.XspOptionsPanel"/>
+ </Condition>
+ </Extension>
+
+ <Extension path = "/MonoDevelop/DesignerSupport/ToolboxLoaders">
+ <Class id="AspNetWebFormsToolboxLoader" class="MonoDevelop.AspNet.WebForms.WebFormsToolboxLoader"/>
+ </Extension>
+
+ <Extension path = "/MonoDevelop/DesignerSupport/ToolboxProviders">
+ <Class id="AspNetWebFormsToolboxProvider" class="MonoDevelop.AspNet.WebForms.WebFormsToolboxProvider"/>
+ </Extension>
+
+ <Extension path = "/MonoDevelop/Ide/Commands">
+ <Category _name = "ASP.NET" id = "AspNet">
+ <Command id = "MonoDevelop.AspNet.Commands.AspNetCommands.AddAspNetDirectory"
+ _label = "ASP.NET Directory"
+ type="array" />
+ <Command id = "MonoDevelop.AspNet.Commands.AspNetCommands.AddController"
+ _label = "Controller..."
+ _description = "Add an ASP.NET MVC controller" />
+ <Command id = "MonoDevelop.AspNet.Commands.AspNetCommands.AddView"
+ _label = "View..."
+ _description = "Add an ASP.NET MVC view" />
+ </Category>
+ </Extension>
+
+ <Extension path = "/MonoDevelop/Ide/Commands/TextEditor">
+ <Command id = "MonoDevelop.AspNet.Commands.AspNetCommands.GoToView"
+ _label = "Go To View"
+ defaultHandler = "MonoDevelop.AspNet.Commands.GoToViewCommandHandler"
+ description = "Go to the corresponding view file" />
+ <Command id = "MonoDevelop.AspNet.Commands.AspNetCommands.AddViewFromController"
+ _label = "Add View..."
+ defaultHandler = "MonoDevelop.AspNet.Commands.AddViewFromControllerCommandHandler"
+ description = "Add an ASP.NET MVC view" />
+ <Command id = "MonoDevelop.AspNet.Commands.AspNetCommands.GoToController"
+ _label = "Go To Controller"
+ defaultHandler = "MonoDevelop.AspNet.Commands.GoToControllerCommandHandler"
+ description = "Go to the corresponding controller file" />
+ </Extension>
+
+ <Extension path = "/MonoDevelop/Ide/ContextMenu/ProjectPad/Add">
+ <Condition id="ItemType" value="MonoDevelop.AspNet.Projects.AspNetAppProject">
+ <ItemSet id = "AspNetDirectories" _label = "ASP.NET Directory" insertafter = "MonoDevelop.Ide.Commands.ProjectCommands.NewFolder" autohide = "true">
+ <CommandItem id = "MonoDevelop.AspNet.Commands.AspNetCommands.AddAspNetDirectory" />
+ </ItemSet>
+ </Condition>
+ </Extension>
+
+ <Extension path = "/MonoDevelop/Ide/ContextMenu/ProjectPad/Add">
+ <CommandItem id = "MonoDevelop.AspNet.Commands.AspNetCommands.AddController" insertbefore="MonoDevelop.Ide.Commands.ProjectCommands.AddNewFiles" disabledVisible="false"/>
+ <CommandItem id = "MonoDevelop.AspNet.Commands.AspNetCommands.AddView" disabledVisible="false" />
+ <SeparatorItem id = "MvcAddSeparator" />
+ </Extension>
+
+ <Extension path = "/MonoDevelop/Ide/Pads/ProjectPad">
+ <NodeBuilder id="AspNetProjectNodeBuilderExtension" class = "MonoDevelop.AspNet.ProjectPad.AspNetProjectNodeBuilderExtension"/>
+ <NodeBuilder id="AspNetFolderNodeBuilderExtension" class = "MonoDevelop.AspNet.ProjectPad.AspNetFolderNodeBuilderExtension"/>
+ </Extension>
+
+ <Extension path = "/MonoDevelop/SourceEditor2/CustomModes">
+ <SyntaxMode mimeTypes="application/x-aspx" class="MonoDevelop.AspNet.WebForms.WebFormsSyntaxMode"/>
+ </Extension>
+
+ <Extension path = "/MonoDevelop/Core/MimeTypes">
+ <MimeType id="application/x-aspx" _description="ASP.NET page" icon="md-html-file-icon" isText="true">
+ <File pattern="*.aspx" />
+ </MimeType>
+ <MimeType id="application/x-ascx" _description="ASP.NET user control" icon="md-html-file-icon" isText="true">
+ <File pattern="*.ascx" />
+ </MimeType>
+ <MimeType id="application/x-asax" _description="ASP.NET global application class" icon="md-html-file-icon" isText="true">
+ <File pattern="*.asax" />
+ </MimeType>
+ <MimeType id="application/x-ashx" _description="ASP.NET handler" icon="md-html-file-icon" isText="true">
+ <File pattern="*.ashx" />
+ </MimeType>
+ <MimeType id="application/x-asmx" _description="ASP.NET web service" icon="md-html-file-icon" isText="true">
+ <File pattern="*.asmx" />
+ </MimeType>
+ <MimeType id="application/x-asix" _description="ASP.NET image generator" icon="md-html-file-icon" isText="true">
+ <File pattern="*.asix" />
+ </MimeType>
+ <MimeType id="application/x-master-page" _description="ASP.NET master page" icon="md-html-file-icon" isText="true">
+ <File pattern="*.master|*.Master" />
+ </MimeType>
+ <MimeType id="application/javascript" _description="Javascript source code" icon="md-html-file-icon" isText="true">
+ <File pattern="*.js" />
+ </MimeType>
+ <MimeType id="text/css" _description="CSS document" icon="md-html-file-icon" isText="true">
+ <File pattern="*.css" />
+ </MimeType>
+ <MimeType id="text/x-less" _description="LESS, CSS document" icon="md-html-file-icon" isText="true">
+ <File pattern="*.less" />
+ </MimeType>
+ <MimeType id="text/html" _description="HTML document" icon="md-html-file-icon" isText="true">
+ <File pattern="*.html|*.htm" />
+ </MimeType>
+ <MimeType id="application/x-spark" _description="Spark View template" icon="md-html-file-icon" isText="true"
+ baseType="text/html">
+ <File pattern="*.spark" />
+ </MimeType>
+ <MimeType id="application/typescript" _description="Typescript source code" icon="md-html-file-icon" isText="true">
+ <File pattern="*.ts" />
+ </MimeType>
+ <MimeType id="text/x-cshtml" _description="Razor template" icon="md-html-file-icon" isText="true">
+ <File pattern="*.cshtml" />
+ </MimeType>
+ </Extension>
+
+ <Extension path = "/MonoDevelop/Ide/TextEditorExtensions">
+ <Class fileExtensions=".aspx, .ascx, .master" class = "MonoDevelop.AspNet.WebForms.WebFormsEditorExtension" />
+ <Class fileExtensions=".html, .htm, .spark" class = "MonoDevelop.AspNet.Html.HtmlEditorExtension" />
+ <Class fileExtensions=".cshtml" class = "MonoDevelop.AspNet.Razor.RazorCSharpEditorExtension" />
+ </Extension>
+
+ <Extension path = "/MonoDevelop/Html/DocTypes">
+ <DocType name = "HTML 5.0"
+ fullName = "&lt;!DOCTYPE html>"
+ xsdFile = "Html/Schemas/xhtml1-transitional.xsd" />;
+ <DocType name = "XHTML 1.0 Strict"
+ fullName = "&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Strict//EN&quot;
+&quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&quot;>"
+ xsdFile = "Html/Schemas/xhtml1-strict.xsd" />
+ <DocType name = "XHTML 1.0 Transitional"
+ fullName = "&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Transitional//EN&quot;
+&quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&quot;>"
+ xsdFile = "Html/Schemas/xhtml1-transitional.xsd" />
+ <DocType name = "XHTML 1.0 Frameset"
+ fullName = "&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Frameset//EN&quot;
+&quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd&quot;>"
+ xsdFile = "Html/Schemas/xhtml1-frameset.xsd" />
+ </Extension>
+
+ <Extension path = "/MonoDevelop/Core/ExecutionHandlers">
+ <ExecutionHandler id="AspNet" class = "MonoDevelop.AspNet.Execution.AspNetExecutionHandler"/>
+ </Extension>
+
+ <Extension path = "/MonoDevelop/Ide/CompletionCharacters">
+ <Complete language="Html" commitOnSpace="True" commitChars="{}[]().,:;+-*/%&amp;|^!~=&lt;&gt;?@#'&quot;\" />
+ <Complete language="Razor" commitOnSpace="True" commitChars="{}[]().,:;+-*/%&amp;|^!~=&lt;&gt;?@#'&quot;\"/>
+ </Extension>
+
+ <Extension path = "/MonoDevelop/SourceEditor2/ContextMenu/Editor">
+ <Condition id="FileType" fileExtensions=".cs">
+ <CommandItem id = "MonoDevelop.AspNet.Commands.AspNetCommands.GoToView" insertbefore="MonoDevelop.Ide.Commands.EditCommands.Cut" />
+ <CommandItem id = "MonoDevelop.AspNet.Commands.AspNetCommands.AddViewFromController" />
+ <SeparatorItem id = "MvcSeparator1" />
+ </Condition>
+ <Condition id="FileType" fileExtensions=".cshtml,.aspx">
+ <CommandItem id = "MonoDevelop.AspNet.Commands.AspNetCommands.GoToController" insertbefore="MonoDevelop.Ide.Commands.EditCommands.Cut" />
+ <SeparatorItem id = "MvcSeparator2" />
+ </Condition>
+ </Extension>
+
+ <Extension path = "/MonoDevelop/Ide/CodeTemplates">
+ <CodeTemplate file="Razor/Razor-templates.xml" />
+ </Extension>
+
+ <Extension path = "/MonoDevelop/Ide/CodeFormatters">
+ <Formatter mimeType="text/x-cshtml" class="MonoDevelop.AspNet.Razor.RazorCSharpFormatter" />
+ </Extension>
+
+ <Extension path = "/MonoDevelop/Ide/CustomTools">
+ <!-- NOTE: we explicitly do no call this "RazorGenerator" to avoid conflicts with http://razorgenerator.codeplex.com/ -->
+ <Tool name="RazorTemplatePreprocessor" type="MonoDevelop.AspNet.Razor.Generator.RazorTemplatePreprocessor"/>
+ </Extension>
+
+ <Extension path = "/MonoDevelop/Ide/FileTemplateConditionTypes">
+ <FileTemplateConditionType name = "AspNetMvc" class = "MonoDevelop.AspNet.Projects.AspNetMvcFileTemplateCondition"/>
+ </Extension>
+</ExtensionModel>
diff --git a/main/src/addins/AspNet/Razor/Dom/RazorCodeBlock.cs b/main/src/addins/AspNet/Razor/Dom/RazorCodeBlock.cs
new file mode 100644
index 0000000000..c6928acbfd
--- /dev/null
+++ b/main/src/addins/AspNet/Razor/Dom/RazorCodeBlock.cs
@@ -0,0 +1,57 @@
+//
+// RazorCodeBlock.cs
+//
+// Author:
+// Piotr Dowgiallo <sparekd@gmail.com>
+//
+// Copyright (c) 2012 Piotr Dowgiallo
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+
+using MonoDevelop.Xml.Parser;
+using ICSharpCode.NRefactory;
+using MonoDevelop.Xml.Dom;
+
+namespace MonoDevelop.AspNet.Razor.Dom
+{
+ public class RazorCodeBlock : RazorCodeFragment
+ {
+ public RazorCodeBlock (TextLocation start) : base (start)
+ {
+ }
+
+ protected RazorCodeBlock ()
+ {
+ }
+
+ protected override XObject NewInstance ()
+ {
+ return new RazorCodeBlock ();
+ }
+
+ public override string ToString ()
+ {
+ return string.Format ("[RazorCodeBlock Location='{0}'", this.Region);
+ }
+
+ public override string FriendlyPathRepresentation {
+ get { return "@{ }"; }
+ }
+ }
+}
diff --git a/main/src/addins/AspNet/Razor/Dom/RazorCodeFragment.cs b/main/src/addins/AspNet/Razor/Dom/RazorCodeFragment.cs
new file mode 100644
index 0000000000..19ff98708b
--- /dev/null
+++ b/main/src/addins/AspNet/Razor/Dom/RazorCodeFragment.cs
@@ -0,0 +1,86 @@
+//
+// RazorCodeFragment.cs
+//
+// Author:
+// Piotr Dowgiallo <sparekd@gmail.com>
+//
+// Copyright (c) 2012 Piotr Dowgiallo
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+
+using System.Linq;
+using ICSharpCode.NRefactory;
+using Mono.TextEditor;
+using MonoDevelop.Ide;
+using MonoDevelop.Xml.Dom;
+
+namespace MonoDevelop.AspNet.Razor.Dom
+{
+ public abstract class RazorCodeFragment : XContainer
+ {
+ protected RazorCodeFragment (TextLocation start) : base (start)
+ {
+ }
+
+ protected RazorCodeFragment ()
+ {
+ }
+
+ public string Name { get; set; }
+
+ public TextLocation? FirstBracket { get; set; }
+
+ public TextDocument Document {
+ get {
+ if (IdeApp.Workbench.ActiveDocument != null && IdeApp.Workbench.ActiveDocument.Editor != null)
+ return IdeApp.Workbench.ActiveDocument.Editor.Document;
+ return null;
+ }
+ }
+
+ public bool IsEndingBracket (TextLocation bracketLocation)
+ {
+ // If document isn't entirely loaded
+ if (Document == null || Document.Lines.Count () < Region.BeginLine)
+ return false;
+
+ if (!FirstBracket.HasValue && !FindFirstBracket (bracketLocation))
+ return false;
+
+ int firstBracketOffset = Document.GetOffset (FirstBracket.Value);
+ int currentBracketOffset = Document.GetOffset (bracketLocation);
+
+ return Document.GetMatchingBracketOffset (firstBracketOffset) == currentBracketOffset;
+ }
+
+ public bool FindFirstBracket (TextLocation currentLocation)
+ {
+ if (Document.Lines.Count () < Region.BeginLine)
+ return false;
+
+ int firstBracketPosition = Document.GetTextBetween (Region.Begin, currentLocation).IndexOf ('{');
+ if (firstBracketPosition == -1)
+ return false;
+
+ int beginOffset = Document.LocationToOffset (Region.Begin);
+ FirstBracket = Document.OffsetToLocation (beginOffset + firstBracketPosition);
+ return true;
+ }
+ }
+}
diff --git a/main/src/addins/AspNet/Razor/Dom/RazorComment.cs b/main/src/addins/AspNet/Razor/Dom/RazorComment.cs
new file mode 100644
index 0000000000..1cb572a9d6
--- /dev/null
+++ b/main/src/addins/AspNet/Razor/Dom/RazorComment.cs
@@ -0,0 +1,62 @@
+//
+// RazorComment.cs
+//
+// Author:
+// Piotr Dowgiallo <sparekd@gmail.com>
+//
+// Copyright (c) 2012 Piotr Dowgiallo
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+
+using ICSharpCode.NRefactory;
+using ICSharpCode.NRefactory.TypeSystem;
+using MonoDevelop.Xml.Dom;
+
+namespace MonoDevelop.AspNet.Razor.Dom
+{
+ public class RazorComment : XNode
+ {
+ public RazorComment (DomRegion region) : base (region)
+ {
+ }
+
+ public RazorComment (TextLocation start) : base (start)
+ {
+ }
+
+ protected RazorComment ()
+ {
+ }
+
+ protected override XObject NewInstance ()
+ {
+ return new RazorComment ();
+ }
+
+ public override string ToString ()
+ {
+ return string.Format ("[RazorComment Location='{0}'", this.Region);
+ }
+
+ public override string FriendlyPathRepresentation {
+ get { return "@* *@"; }
+ }
+ }
+
+}
diff --git a/main/src/addins/AspNet/Razor/Dom/RazorDirective.cs b/main/src/addins/AspNet/Razor/Dom/RazorDirective.cs
new file mode 100644
index 0000000000..7b1755d9a9
--- /dev/null
+++ b/main/src/addins/AspNet/Razor/Dom/RazorDirective.cs
@@ -0,0 +1,58 @@
+//
+// RazorDirective.cs
+//
+// Author:
+// Piotr Dowgiallo <sparekd@gmail.com>
+//
+// Copyright (c) 2012 Piotr Dowgiallo
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+
+using ICSharpCode.NRefactory;
+using MonoDevelop.Xml.Dom;
+
+namespace MonoDevelop.AspNet.Razor.Dom
+{
+ public class RazorDirective : RazorCodeFragment
+ {
+ public RazorDirective (TextLocation start) : base (start)
+ {
+ }
+
+ protected RazorDirective ()
+ {
+ }
+
+ protected override XObject NewInstance ()
+ {
+ return new RazorDirective ();
+ }
+
+ public bool IsSimpleDirective { get; set; }
+
+ public override string ToString ()
+ {
+ return string.Format ("[RazorDirective Location='{0}'", this.Region);
+ }
+
+ public override string FriendlyPathRepresentation {
+ get { return "@" + Name; }
+ }
+ }
+}
diff --git a/main/src/addins/AspNet/Razor/Dom/RazorExplicitExpression.cs b/main/src/addins/AspNet/Razor/Dom/RazorExplicitExpression.cs
new file mode 100644
index 0000000000..15cbfc6637
--- /dev/null
+++ b/main/src/addins/AspNet/Razor/Dom/RazorExplicitExpression.cs
@@ -0,0 +1,61 @@
+//
+// RazorExplicitExpression.cs
+//
+// Author:
+// Piotr Dowgiallo <sparekd@gmail.com>
+//
+// Copyright (c) 2012 Piotr Dowgiallo
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+
+using ICSharpCode.NRefactory;
+using ICSharpCode.NRefactory.TypeSystem;
+using MonoDevelop.Xml.Dom;
+
+namespace MonoDevelop.AspNet.Razor.Dom
+{
+ public class RazorExplicitExpression : RazorExpression
+ {
+ public RazorExplicitExpression (DomRegion region) : base (region)
+ {
+ }
+
+ public RazorExplicitExpression (TextLocation start) : base (start)
+ {
+ }
+
+ protected RazorExplicitExpression ()
+ {
+ }
+
+ protected override XObject NewInstance ()
+ {
+ return new RazorExplicitExpression ();
+ }
+
+ public override string ToString ()
+ {
+ return string.Format ("[RazorExplicitExpression Location='{0}'", Region);
+ }
+
+ public override string FriendlyPathRepresentation {
+ get { return "@( )"; }
+ }
+ }
+}
diff --git a/main/src/addins/AspNet/Razor/Dom/RazorExpression.cs b/main/src/addins/AspNet/Razor/Dom/RazorExpression.cs
new file mode 100644
index 0000000000..ef1ef4af95
--- /dev/null
+++ b/main/src/addins/AspNet/Razor/Dom/RazorExpression.cs
@@ -0,0 +1,47 @@
+//
+// RazorDom.cs
+//
+// Author:
+// Piotr Dowgiallo <sparekd@gmail.com>
+//
+// Copyright (c) 2012 Piotr Dowgiallo
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+
+using ICSharpCode.NRefactory.TypeSystem;
+using ICSharpCode.NRefactory;
+using MonoDevelop.Xml.Dom;
+
+namespace MonoDevelop.AspNet.Razor.Dom
+{
+ public abstract class RazorExpression : XNode
+ {
+ protected RazorExpression (DomRegion region) : base (region)
+ {
+ }
+
+ protected RazorExpression (TextLocation start) : base (start)
+ {
+ }
+
+ protected RazorExpression ()
+ {
+ }
+ }
+}
diff --git a/main/src/addins/AspNet/Razor/Dom/RazorImplicitExpression.cs b/main/src/addins/AspNet/Razor/Dom/RazorImplicitExpression.cs
new file mode 100644
index 0000000000..f87a500d74
--- /dev/null
+++ b/main/src/addins/AspNet/Razor/Dom/RazorImplicitExpression.cs
@@ -0,0 +1,61 @@
+//
+// RazorImplicitExpression.cs
+//
+// Author:
+// Piotr Dowgiallo <sparekd@gmail.com>
+//
+// Copyright (c) 2012 Piotr Dowgiallo
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+
+using ICSharpCode.NRefactory;
+using ICSharpCode.NRefactory.TypeSystem;
+using MonoDevelop.Xml.Dom;
+
+namespace MonoDevelop.AspNet.Razor.Dom
+{
+ public class RazorImplicitExpression : RazorExpression
+ {
+ public RazorImplicitExpression (DomRegion region) : base (region)
+ {
+ }
+
+ public RazorImplicitExpression (TextLocation start) : base (start)
+ {
+ }
+
+ protected RazorImplicitExpression ()
+ {
+ }
+
+ protected override XObject NewInstance ()
+ {
+ return new RazorImplicitExpression ();
+ }
+
+ public override string ToString ()
+ {
+ return string.Format ("[RazorImplicitExpression Location='{0}'", this.Region);
+ }
+
+ public override string FriendlyPathRepresentation {
+ get { return "@"; }
+ }
+ }
+}
diff --git a/main/src/addins/AspNet/Razor/Dom/RazorStatement.cs b/main/src/addins/AspNet/Razor/Dom/RazorStatement.cs
new file mode 100644
index 0000000000..7af1bbfccf
--- /dev/null
+++ b/main/src/addins/AspNet/Razor/Dom/RazorStatement.cs
@@ -0,0 +1,57 @@
+//
+// RazorStatement.cs
+//
+// Author:
+// Piotr Dowgiallo <sparekd@gmail.com>
+//
+// Copyright (c) 2012 Piotr Dowgiallo
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+
+using ICSharpCode.NRefactory;
+using MonoDevelop.Xml.Dom;
+
+namespace MonoDevelop.AspNet.Razor.Dom
+{
+
+ public class RazorStatement : RazorCodeFragment
+ {
+ public RazorStatement (TextLocation start) : base (start)
+ {
+ }
+
+ protected RazorStatement ()
+ {
+ }
+
+ protected override XObject NewInstance ()
+ {
+ return new RazorStatement ();
+ }
+
+ public override string ToString ()
+ {
+ return string.Format ("[RazorStatement Location='{0}'", Region);
+ }
+
+ public override string FriendlyPathRepresentation {
+ get { return "@" + Name; }
+ }
+ }
+}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorEditorParserFixed/BackgroundParser.cs b/main/src/addins/AspNet/Razor/EditorParserFixed/BackgroundParser.cs
index ffaecc1d2c..368931efe7 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorEditorParserFixed/BackgroundParser.cs
+++ b/main/src/addins/AspNet/Razor/EditorParserFixed/BackgroundParser.cs
@@ -17,7 +17,7 @@ using System.Web.Razor.Utils;
using System.Web.Razor;
using System.Web.Razor.Editor;
-namespace RazorEditorParserFixed
+namespace MonoDevelop.Web.Razor.EditorParserFixed
{
internal class BackgroundParser : IDisposable
{
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorEditorParserFixed/CommonResources.Designer.cs b/main/src/addins/AspNet/Razor/EditorParserFixed/CommonResources.Designer.cs
index 27534d7ab1..1527fef53c 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorEditorParserFixed/CommonResources.Designer.cs
+++ b/main/src/addins/AspNet/Razor/EditorParserFixed/CommonResources.Designer.cs
@@ -8,7 +8,7 @@
// </auto-generated>
//------------------------------------------------------------------------------
-namespace RazorEditorParserFixed {
+namespace MonoDevelop.Web.Razor.EditorParserFixed {
using System;
using System.Linq;
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorEditorParserFixed/DisposableAction.cs b/main/src/addins/AspNet/Razor/EditorParserFixed/DisposableAction.cs
index 8c8fa7b2f8..231fc3bd43 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorEditorParserFixed/DisposableAction.cs
+++ b/main/src/addins/AspNet/Razor/EditorParserFixed/DisposableAction.cs
@@ -3,7 +3,7 @@
using System;
-namespace RazorEditorParserFixed
+namespace MonoDevelop.Web.Razor.EditorParserFixed
{
internal class DisposableAction : IDisposable
{
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorEditorParserFixed/RazorEditorParser.cs b/main/src/addins/AspNet/Razor/EditorParserFixed/RazorEditorParser.cs
index c264379ef2..bdc3002b95 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorEditorParserFixed/RazorEditorParser.cs
+++ b/main/src/addins/AspNet/Razor/EditorParserFixed/RazorEditorParser.cs
@@ -17,7 +17,7 @@ using Microsoft.Internal.Web.Utils;
using System;
using System.Web.Razor;
-namespace RazorEditorParserFixed
+namespace MonoDevelop.Web.Razor.EditorParserFixed
{
/// <summary>
/// Parser used by editors to avoid reparsing the entire document on each text change
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorEditorParserFixed/RazorEditorTrace.cs b/main/src/addins/AspNet/Razor/EditorParserFixed/RazorEditorTrace.cs
index 629ac6e005..ac95e87226 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorEditorParserFixed/RazorEditorTrace.cs
+++ b/main/src/addins/AspNet/Razor/EditorParserFixed/RazorEditorTrace.cs
@@ -12,7 +12,7 @@ using System.Threading.Tasks;
using System.Web.Razor.Resources;
using System.Web.Razor.Text;
-namespace RazorEditorParserFixed
+namespace MonoDevelop.Web.Razor.EditorParserFixed
{
internal static class RazorEditorTrace
{
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorEditorParserFixed/RazorResources.Designer.cs b/main/src/addins/AspNet/Razor/EditorParserFixed/RazorResources.Designer.cs
index a3edc5e771..69ff4f38c0 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorEditorParserFixed/RazorResources.Designer.cs
+++ b/main/src/addins/AspNet/Razor/EditorParserFixed/RazorResources.Designer.cs
@@ -8,7 +8,7 @@
// </auto-generated>
//------------------------------------------------------------------------------
-namespace RazorEditorParserFixed {
+namespace MonoDevelop.Web.Razor.EditorParserFixed {
using System;
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorGenerator/FileUtil.cs b/main/src/addins/AspNet/Razor/Generator/FileUtil.cs
index f98ee378a5..cd90db11f7 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorGenerator/FileUtil.cs
+++ b/main/src/addins/AspNet/Razor/Generator/FileUtil.cs
@@ -26,7 +26,7 @@
using System;
using System.IO;
-namespace MonoDevelop.RazorGenerator
+namespace MonoDevelop.AspNet.Razor.Generator
{
static class FileUtil
{
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorGenerator/MarkupRewriter.cs b/main/src/addins/AspNet/Razor/Generator/MarkupRewriter.cs
index b21652cd2e..4afe676141 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorGenerator/MarkupRewriter.cs
+++ b/main/src/addins/AspNet/Razor/Generator/MarkupRewriter.cs
@@ -6,7 +6,7 @@ using System.Web.Razor.Parser.SyntaxTree;
using System.Web.Razor.Parser;
using System;
-namespace MonoDevelop.RazorGenerator
+namespace MonoDevelop.AspNet.Razor.Generator
{
// based on System.Web.Razor.Parser.MarkupRewriter
// Copyright (c) Microsoft Open Technologies, Inc.
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorGenerator/PreprocessedAttributeBlockCodeGenerator.cs b/main/src/addins/AspNet/Razor/Generator/PreprocessedAttributeBlockCodeGenerator.cs
index 85505faa42..7589cf278f 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorGenerator/PreprocessedAttributeBlockCodeGenerator.cs
+++ b/main/src/addins/AspNet/Razor/Generator/PreprocessedAttributeBlockCodeGenerator.cs
@@ -28,7 +28,7 @@ using System.Web.Razor.Parser.SyntaxTree;
using System.Web.Razor.Generator;
using System.Text;
-namespace MonoDevelop.RazorGenerator
+namespace MonoDevelop.AspNet.Razor.Generator
{
// based on base implementation
// Copyright (c) Microsoft Open Technologies, Inc.
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorGenerator/PreprocessedAttributeRewriter.cs b/main/src/addins/AspNet/Razor/Generator/PreprocessedAttributeRewriter.cs
index 63cc7c7dc7..0828885e63 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorGenerator/PreprocessedAttributeRewriter.cs
+++ b/main/src/addins/AspNet/Razor/Generator/PreprocessedAttributeRewriter.cs
@@ -27,7 +27,7 @@
using System.Web.Razor.Parser.SyntaxTree;
using System.Web.Razor.Generator;
-namespace MonoDevelop.RazorGenerator
+namespace MonoDevelop.AspNet.Razor.Generator
{
class PreprocessedAttributeRewriter : MarkupRewriter
{
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorGenerator/PreprocessedCSharpRazorCodeParser.cs b/main/src/addins/AspNet/Razor/Generator/PreprocessedCSharpRazorCodeParser.cs
index b5d1a239a0..b82323703d 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorGenerator/PreprocessedCSharpRazorCodeParser.cs
+++ b/main/src/addins/AspNet/Razor/Generator/PreprocessedCSharpRazorCodeParser.cs
@@ -17,7 +17,7 @@ using System.Web.Razor.Parser;
using System.Web.Razor.Parser.SyntaxTree;
using System.Web.Razor.Text;
-namespace MonoDevelop.RazorGenerator
+namespace MonoDevelop.AspNet.Razor.Generator
{
class PreprocessedCSharpRazorCodeParser : CSharpCodeParser
{
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorGenerator/PreprocessedDynamicAttributeBlockCodeGenerator.cs b/main/src/addins/AspNet/Razor/Generator/PreprocessedDynamicAttributeBlockCodeGenerator.cs
index 78ec3c5a95..28c3e99179 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorGenerator/PreprocessedDynamicAttributeBlockCodeGenerator.cs
+++ b/main/src/addins/AspNet/Razor/Generator/PreprocessedDynamicAttributeBlockCodeGenerator.cs
@@ -29,7 +29,7 @@ using System.Web.Razor.Generator;
using System.Text;
using System.Linq;
-namespace MonoDevelop.RazorGenerator
+namespace MonoDevelop.AspNet.Razor.Generator
{
// based on base implementation
// Copyright (c) Microsoft Open Technologies, Inc.
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorGenerator/PreprocessedLiteralAttributeCodeGenerator.cs b/main/src/addins/AspNet/Razor/Generator/PreprocessedLiteralAttributeCodeGenerator.cs
index 22310dbc43..34c9849604 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorGenerator/PreprocessedLiteralAttributeCodeGenerator.cs
+++ b/main/src/addins/AspNet/Razor/Generator/PreprocessedLiteralAttributeCodeGenerator.cs
@@ -29,7 +29,7 @@ using System.Web.Razor.Text;
using System.Web.Razor.Generator;
using System.Text;
-namespace MonoDevelop.RazorGenerator
+namespace MonoDevelop.AspNet.Razor.Generator
{
// based on base implementation
// Copyright (c) Microsoft Open Technologies, Inc.
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorGenerator/PreprocessedRazorHost.cs b/main/src/addins/AspNet/Razor/Generator/PreprocessedRazorHost.cs
index ba7a8165f3..d636cf94a4 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorGenerator/PreprocessedRazorHost.cs
+++ b/main/src/addins/AspNet/Razor/Generator/PreprocessedRazorHost.cs
@@ -8,7 +8,7 @@ using System.Web.Razor.Parser;
using System.Web.Razor.Parser.SyntaxTree;
using System.Collections.Generic;
-namespace MonoDevelop.RazorGenerator
+namespace MonoDevelop.AspNet.Razor.Generator
{
class PreprocessedRazorHost : RazorEngineHost
{
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorGenerator/PreprocessedTemplateCodeTransformer.cs b/main/src/addins/AspNet/Razor/Generator/PreprocessedTemplateCodeTransformer.cs
index 252a827adf..4d85f4947e 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorGenerator/PreprocessedTemplateCodeTransformer.cs
+++ b/main/src/addins/AspNet/Razor/Generator/PreprocessedTemplateCodeTransformer.cs
@@ -12,7 +12,7 @@ using System.CodeDom;
using System.Linq;
using System;
-namespace MonoDevelop.RazorGenerator
+namespace MonoDevelop.AspNet.Razor.Generator
{
static class PreprocessedTemplateCodeTransformers
{
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorGenerator/RazorTemplatePreprocessor.cs b/main/src/addins/AspNet/Razor/Generator/RazorTemplatePreprocessor.cs
index 04529cf869..32a8a31ff2 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorGenerator/RazorTemplatePreprocessor.cs
+++ b/main/src/addins/AspNet/Razor/Generator/RazorTemplatePreprocessor.cs
@@ -31,7 +31,7 @@ using MonoDevelop.Projects;
using MonoDevelop.Core;
using MonoDevelop.TextTemplating;
-namespace MonoDevelop.RazorGenerator
+namespace MonoDevelop.AspNet.Razor.Generator
{
class RazorTemplatePreprocessor : ISingleFileCustomTool
{
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorGenerator/RazorWriterHelper.cs b/main/src/addins/AspNet/Razor/Generator/RazorWriterHelper.cs
index 5f37c5eb18..117f2696ac 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorGenerator/RazorWriterHelper.cs
+++ b/main/src/addins/AspNet/Razor/Generator/RazorWriterHelper.cs
@@ -30,7 +30,7 @@ using System.Globalization;
using System.Web.Razor.Generator;
using System.Reflection;
-namespace MonoDevelop.RazorGenerator
+namespace MonoDevelop.AspNet.Razor.Generator
{
static class RazorWriterHelper
{
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorGenerator/RewritingRazorTemplateEngine.cs b/main/src/addins/AspNet/Razor/Generator/RewritingRazorTemplateEngine.cs
index 3d50d5d244..99d80a402f 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorGenerator/RewritingRazorTemplateEngine.cs
+++ b/main/src/addins/AspNet/Razor/Generator/RewritingRazorTemplateEngine.cs
@@ -32,7 +32,7 @@ using System.Web.Razor.Text;
using System.Web.Razor.Generator;
using System.Web.Razor.Parser;
-namespace MonoDevelop.RazorGenerator
+namespace MonoDevelop.AspNet.Razor.Generator
{
class RewritingRazorTemplateEngine : RazorTemplateEngine
{
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Completion/IRazorCompletionBuilder.cs b/main/src/addins/AspNet/Razor/IRazorCompletionBuilder.cs
index d62a790399..242408e9bc 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Completion/IRazorCompletionBuilder.cs
+++ b/main/src/addins/AspNet/Razor/IRazorCompletionBuilder.cs
@@ -24,17 +24,13 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
-using System;
using System.Collections.Generic;
-using System.Linq;
-using System.Text;
using MonoDevelop.Ide.CodeCompletion;
-using ICSharpCode.NRefactory.Completion;
using MonoDevelop.Ide.TypeSystem;
using MonoDevelop.Ide.Gui;
using ICSharpCode.NRefactory.TypeSystem;
-namespace MonoDevelop.AspNet.Mvc.Completion
+namespace MonoDevelop.AspNet.Razor
{
// Based on MonoDevelop.AspNet.Gui.ILanguageCompletionBuilder
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/StateEngine/RazorCodeBlockState.cs b/main/src/addins/AspNet/Razor/Parser/RazorCodeBlockState.cs
index 774f88e044..24536720d2 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/StateEngine/RazorCodeBlockState.cs
+++ b/main/src/addins/AspNet/Razor/Parser/RazorCodeBlockState.cs
@@ -25,13 +25,14 @@
// THE SOFTWARE.
using System.Linq;
-using MonoDevelop.Xml.StateEngine;
+using MonoDevelop.Xml.Parser;
+using MonoDevelop.AspNet.Razor.Dom;
-namespace MonoDevelop.AspNet.Mvc.StateEngine
+namespace MonoDevelop.AspNet.Razor.Parser
{
public class RazorCodeBlockState : RazorCodeFragmentState
{
- public override State PushChar (char c, IParseContext context, ref string rollback)
+ public override XmlParserState PushChar (char c, IXmlParserContext context, ref string rollback)
{
if (context.CurrentStateLength == 1) {
bracketsBuilder.Clear ();
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/StateEngine/RazorCodeFragmentState.cs b/main/src/addins/AspNet/Razor/Parser/RazorCodeFragmentState.cs
index 1819f02b38..0130ce9037 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/StateEngine/RazorCodeFragmentState.cs
+++ b/main/src/addins/AspNet/Razor/Parser/RazorCodeFragmentState.cs
@@ -26,11 +26,12 @@
using System;
using System.Text;
-using MonoDevelop.Xml.StateEngine;
-using MonoDevelop.AspNet.StateEngine;
-using MonoDevelop.AspNet.Mvc.Parser;
+using MonoDevelop.Xml.Parser;
+using MonoDevelop.AspNet.Html.Parser;
+using MonoDevelop.AspNet.Razor.Dom;
+using MonoDevelop.Xml.Dom;
-namespace MonoDevelop.AspNet.Mvc.StateEngine
+namespace MonoDevelop.AspNet.Razor.Parser
{
public abstract class RazorCodeFragmentState : RazorState
{
@@ -79,7 +80,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
bracketsBuilder = new StringBuilder ();
}
- public override State PushChar (char c, IParseContext context, ref string rollback)
+ public override XmlParserState PushChar (char c, IXmlParserContext context, ref string rollback)
{
switch (context.StateTag) {
case SOLIDUS:
@@ -176,9 +177,9 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
// The simplified version is used mostly for testing. In real environment finding matching brackets
// precisely is necessary for code completion.
- public virtual State ParseOpeningBracket (char c, IParseContext context)
+ public virtual XmlParserState ParseOpeningBracket (char c, IXmlParserContext context)
{
- var rootState = RootState as RazorFreeState;
+ var rootState = RootState as RazorRootState;
if (!rootState.UseSimplifiedBracketTracker && !CorrespondingBlock.FirstBracket.HasValue)
CorrespondingBlock.FindFirstBracket (context.Location);
else if (rootState.UseSimplifiedBracketTracker)
@@ -186,10 +187,10 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
return null;
}
- public virtual State ParseClosingBracket<T> (char c, IParseContext context, State stateToReturn) where T : XNode
+ public virtual XmlParserState ParseClosingBracket<T> (char c, IXmlParserContext context, XmlParserState stateToReturn) where T : XNode
{
bool isEnding = false;
- var rootState = RootState as RazorFreeState;
+ var rootState = RootState as RazorRootState;
if (rootState.UseSimplifiedBracketTracker) {
if (bracketsBuilder.Length > 0)
bracketsBuilder.Remove (0, 1);
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/StateEngine/RazorCommentState.cs b/main/src/addins/AspNet/Razor/Parser/RazorCommentState.cs
index a6f7908293..291f253f9e 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/StateEngine/RazorCommentState.cs
+++ b/main/src/addins/AspNet/Razor/Parser/RazorCommentState.cs
@@ -24,16 +24,17 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
-using MonoDevelop.Xml.StateEngine;
+using MonoDevelop.Xml.Parser;
+using MonoDevelop.AspNet.Razor.Dom;
-namespace MonoDevelop.AspNet.Mvc.StateEngine
+namespace MonoDevelop.AspNet.Razor.Parser
{
public class RazorCommentState : XmlCommentState
{
protected const int NOMATCH = 0;
protected const int STAR = 1;
- public override State PushChar (char c, IParseContext context, ref string rollback)
+ public override XmlParserState PushChar (char c, IXmlParserContext context, ref string rollback)
{
if (context.CurrentStateLength == 1) {
context.Nodes.Push (new RazorComment (context.LocationMinus (2)));
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/StateEngine/RazorDirectiveState.cs b/main/src/addins/AspNet/Razor/Parser/RazorDirectiveState.cs
index 0eef762742..e8447ef0b7 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/StateEngine/RazorDirectiveState.cs
+++ b/main/src/addins/AspNet/Razor/Parser/RazorDirectiveState.cs
@@ -26,10 +26,11 @@
using System;
using System.Linq;
-using MonoDevelop.Xml.StateEngine;
+using MonoDevelop.Xml.Parser;
using System.Diagnostics;
+using MonoDevelop.AspNet.Razor.Dom;
-namespace MonoDevelop.AspNet.Mvc.StateEngine
+namespace MonoDevelop.AspNet.Razor.Parser
{
public class RazorDirectiveState : RazorCodeFragmentState
{
@@ -37,7 +38,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
get { return CorrespondingBlock as RazorDirective; }
}
- public override State PushChar (char c, IParseContext context, ref string rollback)
+ public override XmlParserState PushChar (char c, IXmlParserContext context, ref string rollback)
{
if (context.CurrentStateLength == 1) {
bracketsBuilder.Clear ();
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/StateEngine/RazorExpressionState.cs b/main/src/addins/AspNet/Razor/Parser/RazorExpressionState.cs
index a9cc09414e..956bdbda62 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/StateEngine/RazorExpressionState.cs
+++ b/main/src/addins/AspNet/Razor/Parser/RazorExpressionState.cs
@@ -26,9 +26,10 @@
using System;
using System.Linq;
-using MonoDevelop.Xml.StateEngine;
+using MonoDevelop.Xml.Parser;
+using MonoDevelop.AspNet.Razor.Dom;
-namespace MonoDevelop.AspNet.Mvc.StateEngine
+namespace MonoDevelop.AspNet.Razor.Parser
{
public class RazorExpressionState : RazorState
{
@@ -39,7 +40,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
static char[] allowedChars = { '.', '_', '[', ']', '"' };
- public override State PushChar (char c, IParseContext context, ref string rollback)
+ public override XmlParserState PushChar (char c, IXmlParserContext context, ref string rollback)
{
if (context.CurrentStateLength == 1) {
switch (c) {
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Parser/OutlineNode.cs b/main/src/addins/AspNet/Razor/Parser/RazorOutlineNode.cs
index 2d24bbf67e..2028da9383 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Parser/OutlineNode.cs
+++ b/main/src/addins/AspNet/Razor/Parser/RazorOutlineNode.cs
@@ -24,23 +24,19 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using ICSharpCode.NRefactory.TypeSystem;
using System.Web.Razor.Parser.SyntaxTree;
-using MonoDevelop.Xml.StateEngine;
-using MonoDevelop.AspNet.StateEngine;
+using ICSharpCode.NRefactory.TypeSystem;
+using MonoDevelop.Xml.Dom;
+using MonoDevelop.AspNet.WebForms.Dom;
-namespace MonoDevelop.AspNet.Mvc.Parser
+namespace MonoDevelop.AspNet.Razor.Parser
{
- public class OutlineNode
+ class RazorOutlineNode
{
public string Name { get; set; }
public DomRegion Location { get; set; }
- public OutlineNode (XElement el)
+ public RazorOutlineNode (XElement el)
{
Name = el.Name.FullName;
string id = el.GetId ();
@@ -52,7 +48,7 @@ namespace MonoDevelop.AspNet.Mvc.Parser
Location = el.Region;
}
- public OutlineNode (Block block)
+ public RazorOutlineNode (Block block)
{
Name = RazorUtils.GetShortName (block);
}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/StateEngine/RazorFreeState.cs b/main/src/addins/AspNet/Razor/Parser/RazorRootState.cs
index 98f2acdab0..c29274826e 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/StateEngine/RazorFreeState.cs
+++ b/main/src/addins/AspNet/Razor/Parser/RazorRootState.cs
@@ -25,12 +25,12 @@
// THE SOFTWARE.
using System;
-using MonoDevelop.Xml.StateEngine;
-using MonoDevelop.AspNet.StateEngine;
+using MonoDevelop.Xml.Parser;
+using MonoDevelop.AspNet.Html.Parser;
-namespace MonoDevelop.AspNet.Mvc.StateEngine
+namespace MonoDevelop.AspNet.Razor.Parser
{
- public class RazorFreeState : XmlFreeState
+ public class RazorRootState : XmlRootState
{
protected const int TRANSITION = MAXCONST + 1;
@@ -42,7 +42,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
public bool UseSimplifiedBracketTracker { get; set; }
char previousChar;
- public RazorFreeState ()
+ public RazorRootState ()
: this (
new HtmlTagState (),
new HtmlClosingTagState (true),
@@ -56,7 +56,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
new RazorSpeculativeState ()
) { }
- public RazorFreeState (
+ public RazorRootState (
HtmlTagState tagState,
HtmlClosingTagState closingTagState,
XmlCommentState commentState,
@@ -83,7 +83,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
UseSimplifiedBracketTracker = false;
}
- public override State PushChar (char c, IParseContext context, ref string rollback)
+ public override XmlParserState PushChar (char c, IXmlParserContext context, ref string rollback)
{
if (c == '@' && context.StateTag == FREE) {
context.StateTag = TRANSITION;
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/StateEngine/RazorSpeculativeState.cs b/main/src/addins/AspNet/Razor/Parser/RazorSpeculativeState.cs
index 729369fc4f..1af502cfbd 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/StateEngine/RazorSpeculativeState.cs
+++ b/main/src/addins/AspNet/Razor/Parser/RazorSpeculativeState.cs
@@ -25,10 +25,11 @@
// THE SOFTWARE.
using System;
-using MonoDevelop.Xml.StateEngine;
-using MonoDevelop.AspNet.Mvc.Parser;
+using MonoDevelop.Xml.Parser;
+using MonoDevelop.AspNet.Razor.Parser;
+using MonoDevelop.AspNet.Razor.Dom;
-namespace MonoDevelop.AspNet.Mvc.StateEngine
+namespace MonoDevelop.AspNet.Razor.Parser
{
public class RazorSpeculativeState : RazorState
{
@@ -41,7 +42,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
RazorDirectiveState directiveState;
RazorStatementState statementState;
- public override State PushChar (char c, IParseContext context, ref string rollback)
+ public override XmlParserState PushChar (char c, IXmlParserContext context, ref string rollback)
{
string key;
@@ -93,7 +94,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
return null;
}
- State SwitchToDirective (IParseContext context, ref string rollback)
+ XmlParserState SwitchToDirective (IXmlParserContext context, ref string rollback)
{
string key = context.KeywordBuilder.ToString ();
string name = key.Trim ();
@@ -106,7 +107,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
return EnsureSetAndAdopted<RazorDirectiveState> (ref directiveState);
}
- State SwitchToStatement (IParseContext context, ref string rollback)
+ XmlParserState SwitchToStatement (IXmlParserContext context, ref string rollback)
{
string key = context.KeywordBuilder.ToString ();
var stm = new RazorStatement (context.LocationMinus (key.Length + 2)) { Name = key.Trim () };
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/StateEngine/RazorState.cs b/main/src/addins/AspNet/Razor/Parser/RazorState.cs
index a37792c636..8e6c9c0ef0 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/StateEngine/RazorState.cs
+++ b/main/src/addins/AspNet/Razor/Parser/RazorState.cs
@@ -24,18 +24,18 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
-using MonoDevelop.Xml.StateEngine;
+using MonoDevelop.Xml.Parser;
-namespace MonoDevelop.AspNet.Mvc.StateEngine
+namespace MonoDevelop.AspNet.Razor.Parser
{
- public class RazorState : State
+ public class RazorState : XmlParserState
{
- public override State PushChar (char c, IParseContext context, ref string rollback)
+ public override XmlParserState PushChar (char c, IXmlParserContext context, ref string rollback)
{
return null;
}
- public virtual State EnsureSetAndAdopted<T> (ref T state) where T : State, new ()
+ public virtual XmlParserState EnsureSetAndAdopted<T> (ref T state) where T : XmlParserState, new ()
{
if (state == null) {
state = new T ();
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/StateEngine/RazorStatementState.cs b/main/src/addins/AspNet/Razor/Parser/RazorStatementState.cs
index 7b346a4549..5d705d71d5 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/StateEngine/RazorStatementState.cs
+++ b/main/src/addins/AspNet/Razor/Parser/RazorStatementState.cs
@@ -27,11 +27,12 @@
using System;
using System.Collections.Generic;
using System.Linq;
-using MonoDevelop.Xml.StateEngine;
+using MonoDevelop.Xml.Parser;
using System.Diagnostics;
-using MonoDevelop.AspNet.Mvc.Parser;
+using MonoDevelop.AspNet.Razor.Parser;
+using MonoDevelop.AspNet.Razor.Dom;
-namespace MonoDevelop.AspNet.Mvc.StateEngine
+namespace MonoDevelop.AspNet.Razor.Parser
{
public class RazorStatementState : RazorCodeFragmentState
{
@@ -45,7 +46,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
get { return CorrespondingBlock as RazorStatement; }
}
- public override State PushChar (char c, IParseContext context, ref string rollback)
+ public override XmlParserState PushChar (char c, IXmlParserContext context, ref string rollback)
{
if (context.CurrentStateLength == 1) {
bracketsBuilder.Clear ();
@@ -110,7 +111,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
return base.PushChar (c, context, ref rollback);
}
- State SwitchToContinuationStatement (IParseContext context, string key)
+ XmlParserState SwitchToContinuationStatement (IXmlParserContext context, string key)
{
string name = key.Trim ();
int length = key.Length;
@@ -123,7 +124,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
return EnsureSetAndAdopted<RazorStatementState> (ref statementState);
}
- public override State ParseClosingBracket<T> (char c, IParseContext context, State stateToReturn)
+ public override XmlParserState ParseClosingBracket<T> (char c, IXmlParserContext context, XmlParserState stateToReturn)
{
if (base.ParseClosingBracket<T> (c, context, stateToReturn) != null) {
if (RazorSymbols.CanBeContinued (CorrespondingBlock.Name)) {
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Parser/RazorSymbols.cs b/main/src/addins/AspNet/Razor/Parser/RazorSymbols.cs
index a825801f32..815c3bc394 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Parser/RazorSymbols.cs
+++ b/main/src/addins/AspNet/Razor/Parser/RazorSymbols.cs
@@ -29,12 +29,12 @@ using System.Collections.Generic;
using System.Linq;
using System.Text;
-namespace MonoDevelop.AspNet.Mvc.Parser
+namespace MonoDevelop.AspNet.Razor.Parser
{
- public class RazorSymbols
+ public static class RazorSymbols
{
// Single line directives
- static string[] simpleDirectives = new string[] {
+ static string[] simpleDirectives = {
"inherits",
"sessionstate",
"model",
@@ -47,7 +47,7 @@ namespace MonoDevelop.AspNet.Mvc.Parser
};
// Block directives
- static string[] complexDirectives = new string[] {
+ static string[] complexDirectives = {
"functions",
"section",
"helper",
@@ -55,7 +55,7 @@ namespace MonoDevelop.AspNet.Mvc.Parser
static IEnumerable<string> directives = complexDirectives.Concat (simpleDirectives);
- static string[] statements = new string[] {
+ static string[] statements = {
"for",
"foreach",
"while",
@@ -88,13 +88,12 @@ namespace MonoDevelop.AspNet.Mvc.Parser
public static bool CanBeStatementOrDirective(string name)
{
- if (statements.Any (s => s.StartsWith (name)))
+ if (statements.Any (s => s.StartsWith (name, StringComparison.Ordinal)))
return true;
- else
- return directives.Any (d => d.StartsWith (name));
+ return directives.Any (d => d.StartsWith (name, StringComparison.Ordinal));
}
- public static string[] continuedKeywords = new string[] {
+ static string[] continuedKeywords = {
"if", "else", "else if", "try", "catch"
};
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Parser/RazorUtils.cs b/main/src/addins/AspNet/Razor/Parser/RazorUtils.cs
index 86e39909b8..310051afd3 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Parser/RazorUtils.cs
+++ b/main/src/addins/AspNet/Razor/Parser/RazorUtils.cs
@@ -27,7 +27,7 @@
using System.Linq;
using System.Web.Razor.Parser.SyntaxTree;
-namespace MonoDevelop.AspNet.Mvc.Parser
+namespace MonoDevelop.AspNet.Razor.Parser
{
public static class RazorUtils
{
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/StateEngine/StateEngineService.cs b/main/src/addins/AspNet/Razor/Parser/StateEngineService.cs
index a8ec7b5e7b..92f0e8f315 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/StateEngine/StateEngineService.cs
+++ b/main/src/addins/AspNet/Razor/Parser/StateEngineService.cs
@@ -24,21 +24,22 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
-using MonoDevelop.Xml.StateEngine;
-using ICSharpCode.NRefactory;
using System.Diagnostics;
+using ICSharpCode.NRefactory;
using MonoDevelop.Core;
+using MonoDevelop.Xml.Dom;
+using MonoDevelop.Xml.Parser;
-namespace MonoDevelop.AspNet.Mvc.StateEngine
+namespace MonoDevelop.AspNet.Razor.Parser
{
public static class StateEngineService
{
- public static void EndCodeFragment<T> (IParseContext context, int minus = 0) where T : XNode
+ public static void EndCodeFragment<T> (IXmlParserContext context, int minus = 0) where T : XNode
{
EndCodeFragment<T> (context, context.LocationMinus (minus));
}
- public static void EndCodeFragment<T> (IParseContext context, TextLocation loc) where T : XNode
+ public static void EndCodeFragment<T> (IXmlParserContext context, TextLocation loc) where T : XNode
{
var top = context.Nodes.Pop ();
var node = top as T;
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Razor-templates.xml b/main/src/addins/AspNet/Razor/Razor-templates.xml
index e7b2a4e42b..e7b2a4e42b 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Razor-templates.xml
+++ b/main/src/addins/AspNet/Razor/Razor-templates.xml
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Gui/RazorCSharpEditorExtension.cs b/main/src/addins/AspNet/Razor/RazorCSharpEditorExtension.cs
index f2d6b553ab..841e383edd 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Gui/RazorCSharpEditorExtension.cs
+++ b/main/src/addins/AspNet/Razor/RazorCSharpEditorExtension.cs
@@ -27,24 +27,24 @@
using System;
using System.Collections.Generic;
using System.Linq;
-using MonoDevelop.AspNet.Gui;
-using MonoDevelop.Ide.TypeSystem;
-using MonoDevelop.AspNet.Mvc.Parser;
-using ICSharpCode.NRefactory.TypeSystem;
-using Mono.TextEditor;
+using System.Text.RegularExpressions;
+using System.Web.Razor.Generator;
using System.Web.Razor.Parser.SyntaxTree;
using ICSharpCode.NRefactory;
-using MonoDevelop.Xml.StateEngine;
-using MonoDevelop.AspNet.Mvc.StateEngine;
-using MonoDevelop.Ide.CodeCompletion;
-using MonoDevelop.AspNet.Mvc.Completion;
using ICSharpCode.NRefactory.Completion;
-using MonoDevelop.Ide.Gui;
-using System.Web.Razor.Generator;
-using System.Text.RegularExpressions;
+using ICSharpCode.NRefactory.TypeSystem;
+using Mono.TextEditor;
using MonoDevelop.Core;
+using MonoDevelop.Ide.CodeCompletion;
+using MonoDevelop.Ide.Gui;
+using MonoDevelop.Ide.TypeSystem;
+using MonoDevelop.Xml.Dom;
+using MonoDevelop.Xml.Parser;
+using MonoDevelop.AspNet.Html;
+using MonoDevelop.AspNet.Razor.Dom;
+using MonoDevelop.AspNet.Razor.Parser;
-namespace MonoDevelop.AspNet.Mvc.Gui
+namespace MonoDevelop.AspNet.Razor
{
public class RazorCSharpEditorExtension : BaseHtmlEditorExtension
{
@@ -68,9 +68,9 @@ namespace MonoDevelop.AspNet.Mvc.Gui
get { return razorDocument.PageInfo; }
}
- protected override RootState CreateRootState ()
+ protected override XmlRootState CreateRootState ()
{
- return new RazorFreeState ();
+ return new RazorRootState ();
}
public override string CompletionLanguage {
@@ -163,7 +163,7 @@ namespace MonoDevelop.AspNet.Mvc.Gui
void CreateDocType ()
{
- DocType = new MonoDevelop.Xml.StateEngine.XDocType (TextLocation.Empty);
+ DocType = new XDocType (TextLocation.Empty);
var matches = DocTypeRegex.Match (razorDocument.PageInfo.DocType);
if (matches.Success) {
DocType.PublicFpi = matches.Groups ["fpi"].Value;
@@ -583,7 +583,7 @@ namespace MonoDevelop.AspNet.Mvc.Gui
protected override void OutlineSelectionChanged (object selection)
{
- SelectNode ((OutlineNode)selection);
+ SelectNode ((RazorOutlineNode)selection);
}
void BuildTreeChildren (Gtk.TreeStore store, Gtk.TreeIter parent, XContainer p, IList<Block> blocks)
@@ -599,7 +599,7 @@ namespace MonoDevelop.AspNet.Mvc.Gui
&& n.Start.AbsoluteIndex <= doc.GetOffset (endLoc));
foreach (var block in blocksBetween) {
- var outlineNode = new OutlineNode (block) {
+ var outlineNode = new RazorOutlineNode (block) {
Location = new DomRegion (doc.OffsetToLocation (block.Start.AbsoluteIndex),
doc.OffsetToLocation (block.Start.AbsoluteIndex + block.Length))
};
@@ -613,9 +613,9 @@ namespace MonoDevelop.AspNet.Mvc.Gui
Gtk.TreeIter childIter;
if (!parent.Equals (Gtk.TreeIter.Zero))
- childIter = store.AppendValues (parent, new OutlineNode(el));
+ childIter = store.AppendValues (parent, new RazorOutlineNode(el));
else
- childIter = store.AppendValues (new OutlineNode(el));
+ childIter = store.AppendValues (new RazorOutlineNode(el));
BuildTreeChildren (store, childIter, el, blocks);
}
@@ -624,11 +624,11 @@ namespace MonoDevelop.AspNet.Mvc.Gui
void OutlineTreeDataFunc (Gtk.TreeViewColumn column, Gtk.CellRenderer cell, Gtk.TreeModel model, Gtk.TreeIter iter)
{
Gtk.CellRendererText txtRenderer = (Gtk.CellRendererText)cell;
- OutlineNode n = (OutlineNode)model.GetValue (iter, 0);
+ RazorOutlineNode n = (RazorOutlineNode)model.GetValue (iter, 0);
txtRenderer.Text = n.Name;
}
- void SelectNode (OutlineNode n)
+ void SelectNode (RazorOutlineNode n)
{
EditorSelect (n.Location);
}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Formatting/RazorCSharpFormatter.cs b/main/src/addins/AspNet/Razor/RazorCSharpFormatter.cs
index 7154e82a7d..560408db69 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Formatting/RazorCSharpFormatter.cs
+++ b/main/src/addins/AspNet/Razor/RazorCSharpFormatter.cs
@@ -24,25 +24,23 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
-using System;
using System.Collections.Generic;
-using System.Linq;
-using System.Text;
using MonoDevelop.Ide.CodeFormatting;
+using MonoDevelop.Projects.Policies;
-namespace MonoDevelop.AspNet.Mvc.Formatting
+namespace MonoDevelop.AspNet.Razor
{
public class RazorCSharpFormatter : AbstractAdvancedFormatter
{
public override bool SupportsOnTheFlyFormatting { get { return true; } }
public override bool SupportsCorrectingIndent { get { return true; } }
- public override void CorrectIndenting (Projects.Policies.PolicyContainer policyParent,
+ public override void CorrectIndenting (PolicyContainer policyParent,
IEnumerable<string> mimeTypeChain, Mono.TextEditor.TextEditorData data, int line)
{
}
- public override string FormatText (Projects.Policies.PolicyContainer policyParent,
+ public override string FormatText (PolicyContainer policyParent,
IEnumerable<string> mimeTypeChain, string input, int startOffset, int endOffset)
{
return null;
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Parser/RazorCSharpParsedDocument.cs b/main/src/addins/AspNet/Razor/RazorCSharpParsedDocument.cs
index 6ae0a7c9a2..3cac236d41 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Parser/RazorCSharpParsedDocument.cs
+++ b/main/src/addins/AspNet/Razor/RazorCSharpParsedDocument.cs
@@ -24,13 +24,10 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
-using System;
using System.Collections.Generic;
-using System.Linq;
-using System.Text;
using MonoDevelop.Ide.TypeSystem;
-namespace MonoDevelop.AspNet.Mvc.Parser
+namespace MonoDevelop.AspNet.Razor
{
public class RazorCSharpParsedDocument : DefaultParsedDocument
{
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Parser/RazorCSharpParser.cs b/main/src/addins/AspNet/Razor/RazorCSharpParser.cs
index c0bb8449b0..43998cd918 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Parser/RazorCSharpParser.cs
+++ b/main/src/addins/AspNet/Razor/RazorCSharpParser.cs
@@ -26,41 +26,45 @@
using System;
using System.Collections.Generic;
+using System.Configuration;
+using System.IO;
using System.Linq;
using System.Text;
-using MonoDevelop.Ide.TypeSystem;
-using System.Web.Razor;
-using System.Web.Mvc.Razor;
using System.Threading;
-using System.Web.Razor.Text;
-using MonoDevelop.Ide;
-using Mono.TextEditor;
-using MonoDevelop.Ide.Gui;
-using ICSharpCode.NRefactory.TypeSystem;
+using System.Web.Configuration;
+using System.Web.Mvc.Razor;
+using System.Web.Razor;
using System.Web.Razor.Parser;
using System.Web.Razor.Parser.SyntaxTree;
-using System.IO;
-using MonoDevelop.Core;
-using MonoDevelop.AspNet.Parser;
-using System.Web.Configuration;
-using System.Web.WebPages.Razor.Configuration;
+using System.Web.Razor.Text;
using System.Web.WebPages.Razor;
-using System.Configuration;
-using MonoDevelop.Projects;
-using MonoDevelop.AspNet.StateEngine;
+using System.Web.WebPages.Razor.Configuration;
+
+using ICSharpCode.NRefactory.TypeSystem;
using ICSharpCode.NRefactory.TypeSystem.Implementation;
-namespace MonoDevelop.AspNet.Mvc.Parser
+using Mono.TextEditor;
+
+using MonoDevelop.Core;
+using MonoDevelop.Ide;
+using MonoDevelop.Ide.Gui;
+using MonoDevelop.Ide.TypeSystem;
+using MonoDevelop.Projects;
+using MonoDevelop.AspNet.Projects;
+using MonoDevelop.AspNet.WebForms.Parser;
+using MonoDevelop.AspNet.Razor.Parser;
+
+namespace MonoDevelop.AspNet.Razor
{
public class RazorCSharpParser : TypeSystemParser
{
- RazorEditorParserFixed.RazorEditorParser editorParser;
+ MonoDevelop.Web.Razor.EditorParserFixed.RazorEditorParser editorParser;
DocumentParseCompleteEventArgs capturedArgs;
AutoResetEvent parseComplete;
ChangeInfo lastChange;
string lastParsedFile;
TextDocument currentDocument;
- AspMvcProject aspProject;
+ AspNetAppProject aspProject;
DotNetProject project;
IList<TextDocument> openDocuments;
@@ -78,7 +82,7 @@ namespace MonoDevelop.AspNet.Mvc.Parser
};
}
- public override ParsedDocument Parse (bool storeAst, string fileName, System.IO.TextReader content, Projects.Project project = null)
+ public override ParsedDocument Parse (bool storeAst, string fileName, System.IO.TextReader content, Project project = null)
{
currentDocument = openDocuments.FirstOrDefault (d => d != null && d.FileName == fileName);
// We need document and project to be loaded to correctly initialize Razor Host.
@@ -86,7 +90,7 @@ namespace MonoDevelop.AspNet.Mvc.Parser
if (currentDocument == null && !TryAddDocument (fileName))
return new RazorCSharpParsedDocument (fileName, new RazorCSharpPageInfo ());
- this.aspProject = project as AspMvcProject;
+ this.aspProject = project as AspNetAppProject;
EnsureParserInitializedFor (fileName);
@@ -109,7 +113,7 @@ namespace MonoDevelop.AspNet.Mvc.Parser
RazorHostKind kind = RazorHostKind.WebPage;
if (editorParser.Host is WebCodeRazorHost) {
kind = RazorHostKind.WebCode;
- } else if (editorParser.Host is MonoDevelop.RazorGenerator.PreprocessedRazorHost) {
+ } else if (editorParser.Host is MonoDevelop.AspNet.Razor.Generator.PreprocessedRazorHost) {
kind = RazorHostKind.Template;
}
@@ -171,7 +175,7 @@ namespace MonoDevelop.AspNet.Mvc.Parser
void CreateParserFor (string fileName)
{
- editorParser = new RazorEditorParserFixed.RazorEditorParser (CreateRazorHost (fileName), fileName);
+ editorParser = new MonoDevelop.Web.Razor.EditorParserFixed.RazorEditorParser (CreateRazorHost (fileName), fileName);
parseComplete = new AutoResetEvent (false);
editorParser.DocumentParseComplete += (sender, args) =>
@@ -188,7 +192,7 @@ namespace MonoDevelop.AspNet.Mvc.Parser
if (project != null) {
var projectFile = project.GetProjectFile (fileName);
if (projectFile != null && projectFile.Generator == "RazorTemplatePreprocessor") {
- return new MonoDevelop.RazorGenerator.PreprocessedRazorHost (fileName) {
+ return new MonoDevelop.AspNet.Razor.Generator.PreprocessedRazorHost (fileName) {
DesignTimeMode = true,
EnableLinePragmas = false,
};
@@ -268,7 +272,7 @@ namespace MonoDevelop.AspNet.Mvc.Parser
}
}
- Xml.StateEngine.XDocument htmlParsedDocument;
+ MonoDevelop.Xml.Dom.XDocument htmlParsedDocument;
IList<Comment> comments;
void ParseHtmlDocument (List<Error> errors)
@@ -307,7 +311,7 @@ namespace MonoDevelop.AspNet.Mvc.Parser
editorParser.CurrentParseTree.Accept (new CallbackVisitor (action));
- var parser = new Xml.StateEngine.Parser (new AspNetFreeState (), true);
+ var parser = new MonoDevelop.Xml.Parser.XmlParser (new WebFormsRootState (), true);
try {
parser.Parse (new StringReader (sb.ToString ()));
@@ -330,7 +334,7 @@ namespace MonoDevelop.AspNet.Mvc.Parser
void GetHtmlFoldingRegions (List<FoldingRegion> foldingRegions)
{
if (htmlParsedDocument != null) {
- var d = new AspNetParsedDocument (null, WebSubtype.Html, null, htmlParsedDocument);
+ var d = new MonoDevelop.AspNet.WebForms.WebFormsParsedDocument (null, WebSubtype.Html, null, htmlParsedDocument);
foldingRegions.AddRange (d.Foldings);
}
}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Completion/RazorCompletion.cs b/main/src/addins/AspNet/Razor/RazorCompletion.cs
index 24cf74a958..0fc246cb4c 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Completion/RazorCompletion.cs
+++ b/main/src/addins/AspNet/Razor/RazorCompletion.cs
@@ -24,15 +24,10 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
using MonoDevelop.Ide.CodeCompletion;
using MonoDevelop.Core;
-using MonoDevelop.AspNet.Mvc.Parser;
-namespace MonoDevelop.AspNet.Mvc.Completion
+namespace MonoDevelop.AspNet.Razor
{
// Directives and statements present in C# are left out to avoid duplication
static class RazorCompletion
@@ -68,7 +63,7 @@ namespace MonoDevelop.AspNet.Mvc.Completion
}
}
- private static void AddRazorTemplates (CompletionDataList list, RazorHostKind kind)
+ static void AddRazorTemplates (CompletionDataList list, RazorHostKind kind)
{
string icon = "md-template";
list.Add ("inherits", icon, "Template for inherits directive");
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Parser/RazorPageInfo.cs b/main/src/addins/AspNet/Razor/RazorPageInfo.cs
index 73086429be..53f1c80d2e 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Parser/RazorPageInfo.cs
+++ b/main/src/addins/AspNet/Razor/RazorPageInfo.cs
@@ -25,12 +25,13 @@
// THE SOFTWARE.
using System.Collections.Generic;
+using System.Web.Razor;
+using System.Web.Razor.Parser.SyntaxTree;
using ICSharpCode.NRefactory.TypeSystem;
using MonoDevelop.Ide.TypeSystem;
-using System.Web.Razor.Parser.SyntaxTree;
-using System.Web.Razor;
+using MonoDevelop.Xml.Dom;
-namespace MonoDevelop.AspNet.Mvc.Parser
+namespace MonoDevelop.AspNet.Razor
{
public class RazorPageInfo
{
@@ -39,7 +40,7 @@ namespace MonoDevelop.AspNet.Mvc.Parser
public IEnumerable<Comment> Comments { get; set; }
public GeneratorResults GeneratorResults { get; set; }
public Block RazorRoot { get { return GeneratorResults.Document; } }
- public MonoDevelop.Xml.StateEngine.XDocument HtmlRoot { get; set; }
+ public XDocument HtmlRoot { get; set; }
public IEnumerable<Span> Spans { get; set; }
public string DocType { get; set; }
public RazorHostKind HostKind { get; set; }
@@ -47,7 +48,7 @@ namespace MonoDevelop.AspNet.Mvc.Parser
public RazorPageInfo ()
{
// TODO: extract doctype from view or layout page
- DocType = "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">";
+ DocType = "<!DOCTYPE html>";
}
}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorSyntaxMode.cs b/main/src/addins/AspNet/Razor/RazorSyntaxMode.cs
index 6301cc3e32..1a07191a9e 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/RazorSyntaxMode.cs
+++ b/main/src/addins/AspNet/Razor/RazorSyntaxMode.cs
@@ -36,12 +36,12 @@ using System.Web.Razor.Tokenizer;
using System.Web.Razor.Tokenizer.Symbols;
using System.Web.Razor.Parser;
using System.Web.Mvc.Razor;
-using MonoDevelop.AspNet.Mvc.Parser;
+using MonoDevelop.AspNet.Razor.Parser;
using MonoDevelop.Ide;
using RazorSpan = System.Web.Razor.Parser.SyntaxTree.Span;
using MonoDevelop.Ide.Gui;
-namespace MonoDevelop.AspNet.Mvc
+namespace MonoDevelop.AspNet.Razor
{
public class RazorSyntaxMode : SyntaxMode, IDisposable
{
diff --git a/main/src/addins/AspNet/Templates/Mvc/Controller.xft.xml b/main/src/addins/AspNet/Templates/Mvc/Controller.xft.xml
new file mode 100644
index 0000000000..0b86a9e795
--- /dev/null
+++ b/main/src/addins/AspNet/Templates/Mvc/Controller.xft.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0"?>
+<Template originator="Michael Hutchinson"
+ created="2009/02/17"
+ lastModified="2009/02/17">
+
+ <!-- Template Header -->
+ <TemplateConfiguration>
+ <_Name>ASP.NET MVC Controller</_Name>
+ <Icon>md-html-file-icon</Icon>
+ <_Category>ASP.NET MVC</_Category>
+ <LanguageName>C#</LanguageName>
+ <ProjectType>AspNetApp</ProjectType>
+ <_Description>Creates an ASP.NET MVC Controller.</_Description>
+ </TemplateConfiguration>
+
+ <Conditions>
+ <AspNetMvc />
+ </Conditions>
+
+ <!-- Template Content -->
+ <TemplateFiles>
+ <File name="${Name}.cshtml">
+<![CDATA[using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Web;
+using System.Web.Mvc;
+using System.Web.Mvc.Ajax;
+
+namespace ${Namespace}.Controllers
+{
+ public class ${EscapedIdentifier} : Controller
+ {
+ }
+}
+]]>
+ </File>
+ </TemplateFiles>
+</Template>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/GlobalAsaxMvc3.xft.xml b/main/src/addins/AspNet/Templates/Mvc/GlobalAsax.xft.xml
index 72cc6be92f..666cbdd11b 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/GlobalAsaxMvc3.xft.xml
+++ b/main/src/addins/AspNet/Templates/Mvc/GlobalAsax.xft.xml
@@ -1,68 +1,68 @@
-<?xml version="1.0"?>
-<Template Originator="Piotr Dowgiallo"
- Created="2012/05/16"
- LastModified="2012/05/16">
-
- <!-- Template Header -->
- <TemplateConfiguration>
- <_Name>ASP.NET MVC 3 Global.asax</_Name>
- <_Category>ASP.NET MVC</_Category>
- <Icon>md-html-file-icon</Icon>
- <LanguageName>C#</LanguageName>
- <ProjectType>AspNetMvc</ProjectType>
- <DefaultFilename IsFixed="True">Global.asax</DefaultFilename>
- <_Description>Creates an ASP.NET MVC 3 Global.asax file.</_Description>
- </TemplateConfiguration>
-
- <Conditions>
- <ParentProject PermittedCreationPaths="" ExcludedFiles="/Global.asax" />
- </Conditions>
-
- <!-- Template Content -->
- <TemplateFiles>
- <AspNetFile name="Global.asax">
- <FileText>
-<![CDATA[<%@ Application Inherits="${Namespace}.MvcApplication" %>]]>
- </FileText>
- </AspNetFile>
- <File name="Global.asax.cs" DependsOn="Global.asax" >
-<![CDATA[
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Web;
-using System.Web.Mvc;
-using System.Web.Routing;
-
-namespace ${Namespace}
-{
- public class MvcApplication : System.Web.HttpApplication
- {
- public static void RegisterRoutes(RouteCollection routes)
- {
- routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
-
- routes.MapRoute(
- "Default",
- "{controller}/{action}/{id}",
- new { controller = "Home", action = "Index", id = "" }
- );
-
- }
-
- public static void RegisterGlobalFilters(GlobalFilterCollection filters)
- {
- filters.Add(new HandleErrorAttribute());
- }
-
- protected void Application_Start()
- {
- AreaRegistration.RegisterAllAreas();
- RegisterGlobalFilters(GlobalFilters.Filters);
- RegisterRoutes(RouteTable.Routes);
- }
- }
-}]]>
- </File>
- </TemplateFiles>
-</Template>
+<?xml version="1.0"?>
+<Template Originator="Piotr Dowgiallo"
+ Created="2012/05/16"
+ LastModified="2012/05/16">
+
+ <!-- Template Header -->
+ <TemplateConfiguration>
+ <_Name>ASP.NET MVC Global.asax</_Name>
+ <_Category>ASP.NET MVC</_Category>
+ <Icon>md-html-file-icon</Icon>
+ <LanguageName>C#</LanguageName>
+ <ProjectType>AspNetApp</ProjectType>
+ <DefaultFilename IsFixed="True">Global.asax</DefaultFilename>
+ <_Description>Creates an ASP.NET MVC Global.asax file.</_Description>
+ </TemplateConfiguration>
+
+ <Conditions>
+ <ParentProject PermittedCreationPaths="" ExcludedFiles="/Global.asax" />
+ <AspNetMvc />
+ </Conditions>
+
+ <!-- Template Content -->
+ <TemplateFiles>
+ <File name="Global.asax">
+<![CDATA[<%@ Application Inherits="${Namespace}.MvcApplication" %>
+]]>
+ </File>
+ <File name="Global.asax.cs" DependsOn="Global.asax" >
+<![CDATA[
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Web;
+using System.Web.Mvc;
+using System.Web.Routing;
+
+namespace ${Namespace}
+{
+ public class MvcApplication : System.Web.HttpApplication
+ {
+ public static void RegisterRoutes(RouteCollection routes)
+ {
+ routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
+
+ routes.MapRoute(
+ "Default",
+ "{controller}/{action}/{id}",
+ new { controller = "Home", action = "Index", id = "" }
+ );
+
+ }
+
+ public static void RegisterGlobalFilters(GlobalFilterCollection filters)
+ {
+ filters.Add(new HandleErrorAttribute());
+ }
+
+ protected void Application_Start()
+ {
+ AreaRegistration.RegisterAllAreas();
+ RegisterGlobalFilters(GlobalFilters.Filters);
+ RegisterRoutes(RouteTable.Routes);
+ }
+ }
+}]]>
+ </File>
+ </TemplateFiles>
+</Template>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/LayoutPage.xft.xml b/main/src/addins/AspNet/Templates/Mvc/LayoutPage.xft.xml
index af2531c42f..e1f9de4447 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/LayoutPage.xft.xml
+++ b/main/src/addins/AspNet/Templates/Mvc/LayoutPage.xft.xml
@@ -8,13 +8,17 @@
<_Name>ASP.NET MVC Layout Page (Razor)</_Name>
<Icon>md-html-file-icon</Icon>
<_Category>ASP.NET MVC</_Category>
- <LanguageName>*</LanguageName>
- <ProjectType>AspNetMvc</ProjectType>
+ <LanguageName>C#</LanguageName>
+ <ProjectType>AspNetApp</ProjectType>
<_Description>Creates an MVC Razor Layout page.</_Description>
</TemplateConfiguration>
+ <Conditions>
+ <AspNetMvc razor = "true" />
+ </Conditions>
+
<!-- Template Content -->
<TemplateFiles>
- <File name="${Name}.cshtml" src="Common/_Layout.cshtml" />
+ <File name="${Name}.cshtml" src="../MvcCommon/_Layout.cshtml" />
</TemplateFiles>
</Template>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/PartialViewPageRazor.xft.xml b/main/src/addins/AspNet/Templates/Mvc/PartialViewPageRazor.xft.xml
index 2e13b3448b..53a45900c6 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/PartialViewPageRazor.xft.xml
+++ b/main/src/addins/AspNet/Templates/Mvc/PartialViewPageRazor.xft.xml
@@ -8,11 +8,15 @@
<_Name>ASP.NET MVC Partial View Page (Razor)</_Name>
<Icon>md-html-file-icon</Icon>
<_Category>ASP.NET MVC</_Category>
- <LanguageName>*</LanguageName>
- <ProjectType>AspNetMvc</ProjectType>
+ <LanguageName>C#</LanguageName>
+ <ProjectType>AspNetApp</ProjectType>
<_Description>Creates an MVC Razor Partial View page.</_Description>
</TemplateConfiguration>
+ <Conditions>
+ <AspNetMvc razor = "true" />
+ </Conditions>
+
<!-- Template Content -->
<TemplateFiles>
<File name="${Name}.cshtml" />
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/UserControl.xft.xml b/main/src/addins/AspNet/Templates/Mvc/UserControl.xft.xml
index 500f7fd97e..aa83a81f14 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/UserControl.xft.xml
+++ b/main/src/addins/AspNet/Templates/Mvc/UserControl.xft.xml
@@ -8,19 +8,21 @@
<_Name>ASP.NET MVC View User Control</_Name>
<Icon>md-html-file-icon</Icon>
<_Category>ASP.NET MVC</_Category>
- <LanguageName>*</LanguageName>
- <ProjectType>AspNetMvc</ProjectType>
+ <LanguageName>C#</LanguageName>
+ <ProjectType>AspNetApp</ProjectType>
<_Description>Creates an ASP.NET MVC User Control.</_Description>
</TemplateConfiguration>
+
+ <Conditions>
+ <AspNetMvc />
+ </Conditions>
<!-- Template Content -->
<TemplateFiles>
- <AspNetFile name="${Name}.ascx">
- <FileText>
- <![CDATA[<%@ Control Language="${AspNetLanguage}" Inherits="System.Web.Mvc.ViewUserControl" %>
-
- ]]>
- </FileText>
- </AspNetFile>
+ <File name="${Name}.ascx">
+<![CDATA[<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl" %>
+
+]]>
+ </File>
</TemplateFiles>
</Template>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/ViewContentPage.xft.xml b/main/src/addins/AspNet/Templates/Mvc/ViewContentPage.xft.xml
index ede305cf8a..4240c01a8c 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/ViewContentPage.xft.xml
+++ b/main/src/addins/AspNet/Templates/Mvc/ViewContentPage.xft.xml
@@ -8,16 +8,20 @@
<_Name>ASP.NET MVC View Content</_Name>
<Icon>md-html-file-icon</Icon>
<_Category>ASP.NET MVC</_Category>
- <LanguageName>*</LanguageName>
- <ProjectType>AspNetMvc</ProjectType>
+ <LanguageName>C#</LanguageName>
+ <ProjectType>AspNetApp</ProjectType>
<_Description>Creates an ASP.NET MVC View Content page.</_Description>
</TemplateConfiguration>
+
+ <Conditions>
+ <AspNetMvc />
+ </Conditions>
<!-- Template Content -->
<TemplateFiles>
<AspNetMasterContentFile name="${Name}.aspx" DefaultExtension=".aspx">
<FileText>
- <![CDATA[<%@ Page Title="" Language="${AspNetLanguage}" Inherits="System.Web.Mvc.ViewPage" MasterPageFile="${AspNetMaster}" %>
+ <![CDATA[<%@ Page Title="" Language="C#" Inherits="System.Web.Mvc.ViewPage" MasterPageFile="${AspNetMaster}" %>
${AspNetMasterContent}
]]>
</FileText>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/ViewMasterPage.xft.xml b/main/src/addins/AspNet/Templates/Mvc/ViewMasterPage.xft.xml
index f7d32398c9..6b37db3e46 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/ViewMasterPage.xft.xml
+++ b/main/src/addins/AspNet/Templates/Mvc/ViewMasterPage.xft.xml
@@ -8,18 +8,21 @@
<_Name>ASP.NET MVC Master Page</_Name>
<Icon>md-html-file-icon</Icon>
<_Category>ASP.NET MVC</_Category>
- <LanguageName>*</LanguageName>
- <ProjectType>AspNetMvc</ProjectType>
+ <LanguageName>C#</LanguageName>
+ <ProjectType>AspNetApp</ProjectType>
<_Description>Creates an ASP.NET MVC Master Page.</_Description>
</TemplateConfiguration>
+
+ <Conditions>
+ <AspNetMvc />
+ </Conditions>
<!-- Template Content -->
<TemplateFiles>
- <AspNetFile name="${Name}.master">
- <FileText>
- <![CDATA[<%@ Master Language="${AspNetLanguage}" Inherits="System.Web.Mvc.ViewMasterPage" %>
-${Doctype}
-<html xmlns="http://www.w3.org/1999/xhtml">
+ <File name="${Name}.master">
+ <![CDATA[<%@ Master Language="C#" Inherits="System.Web.Mvc.ViewMasterPage" %>
+<!DOCTYPE html>
+<html>
<head runat="server">
<asp:ContentPlaceHolder ID="head" runat="server">
<title></title>
@@ -32,7 +35,6 @@ ${Doctype}
</body>
</html>
]]>
- </FileText>
- </AspNetFile>
+ </File>
</TemplateFiles>
</Template>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/ViewPage.xft.xml b/main/src/addins/AspNet/Templates/Mvc/ViewPage.xft.xml
index 3dd1ebca4f..2426bc8b4c 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/ViewPage.xft.xml
+++ b/main/src/addins/AspNet/Templates/Mvc/ViewPage.xft.xml
@@ -8,18 +8,21 @@
<_Name>ASP.NET MVC View Page</_Name>
<Icon>md-html-file-icon</Icon>
<_Category>ASP.NET MVC</_Category>
- <LanguageName>*</LanguageName>
- <ProjectType>AspNetMvc</ProjectType>
+ <LanguageName>C#</LanguageName>
+ <ProjectType>AspNetApp</ProjectType>
<_Description>Creates an MVC View page.</_Description>
</TemplateConfiguration>
+
+ <Conditions>
+ <AspNetMvc />
+ </Conditions>
<!-- Template Content -->
<TemplateFiles>
- <AspNetFile name="${Name}.aspx">
- <FileText>
- <![CDATA[<%@ Page Language="${AspNetLanguage}" Inherits="System.Web.Mvc.ViewPage" %>
-${Doctype}
-<html xmlns="http://www.w3.org/1999/xhtml">
+ <File name="${Name}.aspx">
+ <![CDATA[<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage" %>
+<!DOCTYPE html>
+<html>
<head runat="server">
<title></title>
</head>
@@ -28,8 +31,8 @@ ${Doctype}
</div>
</body>
-</html>]]>
- </FileText>
- </AspNetFile>
+</html>
+]]>
+ </File>
</TemplateFiles>
</Template>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/ViewPageRazor.xft.xml b/main/src/addins/AspNet/Templates/Mvc/ViewPageRazor.xft.xml
index 3ccd83652f..7d347c26b1 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/ViewPageRazor.xft.xml
+++ b/main/src/addins/AspNet/Templates/Mvc/ViewPageRazor.xft.xml
@@ -8,14 +8,18 @@
<_Name>ASP.NET MVC View Page (Razor)</_Name>
<Icon>md-html-file-icon</Icon>
<_Category>ASP.NET MVC</_Category>
- <LanguageName>*</LanguageName>
- <ProjectType>AspNetMvc</ProjectType>
+ <LanguageName>C#</LanguageName>
+ <ProjectType>AspNetApp</ProjectType>
<_Description>Creates an MVC Razor View page.</_Description>
</TemplateConfiguration>
+ <Conditions>
+ <AspNetMvc razor = "true" />
+ </Conditions>
+
<!-- Template Content -->
<TemplateFiles>
- <File name="${Name}.cshtml" src="Common/ViewPageRazor.cshtml" />
+ <File name="${Name}.cshtml" src="../MvcCommon/ViewPageRazor.cshtml" />
</TemplateFiles>
</Template>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/WebConfigAppMvc3.xft.xml b/main/src/addins/AspNet/Templates/Mvc/WebConfigApp.xft.xml
index 9af8e817bc..6b3ab82bfa 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/WebConfigAppMvc3.xft.xml
+++ b/main/src/addins/AspNet/Templates/Mvc/WebConfigApp.xft.xml
@@ -1,151 +1,151 @@
-<?xml version="1.0"?>
-<Template
- Originator="Piotr Dowgiallo"
- Created="2012/05/16"
- LastModified="2012/05/16">
-
- <!-- Template Header -->
- <TemplateConfiguration>
- <_Name>ASP.NET MVC 3 Application Configuration</_Name>
- <_Category>ASP.NET MVC</_Category>
- <Icon>md-html-file-icon</Icon>
- <LanguageName>*</LanguageName>
- <ProjectType>AspNetMvc</ProjectType>
- <DefaultFilename IsFixed="True">Web.config</DefaultFilename>
- <_Description>Creates an ASP.NET MVC 3 Web.config file for an application.</_Description>
- </TemplateConfiguration>
-
- <Conditions>
- <ParentProject PermittedCreationPaths="" ExcludedFiles="Web.config" RequireProject="True"/>
- </Conditions>
-
- <!-- Template Content -->
- <TemplateFiles>
- <AspNetFile name="Web.config">
- <FileText>
-<![CDATA[<?xml version="1.0" ?>
-<!--
-Web.config file for ${ProjectName}.
-
-The settings that can be used in this file are documented at
-http://www.mono-project.com/Config_system.web and
-http://msdn2.microsoft.com/en-us/library/b5ysx397.aspx
--->
-<configuration>
- <configSections>
- <sectionGroup name="system.web.extensions" type="System.Web.Configuration.SystemWebExtensionsSectionGroup, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
- <sectionGroup name="scripting" type="System.Web.Configuration.ScriptingSectionGroup, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
- <section name="scriptResourceHandler" type="System.Web.Configuration.ScriptingScriptResourceHandlerSection, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>
- <sectionGroup name="webServices" type="System.Web.Configuration.ScriptingWebServicesSectionGroup, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
- <section name="jsonSerialization" type="System.Web.Configuration.ScriptingJsonSerializationSection, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="Everywhere" />
- <section name="profileService" type="System.Web.Configuration.ScriptingProfileServiceSection, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication" />
- <section name="authenticationService" type="System.Web.Configuration.ScriptingAuthenticationServiceSection, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication" />
- <section name="roleService" type="System.Web.Configuration.ScriptingRoleServiceSection, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication" />
- </sectionGroup>
- </sectionGroup>
- </sectionGroup>
- </configSections>
- <system.web>
- <!--
- Set compilation debug="true" to insert debugging
- symbols into the compiled page. Because this
- affects performance, set this value to true only
- during development.
- -->
- <compilation defaultLanguage="${AspNetLanguage}" debug="false">
- <assemblies>
- <add assembly="System.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
- <add assembly="System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
- <add assembly="System.Web.Abstractions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
- <add assembly="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
- <add assembly="System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
- <add assembly="System.Web.Helpers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
- <add assembly="System.Web.WebPages, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
- <add assembly="System.Web.DynamicData, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
- <add assembly="System.Xml.Linq, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
- <add assembly="System.Data.Linq, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
- <add assembly="Microsoft.CSharp, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- </assemblies>
- </compilation>
-
- <customErrors mode="RemoteOnly">
- </customErrors>
- <pages>
- <controls>
- <add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
- <add tagPrefix="asp" namespace="System.Web.UI.WebControls" assembly="System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
- </controls>
-
- <namespaces>
- <add namespace="System.Web.Mvc"/>
- <add namespace="System.Web.Mvc.Ajax"/>
- <add namespace="System.Web.Mvc.Html"/>
- <add namespace="System.Web.Routing"/>
- <add namespace="System.Web.Helpers" />
- <add namespace="System.Web.WebPages"/>
- <add namespace="System.Linq"/>
- <add namespace="System.Collections.Generic"/>
- </namespaces>
- </pages>
-
- <authorization>
- <allow users="*" />
- </authorization>
-
- <httpHandlers>
- <remove verb="*" path="*.asmx"/>
- <add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
- <add verb="*" path="*_AppService.axd" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
- <add verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" validate="false"/>
- <add verb="*" path="*.mvc" validate="false" type="System.Web.Mvc.MvcHttpHandler, System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
- </httpHandlers>
-
- <httpModules>
- <add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
- <add name="UrlRoutingModule" type="System.Web.Routing.UrlRoutingModule, System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
- </httpModules>
-
- <trace
- enabled="false"
- localOnly="true"
- pageOutput="false"
- requestLimit="10"
- traceMode="SortByTime"
- />
-
- <globalization
- requestEncoding="utf-8"
- responseEncoding="utf-8"
- />
-
- </system.web>
-
- <system.codedom>
- <compilers>
- <compiler language="c#;cs;csharp" extension=".cs" warningLevel="4"
- type="Microsoft.CSharp.CSharpCodeProvider, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <providerOption name="CompilerVersion" value="v4.0"/>
- <providerOption name="WarnAsError" value="false"/>
- </compiler>
- <compiler language="vb;vbs;visualbasic;vbscript" extension=".vb" warningLevel="4"
- type="Microsoft.VisualBasic.VBCodeProvider, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <providerOption name="CompilerVersion" value="v4.0"/>
- <providerOption name="OptionInfer" value="true"/>
- <providerOption name="WarnAsError" value="false"/>
- </compiler>
- </compilers>
- </system.codedom>
-
- <system.web.extensions/>
-
- <appSettings>
- <add key="webpages:Version" value="1.0.0.0"/>
- <add key="ClientValidationEnabled" value="true"/>
- <add key="UnobtrusiveJavaScriptEnabled" value="true"/>
- </appSettings>
-</configuration>]]>
- </FileText>
- </AspNetFile>
- </TemplateFiles>
-</Template>
-
+<?xml version="1.0"?>
+<Template
+ Originator="Piotr Dowgiallo"
+ Created="2012/05/16"
+ LastModified="2012/05/16">
+
+ <!-- Template Header -->
+ <TemplateConfiguration>
+ <_Name>ASP.NET MVC Application Configuration</_Name>
+ <_Category>ASP.NET MVC</_Category>
+ <Icon>md-html-file-icon</Icon>
+ <LanguageName>C#</LanguageName>
+ <ProjectType>AspNetApp</ProjectType>
+ <DefaultFilename IsFixed="True">Web.config</DefaultFilename>
+ <_Description>Creates an ASP.NET MVC Web.config file for an application.</_Description>
+ </TemplateConfiguration>
+
+ <Conditions>
+ <ParentProject PermittedCreationPaths="" ExcludedFiles="Web.config" RequireProject="True"/>
+ <AspNetMvc />
+ </Conditions>
+
+ <!-- Template Content -->
+ <TemplateFiles>
+ <File name="Web.config">
+<![CDATA[<?xml version="1.0" ?>
+<!--
+Web.config file for ${ProjectName}.
+
+The settings that can be used in this file are documented at
+http://www.mono-project.com/Config_system.web and
+http://msdn2.microsoft.com/en-us/library/b5ysx397.aspx
+-->
+<configuration>
+ <configSections>
+ <sectionGroup name="system.web.extensions" type="System.Web.Configuration.SystemWebExtensionsSectionGroup, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
+ <sectionGroup name="scripting" type="System.Web.Configuration.ScriptingSectionGroup, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
+ <section name="scriptResourceHandler" type="System.Web.Configuration.ScriptingScriptResourceHandlerSection, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication"/>
+ <sectionGroup name="webServices" type="System.Web.Configuration.ScriptingWebServicesSectionGroup, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
+ <section name="jsonSerialization" type="System.Web.Configuration.ScriptingJsonSerializationSection, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="Everywhere" />
+ <section name="profileService" type="System.Web.Configuration.ScriptingProfileServiceSection, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication" />
+ <section name="authenticationService" type="System.Web.Configuration.ScriptingAuthenticationServiceSection, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication" />
+ <section name="roleService" type="System.Web.Configuration.ScriptingRoleServiceSection, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication" />
+ </sectionGroup>
+ </sectionGroup>
+ </sectionGroup>
+ </configSections>
+ <system.web>
+ <!--
+ Set compilation debug="true" to insert debugging
+ symbols into the compiled page. Because this
+ affects performance, set this value to true only
+ during development.
+ -->
+ <compilation defaultLanguage="C#" debug="false">
+ <assemblies>
+ <add assembly="System.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
+ <add assembly="System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
+ <add assembly="System.Web.Abstractions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
+ <add assembly="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
+ <add assembly="System.Web.Mvc, Version=5.1.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
+ <add assembly="System.Web.Helpers, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
+ <add assembly="System.Web.WebPages, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
+ <add assembly="System.Web.DynamicData, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
+ <add assembly="System.Xml.Linq, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
+ <add assembly="System.Data.Linq, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
+ <add assembly="Microsoft.CSharp, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
+ </assemblies>
+ </compilation>
+
+ <customErrors mode="RemoteOnly">
+ </customErrors>
+ <pages>
+ <controls>
+ <add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
+ <add tagPrefix="asp" namespace="System.Web.UI.WebControls" assembly="System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
+ </controls>
+
+ <namespaces>
+ <add namespace="System.Web.Mvc"/>
+ <add namespace="System.Web.Mvc.Ajax"/>
+ <add namespace="System.Web.Mvc.Html"/>
+ <add namespace="System.Web.Routing"/>
+ <add namespace="System.Web.Helpers" />
+ <add namespace="System.Web.WebPages"/>
+ <add namespace="System.Linq"/>
+ <add namespace="System.Collections.Generic"/>
+ </namespaces>
+ </pages>
+
+ <authorization>
+ <allow users="*" />
+ </authorization>
+
+ <httpHandlers>
+ <remove verb="*" path="*.asmx"/>
+ <add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
+ <add verb="*" path="*_AppService.axd" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
+ <add verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" validate="false"/>
+ <add verb="*" path="*.mvc" validate="false" type="System.Web.Mvc.MvcHttpHandler, System.Web.Mvc, Version=5.1.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
+ </httpHandlers>
+
+ <httpModules>
+ <add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
+ <add name="UrlRoutingModule" type="System.Web.Routing.UrlRoutingModule, System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
+ </httpModules>
+
+ <trace
+ enabled="false"
+ localOnly="true"
+ pageOutput="false"
+ requestLimit="10"
+ traceMode="SortByTime"
+ />
+
+ <globalization
+ requestEncoding="utf-8"
+ responseEncoding="utf-8"
+ />
+
+ </system.web>
+
+ <system.codedom>
+ <compilers>
+ <compiler language="c#;cs;csharp" extension=".cs" warningLevel="4"
+ type="Microsoft.CSharp.CSharpCodeProvider, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <providerOption name="CompilerVersion" value="v4.0"/>
+ <providerOption name="WarnAsError" value="false"/>
+ </compiler>
+ <compiler language="vb;vbs;visualbasic;vbscript" extension=".vb" warningLevel="4"
+ type="Microsoft.VisualBasic.VBCodeProvider, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <providerOption name="CompilerVersion" value="v4.0"/>
+ <providerOption name="OptionInfer" value="true"/>
+ <providerOption name="WarnAsError" value="false"/>
+ </compiler>
+ </compilers>
+ </system.codedom>
+
+ <system.web.extensions/>
+
+ <appSettings>
+ <add key="webpages:Version" value="3.0.0.0"/>
+ <add key="ClientValidationEnabled" value="true"/>
+ <add key="UnobtrusiveJavaScriptEnabled" value="true"/>
+ </appSettings>
+</configuration>
+]]>
+ </File>
+ </TemplateFiles>
+</Template>
+
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/WebConfigViewsMvc3.xft.xml b/main/src/addins/AspNet/Templates/Mvc/WebConfigViews.xft.xml
index 70b96b5795..0c9c3df724 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/WebConfigViewsMvc3.xft.xml
+++ b/main/src/addins/AspNet/Templates/Mvc/WebConfigViews.xft.xml
@@ -1,79 +1,80 @@
-<?xml version="1.0"?>
-<Template
- Originator="Piotr Dowgiallo"
- Created="2012/05/16"
- LastModified="2012/05/16">
-
- <!-- Template Header -->
- <TemplateConfiguration>
- <_Name>ASP.NET MVC 3 Views Configuration</_Name>
- <_Category>ASP.NET MVC</_Category>
- <Icon>md-html-file-icon</Icon>
- <LanguageName>*</LanguageName>
- <ProjectType>AspNetMvc</ProjectType>
- <DefaultFilename IsFixed="True">Web.config</DefaultFilename>
- <_Description>Creates an ASP.NET MVC 3 Web.config file for the Views directory.</_Description>
- </TemplateConfiguration>
-
- <Conditions>
- <ParentProject PermittedCreationPaths="/Views" ExcludedFiles="Web.config" />
- </Conditions>
-
- <!-- Template Content -->
- <TemplateFiles>
- <File name="Web.config">
-<![CDATA[<?xml version="1.0"?>
-<configuration>
- <configSections>
- <sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
- <section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
- <section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
- </sectionGroup>
- </configSections>
-
- <system.web>
- <httpHandlers>
- <add path="*" verb="*" type="System.Web.HttpNotFoundHandler"/>
- </httpHandlers>
-
- <!--
- Enabling request validation in view pages would cause validation to occur
- after the input has already been processed by the controller. By default
- MVC performs request validation before a controller processes the input.
- To change this behavior apply the ValidateInputAttribute to a
- controller or action.
- -->
- <pages validateRequest="false"
- pageParserFilterType="System.Web.Mvc.ViewTypeParserFilter, System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"
- pageBaseType="System.Web.Mvc.ViewPage, System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"
- userControlBaseType="System.Web.Mvc.ViewUserControl, System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
- <controls>
- <add assembly="System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" namespace="System.Web.Mvc" tagPrefix="mvc" />
- </controls>
- </pages>
- </system.web>
-
- <system.webServer>
- <validation validateIntegratedModeConfiguration="false"/>
- <handlers>
- <remove name="BlockViewHandler"/>
- <add name="BlockViewHandler" path="*" verb="*" preCondition="integratedMode" type="System.Web.HttpNotFoundHandler"/>
- </handlers>
- </system.webServer>
-
- <system.web.webPages.razor>
- <host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
- <pages pageBaseType="System.Web.Mvc.WebViewPage">
- <namespaces>
- <add namespace="System.Web.Mvc" />
- <add namespace="System.Web.Mvc.Ajax" />
- <add namespace="System.Web.Mvc.Html" />
- <add namespace="System.Web.Routing" />
- </namespaces>
- </pages>
- </system.web.webPages.razor>
-
-</configuration>]]>
- </File>
- </TemplateFiles>
+<?xml version="1.0"?>
+<Template
+ Originator="Piotr Dowgiallo"
+ Created="2012/05/16"
+ LastModified="2012/05/16">
+
+ <!-- Template Header -->
+ <TemplateConfiguration>
+ <_Name>ASP.NET MVC Views Configuration</_Name>
+ <_Category>ASP.NET MVC</_Category>
+ <Icon>md-html-file-icon</Icon>
+ <LanguageName>C#</LanguageName>
+ <ProjectType>AspNetApp</ProjectType>
+ <DefaultFilename IsFixed="True">Web.config</DefaultFilename>
+ <_Description>Creates an ASP.NET MVC Web.config file for the Views directory.</_Description>
+ </TemplateConfiguration>
+
+ <Conditions>
+ <ParentProject PermittedCreationPaths="/Views" ExcludedFiles="Web.config" />
+ <AspNetMvc razor = "true" />
+ </Conditions>
+
+ <!-- Template Content -->
+ <TemplateFiles>
+ <File name="Web.config">
+<![CDATA[<?xml version="1.0"?>
+<configuration>
+ <configSections>
+ <sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
+ <section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
+ <section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
+ </sectionGroup>
+ </configSections>
+
+ <system.web>
+ <httpHandlers>
+ <add path="*" verb="*" type="System.Web.HttpNotFoundHandler"/>
+ </httpHandlers>
+
+ <!--
+ Enabling request validation in view pages would cause validation to occur
+ after the input has already been processed by the controller. By default
+ MVC performs request validation before a controller processes the input.
+ To change this behavior apply the ValidateInputAttribute to a
+ controller or action.
+ -->
+ <pages validateRequest="false"
+ pageParserFilterType="System.Web.Mvc.ViewTypeParserFilter, System.Web.Mvc, Version=5.1.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"
+ pageBaseType="System.Web.Mvc.ViewPage, System.Web.Mvc, Version=5.1.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"
+ userControlBaseType="System.Web.Mvc.ViewUserControl, System.Web.Mvc, Version=5.1.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
+ <controls>
+ <add assembly="System.Web.Mvc, Version=5.1.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" namespace="System.Web.Mvc" tagPrefix="mvc" />
+ </controls>
+ </pages>
+ </system.web>
+
+ <system.webServer>
+ <validation validateIntegratedModeConfiguration="false"/>
+ <handlers>
+ <remove name="BlockViewHandler"/>
+ <add name="BlockViewHandler" path="*" verb="*" preCondition="integratedMode" type="System.Web.HttpNotFoundHandler"/>
+ </handlers>
+ </system.webServer>
+
+ <system.web.webPages.razor>
+ <host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=5.1.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
+ <pages pageBaseType="System.Web.Mvc.WebViewPage">
+ <namespaces>
+ <add namespace="System.Web.Mvc" />
+ <add namespace="System.Web.Mvc.Ajax" />
+ <add namespace="System.Web.Mvc.Html" />
+ <add namespace="System.Web.Routing" />
+ </namespaces>
+ </pages>
+ </system.web.webPages.razor>
+
+</configuration>]]>
+ </File>
+ </TemplateFiles>
</Template> \ No newline at end of file
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/Common/Error.cshtml b/main/src/addins/AspNet/Templates/MvcCommon/Error.cshtml
index c02f534fac..c02f534fac 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/Common/Error.cshtml
+++ b/main/src/addins/AspNet/Templates/MvcCommon/Error.cshtml
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/Common/HomeController.cs b/main/src/addins/AspNet/Templates/MvcCommon/HomeController.cs
index 0d4e1a6b35..b49dd751d3 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/Common/HomeController.cs
+++ b/main/src/addins/AspNet/Templates/MvcCommon/HomeController.cs
@@ -11,7 +11,12 @@ namespace ${Namespace}.Controllers
{
public ActionResult Index ()
{
- ViewData["Message"] = "Welcome to ASP.NET MVC on Mono!";
+ var mvcName = typeof(Controller).Assembly.GetName ();
+ var isMono = Type.GetType ("Mono.Runtime") != null;
+
+ ViewData ["Version"] = mvcName.Version.Major;
+ ViewData ["Runtime"] = isMono? "Mono" : ".NET";
+
return View ();
}
}
diff --git a/main/src/addins/AspNet/Templates/MvcCommon/HomeControllerTest.cs b/main/src/addins/AspNet/Templates/MvcCommon/HomeControllerTest.cs
new file mode 100644
index 0000000000..e23e7486e1
--- /dev/null
+++ b/main/src/addins/AspNet/Templates/MvcCommon/HomeControllerTest.cs
@@ -0,0 +1,35 @@
+using NUnit.Framework;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Web.Mvc;
+using ${SolutionName};
+using ${SolutionName}.Controllers;
+
+namespace ${Namespace}
+{
+ [TestFixture]
+ public class ${Name}
+ {
+ [Test]
+ public void Index ()
+ {
+ // Arrange
+ var controller = new HomeController ();
+
+ // Act
+ var result = (ViewResult) controller.Index ();
+
+ var mvcName = typeof(Controller).Assembly.GetName ();
+ var isMono = Type.GetType ("Mono.Runtime") != null;
+
+ var expectedVersion = mvcName.Version.Major;
+ var expectedRuntime = isMono? "Mono" : ".NET";
+
+ // Assert
+ Assert.AreEqual (expectedVersion, result.ViewData ["Version"]);
+ Assert.AreEqual (expectedRuntime, result.ViewData ["Runtime"]);
+ }
+ }
+} \ No newline at end of file
diff --git a/main/src/addins/AspNet/Templates/MvcCommon/Index.cshtml b/main/src/addins/AspNet/Templates/MvcCommon/Index.cshtml
new file mode 100644
index 0000000000..815b8986dc
--- /dev/null
+++ b/main/src/addins/AspNet/Templates/MvcCommon/Index.cshtml
@@ -0,0 +1 @@
+<h2>Welcome to ASP.NET MVC @ViewData["Version"] on @ViewData["Runtime"]!</h2>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/Common/ViewPageRazor.cshtml b/main/src/addins/AspNet/Templates/MvcCommon/ViewPageRazor.cshtml
index 3b3e97a009..3b3e97a009 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/Common/ViewPageRazor.cshtml
+++ b/main/src/addins/AspNet/Templates/MvcCommon/ViewPageRazor.cshtml
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/Common/_Layout.cshtml b/main/src/addins/AspNet/Templates/MvcCommon/_Layout.cshtml
index 547f680145..547f680145 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/Common/_Layout.cshtml
+++ b/main/src/addins/AspNet/Templates/MvcCommon/_Layout.cshtml
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/Common/_ViewStart.cshtml b/main/src/addins/AspNet/Templates/MvcCommon/_ViewStart.cshtml
index 9c30ccf2ac..9c30ccf2ac 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/Common/_ViewStart.cshtml
+++ b/main/src/addins/AspNet/Templates/MvcCommon/_ViewStart.cshtml
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/PreprocessedRazorTemplate.xft.xml b/main/src/addins/AspNet/Templates/PreprocessedRazorTemplate.xft.xml
index f52b6f085a..f52b6f085a 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/PreprocessedRazorTemplate.xft.xml
+++ b/main/src/addins/AspNet/Templates/PreprocessedRazorTemplate.xft.xml
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/EmptyProject.xpt.xml b/main/src/addins/AspNet/Templates/Projects/EmptyMvcProject.xpt.xml
index ac686d8723..7d31cf26f0 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/EmptyProject.xpt.xml
+++ b/main/src/addins/AspNet/Templates/Projects/EmptyMvcProject.xpt.xml
@@ -5,11 +5,11 @@
<!-- Template Header -->
<TemplateConfiguration>
- <_Name>Empty ASP.NET MVC 2 Project</_Name>
+ <_Name>Empty ASP.NET MVC Project</_Name>
<_Category>C#/ASP.NET</_Category>
<Icon>md-project-web</Icon>
<LanguageName>C#</LanguageName>
- <_Description>Creates an empty ASP.NET MVC 2 Web Project.</_Description>
+ <_Description>Creates an empty ASP.NET MVC Web Project.</_Description>
</TemplateConfiguration>
<!-- Actions -->
@@ -22,8 +22,8 @@
<StartupProject>${ProjectName}</StartupProject>
</Options>
- <Project name = "${ProjectName}" directory = "." type = "AspNetMvc2">
- <Options TargetFrameworkVersion = "4.0" />
+ <Project name = "${ProjectName}" directory = "." type = "AspNetApp">
+ <Options TargetFrameworkVersion = "4.5" />
<References>
<Reference type="Package" refto="System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<Reference type="Package" refto="System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
@@ -33,11 +33,15 @@
<Reference type="Package" refto="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
<Reference type="Package" refto="System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
<Reference type="Package" refto="System.Web.Abstractions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
- <Reference type="Package" refto="System.Web.Mvc, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
<Reference type="Package" refto="System.Web.DynamicData, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
<Reference type="Package" refto="System.ComponentModel.DataAnnotations, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
<Reference type="Package" refto="System.Xml.Linq" />
+ <Reference type="Package" refto="System.Core" />
+ <Reference type="Package" refto="Microsoft.CSharp, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
</References>
+ <Packages>
+ <Package Id="Microsoft.AspNet.Mvc" Version="5.1.2"/>
+ </Packages>
<Files>
<Directory name="Content" />
<Directory name="Controllers" />
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebApplication-Empty.xpt.xml b/main/src/addins/AspNet/Templates/Projects/EmptyProject.xpt.xml
index f1befb17f6..3112571b5f 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebApplication-Empty.xpt.xml
+++ b/main/src/addins/AspNet/Templates/Projects/EmptyProject.xpt.xml
@@ -5,10 +5,10 @@
<!-- Template Header -->
<TemplateConfiguration>
- <_Name>Empty Web Application</_Name>
- <_Category>ASP.NET</_Category>
+ <_Name>Empty ASP.NET Project</_Name>
+ <_Category>C#/ASP.NET</_Category>
<Icon>md-project-web</Icon>
- <LanguageName>C#,VBNet</LanguageName>
+ <LanguageName>C#</LanguageName>
<_Description>Creates an empty ASP.NET Web Application project.</_Description>
</TemplateConfiguration>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/ProjectMvc3Razor.xpt.xml b/main/src/addins/AspNet/Templates/Projects/MvcProject.xpt.xml
index b4da04a76a..2d922b5fa3 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/ProjectMvc3Razor.xpt.xml
+++ b/main/src/addins/AspNet/Templates/Projects/MvcProject.xpt.xml
@@ -1,69 +1,91 @@
-<?xml version="1.0"?>
-<Template originator="Piotr Dowgiallo"
- created="2012/06/04"
- lastModified="2012/06/04">
-
- <!-- Template Header -->
- <TemplateConfiguration>
- <_Name>ASP.NET MVC 3 Project (Razor)</_Name>
- <_Category>C#/ASP.NET</_Category>
- <Icon>md-project-web</Icon>
- <LanguageName>C#</LanguageName>
- <_Description>Creates an ASP.NET MVC 3 Web Project with Razor Views.</_Description>
- </TemplateConfiguration>
-
-
- <!-- Actions -->
- <Actions>
- <Open filename = "Controllers/HomeController.cs"/>
- </Actions>
-
- <!-- Template Content -->
- <Combine name = "${ProjectName}" directory = ".">
- <Options>
- <StartupProject>${ProjectName}</StartupProject>
- </Options>
-
- <Project name = "${ProjectName}" directory = "." type = "AspNetMvc3">
- <Options TargetFrameworkVersion = "4.0" />
- <References>
- <Reference type="Package" refto="System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
- <Reference type="Package" refto="System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <Reference type="Package" refto="System.Xml, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
- <Reference type="Package" refto="System.Core" />
- <Reference type="Package" refto="System.Web.Services, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <Reference type="Package" refto="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
- <Reference type="Package" refto="System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
- <Reference type="Package" refto="System.Web.Abstractions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
- <Reference type="Package" refto="System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
- <Reference type="Package" refto="System.Web.WebPages, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
- <Reference type="Package" refto="System.Web.Helpers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
- <Reference type="Package" refto="System.Web.DynamicData, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
- <Reference type="Package" refto="System.ComponentModel.DataAnnotations, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
- <Reference type="Package" refto="System.Xml.Linq" />
- <Reference type="Package" refto="Microsoft.CSharp, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- </References>
- <Files>
- <Directory name="Content" />
- <Directory name="Controllers">
- <File name="HomeController.cs" src="Common/HomeController.cs" />
- </Directory>
- <Directory name="Models" />
- <Directory name="Scripts" />
- <Directory name="Views">
- <FileTemplateReference TemplateID="AspMvc3WebConfigViews" name="Web.config" SuppressAutoOpen="true" />
- <Directory name="Home">
- <File name="Index.cshtml" src="Common/Index.cshtml" />
- </Directory>
- <Directory name="Shared">
- <File name="_Layout.cshtml" src="Common/_Layout.cshtml" />
- <File name="Error.cshtml" src="Common/Error.cshtml" />
- </Directory>
- <File name="_ViewStart.cshtml" src="Common/_ViewStart.cshtml" />
- </Directory>
- <FileTemplateReference TemplateID="AspMvc3WebConfigApp" name="Web.config" SuppressAutoOpen="true" />
- <FileTemplateReference TemplateID="AspMvc3GlobalAsax" name="Global.asax" SuppressAutoOpen="true" />
- </Files>
- </Project>
- </Combine>
-</Template>
+<?xml version="1.0"?>
+<Template originator="Piotr Dowgiallo"
+ created="2012/05/16"
+ lastModified="2012/05/16">
+
+ <!-- Template Header -->
+ <TemplateConfiguration>
+ <_Name>ASP.NET MVC Project</_Name>
+ <_Category>C#/ASP.NET</_Category>
+ <Icon>md-project-web</Icon>
+ <LanguageName>C#</LanguageName>
+ <_Description>Creates an ASP.NET MVC Web Project.</_Description>
+ </TemplateConfiguration>
+
+
+ <!-- Actions -->
+ <Actions>
+ <Open filename = "Controllers/HomeController.cs"/>
+ </Actions>
+
+ <!-- Template Content -->
+ <Combine name = "${ProjectName}" directory = ".">
+ <Options>
+ <StartupProject>${ProjectName}</StartupProject>
+ </Options>
+
+ <Project name = "${ProjectName}" directory = "." type = "AspNetApp">
+ <Options TargetFrameworkVersion = "4.5" />
+ <References>
+ <Reference type="Package" refto="System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
+ <Reference type="Package" refto="System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
+ <Reference type="Package" refto="System.Xml, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
+ <Reference type="Package" refto="System.Core" />
+ <Reference type="Package" refto="System.Web.Services, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
+ <Reference type="Package" refto="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
+ <Reference type="Package" refto="System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
+ <Reference type="Package" refto="System.Web.Abstractions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
+ <Reference type="Package" refto="System.Web.DynamicData, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
+ <Reference type="Package" refto="System.ComponentModel.DataAnnotations, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
+ <Reference type="Package" refto="System.Xml.Linq" />
+ <Reference type="Package" refto="Microsoft.CSharp, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
+ </References>
+ <Packages>
+ <Package ID="Microsoft.AspNet.Mvc" Version="5.1.2" />
+ </Packages>
+ <Files>
+ <Directory name="Content" />
+ <Directory name="Controllers">
+ <File name="HomeController.cs" src="../MvcCommon/HomeController.cs" />
+ </Directory>
+ <Directory name="Models" />
+ <Directory name="Scripts" />
+ <Directory name="Views">
+ <FileTemplateReference TemplateID="AspMvcWebConfigViews" name="Web.config" SuppressAutoOpen="true" />
+ <Directory name="Home">
+ <File name="Index.aspx">
+<![CDATA[<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage" %>
+<!DOCTYPE html>
+<html>
+<head runat="server">
+ <title></title>
+</head>
+<body>
+ <h2>Welcome to ASP.NET MVC <%: ViewData["Version"] %> on <%: ViewData["Runtime"] %>!</h2>
+</body>
+]]>
+ </File>
+ </Directory>
+ <Directory name="Shared">
+ <File name="Error.aspx">
+<![CDATA[<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage" %>
+<!DOCTYPE html>
+<html>
+<head>
+ <title>Error</title>
+</head>
+<body>
+ <div>
+ <h2>An error occurred while processing your request.</h2>
+ </div>
+</body>
+]]>
+ </File>
+ </Directory>
+ </Directory>
+ <FileTemplateReference TemplateID="AspMvcWebConfigApp" name="Web.config" SuppressAutoOpen="true" />
+ <FileTemplateReference TemplateID="AspMvcGlobalAsax" name="Global.asax" SuppressAutoOpen="true" />
+ </Files>
+ </Project>
+ </Combine>
+</Template>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/ProjectMvc3RazorWithUnitTest.xpt.xml b/main/src/addins/AspNet/Templates/Projects/MvcProjectWithUnitTest.xpt.xml
index 8f7bd3f8d5..81c930d246 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/ProjectMvc3RazorWithUnitTest.xpt.xml
+++ b/main/src/addins/AspNet/Templates/Projects/MvcProjectWithUnitTest.xpt.xml
@@ -1,98 +1,118 @@
-<?xml version="1.0"?>
-<Template originator="Piotr Dowgiallo"
- created="2012/06/05"
- lastModified="2012/06/05">
-
- <!-- Template Header -->
- <TemplateConfiguration>
- <_Name>ASP.NET MVC 3 (Razor) with Unit Test Project</_Name>
- <_Category>C#/ASP.NET</_Category>
- <Icon>md-project-web</Icon>
- <LanguageName>C#</LanguageName>
- <_Description>Creates an ASP.NET MVC 3 Web Project with Razor Views and Unit Test Project.</_Description>
- </TemplateConfiguration>
-
-
- <!-- Actions -->
- <Actions>
- <Open filename = "Controllers/HomeController.cs"/>
- </Actions>
-
- <!-- Template Content -->
- <Combine name = "${ProjectName}" directory = ".">
- <Options>
- <StartupProject>${ProjectName}</StartupProject>
- </Options>
-
- <Project name = "${ProjectName}" directory = "." type = "AspNetMvc3">
- <Options TargetFrameworkVersion = "4.0" />
- <References>
- <Reference type="Package" refto="System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
- <Reference type="Package" refto="System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <Reference type="Package" refto="System.Xml, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
- <Reference type="Package" refto="System.Core" />
- <Reference type="Package" refto="System.Web.Services, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <Reference type="Package" refto="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
- <Reference type="Package" refto="System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
- <Reference type="Package" refto="System.Web.Abstractions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
- <Reference type="Package" refto="System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
- <Reference type="Package" refto="System.Web.WebPages, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
- <Reference type="Package" refto="System.Web.Helpers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
- <Reference type="Package" refto="System.Web.DynamicData, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
- <Reference type="Package" refto="System.ComponentModel.DataAnnotations, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
- <Reference type="Package" refto="System.Xml.Linq" />
- <Reference type="Package" refto="Microsoft.CSharp, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- </References>
- <Files>
- <Directory name="Content" />
- <Directory name="Controllers">
- <File name="HomeController.cs" src="Common/HomeController.cs" />
- </Directory>
- <Directory name="Models" />
- <Directory name="Scripts" />
- <Directory name="Views">
- <FileTemplateReference TemplateID="AspMvc3WebConfigViews" name="Web.config" SuppressAutoOpen="true" />
- <Directory name="Home">
- <File name="Index.cshtml" src="Common/Index.cshtml" />
- </Directory>
- <Directory name="Shared">
- <File name="_Layout.cshtml" src="Common/_Layout.cshtml" />
- <File name="Error.cshtml" src="Common/Error.cshtml" />
- </Directory>
- <File name="_ViewStart.cshtml" src="Common/_ViewStart.cshtml" />
- </Directory>
- <FileTemplateReference TemplateID="AspMvc3WebConfigApp" name="Web.config" SuppressAutoOpen="true" />
- <FileTemplateReference TemplateID="AspMvc3GlobalAsax" name="Global.asax" SuppressAutoOpen="true" />
- </Files>
- </Project>
- <Project name = "${ProjectName}.Tests" directory = "${ProjectName}.Tests">
- <Options Target = "Library" />
-
- <References>
- <Reference type="Package" refto="System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
- <Reference type="Package" refto="System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <Reference type="Package" refto="System.Xml, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
- <Reference type="Package" refto="System.Core" />
- <Reference type="Package" refto="System.Web.Services, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <Reference type="Package" refto="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
- <Reference type="Package" refto="System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
- <Reference type="Package" refto="System.Web.Abstractions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
- <Reference type="Package" refto="System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
- <Reference type="Package" refto="System.Web.WebPages, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
- <Reference type="Package" refto="System.Web.Helpers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
- <Reference type="Package" refto="System.Web.DynamicData, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
- <Reference type="Package" refto="System.ComponentModel.DataAnnotations, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
- <Reference type="Package" refto="System.Xml.Linq" />
- <Reference type="Package" refto="Microsoft.CSharp, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <Reference type="Package" refto="nunit.framework" SpecificVersion = "false" LocalCopy = "false" />
- <Reference type="Project" refto="${ProjectName}" />
- </References>
-
- <Files>
- <Directory name="Controllers">
- <File name="HomeControllerTest.cs" src="Common/HomeControllerTest.cs" />
- </Directory>
- </Files>
- </Project>
- </Combine>
-</Template>
+<?xml version="1.0"?>
+<Template originator="Piotr Dowgiallo"
+ created="2012/06/05"
+ lastModified="2012/06/05">
+
+ <!-- Template Header -->
+ <TemplateConfiguration>
+ <_Name>ASP.NET MVC Project with Unit Tests</_Name>
+ <_Category>C#/ASP.NET</_Category>
+ <Icon>md-project-web</Icon>
+ <LanguageName>C#</LanguageName>
+ <_Description>Creates an ASP.NET MVC Web Project with a Unit Test Project.</_Description>
+ </TemplateConfiguration>
+
+
+ <!-- Actions -->
+ <Actions>
+ <Open filename = "Controllers/HomeController.cs"/>
+ </Actions>
+
+ <!-- Template Content -->
+ <Combine name = "${ProjectName}" directory = ".">
+ <Options>
+ <StartupProject>${ProjectName}</StartupProject>
+ </Options>
+
+ <Project name = "${ProjectName}" directory = "." type = "AspNetApp">
+ <Options TargetFrameworkVersion = "4.5" />
+ <References>
+ <Reference type="Package" refto="System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
+ <Reference type="Package" refto="System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
+ <Reference type="Package" refto="System.Xml, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
+ <Reference type="Package" refto="System.Core" />
+ <Reference type="Package" refto="System.Web.Services, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
+ <Reference type="Package" refto="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
+ <Reference type="Package" refto="System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
+ <Reference type="Package" refto="System.Web.Abstractions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
+ <Reference type="Package" refto="System.Web.DynamicData, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
+ <Reference type="Package" refto="System.ComponentModel.DataAnnotations, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
+ <Reference type="Package" refto="System.Xml.Linq" />
+ <Reference type="Package" refto="Microsoft.CSharp, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
+ </References>
+ <Packages>
+ <Package ID="Microsoft.AspNet.Mvc" Version="5.1.2" />
+ </Packages>
+ <Files>
+ <Directory name="Content" />
+ <Directory name="Controllers">
+ <File name="HomeController.cs" src="../MvcCommon/HomeController.cs" />
+ </Directory>
+ <Directory name="Models" />
+ <Directory name="Scripts" />
+ <Directory name="Views">
+ <FileTemplateReference TemplateID="AspMvcWebConfigViews" name="Web.config" SuppressAutoOpen="true" />
+ <Directory name="Home">
+ <File name="Index.aspx">
+<![CDATA[<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage" %>
+<!DOCTYPE html>
+<html>
+<head runat="server">
+ <title></title>
+</head>
+<body>
+ <h2>Welcome to ASP.NET MVC <%: ViewData["Version"] %> on <%: ViewData["Runtime"] %>!</h2>
+</body>
+]]>
+ </File>
+ </Directory>
+ <Directory name="Shared">
+ <File name="Error.aspx">
+<![CDATA[<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage" %>
+<!DOCTYPE html>
+<html>
+<head>
+ <title>Error</title>
+</head>
+<body>
+ <div>
+ <h2>An error occurred while processing your request.</h2>
+ </div>
+</body>
+]]>
+ </File>
+ </Directory>
+ </Directory>
+ <FileTemplateReference TemplateID="AspMvcWebConfigApp" name="Web.config" SuppressAutoOpen="true" />
+ <FileTemplateReference TemplateID="AspMvcGlobalAsax" name="Global.asax" SuppressAutoOpen="true" />
+ </Files>
+ </Project>
+ <Project name = "${ProjectName}.Tests" directory = "${ProjectName}.Tests">
+ <Options Target = "Library" TargetFrameworkVersion = "4.5" />
+ <References>
+ <Reference type="Package" refto="System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
+ <Reference type="Package" refto="System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
+ <Reference type="Package" refto="System.Xml, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
+ <Reference type="Package" refto="System.Core" />
+ <Reference type="Package" refto="System.Web.Services, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
+ <Reference type="Package" refto="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
+ <Reference type="Package" refto="System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
+ <Reference type="Package" refto="System.Web.Abstractions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
+ <Reference type="Package" refto="System.Web.DynamicData, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
+ <Reference type="Package" refto="System.ComponentModel.DataAnnotations, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
+ <Reference type="Package" refto="System.Xml.Linq" />
+ <Reference type="Package" refto="Microsoft.CSharp, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
+ <Reference type="Project" refto="${ProjectName}" />
+ </References>
+ <Packages>
+ <Package ID="Microsoft.AspNet.Mvc" Version="5.1.2" />
+ <Package ID="NUnit" Version="2.6.3" />
+ </Packages>
+ <Files>
+ <Directory name="Controllers">
+ <File name="HomeControllerTest.cs" src="../MvcCommon/HomeControllerTest.cs" />
+ </Directory>
+ </Files>
+ </Project>
+ </Combine>
+</Template> \ No newline at end of file
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/Project.xpt.xml b/main/src/addins/AspNet/Templates/Projects/MvcRazorProject.xpt.xml
index c146ff30a8..9dbe1627db 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/Project.xpt.xml
+++ b/main/src/addins/AspNet/Templates/Projects/MvcRazorProject.xpt.xml
@@ -1,30 +1,31 @@
-<?xml version="1.0"?>
-<Template originator="Michael Hutchinson"
- created="2009/02/17"
- lastModified="2012/05/17">
-
+<?xml version="1.0"?>
+<Template originator="Piotr Dowgiallo"
+ created="2012/06/04"
+ lastModified="2012/06/04">
+
<!-- Template Header -->
<TemplateConfiguration>
- <_Name>ASP.NET MVC 2 Project</_Name>
+ <_Name>ASP.NET MVC Razor Project</_Name>
<_Category>C#/ASP.NET</_Category>
<Icon>md-project-web</Icon>
<LanguageName>C#</LanguageName>
- <_Description>Creates an ASP.NET MVC 2 Web Project.</_Description>
+ <_Description>Creates an ASP.NET MVC Project with Razor Views.</_Description>
</TemplateConfiguration>
-
+
+
<!-- Actions -->
<Actions>
<Open filename = "Controllers/HomeController.cs"/>
</Actions>
-
+
<!-- Template Content -->
<Combine name = "${ProjectName}" directory = ".">
<Options>
<StartupProject>${ProjectName}</StartupProject>
</Options>
-
- <Project name = "${ProjectName}" directory = "." type = "AspNetMvc2">
- <Options TargetFrameworkVersion = "4.0" />
+
+ <Project name = "${ProjectName}" directory = "." type = "AspNetApp">
+ <Options TargetFrameworkVersion = "4.5" />
<References>
<Reference type="Package" refto="System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<Reference type="Package" refto="System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
@@ -34,37 +35,31 @@
<Reference type="Package" refto="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
<Reference type="Package" refto="System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
<Reference type="Package" refto="System.Web.Abstractions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
- <Reference type="Package" refto="System.Web.Mvc, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
<Reference type="Package" refto="System.Web.DynamicData, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
<Reference type="Package" refto="System.ComponentModel.DataAnnotations, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
<Reference type="Package" refto="System.Xml.Linq" />
+ <Reference type="Package" refto="Microsoft.CSharp, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
</References>
+ <Packages>
+ <Package ID="Microsoft.AspNet.Mvc" Version="5.1.2" />
+ </Packages>
<Files>
<Directory name="Content" />
<Directory name="Controllers">
- <File name="HomeController.cs" src="Common/HomeController.cs" />
+ <File name="HomeController.cs" src="../MvcCommon/HomeController.cs" />
</Directory>
<Directory name="Models" />
<Directory name="Scripts" />
<Directory name="Views">
<FileTemplateReference TemplateID="AspMvcWebConfigViews" name="Web.config" SuppressAutoOpen="true" />
<Directory name="Home">
- <AspNetFile name="Index.aspx">
- <FileText><![CDATA[<%@ Page Language="${AspNetLanguage}" Inherits="System.Web.Mvc.ViewPage" %>
-${Doctype}
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head runat="server">
- <title></title>
-</head>
-<body>
- <div>
- <%= Html.Encode(ViewData["Message"]) %>
- </div>
-</body>
-]]>
- </FileText>
- </AspNetFile>
+ <File name="Index.cshtml" src="../MvcCommon/Index.cshtml" />
</Directory>
+ <Directory name="Shared">
+ <File name="_Layout.cshtml" src="../MvcCommon/_Layout.cshtml" />
+ <File name="Error.cshtml" src="../MvcCommon/Error.cshtml" />
+ </Directory>
+ <File name="_ViewStart.cshtml" src="../MvcCommon/_ViewStart.cshtml" />
</Directory>
<FileTemplateReference TemplateID="AspMvcWebConfigApp" name="Web.config" SuppressAutoOpen="true" />
<FileTemplateReference TemplateID="AspMvcGlobalAsax" name="Global.asax" SuppressAutoOpen="true" />
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/ProjectWithUnitTest.xpt.xml b/main/src/addins/AspNet/Templates/Projects/MvcRazorProjectWithUnitTest.xpt.xml
index 4166b103a0..29fe987ed6 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Templates/ProjectWithUnitTest.xpt.xml
+++ b/main/src/addins/AspNet/Templates/Projects/MvcRazorProjectWithUnitTest.xpt.xml
@@ -5,13 +5,14 @@
<!-- Template Header -->
<TemplateConfiguration>
- <_Name>ASP.NET MVC 2 with Unit Test Project</_Name>
+ <_Name>ASP.NET MVC Razor Project with Unit Tests</_Name>
<_Category>C#/ASP.NET</_Category>
<Icon>md-project-web</Icon>
<LanguageName>C#</LanguageName>
- <_Description>Creates an ASP.NET MVC 2 Web Project with Unit Test project.</_Description>
+ <_Description>Creates an ASP.NET MVC Web Project with Razor Views and a Unit Test Project.</_Description>
</TemplateConfiguration>
+
<!-- Actions -->
<Actions>
<Open filename = "Controllers/HomeController.cs"/>
@@ -23,8 +24,8 @@
<StartupProject>${ProjectName}</StartupProject>
</Options>
- <Project name = "${ProjectName}" directory = "." type = "AspNetMvc2">
- <Options TargetFrameworkVersion = "4.0" />
+ <Project name = "${ProjectName}" directory = "." type = "AspNetApp">
+ <Options TargetFrameworkVersion = "4.5" />
<References>
<Reference type="Package" refto="System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<Reference type="Package" refto="System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
@@ -34,46 +35,38 @@
<Reference type="Package" refto="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
<Reference type="Package" refto="System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
<Reference type="Package" refto="System.Web.Abstractions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
- <Reference type="Package" refto="System.Web.Mvc, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
<Reference type="Package" refto="System.Web.DynamicData, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
<Reference type="Package" refto="System.ComponentModel.DataAnnotations, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
<Reference type="Package" refto="System.Xml.Linq" />
+ <Reference type="Package" refto="Microsoft.CSharp, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
</References>
+ <Packages>
+ <Package ID="Microsoft.AspNet.Mvc" Version="5.1.2" />
+ </Packages>
<Files>
<Directory name="Content" />
<Directory name="Controllers">
- <File name="HomeController.cs" src="Common/HomeController.cs" />
+ <File name="HomeController.cs" src="../MvcCommon/HomeController.cs" />
</Directory>
<Directory name="Models" />
<Directory name="Scripts" />
<Directory name="Views">
<FileTemplateReference TemplateID="AspMvcWebConfigViews" name="Web.config" SuppressAutoOpen="true" />
<Directory name="Home">
- <AspNetFile name="Index.aspx">
- <FileText>
- <![CDATA[<%@ Page Language="${AspNetLanguage}" Inherits="System.Web.Mvc.ViewPage" %>
-${Doctype}
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head runat="server">
- <title></title>
-</head>
-<body>
- <div>
- <%= Html.Encode(ViewData["Message"]) %>
- </div>
-</body>
-]]>
- </FileText>
- </AspNetFile>
+ <File name="Index.cshtml" src="../MvcCommon/Index.cshtml" />
+ </Directory>
+ <Directory name="Shared">
+ <File name="_Layout.cshtml" src="../MvcCommon/_Layout.cshtml" />
+ <File name="Error.cshtml" src="../MvcCommon/Error.cshtml" />
</Directory>
+ <File name="_ViewStart.cshtml" src="../MvcCommon/_ViewStart.cshtml" />
</Directory>
<FileTemplateReference TemplateID="AspMvcWebConfigApp" name="Web.config" SuppressAutoOpen="true" />
<FileTemplateReference TemplateID="AspMvcGlobalAsax" name="Global.asax" SuppressAutoOpen="true" />
</Files>
</Project>
<Project name = "${ProjectName}.Tests" directory = "${ProjectName}.Tests">
- <Options Target = "Library" />
-
+ <Options Target = "Library" TargetFrameworkVersion = "4.5" />
<References>
<Reference type="Package" refto="System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<Reference type="Package" refto="System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
@@ -83,17 +76,19 @@ ${Doctype}
<Reference type="Package" refto="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
<Reference type="Package" refto="System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
<Reference type="Package" refto="System.Web.Abstractions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
- <Reference type="Package" refto="System.Web.Mvc, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
<Reference type="Package" refto="System.Web.DynamicData, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
<Reference type="Package" refto="System.ComponentModel.DataAnnotations, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" SpecificVersion="false" />
<Reference type="Package" refto="System.Xml.Linq" />
- <Reference type="Package" refto="nunit.framework" SpecificVersion = "false" LocalCopy = "false" />
+ <Reference type="Package" refto="Microsoft.CSharp, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<Reference type="Project" refto="${ProjectName}" />
</References>
-
+ <Packages>
+ <Package ID="Microsoft.AspNet.Mvc" Version="5.1.2" />
+ <Package ID="NUnit" Version="2.6.3" />
+ </Packages>
<Files>
<Directory name="Controllers">
- <File name="HomeControllerTest.cs" src="Common/HomeControllerTest.cs" />
+ <File name="HomeControllerTest.cs" src="../MvcCommon/HomeControllerTest.cs" />
</Directory>
</Files>
</Project>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebApplication.xpt.xml b/main/src/addins/AspNet/Templates/Projects/WebApplication.xpt.xml
index 665a936f5d..6504b0a3d9 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebApplication.xpt.xml
+++ b/main/src/addins/AspNet/Templates/Projects/WebApplication.xpt.xml
@@ -5,10 +5,10 @@
<!-- Template Header -->
<TemplateConfiguration>
- <_Name>Web Application</_Name>
- <_Category>ASP.NET</_Category>
+ <_Name>ASP.NET Project</_Name>
+ <_Category>C#/ASP.NET</_Category>
<Icon>md-project-web</Icon>
- <LanguageName>C#,VBNet</LanguageName>
+ <LanguageName>C#</LanguageName>
<_Description>Creates a new ASP.NET Web Application project.</_Description>
</TemplateConfiguration>
@@ -35,10 +35,9 @@
<FileTemplateReference TemplateID="GlobalAsax-CodeBehind" name="Global.asax" />
<FileTemplateReference TemplateID="WebConfig-Application" name="web.config" />
- <AspNetFile name="Default.aspx" DefaultExtension=".aspx">
- <FileText>
- <![CDATA[<%@ Page Language="${AspNetLanguage}" Inherits="${Namespace}.${Name}" %>
-${Doctype}
+ <File name="Default.aspx" DefaultExtension=".aspx">
+<![CDATA[<%@ Page Language="C#" Inherits="${Namespace}.${EscapedIdentifier}" %>
+<!DOCTYPE html>
<html>
<head runat="server">
<title>${Name}</title>
@@ -48,11 +47,10 @@ ${Doctype}
<asp:Button id="button1" runat="server" Text="Click me!" OnClick="button1Clicked" />
</form>
</body>
-</html>]]>
- </FileText>
- </AspNetFile>
-
- <CodeTranslationFile name="Default.aspx.${LanguageExtension}">
+</html>
+]]>
+ </File>
+ <File name="Default.aspx.cs">
<![CDATA[using System;
using System.Web;
using System.Web.UI;
@@ -66,12 +64,10 @@ namespace ${Namespace} {
button1.Text = "You clicked me";
}
}
-}]]>
- </CodeTranslationFile>
- <CodeTranslationFile name="Default.aspx.designer.${LanguageExtension}"
- ShowAutogenerationNotice="True"
- AddStandardHeader="False"
- SuppressAutoOpen="True">
+}
+]]>
+ </File>
+ <File name="Default.aspx.designer.cs" ShowAutogenerationNotice="True" AddStandardHeader="False" SuppressAutoOpen="True">
<![CDATA[using System;
using System.Web;
using System.Web.UI;
@@ -82,8 +78,9 @@ namespace ${Namespace} {
{
protected System.Web.UI.WebControls.Button button1;
}
-}]]>
- </CodeTranslationFile>
+}
+]]>
+ </File>
</Files>
</Project>
</Combine>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebConfig-Application.xft.xml b/main/src/addins/AspNet/Templates/WebConfig-Application.xft.xml
index 604310389b..954d3d418c 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebConfig-Application.xft.xml
+++ b/main/src/addins/AspNet/Templates/WebConfig-Application.xft.xml
@@ -9,7 +9,7 @@
<_Name>Web Application Configuration</_Name>
<_Category>ASP.NET</_Category>
<Icon>md-html-file-icon</Icon>
- <LanguageName>*</LanguageName>
+ <LanguageName>C#</LanguageName>
<ProjectType>AspNetApp</ProjectType>
<DefaultFilename IsFixed="True">web.config</DefaultFilename>
<_Description>Creates an ASP.NET web.config file for an application.</_Description>
@@ -21,8 +21,7 @@
<!-- Template Content -->
<TemplateFiles>
- <AspNetFile name="web.config">
- <FileText>
+ <File name="web.config">
<![CDATA[<?xml version="1.0" ?>
<!--
Web.config file for ${ProjectName}.
@@ -34,7 +33,7 @@ http://msdn2.microsoft.com/en-us/library/b5ysx397.aspx
<configuration>
<system.web>
<compilation
- defaultLanguage="${AspNetLanguage}"
+ defaultLanguage="C#"
debug="true"
>
<assemblies>
@@ -80,8 +79,8 @@ http://msdn2.microsoft.com/en-us/library/b5ysx397.aspx
<pages>
</pages>
</system.web>
-</configuration>]]>
- </FileText>
- </AspNetFile>
+</configuration>
+]]>
+ </File>
</TemplateFiles>
</Template>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebConfig-SubDir.xft.xml b/main/src/addins/AspNet/Templates/WebConfig-SubDir.xft.xml
index dcde19b992..f4a0add313 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebConfig-SubDir.xft.xml
+++ b/main/src/addins/AspNet/Templates/WebConfig-SubDir.xft.xml
@@ -9,7 +9,7 @@
<_Name>Subdirectory Web Configuration</_Name>
<_Category>ASP.NET</_Category>
<Icon>md-html-file-icon</Icon>
- <LanguageName>*</LanguageName>
+ <LanguageName>C#</LanguageName>
<ProjectType>AspNetApp</ProjectType>
<DefaultFilename IsFixed="True">web.config</DefaultFilename>
<_Description>Creates an ASP.NET web.config file for a subdirectory.</_Description>
@@ -21,8 +21,7 @@
<!-- Template Content -->
<TemplateFiles>
- <AspNetFile name="web.config">
- <FileText>
+ <File name="web.config">
<![CDATA[<?xml version="1.0" encoding="utf-8"?>
<!--
Web.config file for ${ProjectRelativeDirectory}.
@@ -35,8 +34,8 @@ http://msdn2.microsoft.com/en-us/library/b5ysx397.aspx
<system.web>
</system.web>
-</configuration>]]>
- </FileText>
- </AspNetFile>
+</configuration>
+]]>
+ </File>
</TemplateFiles>
</Template>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/GlobalAsax-CodeBehind.xft.xml b/main/src/addins/AspNet/Templates/WebForms/GlobalAsax-CodeBehind.xft.xml
index a316ac0371..caf20e8713 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/GlobalAsax-CodeBehind.xft.xml
+++ b/main/src/addins/AspNet/Templates/WebForms/GlobalAsax-CodeBehind.xft.xml
@@ -6,9 +6,9 @@
<!-- Template Header -->
<TemplateConfiguration>
<_Name>Global.asax with CodeBehind</_Name>
- <_Category>ASP.NET</_Category>
+ <_Category>ASP.NET Web Forms</_Category>
<Icon>md-html-file-icon</Icon>
- <LanguageName>*</LanguageName>
+ <LanguageName>C#</LanguageName>
<ProjectType>AspNetApp</ProjectType>
<DefaultFilename IsFixed="True">Global.asax</DefaultFilename>
<_Description>Creates an ASP.NET Global.asax file with a CodeBehind class.</_Description>
@@ -20,12 +20,10 @@
<!-- Template Content -->
<TemplateFiles>
- <AspNetFile name="Global.asax">
- <FileText>
+ <File name="Global.asax">
<![CDATA[<%@ Application Inherits="${Namespace}.Global" %>]]>
- </FileText>
- </AspNetFile>
- <CodeTranslationFile name="Global.asax.${LanguageExtension}" DependsOn="Global.asax" >
+ </File>
+ <File name="Global.asax.cs" DependsOn="Global.asax" >
<![CDATA[using System;
using System.Collections;
using System.ComponentModel;
@@ -77,6 +75,6 @@ namespace ${Namespace}
}
}
}]]>
- </CodeTranslationFile>
+ </File>
</TemplateFiles>
</Template>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/GlobalAsax-Empty.xft.xml b/main/src/addins/AspNet/Templates/WebForms/GlobalAsax-Empty.xft.xml
index 4cb76fbf27..f525d6722c 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/GlobalAsax-Empty.xft.xml
+++ b/main/src/addins/AspNet/Templates/WebForms/GlobalAsax-Empty.xft.xml
@@ -6,9 +6,9 @@
<!-- Template Header -->
<TemplateConfiguration>
<_Name>Global.asax</_Name>
- <_Category>ASP.NET</_Category>
+ <_Category>ASP.NET Web Forms</_Category>
<Icon>md-html-file-icon</Icon>
- <LanguageName>*</LanguageName>
+ <LanguageName>C#</LanguageName>
<ProjectType>AspNetApp</ProjectType>
<DefaultFilename IsFixed="True">Global.asax</DefaultFilename>
<_Description>Creates an ASP.NET Global.asax file.</_Description>
@@ -20,16 +20,10 @@
<!-- Template Content -->
<TemplateFiles>
- <AspNetFile name="Global.asax">
- <FileText>
-<![CDATA[<%@ Application Language="${AspNetLanguage}" %>
+ <File name="Global.asax">
+<![CDATA[<%@ Application Language="C#" %>
<script runat="server">
-${CodeRegion:script1}
-</script>
-]]>
- </FileText>
- <CodeTranslationFile TagName="script1">
-<![CDATA[using System;
+using System;
using System.Collections;
using System.ComponentModel;
using System.Web;
@@ -80,7 +74,6 @@ namespace ${Namespace}
}
}
}]]>
- </CodeTranslationFile>
- </AspNetFile>
+ </File>
</TemplateFiles>
</Template>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/MasterPage-CodeBehind.xft.xml b/main/src/addins/AspNet/Templates/WebForms/MasterPage-CodeBehind.xft.xml
index 861f7aea63..7a5848aa9e 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/MasterPage-CodeBehind.xft.xml
+++ b/main/src/addins/AspNet/Templates/WebForms/MasterPage-CodeBehind.xft.xml
@@ -7,23 +7,17 @@
<TemplateConfiguration>
<_Name>Master Page with CodeBehind</_Name>
<Icon>md-html-file-icon</Icon>
- <_Category>ASP.NET</_Category>
- <LanguageName>*</LanguageName>
+ <_Category>ASP.NET Web Forms</_Category>
+ <LanguageName>C#</LanguageName>
<_Description>Creates an ASP.NET Master Page with a CodeBehind class.</_Description>
<ProjectType>AspNetApp</ProjectType>
</TemplateConfiguration>
-
- <Conditions>
- <ClrVersion Condition="GreaterThanOrEqual" ClrVersion="Net_2_0" />
- <PartialTypeSupport Requirement="Enabled" />
- </Conditions>
-
+
<!-- Template Content -->
<TemplateFiles>
- <AspNetFile name="${Name}.master">
- <FileText>
- <![CDATA[<%@ Master Language="${AspNetLanguage}" Inherits="${Namespace}.${Name}" %>
-${Doctype}
+ <File name="${Name}.master">
+<![CDATA[<%@ Master Language="C#" Inherits="${Namespace}.${EscapedIdentifier}" %>
+<!DOCTYPE html>
<html>
<head runat="server">
<title>${Name}</title>
@@ -35,11 +29,11 @@ ${Doctype}
</form>
</div>
</body>
-</html>]]>
- </FileText>
- </AspNetFile>
+</html>
+]]>
+ </File>
- <CodeTranslationFile name="${Name}.master.${LanguageExtension}" DependsOn="${Name}.master" >
+ <File name="${Name}.master.cs" DependsOn="${Name}.master" >
<![CDATA[using System;
using System.Web;
using System.Web.UI;
@@ -49,8 +43,8 @@ namespace ${Namespace} {
}
}
]]>
- </CodeTranslationFile>
- <CodeTranslationFile name="${Name}.master.designer.${LanguageExtension}" ShowAutogenerationNotice="True"
+ </File>
+ <File name="${Name}.master.designer.cs" ShowAutogenerationNotice="True"
AddStandardHeader="False" SuppressAutoOpen="True" DependsOn="${Name}.master" >
<![CDATA[using System;
using System.Web;
@@ -61,6 +55,6 @@ namespace ${Namespace} {
}
}
]]>
- </CodeTranslationFile>
+ </File>
</TemplateFiles>
</Template>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/MasterPage-Empty.xft.xml b/main/src/addins/AspNet/Templates/WebForms/MasterPage-Empty.xft.xml
index 48c8a1cd6c..9c3e845d88 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/MasterPage-Empty.xft.xml
+++ b/main/src/addins/AspNet/Templates/WebForms/MasterPage-Empty.xft.xml
@@ -7,22 +7,17 @@
<TemplateConfiguration>
<_Name>Master Page without CodeBehind</_Name>
<Icon>md-html-file-icon</Icon>
- <_Category>ASP.NET</_Category>
- <LanguageName>*</LanguageName>
+ <_Category>ASP.NET Web Forms</_Category>
+ <LanguageName>C#</LanguageName>
<ProjectType>AspNetApp</ProjectType>
<_Description>Creates an ASP.NET Master Page.</_Description>
</TemplateConfiguration>
-
- <Conditions>
- <ClrVersion Condition="GreaterThanOrEqual" ClrVersion="Net_2_0" />
- </Conditions>
-
+
<!-- Template Content -->
<TemplateFiles>
- <AspNetFile name="${Name}.master">
- <FileText>
- <![CDATA[<%@ Master Language="${AspNetLanguage}"%>
-${Doctype}
+ <File name="${Name}.master">
+<![CDATA[<%@ Master Language="C#"%>
+<!DOCTYPE html>
<html>
<head runat="server">
<title>${Name}</title>
@@ -34,8 +29,8 @@ ${Doctype}
</form>
</div>
</body>
-</html>]]>
- </FileText>
- </AspNetFile>
+</html>
+]]>
+ </File>
</TemplateFiles>
</Template>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/NestedMasterPage-CodeBehind.xft.xml b/main/src/addins/AspNet/Templates/WebForms/NestedMasterPage-CodeBehind.xft.xml
index 9099b87c07..1a7476f11d 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/NestedMasterPage-CodeBehind.xft.xml
+++ b/main/src/addins/AspNet/Templates/WebForms/NestedMasterPage-CodeBehind.xft.xml
@@ -7,29 +7,24 @@
<TemplateConfiguration>
<_Name>Nested Master Page with CodeBehind</_Name>
<Icon>md-html-file-icon</Icon>
- <_Category>ASP.NET</_Category>
- <LanguageName>*</LanguageName>
+ <_Category>ASP.NET Web Forms</_Category>
+ <LanguageName>C#</LanguageName>
<_Description>Creates an ASP.NET Nested Master Page with a CodeBehind class.</_Description>
<ProjectType>AspNetApp</ProjectType>
</TemplateConfiguration>
-
- <Conditions>
- <ClrVersion Condition="GreaterThanOrEqual" ClrVersion="Net_2_0" />
- <PartialTypeSupport Requirement="Enabled" />
- </Conditions>
-
+
<!-- Template Content -->
<TemplateFiles>
<AspNetMasterContentFile name="${Name}.master">
<FileText>
- <![CDATA[<%@ Master Language="${AspNetLanguage}" MasterPageFile="${AspNetMaster}" Inherits="${Namespace}.${Name}" %>
+ <![CDATA[<%@ Master Language="C#" MasterPageFile="${AspNetMaster}" Inherits="${Namespace}.${EscapedIdentifier}" %>
<%@ MasterType VirtualPath="${AspNetMaster}" %>
${AspNetMasterContent}
]]>
</FileText>
</AspNetMasterContentFile>
- <CodeTranslationFile name="${Name}.master.${LanguageExtension}" DependsOn="${Name}.master" >
+ <File name="${Name}.master.cs" DependsOn="${Name}.master" >
<![CDATA[using System;
using System.Web;
using System.Web.UI;
@@ -39,8 +34,8 @@ namespace ${Namespace} {
}
}
]]>
- </CodeTranslationFile>
- <CodeTranslationFile name="${Name}.master.designer.${LanguageExtension}" ShowAutogenerationNotice="True"
+ </File>
+ <File name="${Name}.master.designer.cs" ShowAutogenerationNotice="True"
AddStandardHeader="False" SuppressAutoOpen="True" DependsOn="${Name}.master" >
<![CDATA[using System;
using System.Web;
@@ -51,6 +46,6 @@ namespace ${Namespace} {
}
}
]]>
- </CodeTranslationFile>
+ </File>
</TemplateFiles>
</Template>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/NestedMasterPage.xft.xml b/main/src/addins/AspNet/Templates/WebForms/NestedMasterPage.xft.xml
index 8204878b4e..47338eaea7 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/NestedMasterPage.xft.xml
+++ b/main/src/addins/AspNet/Templates/WebForms/NestedMasterPage.xft.xml
@@ -7,22 +7,17 @@
<TemplateConfiguration>
<_Name>Nested Master Page</_Name>
<Icon>md-html-file-icon</Icon>
- <_Category>ASP.NET</_Category>
- <LanguageName>*</LanguageName>
+ <_Category>ASP.NET Web Forms</_Category>
+ <LanguageName>C#</LanguageName>
<_Description>Creates an ASP.NET Nested Master Page.</_Description>
<ProjectType>AspNetApp</ProjectType>
</TemplateConfiguration>
-
- <Conditions>
- <ClrVersion Condition="GreaterThanOrEqual" ClrVersion="Net_2_0" />
- <PartialTypeSupport Requirement="Enabled" />
- </Conditions>
-
+
<!-- Template Content -->
<TemplateFiles>
<AspNetMasterContentFile name="${Name}.master">
<FileText>
- <![CDATA[<%@ Master Language="${AspNetLanguage}" MasterPageFile="${AspNetMaster}" %>
+ <![CDATA[<%@ Master Language="C#" MasterPageFile="${AspNetMaster}" %>
${AspNetMasterContent}
]]>
</FileText>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebContentForm-CodeBehind.xft.xml b/main/src/addins/AspNet/Templates/WebForms/WebContentForm-CodeBehind.xft.xml
index 8810beee87..88d5a3c23d 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebContentForm-CodeBehind.xft.xml
+++ b/main/src/addins/AspNet/Templates/WebForms/WebContentForm-CodeBehind.xft.xml
@@ -7,27 +7,23 @@
<TemplateConfiguration>
<_Name>Web Content Form with CodeBehind</_Name>
<Icon>md-html-file-icon</Icon>
- <_Category>ASP.NET</_Category>
- <LanguageName>*</LanguageName>
+ <_Category>ASP.NET Web Forms</_Category>
+ <LanguageName>C#</LanguageName>
<ProjectType>AspNetApp</ProjectType>
<_Description>Creates an ASP.NET Web Form that is the child of a Master Page, with a CodeBehind class.</_Description>
</TemplateConfiguration>
-
- <Conditions>
- <PartialTypeSupport Requirement="Enabled" />
- </Conditions>
-
+
<!-- Template Content -->
<TemplateFiles>
<AspNetMasterContentFile name="${Name}.aspx" DefaultExtension=".aspx">
<FileText>
- <![CDATA[<%@ Page Language="${AspNetLanguage}" Inherits="${Namespace}.${Name}" MasterPageFile="${AspNetMaster}" %>
+<![CDATA[<%@ Page Language="C#" Inherits="${Namespace}.${EscapedIdentifier}" MasterPageFile="${AspNetMaster}" %>
<%@ MasterType VirtualPath="${AspNetMaster}" %>
${AspNetMasterContent}
]]>
</FileText>
</AspNetMasterContentFile>
- <CodeTranslationFile name="${Name}.aspx.${LanguageExtension}" DependsOn="${Name}.aspx" >
+ <File name="${Name}.aspx.cs" DependsOn="${Name}.aspx" >
<![CDATA[using System;
using System.Web;
using System.Web.UI;
@@ -37,8 +33,8 @@ namespace ${Namespace} {
}
}
]]>
- </CodeTranslationFile>
- <CodeTranslationFile name="${Name}.aspx.designer.${LanguageExtension}" ShowAutogenerationNotice="True"
+ </File>
+ <File name="${Name}.aspx.designer.cs" ShowAutogenerationNotice="True"
AddStandardHeader="False" SuppressAutoOpen="True" DependsOn="${Name}.aspx" >
<![CDATA[using System;
using System.Web;
@@ -49,6 +45,6 @@ namespace ${Namespace} {
}
}
]]>
- </CodeTranslationFile>
+ </File>
</TemplateFiles>
</Template>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebContentForm.xft.xml b/main/src/addins/AspNet/Templates/WebForms/WebContentForm.xft.xml
index 651ab782f4..8ecab6b0ab 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebContentForm.xft.xml
+++ b/main/src/addins/AspNet/Templates/WebForms/WebContentForm.xft.xml
@@ -7,21 +7,17 @@
<TemplateConfiguration>
<_Name>Web Content Form</_Name>
<Icon>md-html-file-icon</Icon>
- <_Category>ASP.NET</_Category>
- <LanguageName>*</LanguageName>
+ <_Category>ASP.NET Web Forms</_Category>
+ <LanguageName>C#</LanguageName>
<ProjectType>AspNetApp</ProjectType>
<_Description>Creates an ASP.NET Web Form that is the child of a Master Page.</_Description>
</TemplateConfiguration>
-
- <Conditions>
- <PartialTypeSupport Requirement="Enabled" />
- </Conditions>
-
+
<!-- Template Content -->
<TemplateFiles>
<AspNetMasterContentFile name="${Name}.aspx" DefaultExtension=".aspx">
<FileText>
- <![CDATA[<%@ Page Language="${AspNetLanguage}" MasterPageFile="${AspNetMaster}" %>
+<![CDATA[<%@ Page Language="C#" MasterPageFile="${AspNetMaster}" %>
${AspNetMasterContent}
]]>
</FileText>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebControl-CodeBehind.xft.xml b/main/src/addins/AspNet/Templates/WebForms/WebControl-CodeBehind.xft.xml
index 08e441e081..d05c3ee8e2 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebControl-CodeBehind.xft.xml
+++ b/main/src/addins/AspNet/Templates/WebForms/WebControl-CodeBehind.xft.xml
@@ -6,26 +6,20 @@
<!-- Template Header -->
<TemplateConfiguration>
<_Name>User Control with CodeBehind</_Name>
- <_Category>ASP.NET</_Category>
+ <_Category>ASP.NET Web Forms</_Category>
<Icon>md-html-file-icon</Icon>
- <LanguageName>*</LanguageName>
+ <LanguageName>C#</LanguageName>
<ProjectType>AspNetApp</ProjectType>
<_Description>Creates an ASP.NET user control with a CodeBehind class.</_Description>
</TemplateConfiguration>
-
- <Conditions>
- <PartialTypeSupport Requirement="Enabled" />
- </Conditions>
<!-- Template Content -->
<TemplateFiles>
- <AspNetFile DefaultExtension=".ascx" name="${Name}.ascx">
- <FileText>
-<![CDATA[<%@ Control Language="${AspNetLanguage}" Inherits="${Namespace}.${Name}" %>]]>
- </FileText>
- </AspNetFile>
-
- <CodeTranslationFile name="${Name}.ascx.${LanguageExtension}" DependsOn="${Name}.ascx" >
+ <File DefaultExtension=".ascx" name="${Name}.ascx">
+<![CDATA[<%@ Control Language="C#" Inherits="${Namespace}.${EscapedIdentifier}" %>
+]]>
+ </File>
+ <File name="${Name}.ascx.cs" DependsOn="${Name}.ascx" >
<![CDATA[using System;
using System.Web;
using System.Web.UI;
@@ -35,9 +29,10 @@ namespace ${Namespace} {
public partial class ${EscapedIdentifier} : System.Web.UI.UserControl
{
}
-}]]>
- </CodeTranslationFile>
- <CodeTranslationFile name="${Name}.ascx.designer.${LanguageExtension}" ShowAutogenerationNotice="True"
+}
+]]>
+ </File>
+ <File name="${Name}.ascx.designer.cs" ShowAutogenerationNotice="True"
AddStandardHeader="False" SuppressAutoOpen="True" DependsOn="${Name}.ascx" >
<![CDATA[using System;
using System.Web;
@@ -48,7 +43,8 @@ namespace ${Namespace} {
public partial class ${EscapedIdentifier}
{
}
-}]]>
- </CodeTranslationFile>
+}
+]]>
+ </File>
</TemplateFiles>
</Template>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebControl-Empty.xft.xml b/main/src/addins/AspNet/Templates/WebForms/WebControl-Empty.xft.xml
index 9876b2fa68..70f6733a7a 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebControl-Empty.xft.xml
+++ b/main/src/addins/AspNet/Templates/WebForms/WebControl-Empty.xft.xml
@@ -6,23 +6,22 @@
<!-- Template Header -->
<TemplateConfiguration>
<_Name>User Control</_Name>
- <_Category>ASP.NET</_Category>
+ <_Category>ASP.NET Web Forms</_Category>
<Icon>md-html-file-icon</Icon>
- <LanguageName>*</LanguageName>
+ <LanguageName>C#</LanguageName>
<ProjectType>AspNetApp</ProjectType>
<_Description>Creates an empty ASP.NET user control.</_Description>
</TemplateConfiguration>
<!-- Template Content -->
<TemplateFiles>
- <AspNetFile name="${Name}.ascx">
- <FileText>
-<![CDATA[<%@ Control Language="${AspNetLanguage}" ClassName="${Namespace}.${Name}" %>
+ <File name="${Name}.ascx">
+<![CDATA[<%@ Control Language="C#" ClassName="${Namespace}.${Name}" %>
<script runat="server">
-</script>]]>
- </FileText>
- </AspNetFile>
+</script>
+]]>
+ </File>
</TemplateFiles>
</Template>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebForm-CodeBehind.xft.xml b/main/src/addins/AspNet/Templates/WebForms/WebForm-CodeBehind.xft.xml
index 0f09abbccc..32d0625e56 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebForm-CodeBehind.xft.xml
+++ b/main/src/addins/AspNet/Templates/WebForms/WebForm-CodeBehind.xft.xml
@@ -7,22 +7,17 @@
<TemplateConfiguration>
<_Name>Web Form with CodeBehind</_Name>
<Icon>md-html-file-icon</Icon>
- <_Category>ASP.NET</_Category>
- <LanguageName>*</LanguageName>
+ <_Category>ASP.NET Web Forms</_Category>
+ <LanguageName>C#</LanguageName>
<ProjectType>AspNetApp</ProjectType>
<_Description>Creates an ASP.NET Web Form with a CodeBehind class.</_Description>
</TemplateConfiguration>
- <Conditions>
- <PartialTypeSupport Requirement="Enabled" />
- </Conditions>
-
<!-- Template Content -->
<TemplateFiles>
- <AspNetFile name="${Name}.aspx" DefaultExtension=".aspx">
- <FileText>
- <![CDATA[<%@ Page Language="${AspNetLanguage}" Inherits="${Namespace}.${Name}" %>
-${Doctype}
+ <File name="${Name}.aspx" DefaultExtension=".aspx">
+<![CDATA[<%@ Page Language="C#" Inherits="${Namespace}.${EscapedIdentifier}" %>
+<!DOCTYPE html>
<html>
<head runat="server">
<title>${Name}</title>
@@ -31,11 +26,10 @@ ${Doctype}
<form id="form1" runat="server">
</form>
</body>
-</html>]]>
- </FileText>
- </AspNetFile>
-
- <CodeTranslationFile name="${Name}.aspx.${LanguageExtension}" DependsOn="${Name}.aspx" >
+</html>
+]]>
+ </File>
+ <File name="${Name}.aspx.cs" DependsOn="${Name}.aspx" >
<![CDATA[using System;
using System.Web;
using System.Web.UI;
@@ -46,9 +40,10 @@ namespace ${Namespace} {
{
}
-}]]>
- </CodeTranslationFile>
- <CodeTranslationFile name="${Name}.aspx.designer.${LanguageExtension}" ShowAutogenerationNotice="True"
+}
+]]>
+ </File>
+ <File name="${Name}.aspx.designer.cs" ShowAutogenerationNotice="True"
AddStandardHeader="False" SuppressAutoOpen="True" DependsOn="${Name}.aspx" >
<![CDATA[using System;
using System.Web;
@@ -60,7 +55,8 @@ namespace ${Namespace} {
{
}
-}]]>
- </CodeTranslationFile>
+}
+]]>
+ </File>
</TemplateFiles>
</Template>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebForm-Empty.xft.xml b/main/src/addins/AspNet/Templates/WebForms/WebForm-Empty.xft.xml
index db8ed37e3d..25f85c13af 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebForm-Empty.xft.xml
+++ b/main/src/addins/AspNet/Templates/WebForms/WebForm-Empty.xft.xml
@@ -7,18 +7,17 @@
<TemplateConfiguration>
<_Name>Web Form</_Name>
<Icon>md-html-file-icon</Icon>
- <_Category>ASP.NET</_Category>
- <LanguageName>*</LanguageName>
+ <_Category>ASP.NET Web Forms</_Category>
+ <LanguageName>C#</LanguageName>
<ProjectType>AspNetApp</ProjectType>
<_Description>Creates an ASP.NET Web Form.</_Description>
</TemplateConfiguration>
<!-- Template Content -->
<TemplateFiles>
- <AspNetFile name="${Name}.aspx">
- <FileText>
- <![CDATA[<%@ Page Language="${AspNetLanguage}" %>
-${Doctype}
+ <File name="${Name}.aspx">
+<![CDATA[<%@ Page Language="C#" %>
+<!DOCTYPE html>
<html>
<head runat="server">
<title>${Name}</title>
@@ -31,8 +30,8 @@ ${Doctype}
</form>
</body>
-</html>]]>
- </FileText>
- </AspNetFile>
+</html>
+]]>
+ </File>
</TemplateFiles>
</Template>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebHandler-CodeBehind.xft.xml b/main/src/addins/AspNet/Templates/WebForms/WebHandler-CodeBehind.xft.xml
index 54f7de044b..90ad050459 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebHandler-CodeBehind.xft.xml
+++ b/main/src/addins/AspNet/Templates/WebForms/WebHandler-CodeBehind.xft.xml
@@ -7,21 +7,20 @@
<TemplateConfiguration>
<_Name>Web Handler with CodeBehind</_Name>
<Icon>md-html-file-icon</Icon>
- <_Category>ASP.NET</_Category>
- <LanguageName>*</LanguageName>
+ <_Category>ASP.NET Web Forms</_Category>
+ <LanguageName>C#</LanguageName>
<ProjectType>AspNetApp</ProjectType>
<_Description>Creates an ASP.NET Web Handler with a CodeBehind class.</_Description>
</TemplateConfiguration>
<!-- Template Content -->
<TemplateFiles>
- <AspNetFile name="${Name}.ashx">
- <FileText>
-<![CDATA[<%@ WebHandler Language="${AspNetLanguage}" Class="${Namespace}.${Name}" %>]]>
- </FileText>
- </AspNetFile>
+ <File name="${Name}.ashx">
+<![CDATA[<%@ WebHandler Language="C#" Class="${Namespace}.${EscapedIdentifier}" %>
+]]>
+ </File>
- <CodeTranslationFile name="${Name}.ashx.${LanguageExtension}" DependsOn="${Name}.ashx" >
+ <File name="${Name}.ashx.cs" DependsOn="${Name}.ashx" >
<![CDATA[using System;
using System.Web;
using System.Web.UI;
@@ -43,7 +42,8 @@ namespace ${Namespace}
}
}
}
-}]]>
- </CodeTranslationFile>
+}
+ ]]>
+ </File>
</TemplateFiles>
</Template>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebHandler-Empty.xft.xml b/main/src/addins/AspNet/Templates/WebForms/WebHandler-Empty.xft.xml
index 7aadf98d5c..c72cd119ae 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebHandler-Empty.xft.xml
+++ b/main/src/addins/AspNet/Templates/WebForms/WebHandler-Empty.xft.xml
@@ -7,21 +7,17 @@
<TemplateConfiguration>
<_Name>Web Handler</_Name>
<Icon>md-html-file-icon</Icon>
- <_Category>ASP.NET</_Category>
- <LanguageName>*</LanguageName>
+ <_Category>ASP.NET Web Forms</_Category>
+ <LanguageName>C#</LanguageName>
<ProjectType>AspNetApp</ProjectType>
<_Description>Creates an ASP.NET Web Handler.</_Description>
</TemplateConfiguration>
<!-- Template Content -->
<TemplateFiles>
- <AspNetFile name="${Name}.ashx">
- <FileText>
-<![CDATA[<%@ WebHandler Language="${AspNetLanguage}" Class="${Namespace}.${Name}" %>
-${CodeRegion:script1}
-]]> </FileText>
- <CodeTranslationFile TagName="script1">
-<![CDATA[using System;
+ <File name="${Name}.ashx">
+<![CDATA[<%@ WebHandler Language="C#" Class="${Namespace}.${EscapedIdentifier}" %>
+using System;
using System.Web;
namespace ${Namespace}
@@ -41,7 +37,6 @@ namespace ${Namespace}
}
}
}]]>
- </CodeTranslationFile>
- </AspNetFile>
+ </File>
</TemplateFiles>
</Template>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebService-CodeBehind.xft.xml b/main/src/addins/AspNet/Templates/WebForms/WebService-CodeBehind.xft.xml
index f1411944ac..b4138b2175 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebService-CodeBehind.xft.xml
+++ b/main/src/addins/AspNet/Templates/WebForms/WebService-CodeBehind.xft.xml
@@ -6,22 +6,20 @@
<!-- Template Header -->
<TemplateConfiguration>
<_Name>Web Service with CodeBehind</_Name>
- <_Category>ASP.NET</_Category>
+ <_Category>ASP.NET Web Forms</_Category>
<Icon>md-html-file-icon</Icon>
- <LanguageName>*</LanguageName>
+ <LanguageName>C#</LanguageName>
<ProjectType>AspNetApp</ProjectType>
<_Description>Creates an ASP.NET web service with a CodeBehind class.</_Description>
</TemplateConfiguration>
<!-- Template Content -->
<TemplateFiles>
- <AspNetFile name="${Name}.asmx">
- <FileText>
-<![CDATA[<%@ WebService Language="${AspNetLanguage}" Class="${Namespace}.${Name}" %>]]>
- </FileText>
- </AspNetFile>
-
- <CodeTranslationFile name="${Name}.asmx.${LanguageExtension}" DependsOn="${Name}.asmx" >
+ <File name="${Name}.asmx">
+<![CDATA[<%@ WebService Language="C#" Class="${Namespace}.${EscapedIdentifier}" %>
+]]>
+ </File>
+ <File name="${Name}.asmx.cs" DependsOn="${Name}.asmx" >
<![CDATA[using System;
using System.Web;
using System.Web.Services;
@@ -32,7 +30,8 @@ namespace ${Namespace}
{
}
-}]]>
- </CodeTranslationFile>
+}
+]]>
+ </File>
</TemplateFiles>
</Template>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebService-Empty.xft.xml b/main/src/addins/AspNet/Templates/WebForms/WebService-Empty.xft.xml
index 8a1f4bea5b..15ef51f31a 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/Templates/WebService-Empty.xft.xml
+++ b/main/src/addins/AspNet/Templates/WebForms/WebService-Empty.xft.xml
@@ -6,23 +6,18 @@
<!-- Template Header -->
<TemplateConfiguration>
<_Name>Web Service</_Name>
- <_Category>ASP.NET</_Category>
+ <_Category>ASP.NET Web Forms</_Category>
<Icon>md-html-file-icon</Icon>
- <LanguageName>*</LanguageName>
+ <LanguageName>C#</LanguageName>
<ProjectType>AspNetApp</ProjectType>
<_Description>Creates an ASP.NET web service.</_Description>
</TemplateConfiguration>
<!-- Template Content -->
<TemplateFiles>
- <AspNetFile name="${Name}.asmx">
- <FileText>
-<![CDATA[<%@ WebService Language="${AspNetLanguage}" Class="${Namespace}.${Name}" %>
-${CodeRegion:script1}
-]]>
- </FileText>
- <CodeTranslationFile TagName="script1">
-<![CDATA[using System;
+ <File name="${Name}.asmx">
+<![CDATA[<%@ WebService Language="C#" Class="${Namespace}.${EscapedIdentifier}" %>
+using System;
using System.Web.Services;
namespace ${Namespace}
@@ -30,8 +25,8 @@ namespace ${Namespace}
class ${EscapedIdentifier}
{
}
-}]]>
- </CodeTranslationFile>
- </AspNetFile>
+}
+]]>
+ </File>
</TemplateFiles>
</Template>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/Test/Test.cs b/main/src/addins/AspNet/Test/Test.cs
index e69de29bb2..e69de29bb2 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/Test/Test.cs
+++ b/main/src/addins/AspNet/Test/Test.cs
diff --git a/main/tests/UnitTests/MonoDevelop.Xml.StateEngine/HtmlImplicitClosingTests.cs b/main/src/addins/AspNet/Tests/Html/HtmlImplicitClosingTests.cs
index 6bd053bcd0..10aeaa9398 100644
--- a/main/tests/UnitTests/MonoDevelop.Xml.StateEngine/HtmlImplicitClosingTests.cs
+++ b/main/src/addins/AspNet/Tests/Html/HtmlImplicitClosingTests.cs
@@ -23,27 +23,27 @@
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
-using System;
-using System.Linq;
-using MonoDevelop.AspNet.StateEngine;
+using MonoDevelop.AspNet.Html.Parser;
+using MonoDevelop.Xml.Parser;
+using MonoDevelop.Xml.Tests.Parser;
using NUnit.Framework;
-namespace MonoDevelop.Xml.StateEngine
+namespace MonoDevelop.AspNet.Tests.Html
{
[TestFixture]
public class HtmlImplicitClosingTests : ParsingTests
{
- public override XmlFreeState CreateRootState ()
+ public override XmlRootState CreateRootState ()
{
- return new XmlFreeState (new HtmlTagState (), new HtmlClosingTagState (true));
+ return new XmlRootState (new HtmlTagState (), new HtmlClosingTagState (true));
}
[Test]
public void TestHtmlImplicitClosing ()
{
- TestParser parser = new TestParser (CreateRootState ());
+ var parser = new TestXmlParser (CreateRootState ());
parser.Parse(@"
<html>
<body>
diff --git a/main/tests/UnitTests/MonoDevelop.Xml.StateEngine/HtmlParsingTests.cs b/main/src/addins/AspNet/Tests/Html/HtmlParsingTests.cs
index d2c02c11ed..7f6c78549a 100644
--- a/main/tests/UnitTests/MonoDevelop.Xml.StateEngine/HtmlParsingTests.cs
+++ b/main/src/addins/AspNet/Tests/Html/HtmlParsingTests.cs
@@ -24,28 +24,26 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
-using System;
-using System.Linq;
-using MonoDevelop.AspNet.StateEngine;
+using MonoDevelop.AspNet.Html.Parser;
+using MonoDevelop.Xml.Parser;
+using MonoDevelop.Xml.Tests.Parser;
using NUnit.Framework;
-namespace MonoDevelop.Xml.StateEngine
+namespace MonoDevelop.AspNet.Tests.Html
{
-
[TestFixture]
- public class HtmlParsingTests : ParsingTests
+ class HtmlParsingTests : ParsingTests
{
-
- public override XmlFreeState CreateRootState ()
+ public override XmlRootState CreateRootState ()
{
- return new XmlFreeState (new HtmlTagState (), new HtmlClosingTagState (true));
+ return new XmlRootState (new HtmlTagState (), new HtmlClosingTagState (true));
}
[Test]
public void TestAutoClosing ()
{
- TestParser parser = new TestParser (CreateRootState ());
+ var parser = new TestXmlParser (CreateRootState ());
parser.Parse (@"
<html>
<body>
diff --git a/main/src/addins/AspNet/Tests/MonoDevelop.AspNet.Tests.csproj b/main/src/addins/AspNet/Tests/MonoDevelop.AspNet.Tests.csproj
new file mode 100644
index 0000000000..7dcc750cb8
--- /dev/null
+++ b/main/src/addins/AspNet/Tests/MonoDevelop.AspNet.Tests.csproj
@@ -0,0 +1,124 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <ProductVersion>8.0.30703</ProductVersion>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{BEFADF93-EE92-4806-9C0B-937B25311C95}</ProjectGuid>
+ <OutputType>Library</OutputType>
+ <RootNamespace>MonoDevelop.AspNet.Tests</RootNamespace>
+ <AssemblyName>MonoDevelop.AspNet.Tests</AssemblyName>
+ <TestRunnerCommand>..\..\..\..\build\bin\mdtool.exe</TestRunnerCommand>
+ <TestRunnerArgs>run-md-tests</TestRunnerArgs>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ <DebugSymbols>true</DebugSymbols>
+ <DebugType>full</DebugType>
+ <Optimize>false</Optimize>
+ <OutputPath>..\..\..\..\build\tests</OutputPath>
+ <DefineConstants>DEBUG;</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ <ConsolePause>false</ConsolePause>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ <DebugType>full</DebugType>
+ <Optimize>true</Optimize>
+ <OutputPath>..\..\..\..\build\tests</OutputPath>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ <ConsolePause>false</ConsolePause>
+ </PropertyGroup>
+ <ItemGroup>
+ <Reference Include="System" />
+ <Reference Include="gtk-sharp, Version=2.12.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f" />
+ <Reference Include="atk-sharp, Version=2.12.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f" />
+ <Reference Include="glib-sharp, Version=2.12.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f" />
+ <Reference Include="gdk-sharp, Version=2.12.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f" />
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="Razor\Dom\RazorCodeBlockParsingTests.cs" />
+ <Compile Include="Razor\Dom\RazorCodeFragmentsParsingTests.cs" />
+ <Compile Include="Razor\Dom\RazorCommentParsingTests.cs" />
+ <Compile Include="Razor\Dom\RazorDirectivesParsingTests.cs" />
+ <Compile Include="Razor\Dom\RazorExplicitExpressionsParsingTests.cs" />
+ <Compile Include="Razor\Dom\RazorImplicitExpressionsParsingTests.cs" />
+ <Compile Include="Razor\Dom\RazorParsingTests.cs" />
+ <Compile Include="Razor\Dom\RazorStatementsParsingTests.cs" />
+ <Compile Include="Razor\RazorCompletionTesting.cs" />
+ <Compile Include="WebForms\WebFormsTesting.cs" />
+ <Compile Include="WebForms\WebFormsParsingTests.cs" />
+ <Compile Include="WebForms\WebFormsCompletionTests.cs" />
+ <Compile Include="Razor\RazorCompletionTests.cs" />
+ <Compile Include="Html\HtmlParsingTests.cs" />
+ <Compile Include="Html\HtmlImplicitClosingTests.cs" />
+ </ItemGroup>
+ <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
+ <ItemGroup>
+ <ProjectReference Include="..\..\..\..\external\guiunit\src\framework\GuiUnit_NET_4_0.csproj">
+ <Project>{E13A0A7B-4DE6-43ED-A139-41052D065A9B}</Project>
+ <Name>GuiUnit_NET_4_0</Name>
+ <Private>False</Private>
+ </ProjectReference>
+ <ProjectReference Include="..\..\..\core\MonoDevelop.Core\MonoDevelop.Core.csproj">
+ <Project>{7525BB88-6142-4A26-93B9-A30C6983390A}</Project>
+ <Name>MonoDevelop.Core</Name>
+ <Private>False</Private>
+ </ProjectReference>
+ <ProjectReference Include="..\..\..\core\MonoDevelop.Ide\MonoDevelop.Ide.csproj">
+ <Project>{27096E7F-C91C-4AC6-B289-6897A701DF21}</Project>
+ <Name>MonoDevelop.Ide</Name>
+ <Private>False</Private>
+ </ProjectReference>
+ <ProjectReference Include="..\..\..\..\external\nrefactory\ICSharpCode.NRefactory\ICSharpCode.NRefactory.csproj">
+ <Project>{3B2A5653-EC97-4001-BB9B-D90F1AF2C371}</Project>
+ <Name>ICSharpCode.NRefactory</Name>
+ <Private>False</Private>
+ </ProjectReference>
+ <ProjectReference Include="..\..\MonoDevelop.DesignerSupport\MonoDevelop.DesignerSupport.csproj">
+ <Project>{2C24D515-4A2C-445C-8419-C09231913CFA}</Project>
+ <Name>MonoDevelop.DesignerSupport</Name>
+ <Private>False</Private>
+ </ProjectReference>
+ <ProjectReference Include="..\..\..\core\Mono.Texteditor\Mono.TextEditor.csproj">
+ <Project>{A2329308-3751-4DBD-9A75-5F7B8B024625}</Project>
+ <Name>Mono.TextEditor</Name>
+ <Private>False</Private>
+ </ProjectReference>
+ <ProjectReference Include="..\..\..\..\tests\UnitTests\UnitTests.csproj">
+ <Project>{1497D0A8-AFF1-4938-BC22-BE79B358BA5B}</Project>
+ <Name>UnitTests</Name>
+ <Private>False</Private>
+ </ProjectReference>
+ <ProjectReference Include="..\..\Xml\MonoDevelop.Xml.csproj">
+ <Project>{86DFC74A-B0B6-4C73-9E05-9098DA8FA5F1}</Project>
+ <Name>MonoDevelop.Xml</Name>
+ <Private>False</Private>
+ </ProjectReference>
+ <ProjectReference Include="..\..\Xml\Tests\MonoDevelop.Xml.Tests.csproj">
+ <Project>{8E47B77A-A649-494C-9BF2-B845E39CADE9}</Project>
+ <Name>MonoDevelop.Xml.Tests</Name>
+ <Private>False</Private>
+ </ProjectReference>
+ <ProjectReference Include="..\MonoDevelop.AspNet.csproj">
+ <Project>{1CF94D07-5480-4D10-A3CD-2EBD5E87B02E}</Project>
+ <Name>MonoDevelop.AspNet</Name>
+ <Private>False</Private>
+ </ProjectReference>
+ </ItemGroup>
+ <ItemGroup>
+ <Folder Include="Razor\" />
+ <Folder Include="Razor\Dom\" />
+ <Folder Include="Html\" />
+ </ItemGroup>
+ <ProjectExtensions>
+ <MonoDevelop>
+ <Properties>
+ <Policies>
+ <DotNetNamingPolicy DirectoryNamespaceAssociation="PrefixedHierarchical" ResourceNamePolicy="FileName" />
+ </Policies>
+ </Properties>
+ </MonoDevelop>
+ </ProjectExtensions>
+</Project>
diff --git a/main/tests/UnitTests/MonoDevelop.AspNet.Mvc.StateEngine/RazorCodeBlockParsingTests.cs b/main/src/addins/AspNet/Tests/Razor/Dom/RazorCodeBlockParsingTests.cs
index d3bb0bb7a6..2467c5769d 100644
--- a/main/tests/UnitTests/MonoDevelop.AspNet.Mvc.StateEngine/RazorCodeBlockParsingTests.cs
+++ b/main/src/addins/AspNet/Tests/Razor/Dom/RazorCodeBlockParsingTests.cs
@@ -24,14 +24,11 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
using NUnit.Framework;
-using MonoDevelop.AspNet.Mvc.StateEngine;
+using MonoDevelop.AspNet.Razor.Parser;
+using MonoDevelop.AspNet.Razor.Dom;
-namespace MonoDevelop.AspNet.Mvc.StateEngine
+namespace MonoDevelop.AspNet.Tests.Razor.Dom
{
[TestFixture]
public class RazorCodeBlockParsingTests : RazorParsingTests
@@ -44,7 +41,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
parser.AssertPath ("//@{ }");
parser.AssertNodeIs<RazorCodeBlock> ();
}, () => {
- parser.AssertStateIs<RazorFreeState> ();
+ parser.AssertStateIs<RazorRootState> ();
parser.AssertPath ("/");
});
}
@@ -57,7 +54,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
parser.AssertPath ("//@{ }");
parser.AssertNodeIs<RazorCodeBlock> ();
}, () => {
- parser.AssertStateIs<RazorFreeState> ();
+ parser.AssertStateIs<RazorRootState> ();
parser.AssertPath ("/");
});
}
diff --git a/main/tests/UnitTests/MonoDevelop.AspNet.Mvc.StateEngine/RazorCodeFragmentsParsingTests.cs b/main/src/addins/AspNet/Tests/Razor/Dom/RazorCodeFragmentsParsingTests.cs
index 29c15a278f..54403e9e23 100644
--- a/main/tests/UnitTests/MonoDevelop.AspNet.Mvc.StateEngine/RazorCodeFragmentsParsingTests.cs
+++ b/main/src/addins/AspNet/Tests/Razor/Dom/RazorCodeFragmentsParsingTests.cs
@@ -25,9 +25,9 @@
// THE SOFTWARE.
using NUnit.Framework;
-using MonoDevelop.AspNet.Mvc.StateEngine;
+using MonoDevelop.AspNet.Razor.Parser;
-namespace MonoDevelop.AspNet.Mvc.StateEngine
+namespace MonoDevelop.AspNet.Tests.Razor.Dom
{
[TestFixture]
public class RazorCodeFragmentsParsingTests : RazorParsingTests
diff --git a/main/tests/UnitTests/MonoDevelop.AspNet.Mvc.StateEngine/RazorCommentParsingTests.cs b/main/src/addins/AspNet/Tests/Razor/Dom/RazorCommentParsingTests.cs
index 7bc2139a81..32adbde172 100644
--- a/main/tests/UnitTests/MonoDevelop.AspNet.Mvc.StateEngine/RazorCommentParsingTests.cs
+++ b/main/src/addins/AspNet/Tests/Razor/Dom/RazorCommentParsingTests.cs
@@ -25,9 +25,9 @@
// THE SOFTWARE.
using NUnit.Framework;
-using MonoDevelop.AspNet.Mvc.StateEngine;
+using MonoDevelop.AspNet.Razor.Parser;
-namespace MonoDevelop.AspNet.Mvc.StateEngine
+namespace MonoDevelop.AspNet.Tests.Razor.Dom
{
[TestFixture]
public class RazorCommentParsingTests : RazorParsingTests
@@ -39,7 +39,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
parser.AssertStateIs<RazorCommentState> ();
parser.AssertPath ("//@* *@");
}, () => {
- parser.AssertStateIs<RazorFreeState> ();
+ parser.AssertStateIs<RazorRootState> ();
parser.AssertPath ("/");
});
}
@@ -51,7 +51,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
parser.AssertStateIs<RazorCommentState> ();
parser.AssertPath ("//@* *@");
}, () => {
- parser.AssertStateIs<RazorFreeState> ();
+ parser.AssertStateIs<RazorRootState> ();
parser.AssertPath ("/");
});
}
@@ -63,7 +63,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
parser.AssertStateIs<RazorCommentState> ();
parser.AssertPath ("//@* *@");
}, () => {
- parser.AssertStateIs<RazorFreeState> ();
+ parser.AssertStateIs<RazorRootState> ();
parser.AssertPath ("/");
});
}
@@ -90,7 +90,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
parser.AssertStateIs<RazorCommentState> ();
parser.AssertPath ("//@* *@");
}, () => {
- parser.AssertStateIs<RazorFreeState> ();
+ parser.AssertStateIs<RazorRootState> ();
parser.AssertPath ("/");
});
}
diff --git a/main/tests/UnitTests/MonoDevelop.AspNet.Mvc.StateEngine/RazorDirectivesParsingTests.cs b/main/src/addins/AspNet/Tests/Razor/Dom/RazorDirectivesParsingTests.cs
index 172f91ddb4..24fefb9d7f 100644
--- a/main/tests/UnitTests/MonoDevelop.AspNet.Mvc.StateEngine/RazorDirectivesParsingTests.cs
+++ b/main/src/addins/AspNet/Tests/Razor/Dom/RazorDirectivesParsingTests.cs
@@ -24,10 +24,10 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
-using MonoDevelop.AspNet.Mvc.StateEngine;
using NUnit.Framework;
+using MonoDevelop.AspNet.Razor.Parser;
-namespace MonoDevelop.AspNet.Mvc.StateEngine
+namespace MonoDevelop.AspNet.Tests.Razor.Dom
{
[TestFixture]
public class RazorDirectivesParsingTests : RazorParsingTests
@@ -39,7 +39,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
parser.AssertStateIs<RazorDirectiveState> ();
parser.AssertPath ("//@inherits");
}, () => {
- parser.AssertStateIs<RazorFreeState> ();
+ parser.AssertStateIs<RazorRootState> ();
parser.AssertPath ("/");
});
}
@@ -51,7 +51,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
parser.AssertStateIs<RazorDirectiveState> ();
parser.AssertPath ("//@model");
}, () => {
- parser.AssertStateIs<RazorFreeState> ();
+ parser.AssertStateIs<RazorRootState> ();
parser.AssertPath ("/");
});
}
@@ -63,7 +63,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
parser.AssertStateIs<RazorDirectiveState> ();
parser.AssertPath ("//@sessionstate");
}, () => {
- parser.AssertStateIs<RazorFreeState> ();
+ parser.AssertStateIs<RazorRootState> ();
parser.AssertPath ("/");
});
}
@@ -75,7 +75,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
parser.AssertStateIs<RazorDirectiveState> ();
parser.AssertPath ("//@layout");
}, () => {
- parser.AssertStateIs<RazorFreeState> ();
+ parser.AssertStateIs<RazorRootState> ();
parser.AssertPath ("/");
});
}
@@ -83,11 +83,11 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
[Test]
public void UsingDirective ()
{
- parser.Parse ("@using System.Foo.Bar$\n", () => {
+ parser.Parse ("@using System.Foo.Bar$\n$", () => {
parser.AssertStateIs<RazorDirectiveState> ();
parser.AssertPath ("//@using");
}, () => {
- parser.AssertStateIs<RazorFreeState> ();
+ parser.AssertStateIs<RazorRootState> ();
parser.AssertPath ("/");
});
}
@@ -99,7 +99,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
parser.AssertStateIs<RazorDirectiveState> ();
parser.AssertPath ("//@using");
}, () => {
- parser.AssertStateIs<RazorFreeState> ();
+ parser.AssertStateIs<RazorRootState> ();
parser.AssertPath ("/");
});
}
@@ -114,7 +114,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
parser.AssertStateIs<RazorDirectiveState> ();
parser.AssertPath ("//@using");
}, () => {
- parser.AssertStateIs<RazorFreeState> ();
+ parser.AssertStateIs<RazorRootState> ();
parser.AssertPath ("/");
});
}
@@ -126,7 +126,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
parser.AssertStateIs<RazorDirectiveState> ();
parser.AssertPath ("//@inherits");
}, () => {
- parser.AssertStateIs<RazorFreeState> ();
+ parser.AssertStateIs<RazorRootState> ();
parser.AssertPath ("/");
});
}
@@ -138,7 +138,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
parser.AssertStateIs<RazorDirectiveState> ();
parser.AssertPath ("//@inherits");
}, () => {
- parser.AssertStateIs<RazorFreeState> ();
+ parser.AssertStateIs<RazorRootState> ();
parser.AssertPath ("/");
});
}
@@ -150,7 +150,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
parser.AssertStateIs<RazorDirectiveState> ();
parser.AssertPath ("//@model");
}, () => {
- parser.AssertStateIs<RazorFreeState> ();
+ parser.AssertStateIs<RazorRootState> ();
parser.AssertPath ("/");
});
}
@@ -165,7 +165,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
parser.AssertStateIs<RazorDirectiveState> ();
parser.AssertPath ("//@functions");
}, () => {
- parser.AssertStateIs<RazorFreeState> ();
+ parser.AssertStateIs<RazorRootState> ();
parser.AssertPath ("/");
});
}
@@ -180,7 +180,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
parser.AssertStateIs<RazorDirectiveState> ();
parser.AssertPath ("//@section/p");
}, () => {
- parser.AssertStateIs<RazorFreeState> ();
+ parser.AssertStateIs<RazorRootState> ();
parser.AssertPath ("/");
});
}
@@ -195,7 +195,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
parser.AssertStateIs<RazorDirectiveState> ();
parser.AssertPath ("//@helper");
}, () => {
- parser.AssertStateIs<RazorFreeState> ();
+ parser.AssertStateIs<RazorRootState> ();
parser.AssertPath ("/");
});
}
@@ -210,7 +210,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
parser.AssertStateIs<RazorDirectiveState> ();
parser.AssertPath ("//@helper");
}, () => {
- parser.AssertStateIs<RazorFreeState> ();
+ parser.AssertStateIs<RazorRootState> ();
parser.AssertPath ("/");
});
}
diff --git a/main/tests/UnitTests/MonoDevelop.AspNet.Mvc.StateEngine/RazorExplicitExpressionsParsingTests.cs b/main/src/addins/AspNet/Tests/Razor/Dom/RazorExplicitExpressionsParsingTests.cs
index 5fef8773be..c37fb43d28 100644
--- a/main/tests/UnitTests/MonoDevelop.AspNet.Mvc.StateEngine/RazorExplicitExpressionsParsingTests.cs
+++ b/main/src/addins/AspNet/Tests/Razor/Dom/RazorExplicitExpressionsParsingTests.cs
@@ -25,9 +25,10 @@
// THE SOFTWARE.
using NUnit.Framework;
-using MonoDevelop.AspNet.Mvc.StateEngine;
+using MonoDevelop.AspNet.Razor.Parser;
+using MonoDevelop.AspNet.Razor.Dom;
-namespace MonoDevelop.AspNet.Mvc.StateEngine
+namespace MonoDevelop.AspNet.Tests.Razor.Dom
{
[TestFixture]
public class RazorExplicitExpressionsParsingTests : RazorParsingTests
@@ -40,7 +41,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
parser.AssertPath ("//@( )");
parser.AssertNodeIs<RazorExplicitExpression> ();
}, () => {
- parser.AssertStateIs<RazorFreeState> ();
+ parser.AssertStateIs<RazorRootState> ();
parser.AssertPath ("/");
});
}
@@ -53,7 +54,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
parser.AssertPath ("//@( )");
parser.AssertNodeIs<RazorExplicitExpression> ();
}, () => {
- parser.AssertStateIs<RazorFreeState> ();
+ parser.AssertStateIs<RazorRootState> ();
parser.AssertPath ("/");
});
}
@@ -66,7 +67,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
parser.AssertPath ("//@( )");
parser.AssertNodeIs<RazorExplicitExpression> ();
}, () => {
- parser.AssertStateIs<RazorFreeState> ();
+ parser.AssertStateIs<RazorRootState> ();
parser.AssertPath ("/");
});
}
diff --git a/main/tests/UnitTests/MonoDevelop.AspNet.Mvc.StateEngine/RazorImplicitExpressionsParsingTests.cs b/main/src/addins/AspNet/Tests/Razor/Dom/RazorImplicitExpressionsParsingTests.cs
index 8e165dd28a..15c9242564 100644
--- a/main/tests/UnitTests/MonoDevelop.AspNet.Mvc.StateEngine/RazorImplicitExpressionsParsingTests.cs
+++ b/main/src/addins/AspNet/Tests/Razor/Dom/RazorImplicitExpressionsParsingTests.cs
@@ -25,9 +25,10 @@
// THE SOFTWARE.
using NUnit.Framework;
-using MonoDevelop.AspNet.Mvc.StateEngine;
+using MonoDevelop.AspNet.Razor.Parser;
+using MonoDevelop.AspNet.Razor.Dom;
-namespace MonoDevelop.AspNet.Mvc.StateEngine
+namespace MonoDevelop.AspNet.Tests.Razor.Dom
{
[TestFixture]
public class RazorImplicitExpressionsParsingTests : RazorParsingTests
@@ -67,7 +68,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
[Test]
public void ImplicitExpressionQuotes ()
{
- parser.Parse ("@ViewData[\"Foo$\"]", 'X', () => {
+ parser.Parse ("@ViewData[\"Foo$\"]", () => {
parser.AssertStateIs<RazorExpressionState> ();
parser.AssertNodeIs<RazorImplicitExpression> ();
parser.AssertPath ("//@");
@@ -78,7 +79,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
public void ImplicitExpressionTerminatesAtWhitespace ()
{
parser.Parse ("@Foo X", 'X', () => {
- parser.AssertStateIs<RazorFreeState> ();
+ parser.AssertStateIs<RazorRootState> ();
parser.AssertPath ("/");
});
}
@@ -91,7 +92,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
parser.AssertNodeIs<RazorImplicitExpression> ();
parser.AssertPath ("//@");
}, () => {
- parser.AssertStateIs<RazorFreeState> ();
+ parser.AssertStateIs<RazorRootState> ();
parser.AssertPath ("/");
});
}
@@ -100,7 +101,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
public void ImplicitExpressionTerminatesAtTag ()
{
parser.Parse ("@Foo<p>X", 'X', () => {
- parser.AssertStateIs<RazorFreeState> ();
+ parser.AssertStateIs<RazorRootState> ();
parser.AssertPath ("//p");
});
}
@@ -109,7 +110,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
public void ImplicitExpressionTerminatesAtTransition ()
{
parser.Parse ("@Foo@X", 'X', () => {
- parser.AssertStateIs<RazorFreeState> ();
+ parser.AssertStateIs<RazorRootState> ();
parser.AssertPath ("/");
});
}
@@ -122,7 +123,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
parser.AssertNodeIs<RazorImplicitExpression> ();
parser.AssertPath ("//body/p/@");
}, () => {
- parser.AssertStateIs<RazorFreeState> ();
+ parser.AssertStateIs<RazorRootState> ();
parser.AssertPath ("/");
});
}
@@ -131,7 +132,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
public void EmailAddressNotRecognizedAsExpression ()
{
parser.Parse ("foo@barX.com", 'X', () => {
- parser.AssertStateIs<RazorFreeState> ();
+ parser.AssertStateIs<RazorRootState> ();
parser.AssertPath ("/");
});
}
diff --git a/main/tests/UnitTests/MonoDevelop.AspNet.Mvc.StateEngine/RazorParsingTests.cs b/main/src/addins/AspNet/Tests/Razor/Dom/RazorParsingTests.cs
index e44ebbf4aa..505368c6c0 100644
--- a/main/tests/UnitTests/MonoDevelop.AspNet.Mvc.StateEngine/RazorParsingTests.cs
+++ b/main/src/addins/AspNet/Tests/Razor/Dom/RazorParsingTests.cs
@@ -24,25 +24,25 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
-using MonoDevelop.Xml.StateEngine;
-using MonoDevelop.AspNet.Mvc.StateEngine;
using NUnit.Framework;
+using MonoDevelop.AspNet.Razor.Parser;
+using MonoDevelop.Xml.Tests.Parser;
-namespace MonoDevelop.AspNet.Mvc.StateEngine
+namespace MonoDevelop.AspNet.Tests.Razor.Dom
{
[TestFixture]
public abstract class RazorParsingTests
{
- protected TestParser parser;
+ protected TestXmlParser parser;
[SetUp]
public void Init ()
{
- parser = new TestParser (new RazorTestFreeState ());
+ parser = new TestXmlParser (new RazorTestFreeState ());
}
}
- class RazorTestFreeState : RazorFreeState
+ class RazorTestFreeState : RazorRootState
{
public RazorTestFreeState ()
{
diff --git a/main/tests/UnitTests/MonoDevelop.AspNet.Mvc.StateEngine/RazorStatementsParsingTests.cs b/main/src/addins/AspNet/Tests/Razor/Dom/RazorStatementsParsingTests.cs
index c22642e630..0adde29d91 100644
--- a/main/tests/UnitTests/MonoDevelop.AspNet.Mvc.StateEngine/RazorStatementsParsingTests.cs
+++ b/main/src/addins/AspNet/Tests/Razor/Dom/RazorStatementsParsingTests.cs
@@ -25,10 +25,11 @@
// THE SOFTWARE.
using NUnit.Framework;
-using MonoDevelop.AspNet.Mvc.StateEngine;
-using MonoDevelop.Xml.StateEngine;
+using MonoDevelop.AspNet.Razor.Parser;
+using MonoDevelop.AspNet.Razor.Dom;
+using MonoDevelop.Xml.Dom;
-namespace MonoDevelop.AspNet.Mvc.StateEngine
+namespace MonoDevelop.AspNet.Tests.Razor.Dom
{
[TestFixture]
public class RazorStatementsParsingTests : RazorParsingTests
@@ -41,7 +42,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
parser.AssertPath ("//@for");
parser.AssertNodeIs<RazorStatement> ();
}, () => {
- parser.AssertStateIs<RazorFreeState> ();
+ parser.AssertStateIs<RazorRootState> ();
parser.AssertPath ("/");
});
}
@@ -54,7 +55,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
parser.AssertPath ("//@foreach");
parser.AssertNodeIs<RazorStatement> ();
}, () => {
- parser.AssertStateIs<RazorFreeState> ();
+ parser.AssertStateIs<RazorRootState> ();
parser.AssertPath ("/");
});
}
@@ -67,7 +68,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
parser.AssertPath ("//@switch");
parser.AssertNodeIs<RazorStatement> ();
}, () => {
- parser.AssertStateIs<RazorFreeState> ();
+ parser.AssertStateIs<RazorRootState> ();
parser.AssertPath ("/");
});
}
@@ -80,7 +81,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
parser.AssertPath ("//@while");
parser.AssertNodeIs<RazorStatement> ();
}, () => {
- parser.AssertStateIs<RazorFreeState> ();
+ parser.AssertStateIs<RazorRootState> ();
parser.AssertPath ("/");
});
}
@@ -93,7 +94,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
parser.AssertPath ("//@lock");
parser.AssertNodeIs<RazorStatement> ();
}, () => {
- parser.AssertStateIs<RazorFreeState> ();
+ parser.AssertStateIs<RazorRootState> ();
parser.AssertPath ("/");
});
}
@@ -106,7 +107,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
parser.AssertPath ("//@do");
parser.AssertNodeIs<RazorStatement> ();
}, () => {
- parser.AssertStateIs<RazorFreeState> ();
+ parser.AssertStateIs<RazorRootState> ();
parser.AssertPath ("/");
});
}
@@ -119,7 +120,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
parser.AssertPath ("//@using");
parser.AssertNodeIs<RazorStatement> ();
}, () => {
- parser.AssertStateIs<RazorFreeState> ();
+ parser.AssertStateIs<RazorRootState> ();
parser.AssertPath ("/");
});
}
@@ -146,7 +147,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
parser.AssertPath ("//@if");
parser.AssertNodeIs<RazorStatement> ();
}, () => {
- parser.AssertStateIs<RazorFreeState> ();
+ parser.AssertStateIs<RazorRootState> ();
parser.AssertPath ("/");
});
}
@@ -229,7 +230,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
parser.AssertPath ("//@try");
parser.AssertNodeIs<RazorStatement> ();
}, () => {
- parser.AssertStateIs<RazorFreeState> ();
+ parser.AssertStateIs<RazorRootState> ();
parser.AssertPath ("/");
});
}
@@ -290,7 +291,7 @@ namespace MonoDevelop.AspNet.Mvc.StateEngine
parser.AssertStateIs<RazorStatementState> ();
parser.AssertPath ("//@foreach");
}, () => {
- parser.AssertStateIs<RazorFreeState> ();
+ parser.AssertStateIs<RazorRootState> ();
parser.AssertPath ("/");
});
}
diff --git a/main/tests/UnitTests/MonoDevelop.AspNet.Mvc.Completion/RazorCompletionTesting.cs b/main/src/addins/AspNet/Tests/Razor/RazorCompletionTesting.cs
index a3a983c65c..7da98546eb 100644
--- a/main/tests/UnitTests/MonoDevelop.AspNet.Mvc.Completion/RazorCompletionTesting.cs
+++ b/main/src/addins/AspNet/Tests/Razor/RazorCompletionTesting.cs
@@ -24,23 +24,23 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
-using MonoDevelop.Ide.CodeCompletion;
+using System.IO;
+using ICSharpCode.NRefactory.Completion;
+using MonoDevelop.AspNet.Projects;
+using MonoDevelop.AspNet.Razor;
+using MonoDevelop.AspNet.Razor.Parser;
using MonoDevelop.CSharpBinding;
using MonoDevelop.CSharpBinding.Tests;
-using MonoDevelop.AspNet.Mvc;
-using MonoDevelop.Ide.TypeSystem;
+using MonoDevelop.Ide.CodeCompletion;
using MonoDevelop.Ide.Gui;
-using MonoDevelop.AspNet.Mvc.Parser;
-using System.IO;
-using MonoDevelop.AspNet.Mvc.Gui;
+using MonoDevelop.Ide.TypeSystem;
using MonoDevelop.Projects;
-using ICSharpCode.NRefactory.Completion;
-namespace MonoDevelop.AspNet.Mvc.Completion
+namespace MonoDevelop.AspNet.Tests.Razor
{
//largely copied from MonoDevelop.AspNet.Tests.AspNetTesting
- public static class RazorCompletionTesting
+ static class RazorCompletionTesting
{
static readonly string extension = ".cshtml";
@@ -92,7 +92,8 @@ namespace MonoDevelop.AspNet.Mvc.Completion
cursorPosition = endPos - 1;
}
- var project = new AspMvc3Project ("C#");
+ var project = new AspNetAppProject ("C#");
+
project.FileName = UnitTests.TestBase.GetTempFile (".csproj");
string file = UnitTests.TestBase.GetTempFile (extension);
project.AddFile (file);
@@ -111,7 +112,7 @@ namespace MonoDevelop.AspNet.Mvc.Completion
tww.ViewContent = sev;
var doc = new Document (tww);
- var parser = new RazorTestingParser () {
+ var parser = new RazorTestingParser {
Doc = doc
};
var parsedDoc = parser.Parse (false, sev.ContentName, new StringReader (parsedText), project);
diff --git a/main/tests/UnitTests/MonoDevelop.AspNet.Mvc.Completion/CompletionTests.cs b/main/src/addins/AspNet/Tests/Razor/RazorCompletionTests.cs
index e1ab2783e5..98b36239c4 100644
--- a/main/tests/UnitTests/MonoDevelop.AspNet.Mvc.Completion/CompletionTests.cs
+++ b/main/src/addins/AspNet/Tests/Razor/RazorCompletionTests.cs
@@ -27,10 +27,11 @@
using NUnit.Framework;
using UnitTests;
-namespace MonoDevelop.AspNet.Mvc.Completion
+namespace MonoDevelop.AspNet.Tests.Razor
{
+ [Ignore ("Not working")]
[TestFixture]
- public class CompletionTests : TestBase
+ class RazorCompletionTests : TestBase
{
[Test]
public void HtmlTagsCompletion ()
diff --git a/main/tests/UnitTests/MonoDevelop.AspNet/AspNetCompletionTests.cs b/main/src/addins/AspNet/Tests/WebForms/WebFormsCompletionTests.cs
index 5f5fa91d54..0c041400dc 100644
--- a/main/tests/UnitTests/MonoDevelop.AspNet/AspNetCompletionTests.cs
+++ b/main/src/addins/AspNet/Tests/WebForms/WebFormsCompletionTests.cs
@@ -27,57 +27,56 @@
using System;
using NUnit.Framework;
-namespace MonoDevelop.AspNet.Tests
+namespace MonoDevelop.AspNet.Tests.WebForms
{
-
[TestFixture]
- public class AspNetCompletionTests : UnitTests.TestBase
+ class WebFormsCompletionTests : UnitTests.TestBase
{
[Test]
public void DirectiveCompletion ()
{
- var provider = AspNetTesting.CreateProvider (@"<%@ $ %>", ".aspx");
+ var provider = WebFormsTesting.CreateProvider (@"<%@ $ %>", ".aspx");
Assert.IsNotNull (provider);
Assert.AreEqual (9, provider.Count);
Assert.IsNotNull (provider.Find ("Page"));
Assert.IsNotNull (provider.Find ("Register"));
- provider = AspNetTesting.CreateProvider (@"<%@ $ %>", ".master");
+ provider = WebFormsTesting.CreateProvider (@"<%@ $ %>", ".master");
Assert.IsNotNull (provider);
Assert.AreEqual (7, provider.Count);
Assert.IsNotNull (provider.Find ("Master"));
Assert.IsNotNull (provider.Find ("Register"));
- provider = AspNetTesting.CreateProvider (@"<%@ $ %>", ".ascx");
+ provider = WebFormsTesting.CreateProvider (@"<%@ $ %>", ".ascx");
Assert.IsNotNull (provider);
Assert.AreEqual (7, provider.Count);
Assert.IsNotNull (provider.Find ("Control"));
Assert.IsNotNull (provider.Find ("Register"));
- provider = AspNetTesting.CreateProvider (@"<%@$ %>", ".aspx");
+ provider = WebFormsTesting.CreateProvider (@"<%@$ %>", ".aspx");
Assert.IsNull (provider);
- provider = AspNetTesting.CreateProvider (@"<%@ $ %>", ".aspx");
+ provider = WebFormsTesting.CreateProvider (@"<%@ $ %>", ".aspx");
Assert.IsNull (provider);
}
[Test]
public void DirectiveAttributeCompletion ()
{
- var provider = AspNetTesting.CreateProvider (@"<%@ Page A$ %>", ".aspx");
+ var provider = WebFormsTesting.CreateProvider (@"<%@ Page A$ %>", ".aspx");
Assert.IsNotNull (provider);
Assert.AreEqual (41, provider.Count);
Assert.IsNotNull (provider.Find ("StyleSheetTheme"));
Assert.IsNotNull (provider.Find ("Inherits"));
- provider = AspNetTesting.CreateProvider (@"<%@ Master A$ %>", ".master");
+ provider = WebFormsTesting.CreateProvider (@"<%@ Master A$ %>", ".master");
Assert.IsNotNull (provider);
Assert.AreEqual (18, provider.Count);
Assert.IsNull (provider.Find ("StyleSheetTheme"));
Assert.IsNotNull (provider.Find ("MasterPageFile"));
Assert.IsNotNull (provider.Find ("Inherits"));
- provider = AspNetTesting.CreateProvider (@"<%@ Control A$ %>", ".ascx");
+ provider = WebFormsTesting.CreateProvider (@"<%@ Control A$ %>", ".ascx");
Assert.IsNotNull (provider);
Assert.AreEqual (17, provider.Count);
Assert.IsNull (provider.Find ("StyleSheetTheme"));
@@ -88,33 +87,33 @@ namespace MonoDevelop.AspNet.Tests
[Ignore ("Not working")]
public void DirectiveAttributeCtrlSpaceCompletion ()
{
- var provider = AspNetTesting.CreateProvider (@"<%@ Page $ %>", ".aspx", true);
+ var provider = WebFormsTesting.CreateProvider (@"<%@ Page $ %>", ".aspx", true);
Assert.IsNotNull (provider);
Assert.AreEqual (41, provider.Count);
Assert.IsNotNull (provider.Find ("StyleSheetTheme"));
Assert.IsNotNull (provider.Find ("Inherits"));
- provider = AspNetTesting.CreateProvider (@"<%@ Master $ %>", ".master", true);
+ provider = WebFormsTesting.CreateProvider (@"<%@ Master $ %>", ".master", true);
Assert.IsNotNull (provider);
Assert.AreEqual (18, provider.Count);
Assert.IsNull (provider.Find ("StyleSheetTheme"));
Assert.IsNotNull (provider.Find ("MasterPageFile"));
Assert.IsNotNull (provider.Find ("Inherits"));
- provider = AspNetTesting.CreateProvider (@"<%@ Control $ %>", ".ascx", true);
+ provider = WebFormsTesting.CreateProvider (@"<%@ Control $ %>", ".ascx", true);
Assert.IsNotNull (provider);
Assert.AreEqual (17, provider.Count);
Assert.IsNull (provider.Find ("StyleSheetTheme"));
Assert.IsNotNull (provider.Find ("Inherits"));
}
+ const string pageStart = @"<%@ Page Language=""C#"" %>
+<!DOCTYPE html>
+<html>
+";
void HeadBodyCompletion (bool ctrlSpace)
{
- const string test = @"<%@ Page Language=""C#"" %>
-<!DOCTYPE html PUBLIC ""-//W3C//DTD XHTML 1.0 Strict//EN"" ""http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"">
-<html>
-<$";
- var provider = AspNetTesting.CreateProvider (test, ".aspx", ctrlSpace);
+ var provider = WebFormsTesting.CreateProvider (pageStart + "<$", ".aspx", ctrlSpace);
Assert.IsNotNull (provider);
Assert.IsNotNull (provider.Find ("head"));
Assert.IsNotNull (provider.Find ("body"));
@@ -134,5 +133,23 @@ namespace MonoDevelop.AspNet.Tests
{
HeadBodyCompletion (true);
}
+
+ [Test]
+ public void TagPropertiesAuto ()
+ {
+ var provider = WebFormsTesting.CreateProvider (pageStart + "<asp:Button r$", ".aspx");
+ Assert.IsNotNull (provider.Find ("runat=\"server\""));
+ Assert.IsNotNull (provider.Find ("BorderStyle"));
+ }
+
+ [Test]
+ public void TagPropertiesCtrlSpace ()
+ {
+ var provider = WebFormsTesting.CreateProvider (pageStart + "<asp:Button $", ".aspx", true);
+ Assert.IsNotNull (provider.Find ("runat=\"server\""));
+ Assert.IsNotNull (provider.Find ("id"));
+ Assert.IsNotNull (provider.Find ("BorderStyle"));
+ Assert.IsNotNull (provider.Find ("OnClick"));
+ }
}
}
diff --git a/main/tests/UnitTests/MonoDevelop.Xml.StateEngine/AspNetParsingTests.cs b/main/src/addins/AspNet/Tests/WebForms/WebFormsParsingTests.cs
index 9909196630..620877b8f1 100644
--- a/main/tests/UnitTests/MonoDevelop.Xml.StateEngine/AspNetParsingTests.cs
+++ b/main/src/addins/AspNet/Tests/WebForms/WebFormsParsingTests.cs
@@ -24,29 +24,33 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
-using System;
using System.Linq;
-using MonoDevelop.AspNet.StateEngine;
+using MonoDevelop.AspNet.Tests.Html;
+using MonoDevelop.AspNet.WebForms.Dom;
+using MonoDevelop.AspNet.WebForms.Parser;
+using MonoDevelop.Xml.Dom;
+using MonoDevelop.Xml.Parser;
+using MonoDevelop.Xml.Tests.Parser;
using NUnit.Framework;
-namespace MonoDevelop.Xml.StateEngine
+namespace MonoDevelop.AspNet.Tests.WebForms
{
[TestFixture]
- public class AspNetParsingTests : HtmlParsingTests
+ class WebFormsParsingTests : HtmlParsingTests
{
- public override XmlFreeState CreateRootState ()
+ public override XmlRootState CreateRootState ()
{
- return new AspNetFreeState ();
+ return new WebFormsRootState ();
}
[Test]
public void Directives ()
{
- var parser = new TestParser (CreateRootState (), true);
+ var parser = new TestXmlParser (CreateRootState (), true);
parser.Parse (@"<%@ Page Language=""C#"" Inherits=""SomeGenericType<int>"" %>");
parser.AssertNoErrors ();
var doc = (XDocument) parser.Nodes.Peek ();
- var directive = doc.Nodes.First () as AspNetDirective;
+ var directive = doc.Nodes.First () as WebFormsDirective;
Assert.NotNull (directive);
Assert.AreEqual ("Page", directive.Name.FullName);
Assert.AreEqual (2, directive.Attributes.Count ());
@@ -61,26 +65,25 @@ namespace MonoDevelop.Xml.StateEngine
[Test]
public void AttributeWithExpression ()
{
- var parser = new TestParser (CreateRootState (), true);
+ var parser = new TestXmlParser (CreateRootState (), true);
parser.Parse (@"<tag
foo='<%=5$%>'
bar=""<%$$5$%><%--$--%>""
baz='<%#5$%>=<%:fhfjhf %0 $%>'
quux = <% 5 $%> />", delegate {
- parser.AssertNodeIs<AspNetRenderExpression> ();
+ parser.AssertNodeIs<WebFormsRenderExpression> ();
}, delegate {
- parser.AssertNodeIs<AspNetResourceExpression> ();
+ parser.AssertNodeIs<WebFormsResourceExpression> ();
}, delegate {
- parser.AssertNodeIs<AspNetServerComment> ();
+ parser.AssertNodeIs<WebFormsServerComment> ();
}, delegate {
- parser.AssertNodeIs<AspNetDataBindingExpression> ();
+ parser.AssertNodeIs<WebFormsBindingExpression> ();
}, delegate {
- parser.AssertNodeIs<AspNetHtmlEncodedExpression> ();
+ parser.AssertNodeIs<WebFormsHtmlEncodedExpression> ();
}, delegate {
- parser.AssertNodeIs<AspNetRenderBlock> ();
+ parser.AssertNodeIs<WebFormsRenderBlock> ();
});
parser.AssertNoErrors ();
- var doc = (XDocument) parser.Nodes.Peek ();
}
}
-} \ No newline at end of file
+}
diff --git a/main/tests/UnitTests/MonoDevelop.AspNet/AspNetTesting.cs b/main/src/addins/AspNet/Tests/WebForms/WebFormsTesting.cs
index 64726d19ce..4f8e2444d9 100644
--- a/main/tests/UnitTests/MonoDevelop.AspNet/AspNetTesting.cs
+++ b/main/src/addins/AspNet/Tests/WebForms/WebFormsTesting.cs
@@ -24,21 +24,20 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
-using System;
-using MonoDevelop.Ide.CodeCompletion;
-using MonoDevelop.Projects;
-using MonoDevelop.CSharpBinding.Tests;
-using MonoDevelop.AspNet.Gui;
-using MonoDevelop.Ide.TypeSystem;
+using System.IO;
+using MonoDevelop.AspNet.Projects;
+using MonoDevelop.AspNet.WebForms;
using MonoDevelop.CSharpBinding;
+using MonoDevelop.CSharpBinding.Tests;
+using MonoDevelop.Ide.CodeCompletion;
using MonoDevelop.Ide.Gui;
-using MonoDevelop.AspNet.Parser;
-using System.IO;
+using MonoDevelop.Ide.TypeSystem;
+using MonoDevelop.Projects;
-namespace MonoDevelop.AspNet.Tests
+namespace MonoDevelop.AspNet.Tests.WebForms
{
//largely copied from RazorCompletionTesting
- public static class AspNetTesting
+ static class WebFormsTesting
{
public static CompletionDataList CreateProvider (string text, string extension, bool isCtrlSpace = false)
{
@@ -57,8 +56,7 @@ namespace MonoDevelop.AspNet.Tests
return textEditorCompletion.HandleCodeCompletion (ctx, editorText[cursorPosition - 1], ref triggerWordLength) as CompletionDataList;
}
-
- static AspNetTestingEditorExtension CreateEditor (string text, string extension, out string editorText, out TestViewContent sev)
+ static WebFormsTestingEditorExtension CreateEditor (string text, string extension, out string editorText, out TestViewContent sev)
{
string parsedText;
int cursorPosition = text.IndexOf ('$');
@@ -93,16 +91,16 @@ namespace MonoDevelop.AspNet.Tests
var doc = new TestDocument (tww);
doc.Editor.Document.FileName = sev.ContentName;
- var parser = new AspNetParser ();
- var parsedDoc = (AspNetParsedDocument) parser.Parse (false, sev.ContentName, new StringReader (parsedText), project);
+ var parser = new WebFormsParser ();
+ var parsedDoc = (WebFormsParsedDocument) parser.Parse (false, sev.ContentName, new StringReader (parsedText), project);
doc.HiddenParsedDocument = parsedDoc;
- return new AspNetTestingEditorExtension (doc);
+ return new WebFormsTestingEditorExtension (doc);
}
- public class AspNetTestingEditorExtension : AspNetEditorExtension
+ public class WebFormsTestingEditorExtension : WebFormsEditorExtension
{
- public AspNetTestingEditorExtension (Document doc)
+ public WebFormsTestingEditorExtension (Document doc)
{
Initialize (doc);
}
diff --git a/main/src/addins/AspNet/WebForms/Dom/WebFormsBindingExpression.cs b/main/src/addins/AspNet/WebForms/Dom/WebFormsBindingExpression.cs
new file mode 100644
index 0000000000..37c5893f40
--- /dev/null
+++ b/main/src/addins/AspNet/WebForms/Dom/WebFormsBindingExpression.cs
@@ -0,0 +1,62 @@
+//
+// WebFormsBindingExpression.cs
+//
+// Author:
+// Michael Hutchinson <m.j.hutchinson@gmail.com>
+//
+// Copyright (C) 2008 Novell, Inc (http://www.novell.com)
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+
+using ICSharpCode.NRefactory;
+using ICSharpCode.NRefactory.TypeSystem;
+using MonoDevelop.Xml.Dom;
+
+namespace MonoDevelop.AspNet.WebForms.Dom
+{
+ public class WebFormsBindingExpression : WebFormsExpression
+ {
+ public WebFormsBindingExpression (DomRegion region) : base (region)
+ {
+ }
+
+ public WebFormsBindingExpression (TextLocation start) : base (start)
+ {
+ }
+
+ protected WebFormsBindingExpression ()
+ {
+ }
+
+ protected override XObject NewInstance ()
+ {
+ return new WebFormsBindingExpression ();
+ }
+
+ public override string ToString ()
+ {
+ return string.Format ("[WebFormsBindingExpression Location='{0}'", Region);
+ }
+
+ public override string FriendlyPathRepresentation {
+ get { return "<%# %>"; }
+ }
+ }
+
+}
diff --git a/main/src/addins/AspNet/WebForms/Dom/WebFormsDirective.cs b/main/src/addins/AspNet/WebForms/Dom/WebFormsDirective.cs
new file mode 100644
index 0000000000..744e6480e6
--- /dev/null
+++ b/main/src/addins/AspNet/WebForms/Dom/WebFormsDirective.cs
@@ -0,0 +1,108 @@
+//
+// WebFormsDirective.cs
+//
+// Author:
+// Michael Hutchinson <m.j.hutchinson@gmail.com>
+//
+// Copyright (C) 2008 Novell, Inc (http://www.novell.com)
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+
+using System.Diagnostics;
+using System.Text;
+using ICSharpCode.NRefactory;
+using MonoDevelop.Xml.Dom;
+
+namespace MonoDevelop.AspNet.WebForms.Dom
+{
+ public class WebFormsDirective : XNode, IAttributedXObject
+ {
+ XName name;
+ XAttributeCollection attributes;
+
+ public WebFormsDirective (TextLocation start) : base (start)
+ {
+ attributes = new XAttributeCollection (this);
+ }
+
+ public WebFormsDirective (TextLocation start, XName name) : this (start)
+ {
+ this.name = name;
+ }
+
+ protected WebFormsDirective ()
+ {
+ attributes = new XAttributeCollection (this);
+ }
+
+ public XAttributeCollection Attributes {
+ get { return attributes; }
+ }
+
+ public XName Name {
+ get { return name; }
+ set {
+ Debug.Assert (!IsNamed, "Should not name node more than once.");
+ name = value;
+ }
+ }
+
+ public override bool IsComplete { get { return base.IsComplete && IsNamed; } }
+
+ public bool IsNamed { get { return name.IsValid; } }
+
+ protected override XObject NewInstance ()
+ {
+ return new WebFormsDirective ();
+ }
+
+ protected override void ShallowCopyFrom (XObject copyFrom)
+ {
+ base.ShallowCopyFrom (copyFrom);
+ WebFormsDirective copyFromEl = (WebFormsDirective)copyFrom;
+ name = copyFromEl.name; //XName is immutable value type
+ }
+
+ public override string ToString ()
+ {
+ return string.Format ("[WebFormsDirective Name='{0}' Location='{1}'", name.FullName, Region);
+ }
+
+ public override void BuildTreeString (StringBuilder builder, int indentLevel)
+ {
+ builder.Append (' ', indentLevel * 2);
+ builder.AppendFormat ("[WebFormsDirective Name='{0}' Location='{1}' Children=", name.FullName, Region);
+ builder.AppendLine ();
+
+ builder.Append (' ', indentLevel * 2);
+ builder.Append ("Attributes=");
+ builder.AppendLine ();
+
+ foreach (XAttribute att in Attributes)
+ att.BuildTreeString (builder, indentLevel + 1);
+
+ builder.Append (' ', indentLevel * 2);
+ builder.AppendLine ("]");
+ }
+
+ public override string FriendlyPathRepresentation {
+ get { return "<%@ " + name.FullName + " %>"; }
+ }
+ }
+}
diff --git a/main/src/addins/AspNet/WebForms/Dom/WebFormsDomExtensions.cs b/main/src/addins/AspNet/WebForms/Dom/WebFormsDomExtensions.cs
new file mode 100644
index 0000000000..ce84fded9f
--- /dev/null
+++ b/main/src/addins/AspNet/WebForms/Dom/WebFormsDomExtensions.cs
@@ -0,0 +1,72 @@
+//
+// WebFormsDomExtensions.cs
+//
+// Author:
+// Michael Hutchinson <m.j.hutchinson@gmail.com>
+//
+// Copyright (C) 2008 Novell, Inc (http://www.novell.com)
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using MonoDevelop.Xml.Parser;
+using MonoDevelop.Xml.Dom;
+
+namespace MonoDevelop.AspNet.WebForms.Dom
+{
+ public static class WebFormsDomExtensions
+ {
+ static XName scriptName = new XName ("script");
+ static XName runatName = new XName ("runat");
+ static XName idName = new XName ("id");
+
+ public static bool IsRunatServer (this XElement el)
+ {
+ var val = el.Attributes.GetValue (runatName, true);
+ return string.Equals (val, "server", StringComparison.OrdinalIgnoreCase);
+ }
+
+ public static string GetId (this IAttributedXObject el)
+ {
+ return el.Attributes.GetValue (idName, true);
+ }
+
+ public static bool IsServerScriptTag (this XElement el)
+ {
+ return XName.Equals (el.Name, scriptName, true) && IsRunatServer (el);
+ }
+
+ public static IEnumerable<T> WithName<T> (this IEnumerable<XNode> nodes, XName name, bool ignoreCase)
+ where T : XNode, INamedXObject
+ {
+ return nodes.OfType<T> ().Where (el => XName.Equals (el.Name, name, ignoreCase));
+ }
+
+ public static IEnumerable<string> GetAllPlaceholderIds (this XDocument doc)
+ {
+ return doc.AllDescendentNodes
+ .WithName<XElement> (new XName ("asp", "ContentPlaceHolder"), true)
+ .Where (x => x.IsRunatServer ())
+ .Select (x => x.GetId ())
+ .Where (id => !string.IsNullOrEmpty (id));
+ }
+ }
+}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/RemoveXPathHighlightingCommand.cs b/main/src/addins/AspNet/WebForms/Dom/WebFormsExpression.cs
index 239f57f0cf..c67eff4f37 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/RemoveXPathHighlightingCommand.cs
+++ b/main/src/addins/AspNet/WebForms/Dom/WebFormsExpression.cs
@@ -1,7 +1,10 @@
//
-// MonoDevelop XML Editor
+// WebFormsExpression.cs
//
-// Copyright (C) 2006 Matthew Ward
+// Author:
+// Michael Hutchinson <m.j.hutchinson@gmail.com>
+//
+// Copyright (C) 2008 Novell, Inc (http://www.novell.com)
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
@@ -9,37 +12,37 @@
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
// copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
-//
+//
// The above copyright notice and this permission notice shall be included in
// all copies or substantial portions of the Software.
-//
+//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
+// THE SOFTWARE.
+
-using MonoDevelop.Components.Commands;
-using System;
+using ICSharpCode.NRefactory;
+using ICSharpCode.NRefactory.TypeSystem;
+using MonoDevelop.Xml.Dom;
-namespace MonoDevelop.XmlEditor
+namespace MonoDevelop.AspNet.WebForms.Dom
{
- public class RemoveXPathHighlightingCommand : CommandHandler
+ public abstract class WebFormsExpression : XNode
{
- protected override void Run()
- {
- // Find active Xml View.
- XmlEditorViewContent view = XmlEditorService.GetActiveView();
- if (view != null) {
- view.XmlEditorView.RemoveXPathMarkers();
- }
+ protected WebFormsExpression (DomRegion region) : base (region)
+ {
+ }
+
+ protected WebFormsExpression (TextLocation start) : base (start)
+ {
}
-
- protected override void Update(CommandInfo info)
- {
- info.Enabled = XmlEditorService.IsXmlEditorViewContentActive;
+
+ protected WebFormsExpression ()
+ {
}
}
}
diff --git a/main/src/addins/AspNet/WebForms/Dom/WebFormsHtmlEncodedExpression.cs b/main/src/addins/AspNet/WebForms/Dom/WebFormsHtmlEncodedExpression.cs
new file mode 100644
index 0000000000..f83c02287c
--- /dev/null
+++ b/main/src/addins/AspNet/WebForms/Dom/WebFormsHtmlEncodedExpression.cs
@@ -0,0 +1,63 @@
+//
+// WebFormsHtmlEncodedExpression.cs
+//
+// Author:
+// Michael Hutchinson <m.j.hutchinson@gmail.com>
+//
+// Copyright (C) 2008 Novell, Inc (http://www.novell.com)
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+
+using ICSharpCode.NRefactory.TypeSystem;
+using ICSharpCode.NRefactory;
+using MonoDevelop.Xml.Dom;
+
+namespace MonoDevelop.AspNet.WebForms.Dom
+{
+
+ public class WebFormsHtmlEncodedExpression : WebFormsExpression
+ {
+ public WebFormsHtmlEncodedExpression (DomRegion region) : base (region)
+ {
+ }
+
+ public WebFormsHtmlEncodedExpression (TextLocation start) : base (start)
+ {
+ }
+
+ protected WebFormsHtmlEncodedExpression ()
+ {
+ }
+
+ protected override XObject NewInstance ()
+ {
+ return new WebFormsHtmlEncodedExpression ();
+ }
+
+ public override string ToString ()
+ {
+ return string.Format ("[WebFormsHtmlEncodedExpression Location='{0}'", Region);
+ }
+
+ public override string FriendlyPathRepresentation {
+ get { return "<%: %>"; }
+ }
+ }
+
+}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Completion/SimpleLists.cs b/main/src/addins/AspNet/WebForms/Dom/WebFormsRenderBlock.cs
index af68ac6919..3c715302b6 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Completion/SimpleLists.cs
+++ b/main/src/addins/AspNet/WebForms/Dom/WebFormsRenderBlock.cs
@@ -1,8 +1,8 @@
//
-// SimpleLists.cs
+// WebFormsRenderBlock.cs
//
// Author:
-// Michael Hutchinson <mhutchinson@novell.com>
+// Michael Hutchinson <m.j.hutchinson@gmail.com>
//
// Copyright (C) 2008 Novell, Inc (http://www.novell.com)
//
@@ -26,32 +26,39 @@
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
-using System;
-using System.Collections.Generic;
-using System.Linq;
+using ICSharpCode.NRefactory;
+using ICSharpCode.NRefactory.TypeSystem;
+using MonoDevelop.Xml.Dom;
-using MonoDevelop.Ide.CodeCompletion;
-
-namespace MonoDevelop.AspNet.Completion
+namespace MonoDevelop.AspNet.WebForms.Dom
{
-
-
- static class SimpleList
+ public class WebFormsRenderBlock : XNode
{
-
- public static void AddBoolean (CompletionDataList list, bool defaultValue)
+ public WebFormsRenderBlock (DomRegion region) : base (region)
{
- list.Add ("true", "md-literal");
- list.Add ("false", "md-literal");
- list.DefaultCompletionString = defaultValue? "true" : "false";
}
-
- public static void AddEnum<T> (CompletionDataList list, T defaultValue)
+
+ public WebFormsRenderBlock (TextLocation start) : base (start)
+ {
+ }
+
+ protected WebFormsRenderBlock ()
+ {
+ }
+
+ protected override XObject NewInstance ()
+ {
+ return new WebFormsRenderBlock ();
+ }
+
+ public override string ToString ()
{
- foreach (string name in Enum.GetNames (typeof (T))) {
- list.Add (name, "md-literal");
- }
- list.DefaultCompletionString = defaultValue.ToString ();
+ return string.Format ("[WebFormsRenderBlock Location='{0}'", Region);
+ }
+
+
+ public override string FriendlyPathRepresentation {
+ get { return "<% %>"; }
}
}
}
diff --git a/main/src/addins/AspNet/WebForms/Dom/WebFormsRenderExpression.cs b/main/src/addins/AspNet/WebForms/Dom/WebFormsRenderExpression.cs
new file mode 100644
index 0000000000..479ec8ba31
--- /dev/null
+++ b/main/src/addins/AspNet/WebForms/Dom/WebFormsRenderExpression.cs
@@ -0,0 +1,61 @@
+//
+// WebFormsRenderExpression.cs
+//
+// Author:
+// Michael Hutchinson <m.j.hutchinson@gmail.com>
+//
+// Copyright (C) 2008 Novell, Inc (http://www.novell.com)
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+
+using ICSharpCode.NRefactory.TypeSystem;
+using ICSharpCode.NRefactory;
+using MonoDevelop.Xml.Dom;
+
+namespace MonoDevelop.AspNet.WebForms.Dom
+{
+ public class WebFormsRenderExpression : WebFormsExpression
+ {
+ public WebFormsRenderExpression (DomRegion region) : base (region)
+ {
+ }
+
+ public WebFormsRenderExpression (TextLocation start) : base (start)
+ {
+ }
+
+ protected WebFormsRenderExpression ()
+ {
+ }
+
+ protected override XObject NewInstance ()
+ {
+ return new WebFormsRenderExpression ();
+ }
+
+ public override string ToString ()
+ {
+ return string.Format ("[WebFormsRenderExpression Location='{0}'", Region);
+ }
+
+ public override string FriendlyPathRepresentation {
+ get { return "<%= %>"; }
+ }
+ }
+}
diff --git a/main/src/addins/AspNet/WebForms/Dom/WebFormsResourceExpression.cs b/main/src/addins/AspNet/WebForms/Dom/WebFormsResourceExpression.cs
new file mode 100644
index 0000000000..26038b655c
--- /dev/null
+++ b/main/src/addins/AspNet/WebForms/Dom/WebFormsResourceExpression.cs
@@ -0,0 +1,62 @@
+//
+// WebFormsResourceExpression.cs
+//
+// Author:
+// Michael Hutchinson <m.j.hutchinson@gmail.com>
+//
+// Copyright (C) 2008 Novell, Inc (http://www.novell.com)
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+
+using ICSharpCode.NRefactory;
+using ICSharpCode.NRefactory.TypeSystem;
+using MonoDevelop.Xml.Parser;
+using MonoDevelop.Xml.Dom;
+
+namespace MonoDevelop.AspNet.WebForms.Dom
+{
+ public class WebFormsResourceExpression : WebFormsExpression
+ {
+ public WebFormsResourceExpression (DomRegion region) : base (region)
+ {
+ }
+
+ public WebFormsResourceExpression (TextLocation start) : base (start)
+ {
+ }
+
+ protected WebFormsResourceExpression ()
+ {
+ }
+
+ protected override XObject NewInstance ()
+ {
+ return new WebFormsResourceExpression ();
+ }
+
+ public override string ToString ()
+ {
+ return string.Format ("[WebFormsResourceExpression Location='{0}'", Region);
+ }
+
+ public override string FriendlyPathRepresentation {
+ get { return "<%$ %>"; }
+ }
+ }
+}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/OpenXPathQueryPadCommand.cs b/main/src/addins/AspNet/WebForms/Dom/WebFormsServerComment.cs
index 899ce14545..675a854916 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/OpenXPathQueryPadCommand.cs
+++ b/main/src/addins/AspNet/WebForms/Dom/WebFormsServerComment.cs
@@ -1,7 +1,10 @@
//
-// MonoDevelop XML Editor
+// WebFormsServerComment.cs
//
-// Copyright (C) 2006-2007 Matthew Ward
+// Author:
+// Michael Hutchinson <m.j.hutchinson@gmail.com>
+//
+// Copyright (C) 2008 Novell, Inc (http://www.novell.com)
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
@@ -9,52 +12,51 @@
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
// copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
-//
+//
// The above copyright notice and this permission notice shall be included in
// all copies or substantial portions of the Software.
-//
+//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
+// THE SOFTWARE.
+
-using MonoDevelop.Components.Commands;
-using MonoDevelop.Core;
-using MonoDevelop.Ide.Gui;
-using System;
+using ICSharpCode.NRefactory;
+using ICSharpCode.NRefactory.TypeSystem;
+using MonoDevelop.Xml.Dom;
-namespace MonoDevelop.XmlEditor
+namespace MonoDevelop.AspNet.WebForms.Dom
{
- public class OpenXPathQueryPadCommand : CommandHandler
+ public class WebFormsServerComment : XNode
{
- static Pad pad;
+ public WebFormsServerComment (DomRegion region) : base (region)
+ {
+ }
+
+ public WebFormsServerComment (TextLocation start) : base (start)
+ {
+ }
+
+ protected WebFormsServerComment ()
+ {
+ }
- protected override void Run()
- {
- if (pad == null) {
- GetXPathQueryPad();
- }
- if (pad != null) {
- pad.BringToFront();
- }
+ protected override XObject NewInstance ()
+ {
+ return new WebFormsServerComment ();
}
- protected override void Update(CommandInfo info)
+ public override string ToString ()
{
- info.Enabled = XmlEditorService.IsXmlEditorViewContentActive;
+ return string.Format ("[WebFormsServerComment Location='{0}'", Region);
}
- void GetXPathQueryPad()
- {
- foreach (Pad currentPad in IdeApp.Workbench.Pads) {
- if (currentPad.Id == "MonoDevelop.XmlEditor.XPathQueryPad") {
- pad = currentPad;
- break;
- }
- }
+ public override string FriendlyPathRepresentation {
+ get { return "<%-- --%>"; }
}
}
}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Gui/ILanguageCompletionBuilder.cs b/main/src/addins/AspNet/WebForms/ILanguageCompletionBuilder.cs
index 3532335013..bd559c56d5 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Gui/ILanguageCompletionBuilder.cs
+++ b/main/src/addins/AspNet/WebForms/ILanguageCompletionBuilder.cs
@@ -26,15 +26,15 @@
using System;
using System.Collections.Generic;
-using MonoDevelop.AspNet.Parser;
-using S = MonoDevelop.Xml.StateEngine;
-using MonoDevelop.AspNet.StateEngine;
-using Mono.TextEditor;
-using MonoDevelop.Ide.TypeSystem;
using ICSharpCode.NRefactory.TypeSystem;
+using Mono.TextEditor;
using MonoDevelop.Ide.CodeCompletion;
+using MonoDevelop.Ide.TypeSystem;
+using MonoDevelop.Xml.Dom;
+using MonoDevelop.AspNet.Projects;
+using MonoDevelop.AspNet.WebForms.Dom;
-namespace MonoDevelop.AspNet.Gui
+namespace MonoDevelop.AspNet.WebForms
{
/// <summary>
@@ -86,20 +86,17 @@ namespace MonoDevelop.AspNet.Gui
/// </summary>
public class DocumentInfo
{
- public DocumentInfo (ICompilation dom, AspNetParsedDocument aspNetParsedDocument, IEnumerable<string> imports,
- IList<ICompilation> references)
+ public DocumentInfo (ICompilation dom, WebFormsParsedDocument aspNetParsedDocument, IEnumerable<string> imports)
{
this.Dom = dom;
this.AspNetDocument = aspNetParsedDocument;
this.Imports = imports;
- this.References = references;
BuildExpressionAndScriptsLists ();
}
public ICompilation Dom { get; private set; }
- public AspNetParsedDocument AspNetDocument { get; private set; }
+ public WebFormsParsedDocument AspNetDocument { get; private set; }
public ParsedDocument ParsedDocument { get; set; }
- public IList<ICompilation> References { get; set; }
public IEnumerable<string> Imports { get; private set; }
public IUnresolvedTypeDefinition CodeBesideClass { get; set; }
@@ -118,14 +115,14 @@ namespace MonoDevelop.AspNet.Gui
}
}
- static string GetDefaultBaseClass (MonoDevelop.AspNet.WebSubtype type)
+ static string GetDefaultBaseClass (WebSubtype type)
{
switch (type) {
- case MonoDevelop.AspNet.WebSubtype.WebForm:
+ case WebSubtype.WebForm:
return "System.Web.UI.Page";
- case MonoDevelop.AspNet.WebSubtype.MasterPage:
+ case WebSubtype.MasterPage:
return "System.Web.UI.MasterPage";
- case MonoDevelop.AspNet.WebSubtype.WebControl:
+ case WebSubtype.WebControl:
return "System.Web.UI.UserControl";
}
throw new InvalidOperationException (string.Format ("Unexpected filetype '{0}'", type));
@@ -133,20 +130,20 @@ namespace MonoDevelop.AspNet.Gui
#region parsing for expression and runat="server" script tags
- public List<S.XNode> XExpressions { get; private set; }
- public List<S.XElement> XScriptBlocks { get; private set; }
+ public List<XNode> XExpressions { get; private set; }
+ public List<XElement> XScriptBlocks { get; private set; }
void BuildExpressionAndScriptsLists ()
{
- XExpressions = new List<S.XNode> ();
- XScriptBlocks = new List<S.XElement> ();
+ XExpressions = new List<XNode> ();
+ XScriptBlocks = new List<XElement> ();
- foreach (S.XNode node in AspNetDocument.XDocument.AllDescendentNodes) {
- if (node is AspNetRenderExpression || node is AspNetHtmlEncodedExpression || node is AspNetRenderBlock) {
+ foreach (XNode node in AspNetDocument.XDocument.AllDescendentNodes) {
+ if (node is WebFormsRenderExpression || node is WebFormsHtmlEncodedExpression || node is WebFormsRenderBlock) {
XExpressions.Add (node);
continue;
}
- S.XElement el = node as S.XElement;
+ var el = node as XElement;
if (el == null) {
continue;
}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/MasterContentFileDescriptionTemplate.cs b/main/src/addins/AspNet/WebForms/MasterContentFileDescriptionTemplate.cs
index d30ec450e9..bced906b6d 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/MasterContentFileDescriptionTemplate.cs
+++ b/main/src/addins/AspNet/WebForms/MasterContentFileDescriptionTemplate.cs
@@ -26,20 +26,19 @@
using System;
using System.Collections.Generic;
-using MonoDevelop.AspNet.Gui;
-using MonoDevelop.AspNet.Parser;
using MonoDevelop.Core;
-using MonoDevelop.Projects;
using MonoDevelop.Ide.TypeSystem;
-using MonoDevelop.Xml.StateEngine;
-using MonoDevelop.AspNet.StateEngine;
-using System.Linq;
+using MonoDevelop.Projects;
+using MonoDevelop.AspNet.Projects;
+using MonoDevelop.AspNet.WebForms.Parser;
+using MonoDevelop.Ide.Templates;
+using MonoDevelop.AspNet.WebForms.Dom;
-namespace MonoDevelop.AspNet
+namespace MonoDevelop.AspNet.WebForms
{
- public class MasterContentFileDescriptionTemplate : AspNetFileDescriptionTemplate
+ public class MasterContentFileDescriptionTemplate : SingleFileDescriptionTemplate
{
- public override void ModifyTags (MonoDevelop.Projects.SolutionItem policyParent, MonoDevelop.Projects.Project project, string language, string identifier, string fileName, ref Dictionary<string,string> tags)
+ public override void ModifyTags (SolutionItem policyParent, Project project, string language, string identifier, string fileName, ref Dictionary<string,string> tags)
{
base.ModifyTags (policyParent, project, language, identifier, fileName, ref tags);
if (fileName == null)
@@ -70,7 +69,7 @@ namespace MonoDevelop.AspNet
try {
var pd = TypeSystemService.ParseFile (project, masterPage.FilePath)
- as AspNetParsedDocument;
+ as WebFormsParsedDocument;
if (pd == null)
return;
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.StateEngine/AspNetAttributeValueState.cs b/main/src/addins/AspNet/WebForms/Parser/WebFormsAttributeValueState.cs
index 5c233a7fb4..474089d774 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.StateEngine/AspNetAttributeValueState.cs
+++ b/main/src/addins/AspNet/WebForms/Parser/WebFormsAttributeValueState.cs
@@ -27,11 +27,13 @@
//
-using MonoDevelop.Xml.StateEngine;
+using MonoDevelop.Xml.Dom;
+using MonoDevelop.Xml.Parser;
+using MonoDevelop.AspNet.WebForms.Dom;
-namespace MonoDevelop.AspNet.StateEngine
+namespace MonoDevelop.AspNet.WebForms.Parser
{
- public class AspNetAttributeValueState : XmlAttributeValueState
+ public class WebFormsAttributeValueState : XmlAttributeValueState
{
enum AttState {
Incoming = 0,
@@ -49,12 +51,12 @@ namespace MonoDevelop.AspNet.StateEngine
protected new static readonly int TagMask = 15 << XmlAttributeValueState.TagShift;
protected new static readonly int TagShift = 4 + XmlAttributeValueState.TagShift;
- void SetTag (IParseContext context, AttState value)
+ void SetTag (IXmlParserContext context, AttState value)
{
context.StateTag = (context.StateTag & ~TagMask) | ((int)value << XmlAttributeValueState.TagShift);
}
- public override State PushChar (char c, IParseContext context, ref string rollback)
+ public override XmlParserState PushChar (char c, IXmlParserContext context, ref string rollback)
{
var maskedTag = (AttState) ((context.StateTag & TagMask) >> XmlAttributeValueState.TagShift);
switch (maskedTag) {
@@ -81,12 +83,12 @@ namespace MonoDevelop.AspNet.StateEngine
rollback = "<%";
return Parent;
}
- AspNetExpressionState.AddExpressionNode (c, context);
+ WebFormsExpressionState.AddExpressionNode (c, context);
SetTag (context, AttState.Expression);
return null;
case AttState.PercentDash:
if (c == '-') {
- context.Nodes.Push (new AspNetServerComment (context.LocationMinus (4)));
+ context.Nodes.Push (new WebFormsServerComment (context.LocationMinus (4)));
SetTag (context, AttState.Comment);
return null;
}
diff --git a/main/src/addins/AspNet/WebForms/Parser/WebFormsDirectiveAttributeState.cs b/main/src/addins/AspNet/WebForms/Parser/WebFormsDirectiveAttributeState.cs
new file mode 100644
index 0000000000..3257f7830b
--- /dev/null
+++ b/main/src/addins/AspNet/WebForms/Parser/WebFormsDirectiveAttributeState.cs
@@ -0,0 +1,47 @@
+//
+// WebFormsDirectiveAttributeState.cs
+//
+// Author:
+// Michael Hutchinson <mhutch@xamarin.com>
+//
+// Copyright (c) 2014 Xamarin Inc.
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+
+using System;
+using System.Diagnostics;
+
+using MonoDevelop.Xml.Parser;
+
+namespace MonoDevelop.AspNet.WebForms.Parser
+{
+ public class WebFormsDirectiveAttributeState : XmlAttributeValueState
+ {
+ public override XmlParserState PushChar (char c, IXmlParserContext context, ref string rollback)
+ {
+ // allow < in values
+ if (context.StateTag != '\0' && context.CurrentStateLength > 1 && c == '<') {
+ context.KeywordBuilder.Append (c);
+ return null;
+ }
+ return base.PushChar (c, context, ref rollback);
+ }
+ }
+
+}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.StateEngine/AspNetDirectiveState.cs b/main/src/addins/AspNet/WebForms/Parser/WebFormsDirectiveState.cs
index c4d1c8dd05..adb91a3091 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.StateEngine/AspNetDirectiveState.cs
+++ b/main/src/addins/AspNet/WebForms/Parser/WebFormsDirectiveState.cs
@@ -29,53 +29,42 @@
using System;
using System.Diagnostics;
-using MonoDevelop.Xml.StateEngine;
+using MonoDevelop.Xml.Parser;
+using MonoDevelop.AspNet.WebForms.Dom;
+using MonoDevelop.Xml.Dom;
-namespace MonoDevelop.AspNet.StateEngine
-{
- public class AspNetDirectiveAttributeState : XmlAttributeValueState
- {
- public override State PushChar (char c, IParseContext context, ref string rollback)
- {
- // allow < in values
- if (context.StateTag != '\0' && context.CurrentStateLength > 1 && c == '<') {
- context.KeywordBuilder.Append (c);
- return null;
- }
- return base.PushChar (c, context, ref rollback);
- }
- }
-
- public class AspNetDirectiveState : State
+namespace MonoDevelop.AspNet.WebForms.Parser
+{
+ public class WebFormsDirectiveState : XmlParserState
{
readonly XmlAttributeState AttributeState;
readonly XmlNameState NameState;
- public AspNetDirectiveState () : this (
+ public WebFormsDirectiveState () : this (
new XmlNameState (),
- new XmlAttributeState (new XmlNameState (), new AspNetDirectiveAttributeState ())
+ new XmlAttributeState (new XmlNameState (), new WebFormsDirectiveAttributeState ())
)
{
}
- public AspNetDirectiveState (XmlNameState nameState, XmlAttributeState attributeState)
+ public WebFormsDirectiveState (XmlNameState nameState, XmlAttributeState attributeState)
{
this.AttributeState = attributeState;
this.NameState = nameState;
Adopt (this.AttributeState);
Adopt (this.NameState);
-
+
}
const int ENDING = 1;
- public override State PushChar (char c, IParseContext context, ref string rollback)
+ public override XmlParserState PushChar (char c, IXmlParserContext context, ref string rollback)
{
- AspNetDirective directive = context.Nodes.Peek () as AspNetDirective;
+ var directive = context.Nodes.Peek () as WebFormsDirective;
if (directive == null || directive.IsComplete) {
- directive = new AspNetDirective (context.LocationMinus (4)); // 4 == <%@ + current char
+ directive = new WebFormsDirective (context.LocationMinus (4)); // 4 == <%@ + current char
context.Nodes.Push (directive);
}
@@ -103,7 +92,7 @@ namespace MonoDevelop.AspNet.StateEngine
} else {
directive.End (context.Location);
if (context.BuildTree) {
- XContainer container = (XContainer)context.Nodes.Peek ();
+ var container = (XContainer)context.Nodes.Peek ();
container.AddChildNode (directive);
}
}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.StateEngine/AspNetExpressionState.cs b/main/src/addins/AspNet/WebForms/Parser/WebFormsExpressionState.cs
index 8ba27eb549..8a6bfe2e9a 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.StateEngine/AspNetExpressionState.cs
+++ b/main/src/addins/AspNet/WebForms/Parser/WebFormsExpressionState.cs
@@ -26,20 +26,21 @@
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
-using System;
using System.Diagnostics;
-using MonoDevelop.Xml.StateEngine;
+using MonoDevelop.Xml.Parser;
+using MonoDevelop.AspNet.WebForms.Dom;
+using MonoDevelop.Xml.Dom;
-namespace MonoDevelop.AspNet.StateEngine
+namespace MonoDevelop.AspNet.WebForms.Parser
{
- public class AspNetExpressionState : State
+ public class WebFormsExpressionState : XmlParserState
{
const int NONE = 0;
const int PERCENT = 1;
- public override State PushChar (char c, IParseContext context, ref string rollback)
+ public override XmlParserState PushChar (char c, IXmlParserContext context, ref string rollback)
{
if (context.CurrentStateLength == 1) {
AddExpressionNode (c, context);
@@ -68,30 +69,30 @@ namespace MonoDevelop.AspNet.StateEngine
return null;
}
- internal static void AddExpressionNode (char c, IParseContext context)
+ internal static void AddExpressionNode (char c, IXmlParserContext context)
{
Debug.Assert (c != '@' && c!= '-', "AspNetExpressionState should not be passed a directive or comment");
switch (c) {
//DATABINDING EXPRESSION <%#
case '#':
- context.Nodes.Push (new AspNetDataBindingExpression (context.LocationMinus (3)));
+ context.Nodes.Push (new WebFormsBindingExpression (context.LocationMinus (3)));
break;
//RESOURCE EXPRESSION <%$
case '$':
- context.Nodes.Push (new AspNetResourceExpression (context.LocationMinus (3)));
+ context.Nodes.Push (new WebFormsResourceExpression (context.LocationMinus (3)));
break;
//RENDER EXPRESSION <%=
case '=':
- context.Nodes.Push (new AspNetRenderExpression (context.LocationMinus (3)));
+ context.Nodes.Push (new WebFormsRenderExpression (context.LocationMinus (3)));
break;
//HTML ENCODED EXPRESSION <%:
case ':':
- context.Nodes.Push (new AspNetHtmlEncodedExpression (context.LocationMinus (3)));
+ context.Nodes.Push (new WebFormsHtmlEncodedExpression (context.LocationMinus (3)));
break;
// RENDER BLOCK
default:
- context.Nodes.Push (new AspNetRenderBlock (context.LocationMinus (3)));
+ context.Nodes.Push (new WebFormsRenderBlock (context.LocationMinus (3)));
break;
}
}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.StateEngine/AspNetFreeState.cs b/main/src/addins/AspNet/WebForms/Parser/WebFormsRootState.cs
index f6aa07cbba..a35e3eeb0d 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.StateEngine/AspNetFreeState.cs
+++ b/main/src/addins/AspNet/WebForms/Parser/WebFormsRootState.cs
@@ -26,43 +26,41 @@
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
-using System;
+using MonoDevelop.Xml.Parser;
+using MonoDevelop.AspNet.Html.Parser;
-using MonoDevelop.Xml.StateEngine;
-
-namespace MonoDevelop.AspNet.StateEngine
+namespace MonoDevelop.AspNet.WebForms.Parser
{
-
- public class AspNetFreeState : XmlFreeState
+ public class WebFormsRootState : XmlRootState
{
protected const int BRACKET_PERCENT = MAXCONST + 1;
- readonly AspNetExpressionState expressionState;
- readonly AspNetDirectiveState directiveState;
- readonly AspNetServerCommentState serverCommentState;
+ readonly WebFormsExpressionState expressionState;
+ readonly WebFormsDirectiveState directiveState;
+ readonly WebFormsServerCommentState serverCommentState;
- public AspNetFreeState () : this (
- new HtmlTagState (new XmlAttributeState (new XmlNameState (), new AspNetAttributeValueState ())),
+ public WebFormsRootState () : this (
+ new HtmlTagState (new XmlAttributeState (new XmlNameState (), new WebFormsAttributeValueState ())),
new HtmlClosingTagState (true),
new XmlCommentState (),
new XmlCDataState (),
new XmlDocTypeState (),
new XmlProcessingInstructionState (),
- new AspNetExpressionState (),
- new AspNetDirectiveState (),
- new AspNetServerCommentState ()
+ new WebFormsExpressionState (),
+ new WebFormsDirectiveState (),
+ new WebFormsServerCommentState ()
) { }
- public AspNetFreeState (
+ public WebFormsRootState (
HtmlTagState tagState,
HtmlClosingTagState closingTagState,
XmlCommentState commentState,
XmlCDataState cDataState,
XmlDocTypeState docTypeState,
XmlProcessingInstructionState processingInstructionState,
- AspNetExpressionState expressionState,
- AspNetDirectiveState directiveState,
- AspNetServerCommentState serverCommentState
+ WebFormsExpressionState expressionState,
+ WebFormsDirectiveState directiveState,
+ WebFormsServerCommentState serverCommentState
)
: base (tagState, closingTagState, commentState, cDataState, docTypeState, processingInstructionState)
{
@@ -75,19 +73,19 @@ namespace MonoDevelop.AspNet.StateEngine
Adopt (this.ServerCommentState);
}
- protected AspNetExpressionState ExpressionState {
+ protected WebFormsExpressionState ExpressionState {
get { return expressionState; }
}
- protected AspNetDirectiveState DirectiveState {
+ protected WebFormsDirectiveState DirectiveState {
get { return directiveState; }
}
- protected AspNetServerCommentState ServerCommentState {
+ protected WebFormsServerCommentState ServerCommentState {
get { return serverCommentState; }
}
- public override State PushChar (char c, IParseContext context, ref string rollback)
+ public override XmlParserState PushChar (char c, IXmlParserContext context, ref string rollback)
{
if (c == '%' && context.StateTag == BRACKET) {
context.StateTag = BRACKET_PERCENT;
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.StateEngine/AspNetServerCommentState.cs b/main/src/addins/AspNet/WebForms/Parser/WebFormsServerCommentState.cs
index 7df1075e30..ef008513ec 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.StateEngine/AspNetServerCommentState.cs
+++ b/main/src/addins/AspNet/WebForms/Parser/WebFormsServerCommentState.cs
@@ -28,11 +28,13 @@
using System;
-using MonoDevelop.Xml.StateEngine;
+using MonoDevelop.Xml.Dom;
+using MonoDevelop.Xml.Parser;
+using MonoDevelop.AspNet.WebForms.Dom;
-namespace MonoDevelop.AspNet.StateEngine
+namespace MonoDevelop.AspNet.WebForms.Parser
{
- public class AspNetServerCommentState : XmlCommentState
+ public class WebFormsServerCommentState : XmlCommentState
{
const int NOMATCH = 0;
@@ -40,10 +42,10 @@ namespace MonoDevelop.AspNet.StateEngine
const int DOUBLE_DASH = 2;
const int PERCENT = 3;
- public override State PushChar (char c, IParseContext context, ref string rollback)
+ public override XmlParserState PushChar (char c, IXmlParserContext context, ref string rollback)
{
if (context.CurrentStateLength == 1) {
- context.Nodes.Push (new AspNetServerComment (context.LocationMinus (context.CurrentStateLength + "<%--".Length)));
+ context.Nodes.Push (new WebFormsServerComment (context.LocationMinus (context.CurrentStateLength + "<%--".Length)));
}
switch (context.StateTag) {
@@ -68,7 +70,7 @@ namespace MonoDevelop.AspNet.StateEngine
case PERCENT:
if (c == '>') {
- AspNetServerComment comment = (AspNetServerComment) context.Nodes.Pop ();
+ var comment = (WebFormsServerComment) context.Nodes.Pop ();
comment.End (context.Location);
if (context.BuildTree) {
XObject ob = context.Nodes.Peek ();
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Parser/SuggestedHandlerCompletionData.cs b/main/src/addins/AspNet/WebForms/SuggestedHandlerCompletionData.cs
index 6776d8a017..1e7d7dca23 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Parser/SuggestedHandlerCompletionData.cs
+++ b/main/src/addins/AspNet/WebForms/SuggestedHandlerCompletionData.cs
@@ -35,14 +35,14 @@ using MonoDevelop.DesignerSupport;
using ICSharpCode.NRefactory.TypeSystem;
using System.Linq;
-namespace MonoDevelop.AspNet.Parser
+namespace MonoDevelop.AspNet.WebForms
{
- public class SuggestedHandlerCompletionData : CompletionData
+ class SuggestedHandlerCompletionData : CompletionData
{
- Project project;
- CodeMemberMethod methodInfo;
- IType codeBehindClass;
- IUnresolvedTypeDefinition codeBehindClassPart;
+ readonly Project project;
+ readonly CodeMemberMethod methodInfo;
+ readonly IType codeBehindClass;
+ readonly IUnresolvedTypeDefinition codeBehindClassPart;
public SuggestedHandlerCompletionData (Project project, CodeMemberMethod methodInfo, IType codeBehindClass, IUnresolvedTypeDefinition codeBehindClassPart)
{
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/CodeBehind.cs b/main/src/addins/AspNet/WebForms/WebFormsCodeBehind.cs
index 64206272b0..bfdce9399f 100755..100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/CodeBehind.cs
+++ b/main/src/addins/AspNet/WebForms/WebFormsCodeBehind.cs
@@ -30,23 +30,20 @@
//
using System;
-using System.Linq;
-using System.IO;
-using System.Collections;
+using System.CodeDom;
using System.Collections.Generic;
+using System.Linq;
+using ICSharpCode.NRefactory.TypeSystem;
using MonoDevelop.Core;
-using MonoDevelop.Projects;
using MonoDevelop.DesignerSupport;
-
-using MonoDevelop.AspNet.Parser;
-using System.CodeDom;
-using ICSharpCode.NRefactory.TypeSystem;
using MonoDevelop.Ide.TypeSystem;
+using MonoDevelop.Projects;
+using MonoDevelop.AspNet.Projects;
-namespace MonoDevelop.AspNet
+namespace MonoDevelop.AspNet.WebForms
{
- public static class CodeBehind
+ static class WebFormsCodeBehind
{
public static string GetCodeBehindClassName (ProjectFile file)
{
@@ -77,7 +74,7 @@ namespace MonoDevelop.AspNet
var result = new BuildResult ();
//parse the ASP.NET file
- var parsedDocument = TypeSystemService.ParseFile (project, file.FilePath) as AspNetParsedDocument;
+ var parsedDocument = TypeSystemService.ParseFile (project, file.FilePath) as WebFormsParsedDocument;
if (parsedDocument == null) {
result.AddError (string.Format ("Failed to parse file '{0}'", file.Name));
return result;
@@ -107,7 +104,7 @@ namespace MonoDevelop.AspNet
public static BuildResult GenerateCodeBehind (
AspNetAppProject project,
string filename,
- AspNetParsedDocument document,
+ WebFormsParsedDocument document,
out CodeCompileUnit ccu)
{
ccu = null;
@@ -120,8 +117,8 @@ namespace MonoDevelop.AspNet
if (string.IsNullOrEmpty (className))
return result;
- var refman = new DocumentReferenceManager (project) { Doc = document };
- var memberList = new MemberListBuilder (refman, document.XDocument);
+ var refman = new WebFormsTypeContext { Project = project, Doc = document };
+ var memberList = new WebFormsMemberListBuilder (refman, document.XDocument);
memberList.Build ();
AddErrorsToResult (result, filename, memberList.Errors);
@@ -153,9 +150,9 @@ namespace MonoDevelop.AspNet
} else if (!String.IsNullOrEmpty (document.Info.MasterPageTypeVPath)) {
try {
ProjectFile resolvedMaster = project.ResolveVirtualPath (document.Info.MasterPageTypeVPath, document.FileName);
- AspNetParsedDocument masterParsedDocument = null;
+ WebFormsParsedDocument masterParsedDocument = null;
if (resolvedMaster != null)
- masterParsedDocument = TypeSystemService.ParseFile (project, resolvedMaster.FilePath) as AspNetParsedDocument;
+ masterParsedDocument = TypeSystemService.ParseFile (project, resolvedMaster.FilePath) as WebFormsParsedDocument;
if (masterParsedDocument != null && !String.IsNullOrEmpty (masterParsedDocument.Info.InheritedClass))
masterTypeName = masterParsedDocument.Info.InheritedClass;
} catch (Exception ex) {
@@ -187,7 +184,7 @@ namespace MonoDevelop.AspNet
if (memberList.Members.Count == 0)
return result;
- var dom = refman.TypeCtx.Compilation;
+ var dom = refman.Compilation;
var cls = ReflectionHelper.ParseReflectionName (className).Resolve (dom);
var members = GetDesignerMembers (memberList.Members.Values, cls, filename);
@@ -204,8 +201,6 @@ namespace MonoDevelop.AspNet
/// <param name="members">Full list of CodeBehind members</param>
/// <param name="cls">The class to which these members' partial class will be added.</param>
/// <param name="designerFile">Members in this file will be ignored.</param>
- /// <param name="resolveDom">The ITypeResolveContext to use for resolving base types.</param>
- /// <param name="internalDom">The ITypeResolveContext to use for checking whether members are accessible as internal.</param>
/// <returns>The filtered list of non-conflicting members.</returns>
// TODO: check compatibilty with existing members
public static IEnumerable<CodeBehindMember> GetDesignerMembers (
@@ -222,7 +217,7 @@ namespace MonoDevelop.AspNet
continue;
existingMembers.Add (member.Name);
}
- if (!cls.DirectBaseTypes.Any (t => t.Kind != TypeKind.Interface))
+ if (cls.DirectBaseTypes.All (t => t.Kind == TypeKind.Interface))
break;
cls = cls.DirectBaseTypes.First(t => t.Kind != TypeKind.Interface);
}
diff --git a/main/src/addins/AspNet/WebForms/WebFormsCodeBehindTypeNameCache.cs b/main/src/addins/AspNet/WebForms/WebFormsCodeBehindTypeNameCache.cs
new file mode 100644
index 0000000000..526911a74f
--- /dev/null
+++ b/main/src/addins/AspNet/WebForms/WebFormsCodeBehindTypeNameCache.cs
@@ -0,0 +1,61 @@
+//
+// CodeBehindTypeNameCache.cs
+//
+// Author:
+// Michael Hutchinson <mhutch@xamarin.com>
+//
+// Copyright (c) 2014 Xamarin Inc.
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+
+using System;
+using System.IO;
+using MonoDevelop.Core;
+
+using MonoDevelop.Ide.TypeSystem;
+using MonoDevelop.Ide;
+using MonoDevelop.AspNet.WebForms;
+using MonoDevelop.AspNet.Projects;
+
+namespace MonoDevelop.AspNet.WebForms
+{
+ class WebFormsCodeBehindTypeNameCache : ProjectFileCache<AspNetAppProject,string>
+ {
+ public WebFormsCodeBehindTypeNameCache (AspNetAppProject proj) : base (proj)
+ {
+ }
+
+ protected override string GenerateInfo (string filename)
+ {
+ try {
+ var doc = TypeSystemService.ParseFile (filename, DesktopService.GetMimeTypeForUri (filename), File.ReadAllText (filename)) as WebFormsParsedDocument;
+ if (doc != null && !string.IsNullOrEmpty (doc.Info.InheritedClass))
+ return doc.Info.InheritedClass;
+ } catch (Exception ex) {
+ LoggingService.LogError ("Error reading codebehind name for file '" + filename + "'", ex);
+ }
+ return null;
+ }
+
+ public string GetCodeBehindTypeName (string fileName)
+ {
+ return Get (fileName);
+ }
+ }
+}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Parser/Directive.cs b/main/src/addins/AspNet/WebForms/WebFormsDirectiveCompletion.cs
index c35dd52786..54839d53ae 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Parser/Directive.cs
+++ b/main/src/addins/AspNet/WebForms/WebFormsDirectiveCompletion.cs
@@ -34,16 +34,28 @@ using System.Text;
using System.Web.UI;
using MonoDevelop.Core;
-using MonoDevelop.Ide.Gui.Content;
-using MonoDevelop.Projects;
using MonoDevelop.Ide.CodeCompletion;
+using MonoDevelop.AspNet.Projects;
-using MonoDevelop.AspNet.Completion;
-
-namespace MonoDevelop.AspNet.Parser
+namespace MonoDevelop.AspNet.WebForms
{
- static class DirectiveCompletion
+ static class WebFormsDirectiveCompletion
{
+ static void AddBoolean (CompletionDataList list, bool defaultValue)
+ {
+ list.Add ("true", "md-literal");
+ list.Add ("false", "md-literal");
+ list.DefaultCompletionString = defaultValue? "true" : "false";
+ }
+
+ static void AddEnum<T> (CompletionDataList list, T defaultValue)
+ {
+ foreach (string name in Enum.GetNames (typeof (T))) {
+ list.Add (name, "md-literal");
+ }
+ list.DefaultCompletionString = defaultValue.ToString ();
+ }
+
//
// NOTE: MS' documentation for directives is at http://msdn.microsoft.com/en-us/library/t8syafc7.aspx
//
@@ -203,7 +215,7 @@ namespace MonoDevelop.AspNet.Parser
case "smartnavigation":
case "strict": //VB ONLY
case "trace":
- SimpleList.AddBoolean (list, false);
+ AddBoolean (list, false);
break;
//
@@ -218,7 +230,7 @@ namespace MonoDevelop.AspNet.Parser
case "enableviewstatemac":
case "validaterequest": //enabled in machine.config
case "debug":
- SimpleList.AddBoolean (list, true);
+ AddBoolean (list, true);
break;
//
@@ -230,7 +242,7 @@ namespace MonoDevelop.AspNet.Parser
break;
case "compilationmode":
- SimpleList.AddEnum (list, System.Web.UI.CompilationMode.Always);
+ AddEnum (list, System.Web.UI.CompilationMode.Always);
break;
case "culture":
@@ -265,7 +277,7 @@ namespace MonoDevelop.AspNet.Parser
break;
case "viewstateencryptionmode":
- SimpleList.AddEnum (list, ViewStateEncryptionMode.Auto);
+ AddEnum (list, ViewStateEncryptionMode.Auto);
break;
case "warninglevel":
@@ -275,7 +287,7 @@ namespace MonoDevelop.AspNet.Parser
case "masterpagefile":
return project != null
- ? MonoDevelop.Html.PathCompletion.GetPathCompletion (project, "*.master", fromFile,
+ ? MonoDevelop.AspNet.Html.HtmlPathCompletion.GetPathCompletion (project, "*.master", fromFile,
x => "~/" + x.ProjectVirtualPath.ToString ().Replace (System.IO.Path.PathSeparator, '/'))
: null;
@@ -339,7 +351,7 @@ namespace MonoDevelop.AspNet.Parser
switch (attribute.ToLowerInvariant ()) {
case "src":
return project != null
- ? MonoDevelop.Html.PathCompletion.GetPathCompletion (project, "*.ascx", fromFile,
+ ? MonoDevelop.AspNet.Html.HtmlPathCompletion.GetPathCompletion (project, "*.ascx", fromFile,
x => "~/" + x.ProjectVirtualPath.ToString ().Replace (System.IO.Path.PathSeparator, '/'))
: null;
}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs b/main/src/addins/AspNet/WebForms/WebFormsEditorExtension.cs
index 325e9305d1..96a0239b78 100755..100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Gui/AspNetEditorExtension.cs
+++ b/main/src/addins/AspNet/WebForms/WebFormsEditorExtension.cs
@@ -27,34 +27,37 @@
//
using System;
-using System.Linq;
using System.Collections.Generic;
using System.Diagnostics;
+using System.Linq;
+using System.Text.RegularExpressions;
+
+using ICSharpCode.NRefactory;
+using ICSharpCode.NRefactory.TypeSystem;
using MonoDevelop.Core;
+using MonoDevelop.DesignerSupport;
using MonoDevelop.Ide.CodeCompletion;
using MonoDevelop.Ide.Gui.Content;
-
-using MonoDevelop.AspNet;
-using MonoDevelop.AspNet.Parser;
-using MonoDevelop.DesignerSupport;
-
-using S = MonoDevelop.Xml.StateEngine;
-using MonoDevelop.AspNet.StateEngine;
-using System.Text.RegularExpressions;
-using ICSharpCode.NRefactory.TypeSystem;
using MonoDevelop.Ide.TypeSystem;
-using ICSharpCode.NRefactory;
+using MonoDevelop.AspNet.Html;
+using MonoDevelop.AspNet.Html.Parser;
+using MonoDevelop.AspNet.Projects;
+using MonoDevelop.AspNet.WebForms.Parser;
+using S = MonoDevelop.Xml.Parser;
+using MonoDevelop.AspNet.WebForms.Dom;
+using MonoDevelop.Xml.Parser;
+using MonoDevelop.Xml.Dom;
-namespace MonoDevelop.AspNet.Gui
+namespace MonoDevelop.AspNet.WebForms
{
- public class AspNetEditorExtension : BaseHtmlEditorExtension
+ public class WebFormsEditorExtension : BaseHtmlEditorExtension
{
static readonly Regex DocTypeRegex = new Regex (@"(?:PUBLIC|public)\s+""(?<fpi>[^""]*)""\s+""(?<uri>[^""]*)""");
- AspNetParsedDocument aspDoc;
+ WebFormsParsedDocument aspDoc;
AspNetAppProject project;
- DocumentReferenceManager refman;
+ WebFormsTypeContext refman = new WebFormsTypeContext ();
ILanguageCompletionBuilder documentBuilder;
LocalDocumentInfo localDocumentInfo;
@@ -63,13 +66,19 @@ namespace MonoDevelop.AspNet.Gui
ICompletionWidget defaultCompletionWidget;
MonoDevelop.Ide.Gui.Document defaultDocument;
- bool HasDoc { get { return aspDoc != null; } }
+ bool HasDoc { get { return aspDoc != null; } }
+
+ public WebFormsTypeContext ReferenceManager {
+ get {
+ return refman;
+ }
+ }
#region Setup and teardown
- protected override S.RootState CreateRootState ()
+ protected override XmlRootState CreateRootState ()
{
- return new AspNetFreeState ();
+ return new WebFormsRootState ();
}
#endregion
@@ -77,38 +86,33 @@ namespace MonoDevelop.AspNet.Gui
protected override void OnParsedDocumentUpdated ()
{
base.OnParsedDocumentUpdated ();
- aspDoc = CU as AspNetParsedDocument;
-
- var newProj = base.Document.Project as AspNetAppProject;
- if (newProj == null)
- return;
- //throw new InvalidOperationException ("Document has no project");
+ aspDoc = CU as WebFormsParsedDocument;
+ if (HasDoc)
+ refman.Doc = aspDoc;
- if (project != newProj) {
+ var newProj = Document.Project as AspNetAppProject;
+ if (newProj != null) {
project = newProj;
- refman = new DocumentReferenceManager (project);
+ refman.Project = newProj;
}
- if (HasDoc)
- refman.Doc = aspDoc;
-
documentBuilder = HasDoc ? LanguageCompletionBuilderService.GetBuilder (aspDoc.Info.Language) : null;
if (documentBuilder != null) {
- documentInfo = new DocumentInfo (document.Compilation, aspDoc, refman.GetUsings (), refman.GetDoms ());
+ documentInfo = new DocumentInfo (refman.Compilation, aspDoc, refman.GetUsings ());
documentInfo.ParsedDocument = documentBuilder.BuildDocument (documentInfo, Editor);
documentInfo.CodeBesideClass = CreateCodeBesideClass (documentInfo, refman);
}
}
- static IUnresolvedTypeDefinition CreateCodeBesideClass (DocumentInfo info, DocumentReferenceManager refman)
+ static IUnresolvedTypeDefinition CreateCodeBesideClass (DocumentInfo info, WebFormsTypeContext refman)
{
- var memberList = new MemberListBuilder (refman, info.AspNetDocument.XDocument);
+ var memberList = new WebFormsMemberListBuilder (refman, info.AspNetDocument.XDocument);
memberList.Build ();
var t = new ICSharpCode.NRefactory.TypeSystem.Implementation.DefaultUnresolvedTypeDefinition (info.ClassName);
- var dom = refman.TypeCtx.Compilation;
+ var dom = refman.Compilation;
var baseType = ReflectionHelper.ParseReflectionName (info.BaseType).Resolve (dom);
- foreach (var m in CodeBehind.GetDesignerMembers (memberList.Members.Values, baseType, null)) {
+ foreach (var m in WebFormsCodeBehind.GetDesignerMembers (memberList.Members.Values, baseType, null)) {
t.Members.Add (new ICSharpCode.NRefactory.TypeSystem.Implementation.DefaultUnresolvedField (t, m.Name) {
Accessibility = Accessibility.Protected,
ReturnType = m.Type.ToTypeReference ()
@@ -120,37 +124,37 @@ namespace MonoDevelop.AspNet.Gui
protected override ICompletionDataList HandleCodeCompletion (CodeCompletionContext completionContext,
bool forced, ref int triggerWordLength)
{
- ITextBuffer buf = this.Buffer;
+ ITextBuffer buf = Buffer;
// completionChar may be a space even if the current char isn't, when ctrl-space is fired t
char currentChar = completionContext.TriggerOffset < 1? ' ' : buf.GetCharAt (completionContext.TriggerOffset - 1);
//char previousChar = completionContext.TriggerOffset < 2? ' ' : buf.GetCharAt (completionContext.TriggerOffset - 2);
//directive names
- if (Tracker.Engine.CurrentState is AspNetDirectiveState) {
- var directive = Tracker.Engine.Nodes.Peek () as AspNetDirective;
+ if (Tracker.Engine.CurrentState is WebFormsDirectiveState) {
+ var directive = Tracker.Engine.Nodes.Peek () as WebFormsDirective;
if (HasDoc && directive != null && directive.Region.BeginLine == completionContext.TriggerLine &&
directive.Region.BeginColumn + 3 == completionContext.TriggerLineOffset)
{
- return DirectiveCompletion.GetDirectives (aspDoc.Type);
+ return WebFormsDirectiveCompletion.GetDirectives (aspDoc.Type);
}
return null;
}
- if (Tracker.Engine.CurrentState is S.XmlNameState && Tracker.Engine.CurrentState.Parent is AspNetDirectiveState) {
- var directive = Tracker.Engine.Nodes.Peek () as AspNetDirective;
+ if (Tracker.Engine.CurrentState is XmlNameState && Tracker.Engine.CurrentState.Parent is WebFormsDirectiveState) {
+ var directive = Tracker.Engine.Nodes.Peek () as WebFormsDirective;
if (HasDoc && directive != null && directive.Region.BeginLine == completionContext.TriggerLine &&
directive.Region.BeginColumn + 4 == completionContext.TriggerLineOffset && char.IsLetter (currentChar))
{
triggerWordLength = 1;
- return DirectiveCompletion.GetDirectives (aspDoc.Type);
+ return WebFormsDirectiveCompletion.GetDirectives (aspDoc.Type);
}
return null;
}
- bool isAspExprState = Tracker.Engine.CurrentState is AspNetExpressionState;
+ bool isAspExprState = Tracker.Engine.CurrentState is WebFormsExpressionState;
//non-xml tag completion
- if (currentChar == '<' && !(isAspExprState || Tracker.Engine.CurrentState is S.XmlFreeState)) {
+ if (currentChar == '<' && !(isAspExprState || Tracker.Engine.CurrentState is XmlRootState)) {
var list = new CompletionDataList ();
AddAspBeginExpressions (list);
return list;
@@ -160,14 +164,14 @@ namespace MonoDevelop.AspNet.Gui
//FIXME: get doctype from master page
DocType = null;
} else {
- DocType = new MonoDevelop.Xml.StateEngine.XDocType (TextLocation.Empty);
+ DocType = new XDocType (TextLocation.Empty);
var matches = DocTypeRegex.Match (aspDoc.Info.DocType);
DocType.PublicFpi = matches.Groups["fpi"].Value;
DocType.Uri = matches.Groups["uri"].Value;
}
if (Tracker.Engine.CurrentState is HtmlScriptBodyState) {
- var el = Tracker.Engine.Nodes.Peek () as S.XElement;
+ var el = Tracker.Engine.Nodes.Peek () as XElement;
if (el != null) {
if (el.IsRunatServer ()) {
if (documentBuilder != null) {
@@ -192,7 +196,7 @@ namespace MonoDevelop.AspNet.Gui
}
//case insensitive, no prefix
- static S.XAttribute GetHtmlAtt (S.XElement el, string name)
+ static XAttribute GetHtmlAtt (XElement el, string name)
{
return el.Attributes.FirstOrDefault (a => a.IsNamed && !a.Name.HasPrefix && a.Name.Name.Equals (name, StringComparison.OrdinalIgnoreCase));
}
@@ -233,7 +237,7 @@ namespace MonoDevelop.AspNet.Gui
{
//completion for ASP.NET expressions
// TODO: Detect <script> state here !!!
- if (documentBuilder != null && Tracker.Engine.CurrentState is AspNetExpressionState) {
+ if (documentBuilder != null && Tracker.Engine.CurrentState is WebFormsExpressionState) {
InitializeCodeCompletion ('\0');
return documentBuilder.HandlePopupCompletion (defaultDocument, documentInfo, localDocumentInfo);
}
@@ -249,6 +253,7 @@ namespace MonoDevelop.AspNet.Gui
OnCompletionContextChanged (CompletionWidget, EventArgs.Empty);
};
defaultDocument.Saved += AsyncUpdateDesignerFile;
+ OnParsedDocumentUpdated ();
}
void AsyncUpdateDesignerFile (object sender, EventArgs e)
@@ -260,7 +265,7 @@ namespace MonoDevelop.AspNet.Gui
if (file == null)
return;
- var designerFile = CodeBehind.GetDesignerFile (file);
+ var designerFile = WebFormsCodeBehind.GetDesignerFile (file);
if (designerFile == null)
return;
@@ -269,7 +274,7 @@ namespace MonoDevelop.AspNet.Gui
GettextCatalog.GetString ("Updating ASP.NET Designer File..."), null, false))
{
var writer = CodeBehindWriter.CreateForProject (monitor, project);
- var result = CodeBehind.UpdateDesignerFile (writer, project, file, designerFile);
+ var result = WebFormsCodeBehind.UpdateDesignerFile (writer, project, file, designerFile);
//don't worry about reporting error's here for now
//if the user wants to see errors, they can compile
if (!result.Failed)
@@ -290,7 +295,7 @@ namespace MonoDevelop.AspNet.Gui
public override bool KeyPress (Gdk.Key key, char keyChar, Gdk.ModifierType modifier)
{
Tracker.UpdateEngine ();
- bool isAspExprState = Tracker.Engine.CurrentState is AspNetExpressionState;
+ bool isAspExprState = Tracker.Engine.CurrentState is WebFormsExpressionState;
if (documentBuilder == null || !isAspExprState)
return base.KeyPress (key, keyChar, modifier);
InitializeCodeCompletion ('\0');
@@ -347,26 +352,14 @@ namespace MonoDevelop.AspNet.Gui
protected override void GetElementCompletions (CompletionDataList list)
{
- S.XName parentName = GetParentElementName (0);
-
- //fallback
- if (!HasDoc) {
- AddAspBeginExpressions (list);
- string aspPrefix = "asp:";
- var type = ReflectionHelper.ParseReflectionName ("System.Web.UI.Control").Resolve (TypeSystemService.GetCompilation (project));
- foreach (var cls in WebTypeContext.ListSystemControlClasses (type, project))
- list.Add (new AspTagCompletionData (aspPrefix, cls));
-
- base.GetElementCompletions (list);
- return;
- }
+ XName parentName = GetParentElementName (0);
IType controlClass = null;
if (parentName.HasPrefix) {
controlClass = refman.GetControlType (parentName.Prefix, parentName.Name);
} else {
- S.XName grandparentName = GetParentElementName (1);
+ XName grandparentName = GetParentElementName (1);
if (grandparentName.IsValid && grandparentName.HasPrefix)
controlClass = refman.GetControlType (grandparentName.Prefix, grandparentName.Name);
}
@@ -376,7 +369,7 @@ namespace MonoDevelop.AspNet.Gui
//root element?
if (!parentName.IsValid) {
if (aspDoc.Info.Subtype == WebSubtype.WebControl) {
- AddHtmlTagCompletionData (list, Schema, new S.XName ("div"));
+ AddHtmlTagCompletionData (list, Schema, new XName ("div"));
AddAspBeginExpressions (list);
list.AddRange (refman.GetControlCompletionData ());
AddMiscBeginTags (list);
@@ -403,7 +396,7 @@ namespace MonoDevelop.AspNet.Gui
list.AddRange (refman.GetControlCompletionData ());
AddMiscBeginTags (list);
//TODO: get correct parent for Content tags
- AddHtmlTagCompletionData (list, Schema, new S.XName ("body"));
+ AddHtmlTagCompletionData (list, Schema, new XName ("body"));
return;
}
@@ -438,7 +431,7 @@ namespace MonoDevelop.AspNet.Gui
if (property.ReturnType.ToString () == "System.Web.UI.ITemplate") {
AddAspBeginExpressions (list);
AddMiscBeginTags (list);
- AddHtmlTagCompletionData (list, Schema, new S.XName ("body"));
+ AddHtmlTagCompletionData (list, Schema, new XName ("body"));
list.AddRange (refman.GetControlCompletionData ());
return;
}
@@ -478,11 +471,11 @@ namespace MonoDevelop.AspNet.Gui
}
}
- protected override CompletionDataList GetAttributeCompletions (S.IAttributedXObject attributedOb,
+ protected override CompletionDataList GetAttributeCompletions (IAttributedXObject attributedOb,
Dictionary<string, string> existingAtts)
{
var list = base.GetAttributeCompletions (attributedOb, existingAtts) ?? new CompletionDataList ();
- if (attributedOb is S.XElement) {
+ if (attributedOb is XElement) {
if (!existingAtts.ContainsKey ("runat"))
list.Add ("runat=\"server\"", "md-literal",
@@ -504,65 +497,62 @@ namespace MonoDevelop.AspNet.Gui
AddAspAttributeCompletionData (list, attributedOb.Name, existingAtts);
}
- } else if (attributedOb is AspNetDirective) {
- return DirectiveCompletion.GetAttributes (project, attributedOb.Name.FullName, existingAtts);
+ } else if (attributedOb is WebFormsDirective) {
+ return WebFormsDirectiveCompletion.GetAttributes (project, attributedOb.Name.FullName, existingAtts);
}
return list.Count > 0? list : null;
}
- protected override CompletionDataList GetAttributeValueCompletions (S.IAttributedXObject ob, S.XAttribute att)
+ protected override CompletionDataList GetAttributeValueCompletions (IAttributedXObject ob, XAttribute att)
{
var list = base.GetAttributeValueCompletions (ob, att) ?? new CompletionDataList ();
- if (ob is S.XElement) {
+ if (ob is XElement) {
if (ob.Name.HasPrefix) {
string id = ob.GetId ();
if (string.IsNullOrEmpty (id) || string.IsNullOrEmpty (id.Trim ()))
id = null;
AddAspAttributeValueCompletionData (list, ob.Name, att.Name, id);
}
- } else if (ob is AspNetDirective) {
- return DirectiveCompletion.GetAttributeValues (project, Document.FileName, ob.Name.FullName, att.Name.FullName);
+ } else if (ob is WebFormsDirective) {
+ return WebFormsDirectiveCompletion.GetAttributeValues (project, Document.FileName, ob.Name.FullName, att.Name.FullName);
}
return list.Count > 0? list : null;
}
ClrVersion ProjClrVersion {
- get { return project.TargetFramework.ClrVersion; }
+ get { return project == null? ClrVersion.Net_4_5 : project.TargetFramework.ClrVersion; }
}
- CompletionDataList HandleExpressionCompletion (AspNetExpression expr)
+ CompletionDataList HandleExpressionCompletion (WebFormsExpression expr)
{
- if (!(expr is AspNetDataBindingExpression || expr is AspNetRenderExpression))
+ if (!(expr is WebFormsBindingExpression || expr is WebFormsRenderExpression))
return null;
+
IType codeBehindClass;
- ICompilation projectDatabase;
- GetCodeBehind (out codeBehindClass, out projectDatabase);
-
- if (codeBehindClass == null)
+ if (!GetCodeBehind (out codeBehindClass))
return null;
//list just the class's properties, not properties on base types
- CompletionDataList list = new CompletionDataList ();
+ var list = new CompletionDataList ();
list.AddRange (from p in codeBehindClass.GetProperties ()
where p.IsPublic || p.IsPublic
- select new CompletionData (p.Name, "md-property"));
+ select new AspAttributeCompletionData (p));
list.AddRange (from p in codeBehindClass.GetFields ()
where p.IsProtected || p.IsPublic
- select new CompletionData (p.Name, "md-property"));
+ select new AspAttributeCompletionData (p));
return list.Count > 0? list : null;
}
- void GetCodeBehind (out IType codeBehindClass, out ICompilation projectDatabase)
+ bool GetCodeBehind (out IType codeBehindClass)
{
- codeBehindClass = null;
- projectDatabase = null;
-
if (HasDoc && !string.IsNullOrEmpty (aspDoc.Info.InheritedClass)) {
- projectDatabase = TypeSystemService.GetCompilation (project);
- if (projectDatabase != null)
- codeBehindClass = ReflectionHelper.ParseReflectionName (aspDoc.Info.InheritedClass).Resolve (projectDatabase);
+ codeBehindClass = ReflectionHelper.ParseReflectionName (aspDoc.Info.InheritedClass).Resolve (refman.Compilation);
+ return codeBehindClass != null;
}
+
+ codeBehindClass = null;
+ return false;
}
#region ASP.NET data
@@ -586,70 +576,44 @@ namespace MonoDevelop.AspNet.Gui
}
}
- void AddAspAttributeCompletionData (CompletionDataList list, S.XName name, Dictionary<string, string> existingAtts)
+ void AddAspAttributeCompletionData (CompletionDataList list, XName name, Dictionary<string, string> existingAtts)
{
Debug.Assert (name.IsValid);
Debug.Assert (name.HasPrefix);
- var database = TypeSystemService.GetCompilation (project);
-
- if (database == null) {
- LoggingService.LogWarning ("Could not obtain project DOM in AddAspAttributeCompletionData");
- return;
- }
-
IType controlClass = refman.GetControlType (name.Prefix, name.Name);
- if (controlClass == null) {
- controlClass = ReflectionHelper.ParseReflectionName ("System.Web.UI.WebControls.WebControl").Resolve (database);
- if (controlClass == null) {
- LoggingService.LogWarning ("Could not obtain IType for System.Web.UI.WebControls.WebControl");
- return;
- }
- }
-
- AddControlMembers (list, controlClass, existingAtts);
+ if(controlClass != null)
+ AddControlMembers (list, controlClass, existingAtts);
}
- void AddControlMembers (CompletionDataList list, IType controlClass,
- Dictionary<string, string> existingAtts)
+ void AddControlMembers (CompletionDataList list, IType controlClass, Dictionary<string, string> existingAtts)
{
//add atts only if they're not already in the tag
foreach (var prop in GetUniqueMembers<IProperty> (controlClass.GetProperties ()))
if (prop.Accessibility == Accessibility.Public && (existingAtts == null || !existingAtts.ContainsKey (prop.Name)))
if (GetPersistenceMode (prop) == System.Web.UI.PersistenceMode.Attribute)
- list.Add (prop.Name, prop.GetStockIcon (), AmbienceService.GetSummaryMarkup (prop));
+ list.Add (new AspAttributeCompletionData (prop));
//similarly add events
foreach (var eve in GetUniqueMembers<IEvent> (controlClass.GetEvents ())) {
string eveName = "On" + eve.Name;
if (eve.Accessibility == Accessibility.Public && (existingAtts == null || !existingAtts.ContainsKey (eveName)))
- list.Add (eveName, eve.GetStockIcon (), AmbienceService.GetSummaryMarkup (eve));
+ list.Add (new AspAttributeCompletionData (eve, eveName));
}
}
- void AddAspAttributeValueCompletionData (CompletionDataList list, S.XName tagName, S.XName attName, string id)
+ void AddAspAttributeValueCompletionData (CompletionDataList list, XName tagName, XName attName, string id)
{
Debug.Assert (tagName.IsValid && tagName.HasPrefix);
Debug.Assert (attName.IsValid && !attName.HasPrefix);
- IType controlClass = HasDoc ? refman.GetControlType (tagName.Prefix, tagName.Name) : null;
-
- if (controlClass == null) {
- LoggingService.LogWarning ("Could not obtain IType for {0}", tagName.FullName);
-
- var database = WebTypeContext.GetSystemWebDom (project);
- controlClass = ReflectionHelper.ParseReflectionName ("System.Web.UI.WebControls.WebControl").Resolve (database);
-
- if (controlClass == null) {
- LoggingService.LogWarning ("Could not obtain IType for System.Web.UI.WebControls.WebControl");
- return;
- }
- }
+ IType controlClass = refman.GetControlType (tagName.Prefix, tagName.Name);
+ if (controlClass == null)
+ return;
//find the codebehind class
IType codeBehindClass;
- ICompilation projectDatabase;
- GetCodeBehind (out codeBehindClass, out projectDatabase);
+ GetCodeBehind (out codeBehindClass);
//if it's an event, suggest compatible methods
if (codeBehindClass != null && attName.Name.StartsWith ("On", StringComparison.Ordinal)) {
@@ -681,35 +645,26 @@ namespace MonoDevelop.AspNet.Gui
list.Add (
new SuggestedHandlerCompletionData (project, domMethod, codeBehindClass,
- MonoDevelop.DesignerSupport.CodeBehind.GetNonDesignerClass (codeBehindClass))
+ CodeBehind.GetNonDesignerClass (codeBehindClass))
);
return;
}
}
}
- if (projectDatabase == null) {
- projectDatabase = WebTypeContext.GetSystemWebDom (project);
-
- if (projectDatabase == null) {
- LoggingService.LogWarning ("Could not obtain type database in AddAspAttributeCompletionData");
- return;
- }
- }
-
//if it's a property and is an enum or bool, suggest valid values
foreach (IProperty prop in controlClass.GetProperties ()) {
if (prop.Name != attName.Name)
continue;
//boolean completion
- if (prop.ReturnType.Equals (projectDatabase.FindType (KnownTypeCode.Boolean))) {
+ if (prop.ReturnType.Equals (refman.Compilation.FindType (KnownTypeCode.Boolean))) {
AddBooleanCompletionData (list);
return;
}
//color completion
- if (prop.ReturnType.Equals (projectDatabase.FindType (typeof(System.Drawing.Color)))) {
- System.Drawing.ColorConverter conv = new System.Drawing.ColorConverter ();
+ if (prop.ReturnType.Equals (refman.Compilation.FindType (typeof(System.Drawing.Color)))) {
+ var conv = new System.Drawing.ColorConverter ();
foreach (System.Drawing.Color c in conv.GetStandardValues (null)) {
if (c.IsSystemColor)
continue;
@@ -732,7 +687,7 @@ namespace MonoDevelop.AspNet.Gui
static IEnumerable<T> GetUniqueMembers<T> (IEnumerable<T> members) where T : IMember
{
- Dictionary <string, bool> existingItems = new Dictionary<string,bool> ();
+ var existingItems = new Dictionary<string,bool> ();
foreach (T item in members) {
if (existingItems.ContainsKey (item.Name))
continue;
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Parser/MemberListBuilder.cs b/main/src/addins/AspNet/WebForms/WebFormsMemberListBuilder.cs
index 9df010d6dd..65783b3d8d 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Parser/MemberListBuilder.cs
+++ b/main/src/addins/AspNet/WebForms/WebFormsMemberListBuilder.cs
@@ -32,26 +32,28 @@
using System;
using System.Collections.Generic;
+using System.Linq;
-using MonoDevelop.Core;
-using ICSharpCode.NRefactory.TypeSystem;
using ICSharpCode.NRefactory;
-using MonoDevelop.Xml.StateEngine;
-using MonoDevelop.AspNet.StateEngine;
-using System.Linq;
+using ICSharpCode.NRefactory.TypeSystem;
+
+using MonoDevelop.Core;
+using MonoDevelop.AspNet.WebForms;
+using MonoDevelop.AspNet.WebForms.Dom;
+using MonoDevelop.Xml.Dom;
-namespace MonoDevelop.AspNet.Parser
+namespace MonoDevelop.AspNet.WebForms
{
//purpose is to find all named tags for code completion and compilation of base class
- public class MemberListBuilder
+ class WebFormsMemberListBuilder
{
- DocumentReferenceManager docRefMan;
+ readonly WebFormsTypeContext docRefMan;
XDocument xDocument;
public IDictionary<string,CodeBehindMember> Members { get; private set; }
public IList<Error> Errors { get; private set; }
- public MemberListBuilder (DocumentReferenceManager refMan, XDocument xDoc)
+ public WebFormsMemberListBuilder (WebFormsTypeContext refMan, XDocument xDoc)
{
docRefMan = refMan;
xDocument = xDoc;
@@ -66,7 +68,7 @@ namespace MonoDevelop.AspNet.Parser
foreach (XElement el in xDocument.Nodes.OfType<XElement> ())
AddMember (el);
} catch (Exception ex) {
- Errors.Add (new Error (ErrorType.Error, "Unknown parser error: " + ex.ToString ()));
+ Errors.Add (new Error (ErrorType.Error, "Unknown parser error: " + ex));
}
}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Parser/PageInfo.cs b/main/src/addins/AspNet/WebForms/WebFormsPageInfo.cs
index a35fc72f73..48fcf3138e 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Parser/PageInfo.cs
+++ b/main/src/addins/AspNet/WebForms/WebFormsPageInfo.cs
@@ -30,18 +30,14 @@ using System;
using System.Collections.Generic;
using ICSharpCode.NRefactory.TypeSystem;
-using MonoDevelop.AspNet.StateEngine;
-using MonoDevelop.Xml.StateEngine;
+using MonoDevelop.AspNet.Projects;
+using MonoDevelop.AspNet.WebForms.Dom;
+using MonoDevelop.Xml.Dom;
-namespace MonoDevelop.AspNet.Parser
+namespace MonoDevelop.AspNet.WebForms
{
-
- public class PageInfo
+ public class WebFormsPageInfo
{
- public PageInfo ()
- {
- }
-
List<RegisterDirective> registeredTags = new List<RegisterDirective> ();
List<string> imports = new List<string> ();
List<string> implements = new List<string> ();
@@ -67,8 +63,8 @@ namespace MonoDevelop.AspNet.Parser
public void Populate (XDocument xDoc, List<Error> errors)
{
foreach (XNode node in xDoc.AllDescendentNodes) {
- if (node is AspNetDirective) {
- HandleDirective (node as AspNetDirective, errors);
+ if (node is WebFormsDirective) {
+ HandleDirective (node as WebFormsDirective, errors);
} else if (node is XDocType) {
HandleDocType (node as XDocType);
} else if (node is XElement) {
@@ -83,7 +79,7 @@ namespace MonoDevelop.AspNet.Parser
return attributes.GetValue (new XName (key), true) ?? string.Empty;
}
- void HandleDirective (AspNetDirective directive, List<Error> errors)
+ void HandleDirective (WebFormsDirective directive, List<Error> errors)
{
switch (directive.Name.Name.ToLowerInvariant ()) {
case "page":
@@ -176,7 +172,7 @@ namespace MonoDevelop.AspNet.Parser
}
}
- void SetSubtype (WebSubtype type, AspNetDirective directive, List<Error> errors)
+ void SetSubtype (WebSubtype type, WebFormsDirective directive, List<Error> errors)
{
if (Subtype != WebSubtype.None) {
errors.Add (new Error (ErrorType.Error, "Unexpected directive " + directive.Name.FullName, directive.Region));
@@ -204,93 +200,92 @@ namespace MonoDevelop.AspNet.Parser
}
#endregion
- }
-
- public abstract class RegisterDirective
- {
- public RegisterDirective (string tagPrefix)
- {
- this.TagPrefix = tagPrefix;
- }
-
- public string TagPrefix { get; private set; }
-
- public virtual bool IsValid ()
+
+ public abstract class RegisterDirective
{
- if (string.IsNullOrEmpty (TagPrefix))
- return false;
-
- foreach (char c in TagPrefix)
- if (!Char.IsLetterOrDigit (c))
+ public RegisterDirective (string tagPrefix)
+ {
+ this.TagPrefix = tagPrefix;
+ }
+
+ public string TagPrefix { get; private set; }
+
+ public virtual bool IsValid ()
+ {
+ if (string.IsNullOrEmpty (TagPrefix))
return false;
-
- return true;
- }
- }
-
- public class AssemblyRegisterDirective : RegisterDirective
- {
- public AssemblyRegisterDirective (string tagPrefix, string @namespace, string assembly) : base (tagPrefix)
- {
- this.Namespace = @namespace;
- this.Assembly = assembly;
- }
-
- public string Namespace { get; private set; }
- public string Assembly { get; private set; }
-
- public override string ToString ()
- {
- return String.Format ("<%@ Register TagPrefix=\"{0}\" Namespace=\"{1}\" Assembly=\"{2}\" %>", TagPrefix, Namespace, Assembly);
- }
-
- public override bool IsValid ()
- {
- if (string.IsNullOrEmpty (Assembly) || string.IsNullOrEmpty (Namespace) || !base.IsValid ())
- return false;
- return true;
+
+ foreach (char c in TagPrefix)
+ if (!Char.IsLetterOrDigit (c))
+ return false;
+
+ return true;
+ }
}
- }
-
- public class ControlRegisterDirective : RegisterDirective
- {
- public ControlRegisterDirective (string tagPrefix, string tagName, string src) : base (tagPrefix)
+
+ public class AssemblyRegisterDirective : RegisterDirective
{
- this.TagName = tagName;
- this.Src = src;
- }
-
- public string TagName { get; private set; }
- public string Src { get; private set; }
-
- public override string ToString ()
- {
- return String.Format ("<%@ Register {0}=\"{1}\" {2}=\"{3}\" {4}=\"{5}\" %>", "TagPrefix", TagPrefix, "TagName", TagName, "Src", Src);
+ public AssemblyRegisterDirective (string tagPrefix, string @namespace, string assembly) : base (tagPrefix)
+ {
+ this.Namespace = @namespace;
+ this.Assembly = assembly;
+ }
+
+ public string Namespace { get; private set; }
+ public string Assembly { get; private set; }
+
+ public override string ToString ()
+ {
+ return String.Format ("<%@ Register TagPrefix=\"{0}\" Namespace=\"{1}\" Assembly=\"{2}\" %>", TagPrefix, Namespace, Assembly);
+ }
+
+ public override bool IsValid ()
+ {
+ if (string.IsNullOrEmpty (Assembly) || string.IsNullOrEmpty (Namespace) || !base.IsValid ())
+ return false;
+ return true;
+ }
}
-
- public override bool IsValid ()
+
+ public class ControlRegisterDirective : RegisterDirective
{
- if (string.IsNullOrEmpty (TagName) || string.IsNullOrEmpty (Src) || !base.IsValid ())
- return false;
- return true;
+ public ControlRegisterDirective (string tagPrefix, string tagName, string src) : base (tagPrefix)
+ {
+ this.TagName = tagName;
+ this.Src = src;
+ }
+
+ public string TagName { get; private set; }
+ public string Src { get; private set; }
+
+ public override string ToString ()
+ {
+ return String.Format ("<%@ Register {0}=\"{1}\" {2}=\"{3}\" {4}=\"{5}\" %>", "TagPrefix", TagPrefix, "TagName", TagName, "Src", Src);
+ }
+
+ public override bool IsValid ()
+ {
+ if (string.IsNullOrEmpty (TagName) || string.IsNullOrEmpty (Src) || !base.IsValid ())
+ return false;
+ return true;
+ }
}
- }
-
- public class AssemblyDirective
- {
- public AssemblyDirective (string name, string src)
- {
- this.Name = name;
- this.Src = src;
- }
-
- public string Name { get; private set; }
- public string Src { get; private set; }
-
- public bool IsValid ()
- {
- return string.IsNullOrEmpty (Name) ^ string.IsNullOrEmpty (Src);
+
+ public class AssemblyDirective
+ {
+ public AssemblyDirective (string name, string src)
+ {
+ this.Name = name;
+ this.Src = src;
+ }
+
+ public string Name { get; private set; }
+ public string Src { get; private set; }
+
+ public bool IsValid ()
+ {
+ return string.IsNullOrEmpty (Name) ^ string.IsNullOrEmpty (Src);
+ }
}
}
-
}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Parser/AspNetParsedDocument.cs b/main/src/addins/AspNet/WebForms/WebFormsParsedDocument.cs
index 9ed7baf748..0089aea70e 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Parser/AspNetParsedDocument.cs
+++ b/main/src/addins/AspNet/WebForms/WebFormsParsedDocument.cs
@@ -29,17 +29,18 @@
using System;
using System.Collections.Generic;
-using MonoDevelop.Ide.TypeSystem;
-using MonoDevelop.Xml.StateEngine;
-using MonoDevelop.AspNet.StateEngine;
using ICSharpCode.NRefactory.TypeSystem;
+using MonoDevelop.Ide.TypeSystem;
+using MonoDevelop.Xml.Dom;
+using MonoDevelop.AspNet.Projects;
+using MonoDevelop.AspNet.WebForms.Dom;
-namespace MonoDevelop.AspNet.Parser
+namespace MonoDevelop.AspNet.WebForms
{
- public class AspNetParsedDocument : XmlParsedDocument
+ public class WebFormsParsedDocument : MonoDevelop.Xml.Editor.XmlParsedDocument
{
// Constructor used for testing the XDOM
- public AspNetParsedDocument (string fileName, WebSubtype type, PageInfo info, XDocument xDoc) :
+ public WebFormsParsedDocument (string fileName, WebSubtype type, WebFormsPageInfo info, XDocument xDoc) :
base (fileName)
{
Flags |= ParsedDocumentFlags.NonSerializable;
@@ -48,7 +49,7 @@ namespace MonoDevelop.AspNet.Parser
XDocument = xDoc;
}
- public PageInfo Info { get; private set; }
+ public WebFormsPageInfo Info { get; private set; }
public WebSubtype Type { get; private set; }
public override IEnumerable<FoldingRegion> Foldings {
@@ -88,7 +89,7 @@ namespace MonoDevelop.AspNet.Parser
}
continue;
}
- if (node is XComment || node is AspNetServerComment || node is AspNetDirective || node is AspNetExpression || node is AspNetRenderBlock) {
+ if (node is XComment || node is WebFormsServerComment || node is WebFormsDirective || node is WebFormsExpression || node is WebFormsRenderBlock) {
if ((node.Region.EndLine - node.Region.BeginLine) > 2)
yield return new FoldingRegion (node.FriendlyPathRepresentation, node.Region);
continue;
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Parser/AspNetParser.cs b/main/src/addins/AspNet/WebForms/WebFormsParser.cs
index fd5903eed7..03f19b91be 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.Parser/AspNetParser.cs
+++ b/main/src/addins/AspNet/WebForms/WebFormsParser.cs
@@ -27,27 +27,29 @@
//
using System;
+using System.Collections.Generic;
using System.IO;
-using System.Collections.Generic;
+using ICSharpCode.NRefactory.TypeSystem;
using MonoDevelop.Core;
using MonoDevelop.Ide.TypeSystem;
-using ICSharpCode.NRefactory.TypeSystem;
using MonoDevelop.Projects;
-using MonoDevelop.Xml.StateEngine;
-using MonoDevelop.AspNet.StateEngine;
+using MonoDevelop.Xml.Dom;
+using MonoDevelop.Xml.Parser;
+using MonoDevelop.AspNet.Projects;
+using MonoDevelop.AspNet.WebForms.Parser;
-namespace MonoDevelop.AspNet.Parser
+namespace MonoDevelop.AspNet.WebForms
{
- public class AspNetParser : TypeSystemParser
+ public class WebFormsParser : TypeSystemParser
{
public override ParsedDocument Parse (bool storeAst, string fileName, TextReader tr, Project project = null)
{
- var info = new PageInfo ();
+ var info = new WebFormsPageInfo ();
var errors = new List<Error> ();
- Xml.StateEngine.Parser parser = new Xml.StateEngine.Parser (
- new AspNetFreeState (),
+ var parser = new XmlParser (
+ new WebFormsRootState (),
true
);
@@ -75,7 +77,7 @@ namespace MonoDevelop.AspNet.Parser
}
}
- var result = new AspNetParsedDocument (fileName, type, info, xDoc);
+ var result = new WebFormsParsedDocument (fileName, type, info, xDoc);
result.Add (errors);
return result;
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/RegistrationCache.cs b/main/src/addins/AspNet/WebForms/WebFormsRegistrationCache.cs
index 51f04209f2..ac1a6ccb6c 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/RegistrationCache.cs
+++ b/main/src/addins/AspNet/WebForms/WebFormsRegistrationCache.cs
@@ -28,23 +28,20 @@
using System;
using System.Collections.Generic;
-using System.IO;
using System.Xml;
using System.Xml.Linq;
using System.Linq;
+
using MonoDevelop.Core;
using MonoDevelop.Projects;
+using MonoDevelop.AspNet.Projects;
-namespace MonoDevelop.AspNet
-{
-
- class RegistrationCache : ProjectFileCache<AspNetAppProject,RegistrationInfo>
+namespace MonoDevelop.AspNet.WebForms
+{
+ class WebFormsRegistrationCache : ProjectFileCache<AspNetAppProject,RegistrationInfo>
{
- RegistrationInfo machineRegistrationInfo;
-
- public RegistrationCache (AspNetAppProject project) : base (project)
+ public WebFormsRegistrationCache (AspNetAppProject project) : base (project)
{
- machineRegistrationInfo = GetMachineInfo ();
}
public IList<RegistrationInfo> GetInfosForPath (FilePath dir)
@@ -62,7 +59,7 @@ namespace MonoDevelop.AspNet
infos.Add (reg);
dir = dir.ParentDirectory;
}
- infos.Add (machineRegistrationInfo);
+ infos.Add (MachineRegistrationInfo);
return infos;
}
@@ -79,7 +76,7 @@ namespace MonoDevelop.AspNet
return null;
}
- RegistrationInfo ReadFrom (string filename, XDocument doc)
+ static RegistrationInfo ReadFrom (string filename, XDocument doc)
{
var info = new RegistrationInfo ();
@@ -128,53 +125,61 @@ namespace MonoDevelop.AspNet
}
return info;
}
+
- public IEnumerable<ControlRegistration> GetControlsForPath (string path)
- {
- //FIXME: handle removes as well as adds
- return GetInfosForPath (path).SelectMany (x => x.Controls).Where (c => c.Add);
- }
-
- public IEnumerable<string> GetAssembliesForPath (string path)
- {
- //FIXME: handle removes as well as adds
- return GetInfosForPath (path).SelectMany (x => x.Assemblies).Where (c => c.Add).Select (c => c.Name);
- }
-
- public IEnumerable<string> GetNamespacesForPath (string path)
- {
- //FIXME: handle removes as well as adds
- return GetInfosForPath (path).SelectMany (x => x.Namespaces).Where (c => c.Add).Select (c => c.Namespace);
- }
-
- //FIXME: add more default values
+ //FIXME: add more default values, controls, etc. make version dependent.
+ //FIXME: use actual machine web.config?
static RegistrationInfo GetMachineInfo ()
{
var info = new RegistrationInfo ();
-
- //see http://msdn.microsoft.com/en-us/library/eb44kack.aspx
- string[] defaultNamespaces = {
- "System",
- "System.Collections",
- "System.Collections.Specialized",
- "System.Configuration",
- "System.Text",
- "System.Text.RegularExpressions",
- "System.Web",
- "System.Web.Caching",
- "System.Web.Profile",
- "System.Web.Security",
- "System.Web.SessionState",
- "System.Web.UI",
- "System.Web.UI.HtmlControls",
- "System.Web.UI.WebControls",
- "System.Web.UI.WebControls.WebParts",
- };
-
- info.Namespaces.AddRange (defaultNamespaces.Select (ns => new NamespaceRegistration (true, ns)));
-
- return info;
+
+ info.Namespaces.AddRange (defaultNamespaces.Select (ns => new NamespaceRegistration (true, ns)));
+ info.Assemblies.AddRange (defaultAssemblies.Select (asm => new AssemblyRegistration (true, asm)));
+
+ return info;
+ }
+
+ static readonly string[] defaultAssemblies = {
+ "mscorlib",
+ "System",
+ "System.Configuration",
+ "System.Web",
+ "System.Data",
+ "System.Web.Services",
+ "System.Xml",
+ "System.Drawing",
+ "System.EnterpriseServices",
+ "System.Web.Mobile",
+ };
+
+ //see http://msdn.microsoft.com/en-us/library/eb44kack.aspx
+ static readonly string[] defaultNamespaces = {
+ "System",
+ "System.Collections",
+ "System.Collections.Specialized",
+ "System.Configuration",
+ "System.Text",
+ "System.Text.RegularExpressions",
+ "System.Web",
+ "System.Web.Caching",
+ "System.Web.Profile",
+ "System.Web.Security",
+ "System.Web.SessionState",
+ "System.Web.UI",
+ "System.Web.UI.HtmlControls",
+ "System.Web.UI.WebControls",
+ "System.Web.UI.WebControls.WebParts",
+ };
+
+ public static bool IsDefaultReference (string reference)
+ {
+ return defaultAssemblies.Any (r =>
+ reference.StartsWith (r, StringComparison.Ordinal) &&
+ (reference.Length == r.Length || reference [r.Length] == ',')
+ );
}
+
+ public static readonly RegistrationInfo MachineRegistrationInfo = GetMachineInfo ();
}
class RegistrationInfo
@@ -265,8 +270,7 @@ namespace MonoDevelop.AspNet
/// When a project file with that name is cached in any way, the cache item will be flushed.
/// </summary>
/// <remarks>Not safe for multithreaded access.</remarks>
- abstract class ProjectFileCache<T,U> : IDisposable
- where T : MonoDevelop.Projects.Project
+ abstract class ProjectFileCache<T,U> : IDisposable where T : Project
{
protected T Project { get; private set; }
@@ -274,7 +278,7 @@ namespace MonoDevelop.AspNet
/// <summary>Creates a ProjectFileCache</summary>
/// <param name="project">The project the cache is bound to</param>
- public ProjectFileCache (T project)
+ protected ProjectFileCache (T project)
{
this.Project = project;
cache = new Dictionary<string, U> ();
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetSyntaxMode.cs b/main/src/addins/AspNet/WebForms/WebFormsSyntaxMode.cs
index 39b95db634..fb7261cf2a 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetSyntaxMode.cs
+++ b/main/src/addins/AspNet/WebForms/WebFormsSyntaxMode.cs
@@ -24,22 +24,20 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
-using System;
-using System.Linq;
-using Mono.TextEditor.Highlighting;
using System.Collections.Generic;
-using Mono.TextEditor;
-using System.Xml;
+using System.Linq;
using System.Text;
-using MonoDevelop.AspNet.Parser;
+using Mono.TextEditor;
+using Mono.TextEditor.Highlighting;
+using MonoDevelop.AspNet.WebForms.Parser;
-namespace MonoDevelop.AspNet
+namespace MonoDevelop.AspNet.WebForms
{
- public class AspNetSyntaxMode : Mono.TextEditor.Highlighting.SyntaxMode
+ public class WebFormsSyntaxMode : SyntaxMode
{
// SyntaxMode charpMode;
- public AspNetSyntaxMode ()
+ public WebFormsSyntaxMode ()
{
var provider = new ResourceStreamProvider (typeof(ResourceStreamProvider).Assembly, "AspNetSyntaxMode.xml");
using (var reader = provider.Open ()) {
@@ -108,7 +106,7 @@ namespace MonoDevelop.AspNet
{
var ideDocument = doc.Tag as MonoDevelop.Ide.Gui.Document;
if (ideDocument != null && ideDocument.ParsedDocument != null) {
- var parsedDocument = ideDocument.ParsedDocument as AspNetParsedDocument;
+ var parsedDocument = ideDocument.ParsedDocument as WebFormsParsedDocument;
if (parsedDocument != null)
return GetMimeForLanguage (parsedDocument.Info.Language) ?? "text/x-csharp";
}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetToolboxLoader.cs b/main/src/addins/AspNet/WebForms/WebFormsToolboxLoader.cs
index b593cb6145..828e6600d0 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetToolboxLoader.cs
+++ b/main/src/addins/AspNet/WebForms/WebFormsToolboxLoader.cs
@@ -28,7 +28,6 @@
using System;
using System.ComponentModel;
-using System.Collections.Generic;
using System.Drawing.Design;
using MonoDevelop.DesignerSupport.Toolbox;
@@ -36,18 +35,15 @@ using MonoDevelop.Core.Assemblies;
using MonoDevelop.Core;
-namespace MonoDevelop.AspNet
+namespace MonoDevelop.AspNet.WebForms
{
-
-
- public class AspNetToolboxLoader : ToolboxItemToolboxLoader
+ public class WebFormsToolboxLoader : ToolboxItemToolboxLoader
{
-
public override ItemToolboxNode GetNode (Type t, ToolboxItemAttribute tba,
- string attributeCategory, string fullPath, MonoDevelop.Core.ClrVersion referencedRuntime)
+ string attributeCategory, string fullPath, ClrVersion referencedRuntime)
{
- if (referencedRuntime != MonoDevelop.Core.ClrVersion.Net_1_1
- && referencedRuntime != MonoDevelop.Core.ClrVersion.Net_2_0)
+ if (referencedRuntime != ClrVersion.Net_1_1
+ && referencedRuntime != ClrVersion.Net_2_0)
return null;
bool reflectedRuntime1;
@@ -68,7 +64,7 @@ namespace MonoDevelop.AspNet
//Create the ToolboxItem. The ToolboxItemToolboxNode will destroy it, but need to
//be able to extract data from it first.
ToolboxItem item = (ToolboxItem) Activator.CreateInstance (toolboxItemType, new object[] {t});
- AspNetToolboxNode node = new AspNetToolboxNode (item);
+ WebFormsToolboxNode node = new WebFormsToolboxNode (item);
//get the default markup for the tag
string webText = reflectedRuntime1? GetWebText1 (t) : GetWebText (t);
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetToolboxNode.cs b/main/src/addins/AspNet/WebForms/WebFormsToolboxNode.cs
index c51107803d..6ccccbddc5 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetToolboxNode.cs
+++ b/main/src/addins/AspNet/WebForms/WebFormsToolboxNode.cs
@@ -30,20 +30,20 @@ using System;
using System.ComponentModel;
using System.Drawing.Design;
+using ICSharpCode.NRefactory.TypeSystem;
using MonoDevelop.Core;
-using MonoDevelop.DesignerSupport.Toolbox;
-using MonoDevelop.Core.Serialization;
using MonoDevelop.Core.Assemblies;
-using MonoDevelop.Ide;
-using MonoDevelop.AspNet.Parser;
+using MonoDevelop.Core.Serialization;
+using MonoDevelop.DesignerSupport.Toolbox;
using MonoDevelop.Projects;
-using ICSharpCode.NRefactory.TypeSystem;
+using MonoDevelop.AspNet.Projects;
+using MonoDevelop.AspNet.WebForms.Parser;
-namespace MonoDevelop.AspNet
+namespace MonoDevelop.AspNet.WebForms
{
[Serializable]
- public class AspNetToolboxNode : ToolboxItemToolboxNode, ITextToolboxNode
+ public class WebFormsToolboxNode : ToolboxItemToolboxNode, ITextToolboxNode
{
[ItemProperty ("text")]
@@ -54,8 +54,8 @@ namespace MonoDevelop.AspNet
static readonly string aspNetDomain = GettextCatalog.GetString ("ASP.NET Controls");
- public AspNetToolboxNode () : base () {}
- public AspNetToolboxNode (ToolboxItem item) : base (item)
+ public WebFormsToolboxNode () : base () {}
+ public WebFormsToolboxNode (ToolboxItem item) : base (item)
{
}
@@ -78,7 +78,7 @@ namespace MonoDevelop.AspNet
public override bool Equals (object obj)
{
- AspNetToolboxNode other = obj as AspNetToolboxNode;
+ WebFormsToolboxNode other = obj as WebFormsToolboxNode;
return (other != null) && (this.text != other.text) && base.Equals (other);
}
@@ -117,7 +117,7 @@ namespace MonoDevelop.AspNet
if (!tag.Contains ("{0}"))
return tag;
- if (base.Type.AssemblyName.StartsWith ("System.Web.UI.WebControls"))
+ if (Type.AssemblyName.StartsWith ("System.Web.UI.WebControls", StringComparison.Ordinal))
return string.Format (tag, "asp");
//register the assembly and look up the class
@@ -129,19 +129,15 @@ namespace MonoDevelop.AspNet
var cls = database.FindType (Type.Load ());
if (cls == null)
return tag;
-
- var doc = document.ParsedDocument as MonoDevelop.AspNet.Parser.AspNetParsedDocument;
- if (doc == null)
+
+ var ed = document.GetContent<WebFormsEditorExtension> ();
+ if (ed == null)
return tag;
-
+
var assemName = SystemAssemblyService.ParseAssemblyName (Type.AssemblyName);
-
- var refMan = new DocumentReferenceManager ((AspNetAppProject)document.Project) {
- Doc = doc
- };
-
- RegisterDirective directive;
- string prefix = refMan.GetTagPrefixWithNewDirective (cls, assemName.Name, null, out directive);
+
+ WebFormsPageInfo.RegisterDirective directive;
+ string prefix = ed.ReferenceManager.GetTagPrefixWithNewDirective (cls, assemName.Name, null, out directive);
if (prefix == null)
return tag;
@@ -149,7 +145,7 @@ namespace MonoDevelop.AspNet
tag = string.Format (tag, prefix);
if (directive != null && insertDirective)
- refMan.AddRegisterDirective (directive, document.Editor, true);
+ ed.ReferenceManager.AddRegisterDirective (directive, document.Editor, true);
return tag;
}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetToolboxProvider.cs b/main/src/addins/AspNet/WebForms/WebFormsToolboxProvider.cs
index f3f39a7234..21c86e566f 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetToolboxProvider.cs
+++ b/main/src/addins/AspNet/WebForms/WebFormsToolboxProvider.cs
@@ -29,20 +29,16 @@
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
-using System;
using System.Linq;
-using System.IO;
using System.Collections.Generic;
using MonoDevelop.Core;
using MonoDevelop.DesignerSupport.Toolbox;
-using MonoDevelop.Ide.Gui;
using MonoDevelop.Core.Assemblies;
-
-namespace MonoDevelop.AspNet
+namespace MonoDevelop.AspNet.WebForms
{
- public class AspNetToolboxProvider : IToolboxDefaultProvider
+ public class WebFormsToolboxProvider : IToolboxDefaultProvider
{
public IEnumerable<string> GetDefaultFiles ()
{
diff --git a/main/src/addins/AspNet/WebForms/WebFormsTypeContext.cs b/main/src/addins/AspNet/WebForms/WebFormsTypeContext.cs
new file mode 100644
index 0000000000..7778cf5844
--- /dev/null
+++ b/main/src/addins/AspNet/WebForms/WebFormsTypeContext.cs
@@ -0,0 +1,648 @@
+//
+// DocumentReferenceManager.cs: Handles web type lookups for ASP.NET documents.
+//
+// Authors:
+// Michael Hutchinson <mhutchinson@novell.com>
+//
+// Copyright (C) 2007 Novell, Inc (http://www.novell.com)
+//
+//
+// This source code is licenced under The MIT License:
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Collections.Generic;
+using System.IO;
+using System.Linq;
+
+using ICSharpCode.NRefactory.TypeSystem;
+using ICSharpCode.NRefactory.TypeSystem.Implementation;
+using Mono.TextEditor;
+using MonoDevelop.Core.Assemblies;
+using MonoDevelop.Ide.CodeCompletion;
+using MonoDevelop.Ide.TypeSystem;
+using MonoDevelop.Projects;
+using MonoDevelop.Xml.Dom;
+using MonoDevelop.AspNet.Projects;
+using MonoDevelop.AspNet.WebForms.Dom;
+using System.Reflection;
+
+namespace MonoDevelop.AspNet.WebForms
+{
+ public class WebFormsTypeContext
+ {
+ ICompilation compilation;
+ AspNetAppProject project;
+ WebFormsParsedDocument doc;
+
+ public WebFormsParsedDocument Doc {
+ get {
+ return doc;
+ }
+ set {
+ if (doc == value)
+ return;
+ doc = value;
+ compilation = null;
+ }
+ }
+
+ public AspNetAppProject Project {
+ get {
+ return project;
+ }
+ set {
+ if (project == value)
+ return;
+ project = value;
+ compilation = null;
+ }
+ }
+
+ public ICompilation Compilation {
+ get {
+ if (compilation == null)
+ UpdateCompilation ();
+ return compilation;
+ }
+ }
+
+ TargetFramework TargetFramework {
+ get {
+ return project != null
+ ? project.TargetFramework
+ : MonoDevelop.Core.Runtime.SystemAssemblyService.GetTargetFramework (TargetFrameworkMoniker.NET_4_5);
+ }
+ }
+
+ TargetRuntime TargetRuntime {
+ get {
+ return project != null ? project.TargetRuntime : MonoDevelop.Core.Runtime.SystemAssemblyService.DefaultRuntime;
+ }
+ }
+
+ void UpdateCompilation ()
+ {
+ const string dummyAsmName = "CompiledAspNetPage";
+ IUnresolvedAssembly asm = new DefaultUnresolvedAssembly (dummyAsmName);
+ compilation = new SimpleCompilation (asm, GetReferencedAssemblies ());
+ }
+
+ public IType GetType (string tagPrefix, string tagName, string htmlTypeAttribute)
+ {
+ if (tagPrefix == null || tagPrefix.Length < 1)
+ return HtmlControlTypeLookup (tagName, htmlTypeAttribute);
+
+ foreach (var rd in GetControls ()) {
+ if (string.Compare (rd.TagPrefix, tagPrefix, StringComparison.OrdinalIgnoreCase) != 0)
+ continue;
+
+ var ard = rd as WebFormsPageInfo.AssemblyRegisterDirective;
+ if (ard != null) {
+ var type = AssemblyTypeLookup (ard.Namespace, tagName);
+ if (type != null)
+ return type;
+ continue;
+ }
+
+ var crd = rd as WebFormsPageInfo.ControlRegisterDirective;
+ if (crd != null && string.Compare (crd.TagName, tagName, StringComparison.OrdinalIgnoreCase) == 0) {
+ var type = GetUserControlType (crd.Src);
+ if (type != null)
+ return type;
+ }
+ }
+
+ return null;
+ }
+
+ public IEnumerable<CompletionData> GetControlCompletionData ()
+ {
+ return GetControlCompletionData (AssemblyTypeLookup ("System.Web.UI", "Control"));
+ }
+
+ public IEnumerable<CompletionData> GetControlCompletionData (IType baseType)
+ {
+ var names = new HashSet<string> ();
+
+ foreach (var rd in GetControls ()) {
+ var ard = rd as WebFormsPageInfo.AssemblyRegisterDirective;
+ if (ard != null) {
+ string prefix = ard.TagPrefix + ":";
+ foreach (IType cls in ListControlClasses (baseType, ard.Namespace))
+ if (names.Add (prefix + cls.Name))
+ yield return new AspTagCompletionData (prefix, cls);
+ continue;
+ }
+
+ var cd = rd as WebFormsPageInfo.ControlRegisterDirective;
+ if (cd != null && names.Add (cd.TagPrefix + cd.TagName))
+ yield return new CompletionData (string.Concat (cd.TagPrefix, ":", cd.TagName), Gtk.Stock.GoForward);
+ }
+ }
+
+ public IType GetControlType (string tagPrefix, string tagName)
+ {
+ if (String.IsNullOrEmpty (tagPrefix))
+ return null;
+
+ foreach (var rd in GetControls ()) {
+ if (string.Compare (rd.TagPrefix, tagPrefix, StringComparison.OrdinalIgnoreCase) != 0)
+ continue;
+
+ var ard = rd as WebFormsPageInfo.AssemblyRegisterDirective;
+ if (ard != null) {
+ var type = AssemblyTypeLookup (ard.Namespace, tagName);
+ if (type != null)
+ return type;
+ continue;
+ }
+
+ var crd = rd as WebFormsPageInfo.ControlRegisterDirective;
+ if (crd != null && string.Compare (crd.TagName, tagName, StringComparison.OrdinalIgnoreCase) == 0) {
+ return GetUserControlType (crd.Src);
+ }
+ }
+
+ return AssemblyTypeLookup ("System.Web.UI", "Control");
+ }
+
+ public string GetTagPrefix (IType control)
+ {
+ if (control.Namespace == "System.Web.UI.HtmlControls")
+ return string.Empty;
+
+ foreach (var rd in GetControls ()) {
+ var ard = rd as WebFormsPageInfo.AssemblyRegisterDirective;
+ if (ard != null && ard.Namespace == control.Namespace)
+ return ard.TagPrefix;
+ }
+
+ return null;
+ }
+
+ IEnumerable<WebFormsPageInfo.RegisterDirective> GetDirectivesForPrefix (string prefix)
+ {
+ return GetControls ().Where (t => string.Equals (t.TagPrefix, prefix, StringComparison.OrdinalIgnoreCase));
+ }
+
+ /// <summary>
+ /// Gets a tag prefix, also returning the directive that would have to be added if necessary.
+ /// </summary>
+ public string GetTagPrefixWithNewDirective (IType control, string assemblyName, string desiredPrefix,
+ out WebFormsPageInfo.RegisterDirective directiveNeededToAdd)
+ {
+ directiveNeededToAdd = null;
+ string existingPrefix = GetTagPrefix (control);
+ if (existingPrefix != null)
+ return existingPrefix;
+
+ //TODO: detect control name conflicts
+ string prefix = desiredPrefix;
+ if (desiredPrefix == null)
+ prefix = GetPrefix (control);
+
+ var an = SystemAssemblyService.ParseAssemblyName (assemblyName);
+
+ directiveNeededToAdd = new WebFormsPageInfo.AssemblyRegisterDirective (prefix, control.Namespace, an.Name);
+
+ return prefix;
+ }
+
+ #region "Refactoring" operations -- things that modify the file
+
+ string GetPrefix (IType control)
+ {
+ //FIXME: make this work
+ /*
+ foreach (IAttributeSection attSec in control.CompilationUnit.Attributes) {
+ foreach (IAttribute att in attSec.Attributes) {
+ if (att.PositionalArguments != null && att.PositionalArguments.Length == 2
+ && ExprToStr (att.PositionalArguments[0]) == control.Namespace) {
+ string prefix = ExprToStr (att.PositionalArguments [1]);
+ if (prefix != null)
+ return prefix;
+ }
+
+ if (att.Name == "System.Web.UI.TagPrefixAttribute") {
+ bool match = false;
+ foreach (NamedAttributeArgument arg in att.NamedArguments) {
+ if (arg.Name == "NamespaceName"
+ && ExprToStr (arg.Expression) == control.Namespace) {
+ match = true;
+ break;
+ }
+ }
+ foreach (NamedAttributeArgument arg in att.NamedArguments) {
+ if (arg.Name == "TagPrefix") {
+ string prefix = ExprToStr (arg.Expression);
+ if (prefix != null)
+ return prefix;
+ }
+ }
+ }
+ }
+ }
+ */
+ //generate a new prefix base on initials of namespace
+ string[] namespaces = control.Namespace.Split ('.');
+ char[] charr = new char[namespaces.Length];
+ for (int i = 0; i < charr.Length; i++)
+ charr[i] = char.ToLower (namespaces[i][0]);
+
+ //find a variant that doesn't match an existing prefix
+ string trialPrefix = new string (charr);
+ string trial = trialPrefix;
+
+ for (int trialSuffix = 1; trialSuffix < int.MaxValue; trialSuffix++) {
+ using (var en = GetDirectivesForPrefix (trial).GetEnumerator())
+ if (!en.MoveNext ())
+ return trial;
+ trial = trialPrefix + trialSuffix;
+ }
+ throw new InvalidOperationException ("Ran out of integer suffixes for tag prefixes");
+ }
+
+ string ExprToStr (System.CodeDom.CodeExpression expr)
+ {
+ var p = expr as System.CodeDom.CodePrimitiveExpression;
+ return p != null? p.Value as string : null;
+ }
+
+ public void AddRegisterDirective (WebFormsPageInfo.RegisterDirective directive, TextEditorData editor, bool preserveCaretPosition)
+ {
+ if (doc == null)
+ return;
+
+ var node = GetRegisterInsertionPointNode ();
+ if (node == null)
+ return;
+
+ doc.Info.RegisteredTags.Add (directive);
+
+ var line = Math.Max (node.Region.EndLine, node.Region.BeginLine);
+ var pos = editor.Document.LocationToOffset (line, editor.Document.GetLine (line - 1).Length);
+ if (pos < 0)
+ return;
+
+ using (var undo = editor.OpenUndoGroup ()) {
+ var oldCaret = editor.Caret.Offset;
+
+ var inserted = editor.Insert (pos, editor.EolMarker + directive);
+ if (preserveCaretPosition) {
+ editor.Caret.Offset = (pos < oldCaret)? oldCaret + inserted : oldCaret;
+ }
+ }
+ }
+
+ WebFormsDirective GetRegisterInsertionPointNode ()
+ {
+ foreach (XNode node in doc.XDocument.AllDescendentNodes) {
+ var directive = node as WebFormsDirective;
+ if (directive != null) {
+ switch (directive.Name.Name.ToLower ()) {
+ case "page":
+ case "control":
+ case "master":
+ case "register":
+ return directive;
+ }
+ }
+ }
+ return null;
+ }
+
+ #endregion
+
+ IList<RegistrationInfo> GetRegistrationInfos ()
+ {
+ if (project != null && doc != null)
+ return project.RegistrationCache.GetInfosForPath (Path.GetDirectoryName (doc.FileName));
+ return new[] { WebFormsRegistrationCache.MachineRegistrationInfo };
+ }
+
+ IEnumerable<ControlRegistration> GetRegisteredControls ()
+ {
+ //FIXME: handle removes and clears as well as adds
+ return GetRegistrationInfos ().SelectMany (x => x.Controls).Where (c => c.Add);
+ }
+
+ IEnumerable<string> GetRegisteredAssemblies ()
+ {
+ //FIXME: handle removes and clears as well as adds
+ //FIXME: wildcards
+ return GetRegistrationInfos ().SelectMany (x => x.Assemblies).Where (c => c.Add).Select (c => c.Name);
+ }
+
+ public IEnumerable<string> GetRegisteredNamespaces ()
+ {
+ //FIXME: handle removes and clears as well as adds
+ return GetRegistrationInfos ().SelectMany (x => x.Namespaces).Where (c => c.Add).Select (c => c.Namespace);
+ }
+
+ public IEnumerable<string> GetUsings ()
+ {
+ var usings = new HashSet<string> ();
+
+ if (doc != null)
+ foreach (var u in doc.Info.Imports)
+ usings.Add (u);
+
+ foreach (var u in GetRegisteredNamespaces ())
+ usings.Add (u);
+
+ return usings;
+ }
+
+ IEnumerable<IAssemblyReference> GetReferencedAssemblies ()
+ {
+ var references = new HashSet<IAssemblyReference> ();
+
+ if (project != null)
+ references.Add (TypeSystemService.GetCompilation (project).MainAssembly.UnresolvedAssembly);
+
+ if (doc != null)
+ foreach (var asm in doc.Info.Assemblies.Select (a => a.Name).Select (name => GetReferencedAssembly (name)))
+ references.Add (asm);
+
+ foreach (var asm in GetRegisteredAssemblies ().Select (name => GetReferencedAssembly (name)))
+ references.Add (asm);
+
+ references.Remove (null);
+
+ return references;
+ }
+
+ IAssemblyReference GetReferencedAssembly (string assemblyName)
+ {
+ var parsed = SystemAssemblyService.ParseAssemblyName (assemblyName);
+ if (string.IsNullOrEmpty (parsed.Name))
+ return null;
+
+ var r = GetProjectReference (parsed);
+ if (r != null)
+ return r;
+
+ string path = GetAssemblyPath (assemblyName);
+ if (path != null)
+ return TypeSystemService.LoadAssemblyContext (TargetRuntime, TargetFramework, path);
+
+ return null;
+ }
+
+ IAssemblyReference GetProjectReference (AssemblyName parsed)
+ {
+ if (project == null)
+ return null;
+
+ var dllName = parsed.Name + ".dll";
+
+ foreach (var reference in project.References) {
+ if (reference.ReferenceType == ReferenceType.Package || reference.ReferenceType == ReferenceType.Assembly) {
+ foreach (string refPath in reference.GetReferencedFileNames (null))
+ if (Path.GetFileName (refPath) == dllName)
+ return TypeSystemService.LoadAssemblyContext (project.TargetRuntime, project.TargetFramework, refPath);
+ }
+ else
+ if (reference.ReferenceType == ReferenceType.Project && parsed.Name == reference.Reference) {
+ var p = project.ParentSolution.FindProjectByName (reference.Reference) as DotNetProject;
+ if (p == null)
+ continue;
+ return TypeSystemService.GetCompilation (p).MainAssembly.UnresolvedAssembly;
+ }
+ }
+
+ return null;
+ }
+
+ string GetAssemblyPath (string assemblyName)
+ {
+ var parsed = SystemAssemblyService.ParseAssemblyName (assemblyName);
+ if (string.IsNullOrEmpty (parsed.Name))
+ return null;
+
+ if (project != null) {
+ string localName = Path.Combine (Path.Combine (project.BaseDirectory, "bin"), parsed.Name + ".dll");
+ if (File.Exists (localName))
+ return localName;
+ }
+
+ assemblyName = TargetRuntime.AssemblyContext.GetAssemblyFullName (assemblyName, TargetFramework);
+ if (assemblyName == null)
+ return null;
+ assemblyName = TargetRuntime.AssemblyContext.GetAssemblyNameForVersion (assemblyName, TargetFramework);
+ if (assemblyName == null)
+ return null;
+ return TargetRuntime.AssemblyContext.GetAssemblyLocation (assemblyName, TargetFramework);
+ }
+
+ IEnumerable<WebFormsPageInfo.RegisterDirective> GetControls ()
+ {
+ yield return new WebFormsPageInfo.AssemblyRegisterDirective ("asp", "System.Web.UI.WebControls", "System.Web");
+
+ if (doc != null) {
+ foreach (var c in doc.Info.RegisteredTags.OfType<WebFormsPageInfo.ControlRegisterDirective> ())
+ yield return c;
+
+ foreach (var c in doc.Info.RegisteredTags.OfType<WebFormsPageInfo.AssemblyRegisterDirective> ())
+ yield return c;
+ }
+
+ foreach (var c in GetRegisteredControls ()
+ .Where (c => c.IsUserControl)
+ .Select (r => new WebFormsPageInfo.ControlRegisterDirective (r.TagPrefix, r.TagName, r.Source)))
+ yield return c;
+
+ foreach (var c in GetRegisteredControls ()
+ .Where (c => c.IsAssembly)
+ .Select (r => new WebFormsPageInfo.AssemblyRegisterDirective (r.TagPrefix, r.Namespace, r.Assembly)))
+ yield return c;
+ }
+
+ static string HtmlControlLookup (string tagName, string typeAttribute)
+ {
+ switch (tagName.ToLower ()) {
+ case "a":
+ return "HtmlAnchor";
+ case "button":
+ return "HtmlButton";
+ case "form":
+ return "HtmlForm";
+ case "head":
+ return "HtmlHead";
+ case "img":
+ return "HtmlImage";
+ case "input":
+ string val = LookupHtmlInput (typeAttribute);
+ return val;
+ case "link":
+ return "HtmlLink";
+ case "meta":
+ return "HtmlMeta";
+ case "select":
+ return "HtmlSelect";
+ case "table":
+ return "HtmlTable";
+ case "th":
+ case "td":
+ return "HtmlTableCell";
+ case "tr":
+ return "HtmlTableRow";
+ case "textarea":
+ return "HtmlTextArea";
+ case "title":
+ return "HtmlTitle";
+ default:
+ return "HtmlGenericControl";
+ }
+ }
+
+ static string LookupHtmlInput (string type)
+ {
+ switch (type != null? type.ToLower () : null)
+ {
+ case "button":
+ case "reset":
+ case "submit":
+ return "HtmlInputButton";
+ case "checkbox":
+ return "HtmlInputCheckBox";
+ case "file":
+ return "HtmlInputFile";
+ case "hidden":
+ return "HtmlInputHidden";
+ case "image":
+ return "HtmlInputImage";
+ case "password":
+ return "HtmlInputText";
+ case "radio":
+ return "HtmlInputRadioButton";
+ case "text":
+ return "HtmlInputText";
+ default:
+ return "HtmlInputControl";
+ }
+ }
+
+ IType HtmlControlTypeLookup (string tagName, string typeAttribute)
+ {
+ var str = HtmlControlLookup (tagName, typeAttribute);
+ if (str != null)
+ return AssemblyTypeLookup ("System.Web.UI.HtmlControls", str);
+ return null;
+ }
+
+ static IEnumerable<IType> ListControlClasses (IType baseType, string namespac)
+ {
+ var baseTypeDefinition = baseType.GetDefinition ();
+ if (baseTypeDefinition == null)
+ yield break;
+
+ //return classes if they derive from system.web.ui.control
+ foreach (var type in baseTypeDefinition.GetSubTypeDefinitions ().Where (t => t.Namespace == namespac))
+ if (!type.IsAbstract && type.IsPublic)
+ yield return type;
+
+ if (!baseTypeDefinition.IsAbstract && baseTypeDefinition.IsPublic && baseTypeDefinition.Namespace == namespac) {
+ yield return baseType;
+ }
+ }
+
+ IType AssemblyTypeLookup (string namespac, string tagName)
+ {
+ var fullName = namespac + "." + tagName;
+ return ReflectionHelper.ParseReflectionName (fullName).Resolve (Compilation);
+ }
+
+ public string GetControlPrefix (IType control)
+ {
+ if (control.Namespace == "System.Web.UI.WebControls")
+ return "asp";
+ if (control.Namespace == "System.Web.UI.HtmlControls")
+ return string.Empty;
+
+ //todo: handle user controls
+ foreach (var info in GetControls ().OfType<WebFormsPageInfo.AssemblyRegisterDirective> ()) {
+ if (info.Namespace == control.Namespace) {
+ if (AssemblyTypeLookup (info.Namespace, control.Name) != null)
+ return info.TagPrefix;
+ }
+ }
+
+ return null;
+ }
+
+ public string GetUserControlTypeName (string virtualPath)
+ {
+ string typeName = null;
+ if (project != null && doc != null) {
+ string absolute = project.VirtualToLocalPath (virtualPath, doc.FileName);
+ typeName = project.GetCodebehindTypeName (absolute);
+ }
+ return typeName ?? "System.Web.UI.UserControl";
+ }
+
+ IType GetUserControlType (string virtualPath)
+ {
+ var name = GetUserControlTypeName (virtualPath);
+ return ReflectionHelper.ParseReflectionName (name).Resolve (Compilation);
+ }
+ }
+
+ class AspTagCompletionData : CompletionData
+ {
+ readonly IType cls;
+
+ public AspTagCompletionData (string prefix, IType cls)
+ : base (prefix + cls.Name, Gtk.Stock.GoForward)
+ {
+ this.cls = cls;
+ }
+
+ public override TooltipInformation CreateTooltipInformation (bool smartWrap)
+ {
+ var tt = base.CreateTooltipInformation (smartWrap);
+ tt.SignatureMarkup = cls.FullName;
+ tt.SummaryMarkup = AmbienceService.GetSummaryMarkup (cls.GetDefinition ());
+ return tt;
+ }
+ }
+
+ class AspAttributeCompletionData : CompletionData
+ {
+ readonly IMember member;
+
+ public AspAttributeCompletionData (IMember member, string name = null)
+ : base (name ?? member.Name, member.GetStockIcon ())
+ {
+ this.member = member;
+ }
+
+ public override TooltipInformation CreateTooltipInformation (bool smartWrap)
+ {
+ var tt = base.CreateTooltipInformation (smartWrap);
+ tt.SignatureMarkup = member.Name;
+ tt.SummaryMarkup = AmbienceService.GetSummaryMarkup (member);
+ return tt;
+ }
+ }
+}
diff --git a/main/src/addins/AspNet/packages.config b/main/src/addins/AspNet/packages.config
new file mode 100644
index 0000000000..2154d11324
--- /dev/null
+++ b/main/src/addins/AspNet/packages.config
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8"?>
+<packages>
+ <package id="Microsoft.AspNet.Mvc" version="4.0.30506" targetFramework="net40" />
+ <package id="Microsoft.AspNet.WebPages" version="2.0.30506" targetFramework="net40" />
+ <package id="Microsoft.AspNet.Razor" version="2.0.30506" targetFramework="net40" />
+</packages> \ No newline at end of file
diff --git a/main/src/addins/CSharpBinding/AspNet/ASPNetReferenceFinder.cs b/main/src/addins/CSharpBinding/AspNet/ASPNetReferenceFinder.cs
index 48c09c1ad0..1484fe7b1d 100644
--- a/main/src/addins/CSharpBinding/AspNet/ASPNetReferenceFinder.cs
+++ b/main/src/addins/CSharpBinding/AspNet/ASPNetReferenceFinder.cs
@@ -23,20 +23,13 @@
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
-using System;
using System.Collections.Generic;
using MonoDevelop.Core;
-using MonoDevelop.Ide;
-using MonoDevelop.CSharp.Resolver;
using MonoDevelop.Ide.FindInFiles;
-using MonoDevelop.AspNet;
-using MonoDevelop.CSharp.Completion;
-using MonoDevelop.AspNet.Parser;
-using MonoDevelop.AspNet.Gui;
-using System.Linq;
using ICSharpCode.NRefactory.TypeSystem;
using MonoDevelop.Ide.TypeSystem;
+using MonoDevelop.AspNet.WebForms;
namespace MonoDevelop.CSharp.Refactoring
{
diff --git a/main/src/addins/CSharpBinding/AspNet/AspLanguageBuilder.cs b/main/src/addins/CSharpBinding/AspNet/AspLanguageBuilder.cs
index 8836afcfe9..4e1fc93617 100644
--- a/main/src/addins/CSharpBinding/AspNet/AspLanguageBuilder.cs
+++ b/main/src/addins/CSharpBinding/AspNet/AspLanguageBuilder.cs
@@ -25,22 +25,15 @@
// THE SOFTWARE.
using System;
-using System.Linq;
-using MonoDevelop.AspNet.Gui;
-using System.Text;
using System.Collections.Generic;
+using System.IO;
+using System.Text;
+using Mono.TextEditor;
+using MonoDevelop.AspNet.WebForms;
+using MonoDevelop.AspNet.WebForms.Dom;
using MonoDevelop.Ide.CodeCompletion;
using MonoDevelop.Ide.Gui;
-using Mono.TextEditor;
using MonoDevelop.Ide.TypeSystem;
-using ICSharpCode.NRefactory.TypeSystem;
-using MonoDevelop.CSharp.Parser;
-using System.IO;
-using ICSharpCode.NRefactory.Completion;
-using MonoDevelop.AspNet.StateEngine;
-using MonoDevelop.Xml.StateEngine;
-
-
namespace MonoDevelop.CSharp.Completion
{
@@ -89,7 +82,7 @@ namespace MonoDevelop.CSharp.Completion
sb.AppendLine ("{");
//Console.WriteLine ("start:" + location.BeginLine +"/" +location.BeginColumn);
foreach (var node in info.XExpressions) {
- bool isBlock = node is AspNetRenderBlock;
+ bool isBlock = node is WebFormsRenderBlock;
if (node.Region.Begin.Line > data.Caret.Line || node.Region.Begin.Line == data.Caret.Line && node.Region.Begin.Column > data.Caret.Column - 5)
continue;
@@ -126,7 +119,7 @@ namespace MonoDevelop.CSharp.Completion
return result;
}
- public ICompletionDataList HandlePopupCompletion (MonoDevelop.Ide.Gui.Document realDocument, DocumentInfo info, LocalDocumentInfo localInfo)
+ public ICompletionDataList HandlePopupCompletion (Document realDocument, DocumentInfo info, LocalDocumentInfo localInfo)
{
CodeCompletionContext codeCompletionContext;
using (var completion = CreateCompletion (realDocument, info, localInfo, out codeCompletionContext)) {
@@ -134,7 +127,7 @@ namespace MonoDevelop.CSharp.Completion
}
}
- public ICompletionDataList HandleCompletion (MonoDevelop.Ide.Gui.Document realDocument, CodeCompletionContext completionContext, DocumentInfo info, LocalDocumentInfo localInfo, char currentChar, ref int triggerWordLength)
+ public ICompletionDataList HandleCompletion (Document realDocument, CodeCompletionContext completionContext, DocumentInfo info, LocalDocumentInfo localInfo, char currentChar, ref int triggerWordLength)
{
CodeCompletionContext ccc;
using (var completion = CreateCompletion (realDocument, info, localInfo, out ccc)) {
@@ -142,7 +135,7 @@ namespace MonoDevelop.CSharp.Completion
}
}
- public ParameterDataProvider HandleParameterCompletion (MonoDevelop.Ide.Gui.Document realDocument, CodeCompletionContext completionContext, DocumentInfo info, LocalDocumentInfo localInfo, char completionChar)
+ public ParameterDataProvider HandleParameterCompletion (Document realDocument, CodeCompletionContext completionContext, DocumentInfo info, LocalDocumentInfo localInfo, char completionChar)
{
CodeCompletionContext ccc;
using (var completion = CreateCompletion (realDocument, info, localInfo, out ccc)) {
@@ -150,7 +143,7 @@ namespace MonoDevelop.CSharp.Completion
}
}
- public bool GetParameterCompletionCommandOffset (MonoDevelop.Ide.Gui.Document realDocument, DocumentInfo info, LocalDocumentInfo localInfo, out int cpos)
+ public bool GetParameterCompletionCommandOffset (Document realDocument, DocumentInfo info, LocalDocumentInfo localInfo, out int cpos)
{
CodeCompletionContext codeCompletionContext;
using (var completion = CreateCompletion (realDocument, info, localInfo, out codeCompletionContext)) {
@@ -158,14 +151,14 @@ namespace MonoDevelop.CSharp.Completion
}
}
- public ICompletionWidget CreateCompletionWidget (MonoDevelop.Ide.Gui.Document realDocument, LocalDocumentInfo localInfo)
+ public ICompletionWidget CreateCompletionWidget (Document realDocument, LocalDocumentInfo localInfo)
{
return new AspCompletionWidget (realDocument, localInfo);
}
- CSharpCompletionTextEditorExtension CreateCompletion (MonoDevelop.Ide.Gui.Document realDocument, DocumentInfo info, LocalDocumentInfo localInfo, out CodeCompletionContext codeCompletionContext)
+ CSharpCompletionTextEditorExtension CreateCompletion (Document realDocument, DocumentInfo info, LocalDocumentInfo localInfo, out CodeCompletionContext codeCompletionContext)
{
- var doc = new Mono.TextEditor.TextDocument () {
+ var doc = new TextDocument () {
Text = localInfo.LocalDocument,
};
var documentLocation = doc.OffsetToLocation (localInfo.CaretPosition);
@@ -183,10 +176,10 @@ namespace MonoDevelop.CSharp.Completion
class AspCompletionWidget : ICompletionWidget
{
- MonoDevelop.Ide.Gui.Document realDocument;
+ Document realDocument;
LocalDocumentInfo localInfo;
- public AspCompletionWidget (MonoDevelop.Ide.Gui.Document realDocument, LocalDocumentInfo localInfo)
+ public AspCompletionWidget (Document realDocument, LocalDocumentInfo localInfo)
{
this.realDocument = realDocument;
this.localInfo = localInfo;
@@ -317,7 +310,7 @@ namespace MonoDevelop.CSharp.Completion
//Console.WriteLine ("start:" + location.BeginLine +"/" +location.BeginColumn);
foreach (var node in info.XExpressions) {
- bool isBlock = node is AspNetRenderBlock;
+ bool isBlock = node is WebFormsRenderBlock;
var start = data.Document.LocationToOffset (node.Region.Begin.Line, node.Region.Begin.Column) + 2;
var end = data.Document.LocationToOffset (node.Region.End.Line, node.Region.End.Column) - 2;
diff --git a/main/src/addins/CSharpBinding/AspNet/CSharpBinding.AspNet.csproj b/main/src/addins/CSharpBinding/AspNet/CSharpBinding.AspNet.csproj
index 744f5f99e3..3df0e344ef 100644
--- a/main/src/addins/CSharpBinding/AspNet/CSharpBinding.AspNet.csproj
+++ b/main/src/addins/CSharpBinding/AspNet/CSharpBinding.AspNet.csproj
@@ -46,13 +46,9 @@
<Compile Include="AspLanguageBuilder.cs" />
<Compile Include="ASPNetReferenceFinder.cs" />
<Compile Include="AddinInfo.cs" />
+ <Compile Include="RazorCSharpCompletionBuilder.cs" />
</ItemGroup>
<ItemGroup>
- <ProjectReference Include="..\..\AspNet\MonoDevelop.AspNet\MonoDevelop.AspNet.csproj">
- <Project>{1CF94D07-5480-4D10-A3CD-2EBD5E87B02E}</Project>
- <Name>MonoDevelop.AspNet</Name>
- <Private>False</Private>
- </ProjectReference>
<ProjectReference Include="..\..\..\core\MonoDevelop.Core\MonoDevelop.Core.csproj">
<Project>{7525BB88-6142-4A26-93B9-A30C6983390A}</Project>
<Name>MonoDevelop.Core</Name>
@@ -98,11 +94,6 @@
<Name>MonoDevelop.Deployment</Name>
<Private>False</Private>
</ProjectReference>
- <ProjectReference Include="..\..\MonoDevelop.XmlEditor\MonoDevelop.XmlEditor.csproj">
- <Project>{86DFC74A-B0B6-4C73-9E05-9098DA8FA5F1}</Project>
- <Name>MonoDevelop.XmlEditor</Name>
- <Private>False</Private>
- </ProjectReference>
<ProjectReference Include="..\..\MonoDevelop.SourceEditor2\MonoDevelop.SourceEditor.csproj">
<Project>{F8F92AA4-A376-4679-A9D4-60E7B7FBF477}</Project>
<Name>MonoDevelop.SourceEditor</Name>
@@ -123,6 +114,16 @@
<Name>Mono.Addins</Name>
<Private>False</Private>
</ProjectReference>
+ <ProjectReference Include="..\..\AspNet\MonoDevelop.AspNet.csproj">
+ <Project>{1CF94D07-5480-4D10-A3CD-2EBD5E87B02E}</Project>
+ <Name>MonoDevelop.AspNet</Name>
+ <Private>False</Private>
+ </ProjectReference>
+ <ProjectReference Include="..\..\Xml\MonoDevelop.Xml.csproj">
+ <Project>{86DFC74A-B0B6-4C73-9E05-9098DA8FA5F1}</Project>
+ <Name>MonoDevelop.Xml</Name>
+ <Private>False</Private>
+ </ProjectReference>
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<ItemGroup>
@@ -130,4 +131,4 @@
<LogicalName>ExtensionModel.addin.xml</LogicalName>
</EmbeddedResource>
</ItemGroup>
-</Project> \ No newline at end of file
+</Project>
diff --git a/main/src/addins/CSharpBinding/AspNet/ExtensionModel.addin.xml b/main/src/addins/CSharpBinding/AspNet/ExtensionModel.addin.xml
index 047552a725..9b13555ae8 100644
--- a/main/src/addins/CSharpBinding/AspNet/ExtensionModel.addin.xml
+++ b/main/src/addins/CSharpBinding/AspNet/ExtensionModel.addin.xml
@@ -6,4 +6,7 @@
<ReferenceFinder supportedmimetypes = "application/x-aspx,application/x-ascx,application/x-asax,application/x-ashx,application/x-asmx,application/x-asix"
class = "MonoDevelop.CSharp.Refactoring.ASPNetReferenceFinder" />
</Extension>
+ <Extension path = "/MonoDevelop/Razor/CompletionBuilders">
+ <Class class = "MonoDevelop.CSharp.Completion.RazorCSharpCompletionBuilder" />
+ </Extension>
</ExtensionModel>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Completion/RazorCSharpCompletionBuilder.cs b/main/src/addins/CSharpBinding/AspNet/RazorCSharpCompletionBuilder.cs
index e8341d7b12..974f8ba511 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Completion/RazorCSharpCompletionBuilder.cs
+++ b/main/src/addins/CSharpBinding/AspNet/RazorCSharpCompletionBuilder.cs
@@ -25,21 +25,17 @@
// THE SOFTWARE.
using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
using MonoDevelop.CSharp.Completion;
using MonoDevelop.Ide.CodeCompletion;
-using MonoDevelop.AspNet.Gui;
-using ICSharpCode.NRefactory.Completion;
using Mono.TextEditor;
using MonoDevelop.Ide.Gui;
+using MonoDevelop.AspNet.Razor;
-namespace MonoDevelop.AspNet.Mvc.Completion
+namespace MonoDevelop.CSharp.Completion
{
// Based on AspLanguageBuilder
- public class RazorCSharpCompletionBuilder : IRazorCompletionBuilder
+ class RazorCSharpCompletionBuilder : IRazorCompletionBuilder
{
public bool SupportsLanguage (string language)
{
diff --git a/main/src/addins/CSharpBinding/Autotools/Autotools.csproj b/main/src/addins/CSharpBinding/Autotools/Autotools.csproj
index 268465bfb4..ebad96fdd6 100644
--- a/main/src/addins/CSharpBinding/Autotools/Autotools.csproj
+++ b/main/src/addins/CSharpBinding/Autotools/Autotools.csproj
@@ -70,11 +70,6 @@
<Name>MonoDevelop.Refactoring</Name>
<Private>False</Private>
</ProjectReference>
- <ProjectReference Include="..\..\AspNet\MonoDevelop.AspNet\MonoDevelop.AspNet.csproj">
- <Project>{1CF94D07-5480-4D10-A3CD-2EBD5E87B02E}</Project>
- <Name>MonoDevelop.AspNet</Name>
- <Private>False</Private>
- </ProjectReference>
<ProjectReference Include="..\..\MonoDevelop.DesignerSupport\MonoDevelop.DesignerSupport.csproj">
<Project>{2C24D515-4A2C-445C-8419-C09231913CFA}</Project>
<Name>MonoDevelop.DesignerSupport</Name>
diff --git a/main/src/addins/Makefile.am b/main/src/addins/Makefile.am
index 23aa5dfd52..2baa722c8e 100644
--- a/main/src/addins/Makefile.am
+++ b/main/src/addins/Makefile.am
@@ -12,7 +12,7 @@ SUBDIRS = \
VersionControl \
MonoDevelop.Autotools \
MonoDevelop.Gettext \
- MonoDevelop.XmlEditor \
+ Xml \
TextTemplating \
AspNet \
CSharpBinding \
diff --git a/main/src/addins/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft.AspNet/AspNetSoftDebuggerEngine.cs b/main/src/addins/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft.AspNet/AspNetSoftDebuggerEngine.cs
index 1006bca8cc..61ea302cb4 100644
--- a/main/src/addins/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft.AspNet/AspNetSoftDebuggerEngine.cs
+++ b/main/src/addins/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft.AspNet/AspNetSoftDebuggerEngine.cs
@@ -27,24 +27,23 @@
using System;
using System.Collections.Generic;
using System.IO;
-using MonoDevelop.Debugger;
+using Mono.Debugging.Client;
+using Mono.Debugging.Soft;
+using MonoDevelop.AspNet.Execution;
using MonoDevelop.Core;
+using MonoDevelop.Core.Assemblies;
using MonoDevelop.Core.Execution;
-using MonoDevelop.AspNet;
-using Mono.Debugging.Client;
+using MonoDevelop.Debugger;
using MonoDevelop.Debugger.Soft;
-using System.Net;
-using MonoDevelop.Core.Assemblies;
-using Mono.Debugging.Soft;
namespace MonoDevelop.Debugger.Soft.AspNet
{
public class AspNetSoftDebuggerEngine: DebuggerEngineBackend
{
- public override bool CanDebugCommand (ExecutionCommand command)
+ public override bool CanDebugCommand (ExecutionCommand cmd)
{
- var cmd = command as AspNetExecutionCommand;
- return cmd != null && SoftDebuggerEngine.CanDebugRuntime (cmd.TargetRuntime);
+ var command = cmd as AspNetExecutionCommand;
+ return command != null && SoftDebuggerEngine.CanDebugRuntime (command.TargetRuntime);
}
FilePath GetFxDir (MonoTargetRuntime runtime, ClrVersion version)
diff --git a/main/src/addins/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft.AspNet/MonoDevelop.Debugger.Soft.AspNet.csproj b/main/src/addins/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft.AspNet/MonoDevelop.Debugger.Soft.AspNet.csproj
index afdec71223..51cfca935a 100644
--- a/main/src/addins/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft.AspNet/MonoDevelop.Debugger.Soft.AspNet.csproj
+++ b/main/src/addins/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft.AspNet/MonoDevelop.Debugger.Soft.AspNet.csproj
@@ -62,11 +62,6 @@
<Name>Mono.TextEditor</Name>
<Private>False</Private>
</ProjectReference>
- <ProjectReference Include="..\..\AspNet\MonoDevelop.AspNet\MonoDevelop.AspNet.csproj">
- <Project>{1CF94D07-5480-4D10-A3CD-2EBD5E87B02E}</Project>
- <Name>MonoDevelop.AspNet</Name>
- <Private>False</Private>
- </ProjectReference>
<ProjectReference Include="..\..\MonoDevelop.Debugger\MonoDevelop.Debugger.csproj">
<Project>{2357AABD-08C7-4808-A495-8FF2D3CDFDB0}</Project>
<Name>MonoDevelop.Debugger</Name>
@@ -87,11 +82,6 @@
<Name>MonoDevelop.DesignerSupport</Name>
<Private>False</Private>
</ProjectReference>
- <ProjectReference Include="..\..\MonoDevelop.XmlEditor\MonoDevelop.XmlEditor.csproj">
- <Project>{86DFC74A-B0B6-4C73-9E05-9098DA8FA5F1}</Project>
- <Name>MonoDevelop.XmlEditor</Name>
- <Private>False</Private>
- </ProjectReference>
<ProjectReference Include="..\..\MonoDevelop.SourceEditor2\MonoDevelop.SourceEditor.csproj">
<Project>{F8F92AA4-A376-4679-A9D4-60E7B7FBF477}</Project>
<Name>MonoDevelop.SourceEditor</Name>
@@ -117,6 +107,16 @@
<Name>Mono.Addins</Name>
<Private>False</Private>
</ProjectReference>
+ <ProjectReference Include="..\..\AspNet\MonoDevelop.AspNet.csproj">
+ <Project>{1CF94D07-5480-4D10-A3CD-2EBD5E87B02E}</Project>
+ <Name>MonoDevelop.AspNet</Name>
+ <Private>False</Private>
+ </ProjectReference>
+ <ProjectReference Include="..\..\Xml\MonoDevelop.Xml.csproj">
+ <Project>{86DFC74A-B0B6-4C73-9E05-9098DA8FA5F1}</Project>
+ <Name>MonoDevelop.Xml</Name>
+ <Private>False</Private>
+ </ProjectReference>
</ItemGroup>
<ItemGroup>
<Compile Include="AspNetSoftDebuggerEngine.cs" />
diff --git a/main/src/addins/MonoDevelop.Debugger.Win32/MonoDevelop.Debugger.Win32/CorDebuggerEngine.cs b/main/src/addins/MonoDevelop.Debugger.Win32/MonoDevelop.Debugger.Win32/CorDebuggerEngine.cs
index 5f03f31278..9d1d77f225 100644
--- a/main/src/addins/MonoDevelop.Debugger.Win32/MonoDevelop.Debugger.Win32/CorDebuggerEngine.cs
+++ b/main/src/addins/MonoDevelop.Debugger.Win32/MonoDevelop.Debugger.Win32/CorDebuggerEngine.cs
@@ -2,9 +2,9 @@ using System;
using System.Collections.Generic;
using System.IO;
using Mono.Debugging.Client;
-using MonoDevelop.AspNet;
using MonoDevelop.Core;
using MonoDevelop.Core.Execution;
+using MonoDevelop.AspNet.Execution;
namespace MonoDevelop.Debugger.Win32
{
@@ -17,7 +17,7 @@ namespace MonoDevelop.Debugger.Win32
DotNetExecutionCommand cmd = command as DotNetExecutionCommand;
if (cmd != null)
return (cmd.TargetRuntime == null || cmd.TargetRuntime.RuntimeId == "MS.NET");
- AspNetExecutionCommand acmd = command as AspNetExecutionCommand;
+ var acmd = command as AspNetExecutionCommand;
if (acmd != null)
return (acmd.TargetRuntime == null || acmd.TargetRuntime.RuntimeId == "MS.NET");
return false;
@@ -37,7 +37,8 @@ namespace MonoDevelop.Debugger.Win32
}
return startInfo;
}
- AspNetExecutionCommand acmd = command as AspNetExecutionCommand;
+
+ var acmd = command as AspNetExecutionCommand;
if (acmd != null) {
DebuggerStartInfo startInfo = new DebuggerStartInfo ();
string xspName = AspNetExecutionHandler.GetXspName (acmd);
diff --git a/main/src/addins/MonoDevelop.Debugger.Win32/MonoDevelop.Debugger.Win32/MonoDevelop.Debugger.Win32.csproj b/main/src/addins/MonoDevelop.Debugger.Win32/MonoDevelop.Debugger.Win32/MonoDevelop.Debugger.Win32.csproj
index a80ca234fb..ec376f9e2a 100644
--- a/main/src/addins/MonoDevelop.Debugger.Win32/MonoDevelop.Debugger.Win32/MonoDevelop.Debugger.Win32.csproj
+++ b/main/src/addins/MonoDevelop.Debugger.Win32/MonoDevelop.Debugger.Win32/MonoDevelop.Debugger.Win32.csproj
@@ -101,11 +101,6 @@
<Name>Mono.Debugging</Name>
<Private>False</Private>
</ProjectReference>
- <ProjectReference Include="..\..\AspNet\MonoDevelop.AspNet\MonoDevelop.AspNet.csproj">
- <Project>{1CF94D07-5480-4D10-A3CD-2EBD5E87B02E}</Project>
- <Name>MonoDevelop.AspNet</Name>
- <Private>False</Private>
- </ProjectReference>
<ProjectReference Include="..\..\MonoDevelop.Debugger\MonoDevelop.Debugger.csproj">
<Project>{2357AABD-08C7-4808-A495-8FF2D3CDFDB0}</Project>
<Name>MonoDevelop.Debugger</Name>
@@ -126,6 +121,11 @@
<Name>Mono.Addins</Name>
<Private>False</Private>
</ProjectReference>
+ <ProjectReference Include="..\..\AspNet\MonoDevelop.AspNet.csproj">
+ <Project>{1CF94D07-5480-4D10-A3CD-2EBD5E87B02E}</Project>
+ <Name>MonoDevelop.AspNet</Name>
+ <Private>False</Private>
+ </ProjectReference>
</ItemGroup>
<ItemGroup>
<BootstrapperPackage Include="Microsoft.Net.Client.3.5">
diff --git a/main/src/addins/MonoDevelop.XmlEditor/AUTHORS b/main/src/addins/MonoDevelop.XmlEditor/AUTHORS
deleted file mode 100644
index 15ca80c2f1..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/AUTHORS
+++ /dev/null
@@ -1,15 +0,0 @@
-Matthew Ward
-
-Classes that use code from MonoDevelop:
-
-XmlCompletionListWindow
-XmlCompletionDataProvider
-XmlEditorViewContent
-
-authored by
-
-Lluis Sanchez Gual
-Todd Berman
-John Luke
-
-Anybody else I have missed from MonoDevelop team.
diff --git a/main/src/addins/MonoDevelop.XmlEditor/COPYING b/main/src/addins/MonoDevelop.XmlEditor/COPYING
deleted file mode 100644
index 8add30ad59..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/COPYING
+++ /dev/null
@@ -1,504 +0,0 @@
- GNU LESSER GENERAL PUBLIC LICENSE
- Version 2.1, February 1999
-
- Copyright (C) 1991, 1999 Free Software Foundation, Inc.
- 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
-[This is the first released version of the Lesser GPL. It also counts
- as the successor of the GNU Library Public License, version 2, hence
- the version number 2.1.]
-
- Preamble
-
- The licenses for most software are designed to take away your
-freedom to share and change it. By contrast, the GNU General Public
-Licenses are intended to guarantee your freedom to share and change
-free software--to make sure the software is free for all its users.
-
- This license, the Lesser General Public License, applies to some
-specially designated software packages--typically libraries--of the
-Free Software Foundation and other authors who decide to use it. You
-can use it too, but we suggest you first think carefully about whether
-this license or the ordinary General Public License is the better
-strategy to use in any particular case, based on the explanations below.
-
- When we speak of free software, we are referring to freedom of use,
-not price. Our General Public Licenses are designed to make sure that
-you have the freedom to distribute copies of free software (and charge
-for this service if you wish); that you receive source code or can get
-it if you want it; that you can change the software and use pieces of
-it in new free programs; and that you are informed that you can do
-these things.
-
- To protect your rights, we need to make restrictions that forbid
-distributors to deny you these rights or to ask you to surrender these
-rights. These restrictions translate to certain responsibilities for
-you if you distribute copies of the library or if you modify it.
-
- For example, if you distribute copies of the library, whether gratis
-or for a fee, you must give the recipients all the rights that we gave
-you. You must make sure that they, too, receive or can get the source
-code. If you link other code with the library, you must provide
-complete object files to the recipients, so that they can relink them
-with the library after making changes to the library and recompiling
-it. And you must show them these terms so they know their rights.
-
- We protect your rights with a two-step method: (1) we copyright the
-library, and (2) we offer you this license, which gives you legal
-permission to copy, distribute and/or modify the library.
-
- To protect each distributor, we want to make it very clear that
-there is no warranty for the free library. Also, if the library is
-modified by someone else and passed on, the recipients should know
-that what they have is not the original version, so that the original
-author's reputation will not be affected by problems that might be
-introduced by others.
-
- Finally, software patents pose a constant threat to the existence of
-any free program. We wish to make sure that a company cannot
-effectively restrict the users of a free program by obtaining a
-restrictive license from a patent holder. Therefore, we insist that
-any patent license obtained for a version of the library must be
-consistent with the full freedom of use specified in this license.
-
- Most GNU software, including some libraries, is covered by the
-ordinary GNU General Public License. This license, the GNU Lesser
-General Public License, applies to certain designated libraries, and
-is quite different from the ordinary General Public License. We use
-this license for certain libraries in order to permit linking those
-libraries into non-free programs.
-
- When a program is linked with a library, whether statically or using
-a shared library, the combination of the two is legally speaking a
-combined work, a derivative of the original library. The ordinary
-General Public License therefore permits such linking only if the
-entire combination fits its criteria of freedom. The Lesser General
-Public License permits more lax criteria for linking other code with
-the library.
-
- We call this license the "Lesser" General Public License because it
-does Less to protect the user's freedom than the ordinary General
-Public License. It also provides other free software developers Less
-of an advantage over competing non-free programs. These disadvantages
-are the reason we use the ordinary General Public License for many
-libraries. However, the Lesser license provides advantages in certain
-special circumstances.
-
- For example, on rare occasions, there may be a special need to
-encourage the widest possible use of a certain library, so that it becomes
-a de-facto standard. To achieve this, non-free programs must be
-allowed to use the library. A more frequent case is that a free
-library does the same job as widely used non-free libraries. In this
-case, there is little to gain by limiting the free library to free
-software only, so we use the Lesser General Public License.
-
- In other cases, permission to use a particular library in non-free
-programs enables a greater number of people to use a large body of
-free software. For example, permission to use the GNU C Library in
-non-free programs enables many more people to use the whole GNU
-operating system, as well as its variant, the GNU/Linux operating
-system.
-
- Although the Lesser General Public License is Less protective of the
-users' freedom, it does ensure that the user of a program that is
-linked with the Library has the freedom and the wherewithal to run
-that program using a modified version of the Library.
-
- The precise terms and conditions for copying, distribution and
-modification follow. Pay close attention to the difference between a
-"work based on the library" and a "work that uses the library". The
-former contains code derived from the library, whereas the latter must
-be combined with the library in order to run.
-
- GNU LESSER GENERAL PUBLIC LICENSE
- TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
- 0. This License Agreement applies to any software library or other
-program which contains a notice placed by the copyright holder or
-other authorized party saying it may be distributed under the terms of
-this Lesser General Public License (also called "this License").
-Each licensee is addressed as "you".
-
- A "library" means a collection of software functions and/or data
-prepared so as to be conveniently linked with application programs
-(which use some of those functions and data) to form executables.
-
- The "Library", below, refers to any such software library or work
-which has been distributed under these terms. A "work based on the
-Library" means either the Library or any derivative work under
-copyright law: that is to say, a work containing the Library or a
-portion of it, either verbatim or with modifications and/or translated
-straightforwardly into another language. (Hereinafter, translation is
-included without limitation in the term "modification".)
-
- "Source code" for a work means the preferred form of the work for
-making modifications to it. For a library, complete source code means
-all the source code for all modules it contains, plus any associated
-interface definition files, plus the scripts used to control compilation
-and installation of the library.
-
- Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope. The act of
-running a program using the Library is not restricted, and output from
-such a program is covered only if its contents constitute a work based
-on the Library (independent of the use of the Library in a tool for
-writing it). Whether that is true depends on what the Library does
-and what the program that uses the Library does.
-
- 1. You may copy and distribute verbatim copies of the Library's
-complete source code as you receive it, in any medium, provided that
-you conspicuously and appropriately publish on each copy an
-appropriate copyright notice and disclaimer of warranty; keep intact
-all the notices that refer to this License and to the absence of any
-warranty; and distribute a copy of this License along with the
-Library.
-
- You may charge a fee for the physical act of transferring a copy,
-and you may at your option offer warranty protection in exchange for a
-fee.
-
- 2. You may modify your copy or copies of the Library or any portion
-of it, thus forming a work based on the Library, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
- a) The modified work must itself be a software library.
-
- b) You must cause the files modified to carry prominent notices
- stating that you changed the files and the date of any change.
-
- c) You must cause the whole of the work to be licensed at no
- charge to all third parties under the terms of this License.
-
- d) If a facility in the modified Library refers to a function or a
- table of data to be supplied by an application program that uses
- the facility, other than as an argument passed when the facility
- is invoked, then you must make a good faith effort to ensure that,
- in the event an application does not supply such function or
- table, the facility still operates, and performs whatever part of
- its purpose remains meaningful.
-
- (For example, a function in a library to compute square roots has
- a purpose that is entirely well-defined independent of the
- application. Therefore, Subsection 2d requires that any
- application-supplied function or table used by this function must
- be optional: if the application does not supply it, the square
- root function must still compute square roots.)
-
-These requirements apply to the modified work as a whole. If
-identifiable sections of that work are not derived from the Library,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works. But when you
-distribute the same sections as part of a whole which is a work based
-on the Library, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote
-it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Library.
-
-In addition, mere aggregation of another work not based on the Library
-with the Library (or with a work based on the Library) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
- 3. You may opt to apply the terms of the ordinary GNU General Public
-License instead of this License to a given copy of the Library. To do
-this, you must alter all the notices that refer to this License, so
-that they refer to the ordinary GNU General Public License, version 2,
-instead of to this License. (If a newer version than version 2 of the
-ordinary GNU General Public License has appeared, then you can specify
-that version instead if you wish.) Do not make any other change in
-these notices.
-
- Once this change is made in a given copy, it is irreversible for
-that copy, so the ordinary GNU General Public License applies to all
-subsequent copies and derivative works made from that copy.
-
- This option is useful when you wish to copy part of the code of
-the Library into a program that is not a library.
-
- 4. You may copy and distribute the Library (or a portion or
-derivative of it, under Section 2) in object code or executable form
-under the terms of Sections 1 and 2 above provided that you accompany
-it with the complete corresponding machine-readable source code, which
-must be distributed under the terms of Sections 1 and 2 above on a
-medium customarily used for software interchange.
-
- If distribution of object code is made by offering access to copy
-from a designated place, then offering equivalent access to copy the
-source code from the same place satisfies the requirement to
-distribute the source code, even though third parties are not
-compelled to copy the source along with the object code.
-
- 5. A program that contains no derivative of any portion of the
-Library, but is designed to work with the Library by being compiled or
-linked with it, is called a "work that uses the Library". Such a
-work, in isolation, is not a derivative work of the Library, and
-therefore falls outside the scope of this License.
-
- However, linking a "work that uses the Library" with the Library
-creates an executable that is a derivative of the Library (because it
-contains portions of the Library), rather than a "work that uses the
-library". The executable is therefore covered by this License.
-Section 6 states terms for distribution of such executables.
-
- When a "work that uses the Library" uses material from a header file
-that is part of the Library, the object code for the work may be a
-derivative work of the Library even though the source code is not.
-Whether this is true is especially significant if the work can be
-linked without the Library, or if the work is itself a library. The
-threshold for this to be true is not precisely defined by law.
-
- If such an object file uses only numerical parameters, data
-structure layouts and accessors, and small macros and small inline
-functions (ten lines or less in length), then the use of the object
-file is unrestricted, regardless of whether it is legally a derivative
-work. (Executables containing this object code plus portions of the
-Library will still fall under Section 6.)
-
- Otherwise, if the work is a derivative of the Library, you may
-distribute the object code for the work under the terms of Section 6.
-Any executables containing that work also fall under Section 6,
-whether or not they are linked directly with the Library itself.
-
- 6. As an exception to the Sections above, you may also combine or
-link a "work that uses the Library" with the Library to produce a
-work containing portions of the Library, and distribute that work
-under terms of your choice, provided that the terms permit
-modification of the work for the customer's own use and reverse
-engineering for debugging such modifications.
-
- You must give prominent notice with each copy of the work that the
-Library is used in it and that the Library and its use are covered by
-this License. You must supply a copy of this License. If the work
-during execution displays copyright notices, you must include the
-copyright notice for the Library among them, as well as a reference
-directing the user to the copy of this License. Also, you must do one
-of these things:
-
- a) Accompany the work with the complete corresponding
- machine-readable source code for the Library including whatever
- changes were used in the work (which must be distributed under
- Sections 1 and 2 above); and, if the work is an executable linked
- with the Library, with the complete machine-readable "work that
- uses the Library", as object code and/or source code, so that the
- user can modify the Library and then relink to produce a modified
- executable containing the modified Library. (It is understood
- that the user who changes the contents of definitions files in the
- Library will not necessarily be able to recompile the application
- to use the modified definitions.)
-
- b) Use a suitable shared library mechanism for linking with the
- Library. A suitable mechanism is one that (1) uses at run time a
- copy of the library already present on the user's computer system,
- rather than copying library functions into the executable, and (2)
- will operate properly with a modified version of the library, if
- the user installs one, as long as the modified version is
- interface-compatible with the version that the work was made with.
-
- c) Accompany the work with a written offer, valid for at
- least three years, to give the same user the materials
- specified in Subsection 6a, above, for a charge no more
- than the cost of performing this distribution.
-
- d) If distribution of the work is made by offering access to copy
- from a designated place, offer equivalent access to copy the above
- specified materials from the same place.
-
- e) Verify that the user has already received a copy of these
- materials or that you have already sent this user a copy.
-
- For an executable, the required form of the "work that uses the
-Library" must include any data and utility programs needed for
-reproducing the executable from it. However, as a special exception,
-the materials to be distributed need not include anything that is
-normally distributed (in either source or binary form) with the major
-components (compiler, kernel, and so on) of the operating system on
-which the executable runs, unless that component itself accompanies
-the executable.
-
- It may happen that this requirement contradicts the license
-restrictions of other proprietary libraries that do not normally
-accompany the operating system. Such a contradiction means you cannot
-use both them and the Library together in an executable that you
-distribute.
-
- 7. You may place library facilities that are a work based on the
-Library side-by-side in a single library together with other library
-facilities not covered by this License, and distribute such a combined
-library, provided that the separate distribution of the work based on
-the Library and of the other library facilities is otherwise
-permitted, and provided that you do these two things:
-
- a) Accompany the combined library with a copy of the same work
- based on the Library, uncombined with any other library
- facilities. This must be distributed under the terms of the
- Sections above.
-
- b) Give prominent notice with the combined library of the fact
- that part of it is a work based on the Library, and explaining
- where to find the accompanying uncombined form of the same work.
-
- 8. You may not copy, modify, sublicense, link with, or distribute
-the Library except as expressly provided under this License. Any
-attempt otherwise to copy, modify, sublicense, link with, or
-distribute the Library is void, and will automatically terminate your
-rights under this License. However, parties who have received copies,
-or rights, from you under this License will not have their licenses
-terminated so long as such parties remain in full compliance.
-
- 9. You are not required to accept this License, since you have not
-signed it. However, nothing else grants you permission to modify or
-distribute the Library or its derivative works. These actions are
-prohibited by law if you do not accept this License. Therefore, by
-modifying or distributing the Library (or any work based on the
-Library), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Library or works based on it.
-
- 10. Each time you redistribute the Library (or any work based on the
-Library), the recipient automatically receives a license from the
-original licensor to copy, distribute, link with or modify the Library
-subject to these terms and conditions. You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties with
-this License.
-
- 11. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License. If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Library at all. For example, if a patent
-license would not permit royalty-free redistribution of the Library by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Library.
-
-If any portion of this section is held invalid or unenforceable under any
-particular circumstance, the balance of the section is intended to apply,
-and the section as a whole is intended to apply in other circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system which is
-implemented by public license practices. Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-
- 12. If the distribution and/or use of the Library is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Library under this License may add
-an explicit geographical distribution limitation excluding those countries,
-so that distribution is permitted only in or among countries not thus
-excluded. In such case, this License incorporates the limitation as if
-written in the body of this License.
-
- 13. The Free Software Foundation may publish revised and/or new
-versions of the Lesser General Public License from time to time.
-Such new versions will be similar in spirit to the present version,
-but may differ in detail to address new problems or concerns.
-
-Each version is given a distinguishing version number. If the Library
-specifies a version number of this License which applies to it and
-"any later version", you have the option of following the terms and
-conditions either of that version or of any later version published by
-the Free Software Foundation. If the Library does not specify a
-license version number, you may choose any version ever published by
-the Free Software Foundation.
-
- 14. If you wish to incorporate parts of the Library into other free
-programs whose distribution conditions are incompatible with these,
-write to the author to ask for permission. For software which is
-copyrighted by the Free Software Foundation, write to the Free
-Software Foundation; we sometimes make exceptions for this. Our
-decision will be guided by the two goals of preserving the free status
-of all derivatives of our free software and of promoting the sharing
-and reuse of software generally.
-
- NO WARRANTY
-
- 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
-WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
-EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
-OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
-KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
-PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
-LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
-THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
-
- 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
-WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
-AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
-FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
-CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
-LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
-RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
-FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
-SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
-DAMAGES.
-
- END OF TERMS AND CONDITIONS
-
- How to Apply These Terms to Your New Libraries
-
- If you develop a new library, and you want it to be of the greatest
-possible use to the public, we recommend making it free software that
-everyone can redistribute and change. You can do so by permitting
-redistribution under these terms (or, alternatively, under the terms of the
-ordinary General Public License).
-
- To apply these terms, attach the following notices to the library. It is
-safest to attach them to the start of each source file to most effectively
-convey the exclusion of warranty; and each file should have at least the
-"copyright" line and a pointer to where the full notice is found.
-
- <one line to give the library's name and a brief idea of what it does.>
- Copyright (C) <year> <name of author>
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with this library; if not, write to the Free Software
- Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
-
-Also add information on how to contact you by electronic and paper mail.
-
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a "copyright disclaimer" for the library, if
-necessary. Here is a sample; alter the names:
-
- Yoyodyne, Inc., hereby disclaims all copyright interest in the
- library `Frob' (a library for tweaking knobs) written by James Random Hacker.
-
- <signature of Ty Coon>, 1 April 1990
- Ty Coon, President of Vice
-
-That's all there is to it!
-
-
diff --git a/main/src/addins/MonoDevelop.XmlEditor/ChangeLog b/main/src/addins/MonoDevelop.XmlEditor/ChangeLog
deleted file mode 100644
index 3f2788c935..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/ChangeLog
+++ /dev/null
@@ -1,2030 +0,0 @@
-2010-07-22 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.XmlEditor.Gui/BaseXmlEditorExtension.cs: Use
- delegation methods.
-
-2010-07-21 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.XmlEditor/XmlTextEditorExtension.cs: Track API
- changes.
-
-2010-07-18 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.XmlEditor/XmlTextEditorExtension.cs:
- * MonoDevelop.XmlEditor.Gui/BaseXmlEditorExtension.cs: Track
- API changes.
-
-2010-07-15 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.XmlEditor.Gui/BaseXmlEditorExtension.cs: fixed
- unit tests.
-
-2010-07-15 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.XmlEditor.Gui/BaseXmlEditorExtension.cs: Fixed
- 'Bug 621658 - Parameter hints disappear afterkeystroke'.
-
-2010-07-14 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor.addin.xml: Fix XML parser
- availability.
-
-2010-07-12 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor.addin.xml:
- * MonoDevelop.XmlEditor/XmlDocumentParser.cs: Track
- ProjectDomService/Parser API.
-
-2010-07-11 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Xml.StateEngine/Parser.cs:
- * MonoDevelop.Xml.StateEngine/XmlNameState.cs:
- * MonoDevelop.Xml.StateEngine/XmlAttributeState.cs:
- * MonoDevelop.Xml.StateEngine/XmlClosingTagState.cs: Better
- errors.
-
- * MonoDevelop.Xml.StateEngine/XmlAttributeValueState.cs:
- Newlines are valid in attributes,
-
-2010-07-02 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.XmlEditor.Gui/BaseXmlEditorExtension.cs: Track
- API changes.
-
-2010-05-21 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor/XmlEditorService.cs: Clean up dialog
- placement.
-
-2010-05-21 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor.Gui/BaseXmlEditorExtension.cs: Fix
- failing test by making sure that OnParsedDocumentUpdated is
- called when the file is first loaded, and moving all the new
- parsed document logic handling there.
-
-2010-05-21 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.Xml.Formatting/XmlFormattingPolicyPanelWidget.cs:
- Fix translation error.
-
-2010-05-11 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.XmlEditor/XmlTextEditorExtension.cs:
- * MonoDevelop.XmlEditor.Completion/XmlCompletionData.cs:
- * MonoDevelop.XmlEditor.Completion/XmlTagCompletionData.cs:
- * MonoDevelop.XmlEditor.Completion/IXmlCompletionProvider.cs:
- * MonoDevelop.XmlEditor.Completion/XmlSchemaCompletionData.cs:
- * MonoDevelop.XmlEditor.Completion/EmptyXmlCompletionProvider.cs:
- * MonoDevelop.XmlEditor.Completion/XmlCompletionDataCollection.cs:
- * MonoDevelop.XmlEditor.Completion/InferredXmlCompletionProvider.cs:
- * MonoDevelop.XmlEditor.Completion/XmlMultipleClosingTagCompletionData.cs:
- Track API changes.
-
-2010-05-03 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.Xml.Formatting/MonoXmlPolicy.xml: Added
- attribute to explicitly allow differential serialization for
- a policy (which is disabled by default).
-
-2010-04-30 Michael Hutchinson <mhutchinson@novell.com>
-
- * gtk-gui/gui.stetic:
- * MonoDevelop.XmlEditor.Gui/XmlEditorOptionsPanel.cs:
- * MonoDevelop.XmlEditor.Gui/XmlEditorOptionsPanelWidget.cs:
- * gtk-gui/MonoDevelop.XmlEditor.Gui.XmlEditorOptionsPanelWidget.cs:
- Added GUI for the 'auto insert punctuation' option.
-
- * Makefile.am:
- * MonoDevelop.XmlEditor.csproj:
- * MonoDevelop.XmlEditor/XmlEditorOptions.cs:
- * MonoDevelop.XmlEditor/XmlEditorAddInOptions.cs: Renamed
- file.
-
- * MonoDevelop.Xml.Formatting/XmlFormatterWriter.cs: Spelling.
-
- * MonoDevelop.XmlEditor.addin.xml: Move panel from Style
- section to Behavior.
-
-2010-04-30 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor.Gui/BaseXmlEditorExtension.cs:
- * MonoDevelop.XmlEditor.Completion/XmlCompletionData.cs: Add
- settings to stop inserting snippets like ="" and />.
-
- * MonoDevelop.XmlEditor/XmlSchemaManager.cs:
- * MonoDevelop.XmlEditor/XmlFileExtensions.cs:
- * MonoDevelop.XmlEditor.Gui/XmlSchemasPanel.cs:
- * MonoDevelop.XmlEditor/XmlEditorAddInOptions.cs:
- * MonoDevelop.XmlEditor/XmlTextEditorExtension.cs:
- * MonoDevelop.XmlEditor.Gui/XmlEditorOptionsPanel.cs:
- Reorganized the XML editor settings.
-
-2010-04-28 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.XmlEditor.Completion/XmlCompletionData.cs:
- * MonoDevelop.XmlEditor.Completion/XmlTagCompletionData.cs:
- * MonoDevelop.XmlEditor.Completion/XmlMultipleClosingTagCompletionData.cs:
- Track API changes.
-
-2010-04-21 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor.Gui/BaseXmlEditorExtension.cs: Free up
- wasted space between scrollbars and treeview contents.
-
-2010-04-13 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.XmlEditor/XmlFormatter.cs:
- * MonoDevelop.Xml.Formatting/XmlFormatter.cs:
- * MonoDevelop.XmlEditor.Gui/BaseXmlEditorExtension.cs: Track
- API changes.
-
-2010-03-22 Lluis Sanchez Gual <lluis@novell.com>
-
- * AssemblyInfo.cs:
- * MonoDevelop.XmlEditor.addin.xml: Bumped MD version.
-
-2010-03-19 Lluis Sanchez Gual <lluis@novell.com>
-
- * Makefile.am:
- * gtk-gui/gui.stetic:
- * MonoDevelop.XmlEditor.csproj:
- * MonoDevelop.XmlEditor.addin.xml:
- * MonoDevelop.XmlEditor/XmlEditorService.cs:
- * MonoDevelop.Xml.Formatting/XmlFormatter.cs:
- * MonoDevelop.Xml.Formatting/MonoXmlPolicy.xml:
- * MonoDevelop.Xml.Formatting/XmlFormatterWriter.cs:
- * MonoDevelop.Xml.Formatting/XmlFormattingPolicy.cs:
- * MonoDevelop.Xml.Formatting/XmlFormattingPolicyPanel.cs:
- * MonoDevelop.Xml.Formatting/XmlFormattingPolicyPanelWidget.cs:
- * gtk-gui/MonoDevelop.Xml.Formatting.XmlFormattingPolicyPanelWidget.cs:
- New xml formatting policy.
-
-2010-03-17 Lluis Sanchez Gual <lluis@novell.com>
-
- * Makefile.am:
- * gtk-gui/gui.stetic:
- * MonoDevelop.XmlEditor.csproj:
- * MonoDevelop.XmlEditor.addin.xml:
- * MonoDevelop.XmlEditor/Commands.cs:
- * MonoDevelop.XmlEditor/XmlFormatter.cs:
- * MonoDevelop.XmlEditor/XmlEditorView.cs:
- * MonoDevelop.XmlEditor/XmlEditorService.cs:
- * MonoDevelop.Xml.Formatting/XmlFormatter.cs:
- * MonoDevelop.XmlEditor.Gui/XmlSchemasPanel.cs:
- * MonoDevelop.XmlEditor/XmlEditorCommandBase.cs:
- * MonoDevelop.XmlEditor/XmlEditorViewContent.cs:
- * MonoDevelop.XmlEditor/OpenStylesheetCommand.cs:
- * MonoDevelop.XmlEditor/XmlTextEditorExtension.cs:
- * MonoDevelop.XmlEditor.XPath/XPathQueryWidget.cs:
- * MonoDevelop.XmlEditor/XmlCompletionListWindow.cs:
- * MonoDevelop.XmlEditor.Gui/XmlSchemasPanelWidget.cs:
- * MonoDevelop.XmlEditor.Gui/XmlEditorOptionsPanel.cs:
- * MonoDevelop.XmlEditor.Gui/BaseXmlEditorExtension.cs:
- * MonoDevelop.XmlEditor.Completion/XmlCompletionData.cs:
- * MonoDevelop.XmlEditor.Completion/XmlTagCompletionData.cs:
- * MonoDevelop.XmlEditor.Completion/IXmlCompletionProvider.cs:
- * MonoDevelop.XmlEditor.Completion/XmlSchemaCompletionData.cs:
- * MonoDevelop.XmlEditor.Completion/EmptyXmlCompletionProvider.cs:
- * MonoDevelop.XmlEditor.Completion/XmlCompletionDataCollection.cs:
- * MonoDevelop.XmlEditor.Completion/InferredXmlCompletionProvider.cs:
- * MonoDevelop.XmlEditor.Completion/XmlSchemaCompletionDataCollection.cs:
- * MonoDevelop.XmlEditor.Completion/XmlMultipleClosingTagCompletionData.cs:
- Merged MD.Projects into MD.Core, and MD.Projects.Gui,
- MD.Core.Gui and MD.Components into MD.Ide.
-
-2010-03-05 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor.csproj: Don't local-copy project refs,
- as it duplicates assemblies and breaks running on .NET.
-
-2010-02-18 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.XmlEditor.Completion/XmlCompletionData.cs:
- * MonoDevelop.XmlEditor.Completion/XmlTagCompletionData.cs:
- * MonoDevelop.XmlEditor.Completion/XmlMultipleClosingTagCompletionData.cs:
- Track api changes.
-
-2010-02-16 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.XmlEditor/XmlTextEditorExtension.cs:
- * MonoDevelop.XmlEditor.Gui/BaseXmlEditorExtension.cs: File
- extensions are now declared in the node metadata.
-
-2010-02-04 Lluis Sanchez Gual <lluis@novell.com>
-
- * Makefile.am:
- * MonoDevelop.XmlEditor.csproj: Add missing indirect
- reference.
-
-2010-01-28 Lluis Sanchez Gual <lluis@novell.com>
-
- * gtk-gui/generated.cs:
- * gtk-gui/MonoDevelop.XmlEditor.Gui.XmlSchemasPanelWidget.cs:
- * gtk-gui/MonoDevelop.XmlEditor.Gui.XmlEditorOptionsPanelWidget.cs:
- Flush.
-
-2010-01-27 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.XmlEditor.Completion/XmlCompletionData.cs:
- * MonoDevelop.XmlEditor.Completion/XmlTagCompletionData.cs:
- * MonoDevelop.XmlEditor.Completion/XmlMultipleClosingTagCompletionData.cs:
- Track API changes.
-
-2010-01-18 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.XmlEditor/XmlFormatter.cs: Track api changes.
-
-2009-10-30 Lluis Sanchez Gual <lluis@novell.com>
-
- * AssemblyInfo.cs:
- * MonoDevelop.XmlEditor.addin.xml: Bump MD version.
-
-2009-10-29 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.XmlEditor/XmlEditorService.cs:
- * MonoDevelop.Xml.Formatting/XmlFormatterWriter.cs:
- * MonoDevelop.XmlEditor.Completion/XmlSchemaCompletionData.cs:
- Fix warnings.
-
-2009-10-29 Lluis Sanchez Gual <lluis@novell.com>
-
- * gtk-gui/generated.cs:
- * gtk-gui/MonoDevelop.XmlEditor.Gui.XmlSchemasPanelWidget.cs:
- * gtk-gui/MonoDevelop.XmlEditor.Gui.XmlEditorOptionsPanelWidget.cs:
- Flush.
-
-2009-10-27 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.XmlEditor/XmlTextEditorExtension.cs: Fixed 'Bug
- 549703 - Customised XML file extensions are no longer
- syntax-highlighted'.
-
-2009-10-08 Ankit Jain <jankit@novell.com>
-
- * MonoDevelop.XmlEditor.csproj: Use \ instead of '/'
- in the Import.
-
-2009-10-08 Ankit Jain <jankit@novell.com>
-
- * MonoDevelop.XmlEditor.csproj: Add md.targets .
-
-2009-10-07 Lluis Sanchez Gual <lluis@novell.com>
-
- * AssemblyInfo.cs:
- * MonoDevelop.XmlEditor.addin.xml: Bump MD version.
-
-2009-10-06 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor.csproj:
- * MonoDevelop.XmlEditor.addin.xml:
- * MonoDevelop.XmlEditor/Commands.cs:
- * MonoDevelop.XmlEditor/XmlParser.cs:
- * MonoDevelop.XmlEditor/XmlNamespace.cs:
- * MonoDevelop.XmlEditor/QualifiedName.cs:
- * MonoDevelop.XmlEditor/XmlElementPath.cs:
- * MonoDevelop.XmlEditor/XmlEditorService.cs:
- * MonoDevelop.XmlEditor/XmlSchemaManager.cs:
- * MonoDevelop.XmlEditor/XmlFileExtensions.cs:
- * MonoDevelop.XmlEditor.XPath/XPathQueryPad.cs:
- * MonoDevelop.XmlEditor/EncodedStringWriter.cs:
- * MonoDevelop.XmlEditor.Gui/XmlSchemasPanel.cs:
- * MonoDevelop.XmlEditor.XPath/XPathNodeMatch.cs:
- * MonoDevelop.XmlEditor/XmlFileExtensionNode.cs:
- * MonoDevelop.XmlEditor/XmlSchemaAssociation.cs:
- * MonoDevelop.XmlEditor/DeclarationViewWindow.cs:
- * MonoDevelop.XmlEditor/XmlEditorAddInOptions.cs:
- * MonoDevelop.XmlEditor/OpenStylesheetCommand.cs:
- * MonoDevelop.XmlEditor/XmlTextEditorExtension.cs:
- * MonoDevelop.XmlEditor.XPath/XPathQueryWidget.cs:
- * MonoDevelop.XmlEditor.XPath/XPathHistoryList.cs:
- * MonoDevelop.XmlEditor/QualifiedNameCollection.cs:
- * MonoDevelop.XmlEditor/OpenXPathQueryPadCommand.cs:
- * MonoDevelop.XmlEditor.XPath/XPathNamespaceList.cs:
- * MonoDevelop.XmlEditor.Gui/XmlEditorOptionsPanel.cs:
- * MonoDevelop.XmlEditor.XPath/XPathNodeTextMarker.cs:
- * MonoDevelop.XmlEditor.XPath/XPathQueryPadOptions.cs:
- * MonoDevelop.XmlEditor.Completion/XmlCompletionData.cs:
- * MonoDevelop.XmlEditor/RemoveXPathHighlightingCommand.cs:
- * MonoDevelop.XmlEditor.Completion/XmlSchemaCompletionData.cs:
- * MonoDevelop.XmlEditor.Completion/XmlCompletionDataCollection.cs:
- * MonoDevelop.XmlEditor.Completion/XmlSchemaCompletionDataCollection.cs:
- Changed license to MIT/X11.
-
- * gtk-gui/gui.stetic: Flush.
-
-2009-10-06 Michael Hutchinson <mhutchinson@novell.com>
-
- * Makefile.am:
- * MonoDevelop.XmlEditor.csproj:
- * MonoDevelop.Xml.Formatting/XmlChar.cs:
- * MonoDevelop.Xml.Formatting/XmlFormatterWriter.cs: Remove
- duplicate imported XmlChar file.
-
-2009-10-06 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor.Gui/BaseXmlEditorExtension.cs: Use
- ordinal comparer.
-
-2009-10-06 Michael Hutchinson <mhutchinson@novell.com>
-
- * Makefile.am:
- * Icons/XPathQueryPad.png:
- * MonoDevelop.XmlEditor.csproj:
- * MonoDevelop.XmlEditor.addin.xml: Remove icon of unknown
- provenance.
-
-2009-10-06 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor/XmlTextEditorExtension.cs:
- * MonoDevelop.XmlEditor.Gui/BaseXmlEditorExtension.cs: Tweak
- API so classes can return completion lists instead of
- modifying one they're given.
-
-2009-09-23 Lluis Sanchez Gual <lluis@novell.com>
-
- * Makefile.am:
- * MonoDevelop.Xml.Formatting:
- * MonoDevelop.XmlEditor.csproj:
- * MonoDevelop.Xml.Formatting/XmlChar.cs:
- * MonoDevelop.Xml.Formatting/XmlFormatter.cs:
- * MonoDevelop.Xml.Formatting/XmlFormatterWriter.cs:
- * MonoDevelop.Xml.Formatting/XmlFormattingPolicy.cs: Added a
- more advanced xml formatter, which is not yet being used.
-
-2009-09-12 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.XmlEditor.Gui/BaseXmlEditorExtension.cs:
- * MonoDevelop.XmlEditor.Completion/XmlTagCompletionData.cs:
- * MonoDevelop.XmlEditor.Completion/XmlMultipleClosingTagCompletionData.cs:
- Track API changes.
-
-2009-09-10 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.XmlEditor/XmlFormatter.cs: Track API changes.
-
-2009-09-09 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.XmlEditor.Gui/BaseXmlEditorExtension.cs:
- Implemented 'Bug 537682 - It would be great if I could just
- type bar '/' to close any tag as <foo />...'.
-
-2009-08-26 Lluis Sanchez Gual <lluis@novell.com>
-
- * gtk-gui/gui.stetic: Update gtk# dependency.
-
-2009-08-26 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.XmlEditor.csproj: Updated dependencies. We now
- depend on gtk# 2.12.8, Mono 2.4, and Mono.Addins 0.4.
-
-2009-08-11 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.XmlEditor/XmlEditorService.cs:
- * MonoDevelop.XmlEditor/XmlTextEditorExtension.cs: Track api
- changes.
-
-2009-07-30 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.XmlEditor/XmlFormatter.cs: Don't crash when
- trying to format malformed xml.
-
-2009-06-23 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.XmlEditor/XmlFormatter.cs:
- * MonoDevelop.XmlEditor/XmlTextEditorExtension.cs: Use the new
- DesktopService instead of PlatformService.
-
-2009-06-22 Lluis Sanchez Gual <lluis@novell.com>
-
- * Makefile.am:
- * MonoDevelop.XmlEditor.csproj:
- * MonoDevelop.XmlEditor.addin.xml:
- * MonoDevelop.XmlEditor/XmlFormatter.cs: Implemented a simple
- XML formatter.
-
-2009-06-09 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Xml.StateEngine/XmlAttributeValueState.cs: Fix
- build.
-
-2009-06-09 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Xml.StateEngine/XmlAttributeValueState.cs:
- Newlines are technically valid in attribute values. Only
- emit a warning, not an error.
-
-2009-05-05 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Xml.StateEngine/XmlClosingTagState.cs: Improve
- an error message.
-
-2009-05-01 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Xml.StateEngine/XmlAttributeValueState.cs: Break
- on newlines. Better error reporting.
-
- * MonoDevelop.Xml.StateEngine/XmlTagState.cs: Better error
- reporting.
-
-2009-04-27 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.XmlEditor/DeclarationViewWindow.cs: Updated
- declaration view from MonoDevelop.Projects.Gui
-
-2009-04-17 Mike Kestner <mkestner@novell.com>
-
- * MonoDevelop.XmlEditor.csproj: don't require specific
- gtk-sharp version.
-
-2009-04-15 Lluis Sanchez Gual <lluis@novell.com>
-
- * AssemblyInfo.cs:
- * MonoDevelop.XmlEditor.addin.xml: Bump MD version.
-
-2009-03-17 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.XmlEditor/XmlDocumentParser.cs: Track API
- changes.
-
-2009-03-13 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor.csproj: Don't local-copy project refs.
-
-2009-03-13 Andrés G. Aragoneses <aaragoneses@novell.com>
-
- * XmlEditor.glade: Making some strings not translatable.
-
-2009-03-13 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.XmlEditor.csproj: Moved text editor to core
-
-2009-03-04 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Xml.StateEngine/XmlDocTypeState.cs: Don't
- capture quotes.
-
-2009-03-04 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor.Gui/BaseXmlEditorExtension.cs: Track
- doctype parsing changes. Fix jumping to selections.
-
- * MonoDevelop.Xml.StateEngine/XDom.cs:
- * MonoDevelop.Xml.StateEngine/XmlDocTypeState.cs: XDocType now
- captures root element, URI, FPI, and the internal
- declaration region. Fixes Bug 481897 - xml can't be parsed.
-
- * MonoDevelop.Xml.StateEngine/XmlParsedDocument.cs: Fold large
- DocTypes.
-
- * gtk-gui/gui.stetic: Flush.
-
-2009-02-27 Michael Hutchinson <mhutchinson@novell.com>
-
- * Makefile.am:
- * MonoDevelop.XmlEditor.csproj:
- * MonoDevelop.XmlEditor/XmlTextEditorExtension.cs:
- * MonoDevelop.XmlEditor.Gui/BaseXmlEditorExtension.cs:
- * MonoDevelop.XmlEditor.Completion/InferredXmlCompletionProvider.cs:
- Add support for very simplistic inferred XML completion when
- a schema isn't present.
-
-2009-02-25 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor.Gui/XmlSchemasPanelWidget.cs: Make
- column headers translatable.
-
-2009-02-20 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Xml.StateEngine/XmlAttributeValueState.cs: Don't
- end attribute values on > character.
-
-2009-02-13 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Xml.StateEngine/XmlTagState.cs:
- * MonoDevelop.Xml.StateEngine/XmlAttributeState.cs:
- * MonoDevelop.Xml.StateEngine/XmlAttributeValueState.cs:
- Improve error handling.
-
-2009-02-13 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor/XmlDocumentParser.cs: Fix logic error
- that caused NRE with empty documents.
-
-2009-02-11 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor.Gui/BaseXmlEditorExtension.cs: Use Pad
- font.
-
-2009-02-08 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor.csproj: Local-copy schemas.
-
-2009-02-08 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor.csproj: Nuke another project reference
- local copy.
-
-2009-02-08 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor.csproj: Exorcise more unwanted local
- copy.
-
-2009-02-07 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.XmlEditor/XmlTextEditorExtension.cs:
- * MonoDevelop.XmlEditor.Completion/XmlSchemaCompletionData.cs:
- Fixed compiler warnings.
-
-2009-02-06 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.XmlEditor.mds:
- * MonoDevelop.XmlEditor.mdp:
- * MonoDevelop.XmlEditor.csproj: Migrated to MSBuild file
- format.
-
-2009-02-03 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor.Gui/BaseXmlEditorExtension.cs: Fix
- duplicated ':' when completing incompletely parsed names
- for the path bar.
-
-2009-02-03 Lluis Sanchez Gual <lluis@novell.com>
-
- * AssemblyInfo.cs:
- * MonoDevelop.XmlEditor.addin.xml: Bump MD version.
-
-2009-02-03 Lluis Sanchez Gual <lluis@novell.com>
-
- * gtk-gui/generated.cs:
- * MonoDevelop.XmlEditor.mdp:
- * gtk-gui/MonoDevelop.XmlEditor.Gui.XmlSchemasPanelWidget.cs:
- *
- gtk-gui/MonoDevelop.XmlEditor.Gui.XmlEditorOptionsPanelWidget.cs:
- Flush.
-
-2009-02-02 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor.Completion/XmlCompletionData.cs:
- Don't use an IActionCompletionData, just generate the
- completion text as needed and use | as a caret marker.
- Fixes Bug 471681 - xml tag completion not working.
-
-2009-01-26 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor.mdp: Flush project format changes.
-
-2009-01-21 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor.Gui/BaseXmlEditorExtension.cs: Add closing tag
- completion to all XML docs.
-
-2009-01-06 Michael Hutchinson <mhutchinson@novell.com>
-
- * Makefile.am: Don't define DEBUG, as heavy use of Debug.Assert was
- slowing down the XML text editor noticeably.
-
-2009-01-02 Lluis Sanchez Gual <lluis@novell.com>
-
- * Makefile.am:
- * MonoDevelop.XmlEditor.mdp: Add missing reference.
-
-2008-12-29 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor.Gui/BaseXmlEditorExtension.cs: Fix cursor
- position after autocompleting end tags.
-
-2008-12-29 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor.addin.xml:
- * MonoDevelop.XmlEditor/XmlDocumentParser.cs: Added a parser for XML
- files. Enables folding and error underlining.
-
- * Makefile.am:
- * MonoDevelop.XmlEditor.mdp: Updated.
-
- * MonoDevelop.XmlEditor/SourceViewTextIterator.cs:
- * MonoDevelop.XmlEditor.Completion/XmlCompletionDataProvider.cs:
- * MonoDevelop.XmlEditor.Completion/ClosingBracketCompletionDataProvider.cs:
- Removed, no longer used.
-
- * MonoDevelop.XmlEditor/XmlTextEditorExtension.cs: Port to subclass the
- BaseXmlEditorExtension instead of the custom XML parser. Improves
- completion and triggering, and adds outline and path bar support.
- There may be a few minor regressions in namespace resolution and the
- goto schema command, and performance needs work.
-
-2008-12-29 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor.Gui/BaseXmlEditorExtension.cs: Moved
- outline-building code from MoonlightEditorExtension to be the default
- implementation in BaseXmlEditorExtension, since it works with any
- XmlParsedDocument. Fix GetCompleteName so it handles prefixes, and
- expose it as protected. Add some simple entity completion support.
- Implement support for automatic closing tags via a protected flag.
-
-2008-12-12 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.XmlEditor.mdp:
- * Tests/MonoDevelop.XmlEditor.Tests.mdp: All projects now require fx
- 3.5.
-
-2008-12-09 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.XmlEditor.mdp: Don't require a specific version of
- Mono.Addins.
-
-2008-12-05 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.XmlEditor/XmlTextEditorExtension.cs:
- * MonoDevelop.XmlEditor.Gui/BaseXmlEditorExtension.cs: Track api
- changes.
-
-2008-12-02 Michael Hutchinson <mhutchinson@novell.com>
-
- * AssemblyInfo.cs: Add AssemblyInfo.cs files that are autogenerated from
- the addin manifests.
-
-2008-11-25 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Xml.StateEngine/XmlFreeState.cs: Improve error reporting.
-
-2008-11-25 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Xml.StateEngine/XmlTagState.cs: Remove multiple root
- element validation from here because it's not easy to override.
-
-2008-11-25 Lluis Sanchez Gual <lluis@novell.com>
-
- * Makefile.am:
- * MonoDevelop.XmlEditor.mdp: Add reference required for building.
-
-2008-11-25 Lluis Sanchez Gual <lluis@novell.com>
-
- * Makefile.am:
- * MonoDevelop.XmlEditor.mdp: Add glib dep.
-
-2008-11-18 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor.Gui/BaseXmlEditorExtension.cs: Add
- AddMiscBeginTags member that adds begin tags for comments and CData.
-
-2008-11-17 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Xml.StateEngine/Parser.cs: Log an error region instead of
- a line/col location when possible.
-
-2008-11-14 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Xml.StateEngine/Parser.cs: Add overloads for logging with
- more accurate locations.
-
- * MonoDevelop.Xml.StateEngine/XmlTagState.cs: Remove unused code.
-
-2008-11-14 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Xml.StateEngine/XDom.cs: Add a Value property to XDocType.
-
- * MonoDevelop.Xml.StateEngine/XmlDocTypeState.cs: Copture the doctype
- string when in tree mode.
-
- * MonoDevelop.XmlEditor.Gui/BaseXmlEditorExtension.cs: Copture doctype
- from the ParsedDocument if it's an XmlParsedDocument. Add utility
- GetBufferText method.
-
-2008-11-13 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Xml.StateEngine/XDom.cs: Avoid possible NRE in
- ToUpper/ToLower.
-
-2008-11-13 Michael Hutchinson <mhutchinson@novell.com>
-
- * Makefile.am:
- * MonoDevelop.XmlEditor.mdp: Updated.
-
- * MonoDevelop.Xml.StateEngine/XmlParsedDocument.cs: Moved
- MoonlightParsedDocument to XmlParsedDocument in the Xml addin.
-
-2008-11-12 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Xml.StateEngine/XDom.cs: Add ToUpper/ToLower methods on
- XName.
-
- * MonoDevelop.Xml.StateEngine/XmlClosingTagState.cs: Fixed bug that
- popped unmatched opening nodes when not in tree mode. Fixes exception
- in path bar when closing tags outnumber opening tags.
-
-2008-11-12 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor.Gui/BaseXmlEditorExtension.cs: Fix build.
-
-2008-11-12 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor.Gui/BaseXmlEditorExtension.cs: Show code
- templates for forced completion in free space. Fix accidental leak of
- attribute name triggering into free space.
-
-2008-11-11 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor.Gui/BaseXmlEditorExtension.cs: Track fix in text
- editor's completion line/col indexing. It's now 1-indexed, as it
- should be.
-
-2008-11-07 Eric Butler <eric@extremeboredom.net>
- * MonoDevelop.XmlEditor.Gui/BaseXmlEditorExtension.cs: Don't explode
- in Timeout callback if the BaseXmlEditorExtension was disposed.
-
-2008-11-07 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor.Gui/BaseXmlEditorExtension.cs:
- * MonoDevelop.XmlEditor.Completion/XmlMultipleClosingTagCompletionData.cs:
- Add additional closing elements to the completion list for all parent
- elements, that also close all intermediate elements.
-
- * Makefile.am:
- * MonoDevelop.XmlEditor.mdp: Updated.
-
-2008-11-06 Michael Hutchinson <mhutchinson@novell.com>
-
- * Makefile.am: Fix build dependencies.
-
-2008-11-05 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.XmlEditor.addin.xml: Bump MD version.
-
-2008-11-05 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.XmlEditor.Gui/BaseXmlEditorExtension.cs: Added new helper
- method.
-
-2008-10-24 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Xml.StateEngine/XDom.cs:
- * MonoDevelop.Xml.StateEngine/Parser.cs:
- * MonoDevelop.Xml.StateEngine/XmlTagState.cs:
- * MonoDevelop.Xml.StateEngine/XmlCDataState.cs:
- * MonoDevelop.Xml.StateEngine/XmlDocTypeState.cs:
- * MonoDevelop.Xml.StateEngine/XmlCommentState.cs:
- * MonoDevelop.Xml.StateEngine/XmlAttributeState.cs:
- * MonoDevelop.Xml.StateEngine/XmlClosingTagState.cs:
- * MonoDevelop.XmlEditor.Gui/BaseXmlEditorExtension.cs:
- * MonoDevelop.Xml.StateEngine/XmlProcessingInstructionState.cs: Changed
- Xml StateEngine from offset-based positions to line/column positions.
-
-2008-10-23 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Xml.StateEngine/XDom.cs: Fix recursive enumerables. Fix
- bug that prevented tree being built.
-
- * MonoDevelop.Xml.StateEngine/Parser.cs: Make line, col accessible.
- Write out errors in debug string.
-
-2008-10-23 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Xml.StateEngine/XmlTagState.cs: Catch multiple root nodes.
-
- * MonoDevelop.Xml.StateEngine/XDom.cs: Add field to XDocument for root
- node. Add some element-enumerating methods to XElement. Rename
- RecursiveNodes to AllDescendentNodes.
-
- * MonoDevelop.Xml.StateEngine/Parser.cs: Track line/col so we can use
- the same error class as MonoDevelop.Projects.Dom.
-
-2008-10-21 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor/XmlTextEditorExtension.cs: Don't try to create
- completion list when the array of source elements is null. Fixes
- exception in XML editor.
-
-2008-10-21 Ryan Bair <ryandbair@gmail.com>
-
- * MonoDevelop.XmlEditor.Completion/ClosingBracketCompletionDataProvider.cs:
- Capture full name of opening tag. Don't read back past an end bracket.
-
-2008-10-16 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor.Gui/BaseXmlEditorExtension.cs: Move updating of
- state engine so that subclasses don't have to do it.
-
-2008-10-16 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor.Gui/BaseXmlEditorExtension.cs: Implement
- attribute value completion and attribute completion.
-
-2008-10-15 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor.Gui/BaseXmlEditorExtension.cs: Move more code
- here from the ASP.NET completion extension.
-
-2008-10-09 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor/XmlTextEditorExtension.cs:
- * MonoDevelop.XmlEditor.Gui/BaseXmlEditorExtension.cs:
- * MonoDevelop.XmlEditor.Completion/XmlSchemaCompletionData.cs:
- * MonoDevelop.XmlEditor.Completion/XmlCompletionDataProvider.cs:
- * MonoDevelop.XmlEditor.Completion/ClosingBracketCompletionDataProvider.cs:
- Track APIs.
-
-2008-10-09 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor.Gui/BaseXmlEditorExtension.cs:
- * MonoDevelop.XmlEditor.Completion/XmlCompletionData.cs:
- * MonoDevelop.XmlEditor.Completion/XmlTagCompletionData.cs:
- * MonoDevelop.XmlEditor.Completion/XmlCompletionDataCollection.cs: Track
- CompletionData API.
-
-2008-10-08 Michael Hutchinson <mhutchinson@novell.com>
-
- * gtk-gui/gui.stetic: Add event and property for accessing errors.
-
-2008-10-07 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor.Completion/XmlCompletionData.cs:
- * MonoDevelop.XmlEditor.Completion/XmlTagCompletionData.cs: Track API.
-
-2008-10-03 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor.Gui/BaseXmlEditorExtension.cs: New base class
- containing common XML completion code from the
- AspNetEditorExtension.
- * Makefile.am, MonoDevelop.XmlEditor.mdp: Updated.
- * MonoDevelop.Xml.StateEngine/Parser2.cs: Remove unused parser.
-
-2008-09-29 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.XmlEditor.Completion/XmlCompletionData.cs,
- MonoDevelop.XmlEditor.Completion/XmlTagCompletionData.cs:
- implemented IComparable <ICompletionData>
-
-2008-09-23 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.XmlEditor.addin.xml: Set an id to the xml editor
- extension.
-
-2008-09-18 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.XmlEditor.Completion/XmlCompletionDataProvider.cs,
- MonoDevelop.XmlEditor.Completion/ClosingBracketCompletionDataProvider.cs:
- Track api changes.
-
-2008-09-12 Lluis Sanchez Gual <lluis@novell.com>
-
- * Tests/MonoDevelop.XmlEditor.Tests.mdp, gtk-gui/generated.cs,
- gtk-gui/MonoDevelop.XmlEditor.Gui.XmlEditorOptionsPanelWidget.cs,
- gtk-gui/MonoDevelop.XmlEditor.Gui.XmlSchemasPanelWidget.cs: Updated
- generated code.
-
-2008-08-26 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Xml.StateEngine/XmlTagState.cs,
- MonoDevelop.Xml.StateEngine/XmlChar.cs,
- MonoDevelop.Xml.StateEngine/XmlNameState.cs, Makefile.am,
- MonoDevelop.XmlEditor.mdp: Use Mono's System.Xml.XmlChar to check
- whether name chars are valid for XML.
-
-2008-08-20 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Xml.StateEngine/XmlAttributeValueState.cs,
- MonoDevelop.Xml.StateEngine/XmlFreeState.cs: Replace C#3 automatic
- properties into C# 2 properties. Fixes build on Mono < 1.9. Thanks
- to Joshua Simmons for the patch.
-
-2008-08-01 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Xml.StateEngine/XmlAttributeValueState.cs,
- MonoDevelop.Xml.StateEngine/XmlAttributeState.cs: Break up
- attribute value states.
- * MonoDevelop.Xml.StateEngine/Parser.cs: Attach parser state to
- exceptions.
-
-2008-07-31 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Xml.StateEngine/XmlAttributeValueState.cs,
- MonoDevelop.Xml.StateEngine/XmlAttributeState.cs: Use a
- MalformedTagState for recovery.
- * MonoDevelop.Xml.StateEngine/XmlCommentState.cs,
- MonoDevelop.Xml.StateEngine/XmlDocTypeState.cs,
- MonoDevelop.Xml.StateEngine/XmlCDataState.cs,
- MonoDevelop.Xml.StateEngine/XmlProcessingInstructionState.cs:
- Insert nodes when state begins (instead of end) so that we can use
- them in paths.
- * MonoDevelop.Xml.StateEngine/Parser.cs: Track previous state.
- * MonoDevelop.Xml.StateEngine/XDom.cs: Add support for getting a
- "friendly" representation of the node for a user-visible path.
-
-2008-07-30 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Xml.StateEngine/XmlClosingTagState.cs,
- MonoDevelop.Xml.StateEngine/XmlCommentState.cs,
- MonoDevelop.Xml.StateEngine/XmlMalformedTagState.cs,
- MonoDevelop.Xml.StateEngine/XmlTagState.cs,
- MonoDevelop.Xml.StateEngine/XmlNameState.cs: Move towards making
- the MalformedTagState more replaceable, so that handling of
- unexpected '<' can be intercepted.
- * MonoDevelop.Xml.StateEngine/XmlCDataState.cs,
- MonoDevelop.Xml.StateEngine/XmlProcessingInstructionState.cs:
- Tidying up.
-
-2008-07-30 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Xml.StateEngine/XmlMalformedTagState.cs,
- MonoDevelop.Xml.StateEngine/XmlDocTypeState.cs,
- MonoDevelop.Xml.StateEngine/XmlTagState.cs,
- MonoDevelop.Xml.StateEngine/XmlProcessingInstructionState.cs,
- MonoDevelop.Xml.StateEngine/XmlNameState.cs,
- MonoDevelop.Xml.StateEngine/XmlFreeState.cs,
- MonoDevelop.Xml.StateEngine/XmlClosingTagState.cs,
- MonoDevelop.Xml.StateEngine/State.cs,
- MonoDevelop.Xml.StateEngine/Parser.cs,
- MonoDevelop.Xml.StateEngine/XmlAttributeState.cs,
- MonoDevelop.Xml.StateEngine/XmlCDataState.cs,
- MonoDevelop.Xml.StateEngine/XmlAttributeValueState.cs,
- MonoDevelop.Xml.StateEngine/XmlCommentState.cs: API change to allow
- more that one character of rollback.
-
-2008-07-30 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Xml.StateEngine/XmlParser.cs,
- MonoDevelop.Xml.StateEngine/Parser2.cs,
- MonoDevelop.Xml.StateEngine/XState.cs, MonoDevelop.XmlEditor.mdp:
- Yet another parser that may be easier to extend to handle comments
- and expressions in arbitrary locations. Builds the same DOM as the
- existing one. Incomplete, and disabled for now.
-
-2008-07-29 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Xml.StateEngine/Parser.cs: Don't allow EndAll to close
- XDocument.
- * MonoDevelop.Xml.StateEngine/XmlFreeState.cs: Add a const for
- overriding nodes to know what StateTag values they can use.
- * MonoDevelop.Xml.StateEngine/XmlAttributeState.cs: Operate on any
- IAttributedXObject.
- * MonoDevelop.Xml.StateEngine/XDom.cs: Abstract out objects with
- attributes via IAttributedXObject interface.
-
-2008-07-25 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Xml.StateEngine/XmlFreeState.cs: Improve reset on <.
- Expose state tag consts for subclasses to use.
- * MonoDevelop.Xml.StateEngine/XDom.cs: Rename AttributeCollection to
- XAttributeCollection.
-
-2008-07-24 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Xml.StateEngine/Parser.cs,
- MonoDevelop.Xml.StateEngine/XmlTagState.cs,
- MonoDevelop.Xml.StateEngine/XmlMalformedTagState.cs: Make sure that
- bad nodes are attached, ended and popped when we recover.
-
-2008-07-24 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Xml.StateEngine/Parser.cs: Copy the stringbuilder when
- cloning the parser.
-
-2008-07-23 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Xml.StateEngine/XmlClosingTagState.cs,
- MonoDevelop.Xml.StateEngine/XmlTagState.cs: Fix start locations.
- * MonoDevelop.Xml.StateEngine/Parser.cs,
- MonoDevelop.Xml.StateEngine/XDom.cs: Make it possible to clone
- parser and switch it into tree mode. Some general cloning fixes.
-
-2008-07-23 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Xml.StateEngine/XmlClosingTagState.cs,
- MonoDevelop.Xml.StateEngine/State.cs,
- MonoDevelop.Xml.StateEngine/XmlAttributeValueState.cs,
- MonoDevelop.Xml.StateEngine/XmlCommentState.cs,
- MonoDevelop.Xml.StateEngine/XmlMalformedTagState.cs,
- MonoDevelop.Xml.StateEngine/XmlAttributeState.cs,
- MonoDevelop.Xml.StateEngine/XmlDocTypeState.cs,
- MonoDevelop.Xml.StateEngine/Parser.cs,
- MonoDevelop.Xml.StateEngine/XmlTagState.cs,
- MonoDevelop.Xml.StateEngine/XmlCDataState.cs,
- MonoDevelop.Xml.StateEngine/XmlProcessingInstructionState.cs,
- MonoDevelop.Xml.StateEngine/XmlNameState.cs,
- MonoDevelop.Xml.StateEngine/XmlFreeState.cs: New XML parser.
- Currently only used (in subclassed form) by ASP.NET code completion
- engine.
- * MonoDevelop.Xml.StateEngine/CDataState.cs,
- MonoDevelop.Xml.StateEngine/XmlSpecialTagState.cs,
- MonoDevelop.Xml.StateEngine/XmlTagNameState.cs: Removed/renamed.
- * MonoDevelop.Xml.StateEngine/XDom.cs: Minimalistic XML DOM used by new
- XML parser. Modelled after System.Xml.Linq
- * gtk-gui/objects.xml, Makefile.am, MonoDevelop.XmlEditor.mdp: Updated.
-
-2008-06-26 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Xml.StateEngine/Parser.cs: Remove debug code.
- * MonoDevelop.Xml.StateEngine/XDom.cs: Implement a new lightweight XML
- DOM somewhat modelled after the LINQ-to-XML DOM, but designed to
- ignore all content. It's intended to mark the location, name and
- type of tags in a text buffer, and should be able to be extended to
- be used with HTML and ASP.NET.
- * Makefile.am, MonoDevelop.XmlEditor.mdp: Updated.
-
-2008-06-26 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Xml.StateEngine/Parser.cs: Remove reference to work-in-
- progress code.
-
-2008-06-25 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Xml.StateEngine/Parser.cs,
- MonoDevelop.Xml.StateEngine/XmlClosingTagState.cs,
- MonoDevelop.Xml.StateEngine/CDataState.cs,
- MonoDevelop.Xml.StateEngine/XmlTagState.cs,
- MonoDevelop.Xml.StateEngine/XmlSpecialTagState.cs,
- MonoDevelop.Xml.StateEngine/XmlTagNameState.cs,
- MonoDevelop.Xml.StateEngine/State.cs,
- MonoDevelop.Xml.StateEngine/XmlProcessingInstructionState.cs,
- MonoDevelop.Xml.StateEngine/XmlAttributeValueState.cs,
- MonoDevelop.Xml.StateEngine/XmlFreeState.cs,
- MonoDevelop.Xml.StateEngine/XmlCommentState.cs,
- MonoDevelop.Xml.StateEngine/XmlMalformedTagState.cs,
- MonoDevelop.Xml.StateEngine/XmlAttributeState.cs: Rework stack
- cloning and character rejection mechanisms in XML/ASP state engine.
-
-2008-06-09 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.XmlEditor.mds: Don't build editor tests by default.
-
-2008-06-04 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.XmlEditor.addin.xml, MonoDevelop.XmlEditor.mds: Bump MD
- version.
-
-2008-06-03 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.XmlEditor/XmlEditorService.cs: Use the OnDestroyed event
- instead of Dispose, since with the latest changes in gtk#, Dispose
- is not called anymore when a widget is destroyed.
-
-2008-06-02 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.XmlEditor.mds: Some fixes in project files.
-
-2008-05-22 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.XmlEditor/XmlEditorService.cs: Replaced
- ICompilerResult/DefaultCompilerResult/CompilerResults by a new
- BuildResult class, which has owner information at error level, so
- it is possible to know which project generated an error when
- building a solution. Updated Task and TaskService to use the new
- owner information.
-
-2008-05-21 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.XmlEditor.mdp: New project model changes.
-
-2008-05-07 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Xml.StateEngine/XmlSpecialTagState.cs: Fix opening of
- CDATA tags.
-
-2008-04-30 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Xml.StateEngine/Parser.cs,
- MonoDevelop.Xml.StateEngine/XmlClosingTagState.cs,
- MonoDevelop.Xml.StateEngine/XmlTagState.cs,
- MonoDevelop.Xml.StateEngine/XmlTagNameState.cs,
- MonoDevelop.Xml.StateEngine/XmlAttributeValueState.cs,
- MonoDevelop.Xml.StateEngine/XmlFreeState.cs,
- MonoDevelop.Xml.StateEngine/XmlMalformedTagState.cs,
- MonoDevelop.Xml.StateEngine/XmlAttributeState.cs: Make sure more
- states have closing positions.
-
-2008-04-25 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Xml.StateEngine/Parser.cs,
- MonoDevelop.Xml.StateEngine/XmlClosingTagState.cs,
- MonoDevelop.Xml.StateEngine/CDataState.cs,
- MonoDevelop.Xml.StateEngine/XmlTagState.cs,
- MonoDevelop.Xml.StateEngine/XmlSpecialTagState.cs,
- MonoDevelop.Xml.StateEngine/State.cs,
- MonoDevelop.Xml.StateEngine/XmlProcessingInstructionState.cs,
- MonoDevelop.Xml.StateEngine/XmlAttributeValueState.cs,
- MonoDevelop.Xml.StateEngine/XmlFreeState.cs,
- MonoDevelop.Xml.StateEngine/XmlCommentState.cs,
- MonoDevelop.Xml.StateEngine/XmlMalformedTagState.cs,
- MonoDevelop.Xml.StateEngine/XmlAttributeState.cs: Change XML state
- engine API to allow cloning a single node (as an alternative to the
- whole stack).
- * MonoDevelop.Xml.StateEngine/XmlTagNameState.cs: Track API and fix
- name closing logic.
-
-2008-04-18 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Xml.StateEngine/XmlSpecialTagState.cs,
- MonoDevelop.Xml.StateEngine/XmlProcessingInstructionState.cs: Add
- support for processing instructions.
- * Makefile.am, MonoDevelop.XmlEditor.mdp: Updated.
-
-2008-04-18 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Xml.StateEngine/XmlAttributeValueState.cs,
- MonoDevelop.Xml.StateEngine/XmlAttributeState.cs: Add convenience
- members.
- * MonoDevelop.XmlEditor.mdp: Updated.
-
-2008-04-17 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Xml.StateEngine/Parser.cs,
- MonoDevelop.Xml.StateEngine/XmlClosingTagState.cs,
- MonoDevelop.Xml.StateEngine/CDataState.cs,
- MonoDevelop.Xml.StateEngine/XmlTagState.cs,
- MonoDevelop.Xml.StateEngine/XmlSpecialTagState.cs,
- MonoDevelop.Xml.StateEngine/XmlTagNameState.cs,
- MonoDevelop.Xml.StateEngine/State.cs,
- MonoDevelop.Xml.StateEngine/XmlAttributeValueState.cs,
- MonoDevelop.Xml.StateEngine/XmlFreeState.cs,
- MonoDevelop.Xml.StateEngine/XmlCommentState.cs,
- MonoDevelop.Xml.StateEngine/XmlMalformedTagState.cs,
- MonoDevelop.Xml.StateEngine/XmlAttributeState.cs: Add new XML state
- engine for triggering autocompletion and indentation in XML-like
- languages.
- * Makefile.am, MonoDevelop.XmlEditor.mdp: Updated.
-
-2008-04-16 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor/XmlTextEditorExtension.cs: Track API change.
- Remove char code translation hack.
-
-2008-04-11 Michael Hutchinson <mhutchinson@novell.com>
-
- * Makefile.am: Depend on MonoDevelop.SourceEditor2.dll; its build number
- auto-increments, so whenever it changes, we need to rebuild this.
-
-2008-04-08 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor.Completion/XmlTagCompletionData.cs,
- MonoDevelop.XmlEditor.Completion/ClosingBracketCompletionDataProvider.cs:
- Split the completion data class into a separated file and
- generalised it a little.
- * MonoDevelop.XmlEditor.Completion/ILazilyLoadedProvider.cs,
- MonoDevelop.XmlEditor.Completion/XmlSchemaCompletionData.cs: Rework
- lazy loading, with forced advance-loading via an interface.
- * MonoDevelop.XmlEditor.Completion/EmptyXmlCompletionProvider.cs:
- Implemented an empty completion provider.
- * Makefile.am, MonoDevelop.XmlEditor.mdp: Updated.
-
-2008-04-03 Marcos David Marín Amador <MarcosMarin@gmail.com>
-
- * MonoDevelop.XmlEditor.Gui/XmlSchemasPanelWidget.cs: Workaround bug in mono
- 1.2.4 where usings are ignored inside anonymous methods.
-
-2008-04-02 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor.Completion/ClosingBracketCompletionDataProvider.cs,
- MonoDevelop.XmlEditor/ClosingBracketCompletionDataProvider.cs:
- Moved and made the data object public.
- * Makefile.am, MonoDevelop.XmlEditor.mdp: Updated.
-
-2008-04-02 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor.addin.xml: Bump version to 0.19 to match
- other addins. Fixes dependency resolution on Mono HEAD (but wasn't
- a problem on 1.9, not sure why).
-
-2008-04-01 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor.Gui/XmlSchemasPanelWidget.cs, Makefile.am,
- MonoDevelop.XmlEditor.mdp: Updated.
- * MonoDevelop.XmlEditor/XmlSchemaManager.cs,
- MonoDevelop.XmlEditor/XmlTextEditorExtension.cs: Track namespace
- changes.
- * MonoDevelop.XmlEditor/XmlSchemaCompletionDataCollection.cs,
- MonoDevelop.XmlEditor/XmlCompletionData.cs,
- MonoDevelop.XmlEditor/XmlCompletionDataProvider.cs,
- MonoDevelop.XmlEditor/XmlCompletionDataCollection.cs,
- MonoDevelop.XmlEditor/XmlSchemaCompletionData.cs: Moved to
- MonoDevelop.XmlEditor.Completion namespace.
- * MonoDevelop.XmlEditor/XmlEditorService.cs: Track namespace changes.
- Improve validation verbosity. Reduce use of deprecated APIs.
- * MonoDevelop.XmlEditor/XmlEditorWindow.cs: No longer needed.
- * MonoDevelop.XmlEditor.Completion/IXmlCompletionProvider.cs,
- MonoDevelop.XmlEditor.Completion/XmlSchemaCompletionData.cs:
- Factored out an interface so that XML completion doesn't explicitly
- depend on xsd schemas. Added some alternate (namespaceless) lookups
- that will be used for HTML completion in ASP.NET. Misc tidying.
- * MonoDevelop.XmlEditor.Completion/XmlCompletionDataProvider.cs,
- MonoDevelop.XmlEditor.Completion/XmlCompletionDataCollection.cs,
- MonoDevelop.XmlEditor.Completion/XmlSchemaCompletionDataCollection.cs:
- Move and change namespace.
- * MonoDevelop.XmlEditor.Completion/XmlCompletionData.cs: Tidied up.
-
-2008-03-28 Marcos David Marín Amador <MarcosMarin@gmail.com>
-
- * MonoDevelop.XmlEditor.Gui/XmlSchemasPanelWidget.cs: Workaround for bug in
- mono 1.2.4 where usings are ignored inside anonymous methods.
-
-2008-03-27 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor.Gui/XmlSchemasPanelWidget.cs: Remove debug
- code.
- * MonoDevelop.XmlEditor/XmlTextEditorExtension.cs: Re-enable syntax
- highlighting.
- * gtk-gui/gui.stetic, Makefile.am, MonoDevelop.XmlEditor.addin.xml,
- MonoDevelop.XmlEditor.mdp: Add SourceEditor2 dependency.
-
-2008-03-27 Atsushi Enomoto <atsushi@ximian.com>
-
- * MonoDevelop.XmlEditor/XmlTextEditorExtension.cs : quick build fix.
-
-2008-03-26 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor/XmlTextEditorExtension.cs: When using the
- Mono.TextEditor/SourceEditor2 editor, enable XML syntax
- highlighting for all user-registered XML filetypes.
- * MonoDevelop.XmlEditor/XmlSchemaCompletionDataCollection.cs: Oops, fix
- null check that prevented access to full set of schemas.
-
-2008-03-24 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor/XmlTextEditorExtension.cs: Remove redundant
- member. May fix some compilation errors.
-
-2008-03-21 Marcos David Marín Amador <MarcosMarin@gmail.com>
-
- * MonoDevelop.XmlEditor.Gui/XmlSchemasPanelWidget.cs: Workaround bug in mono
- 1.2.4 where usings are ignored inside anonymous methods.
-
-2008-03-21 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor/XmlTextEditorExtension.cs: When
- Document.FileName is null or empty, try using Document.Title.
- Enables XML extension on dynamically created documents.
- * MonoDevelop.XmlEditor.addin.xml: Add back a menu separator.
- * MonoDevelop.XmlEditor/XmlEditorService.cs: Remove unused variable.
-
-2008-03-20 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor.Gui/XmlSchemasPanelWidget.cs: Move dialog to
- XmlEditorService.
- * MonoDevelop.XmlEditor/RunXslTransformCommand.cs,
- MonoDevelop.XmlEditor/AssignStylesheetCommand.cs: Moved
- implementation into XmlEditorService and XmlTextEditorExtension.
- * MonoDevelop.XmlEditor/ClosingBracketCompletionDataProvider.cs: Fix
- previous character index.
- * MonoDevelop.XmlEditor/XmlTextEditorExtension.cs: Implement commands,
- based on code from command classes.
- * MonoDevelop.XmlEditor/XmlEditorService.cs: Move more command
- implementations to editor service and refactor heavily.
- * Makefile.am, MonoDevelop.XmlEditor.mdp: Updated.
- * MonoDevelop.XmlEditor.addin.xml: Enable most of the XML commands.
-
-2008-03-20 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor/XmlSchemaManager.cs: Actually use merged schema
- collection.
- * MonoDevelop.XmlEditor/XmlCompletionData.cs: Remove unnecessary
- reference to inherited interface.
- * MonoDevelop.XmlEditor/GoToSchemaDefinitionCommand.cs,
- MonoDevelop.XmlEditor/CreateSchemaCommand.cs,
- MonoDevelop.XmlEditor/FormatXmlCommand.cs,
- MonoDevelop.XmlEditor/ValidateXmlCommand.cs: Moved implementation
- into XmlEditorService and XmlTextEditorExtension.
- * MonoDevelop.XmlEditor/XmlTextEditorExtension.cs: Implement XMl
- commands, based on code from command classes.
- * MonoDevelop.XmlEditor/XmlSchemaCompletionDataCollection.cs: Add
- IEnumerable implementation to merged collection.
- * MonoDevelop.XmlEditor/XmlEditorService.cs: Move much of command
- implementations to editor service and refactor heavily.
- * Makefile.am, MonoDevelop.XmlEditor.mdp: Updated.
-
-2008-03-19 Marcos David Marín Amador <MarcosMarin@gmail.com>
-
- * MonoDevelop.XmlEditor.Gui/XmlSchemasPanelWidget.cs: Workaround bug in mono
- 1.2.4 where usings are ignored inside anonymous methods.
-
-2008-03-19 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor/ClosingBracketCompletionDataProvider.cs,
- MonoDevelop.XmlEditor/XmlTextEditorExtension.cs: Move bracket
- autocompletion into a completion provider, so that the user can
- escape bracket completion.
- * Makefile.am, MonoDevelop.XmlEditor.mdp: Updated.
-
-2008-03-18 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor.mdp: Updated.
- * gtk-gui, gtk-gui/generated.cs,
- gtk-gui/MonoDevelop.XmlEditor.Gui.XmlEditorOptionsPanelWidget.cs,
- gtk-gui/gui.stetic,
- gtk-gui/MonoDevelop.XmlEditor.Gui.XmlSchemasPanelWidget.cs,
- gtk-gui/objects.xml: Add stetic-generated files.
-
-2008-03-18 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor/XmlCompletionDataProvider.cs: Track API.
-
-2008-03-18 Michael Hutchinson <mhutchinson@novell.com>
-
- * schemas/MonoDevelopAddIn.xsd, schemas/manifest.xsd,
- schemas/appconfig.xsd: Make XML valid, so the mime type is picked
- up correctly.
- * MonoDevelop.XmlEditor.addin.xml, Makefile.am,
- MonoDevelop.XmlEditor.mdp: Updated.
- * MonoDevelop.XmlEditor.Gui/XmlSchemasPanel.cs,
- MonoDevelop.XmlEditor.Gui/XmlSchemasPanelWidget.cs: New UI for
- schema and filetype settings. Now allows overriding built-in
- schemas and defining additional handled filetypes.
- * MonoDevelop.XmlEditor.Gui/XmlEditorOptionsPanel.cs,
- MonoDevelop.XmlEditor.Gui/XmlEditorOptionsPanelWidget.cs: New UI
- using Stetic.
- * MonoDevelop.XmlEditor/SelectXmlSchemaDialog.cs,
- MonoDevelop.XmlEditor/XslOutputViewContent.cs,
- MonoDevelop.XmlEditor/XmlSchemasPanelWidget.cs,
- MonoDevelop.XmlEditor/XmlEditorListWindow.cs: No longer needed.
- * MonoDevelop.XmlEditor/XmlSchemasPanel.cs,
- MonoDevelop.XmlEditor/XmlEditorOptionsPanel.cs: Moved.
- * MonoDevelop.XmlEditor/XmlTextEditorExtension.cs: Track API.
- * MonoDevelop.XmlEditor/XmlSchemaManager.cs: Support overriding of
- built-in schemas with user schemas.
- * MonoDevelop.XmlEditor/XmlSchemaCompletionDataCollection.cs: Use
- generic collections. Separate completion functions into an
- interface and implement a "merge" collection.
- * MonoDevelop.XmlEditor/XmlSchemaAssociation.cs: Use LowerInvariant for
- extensions.
- * MonoDevelop.XmlEditor/XmlFileExtensions.cs: Use generics. Allow
- adding xml file extensions.
- * MonoDevelop.XmlEditor/XmlEditorOptionsPanelWidget.cs: Replaced by
- stetic version.
- * MonoDevelop.XmlEditor/XmlEditorAddInOptions.cs: Allow adding xml file
- extensions.
-
-2008-03-14 Michael Hutchinson <mhutchinson@novell.com>
-
- * Makefile.am: fix install location of schemas.
-
-2008-03-13 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor/XmlSchemaManager.cs: Make class static. Change
- console messages to log messages.
- * MonoDevelop.XmlEditor/XmlCompletionData.cs: Port to use
- IEditableTextBuffer rather than XmlEditorView.
- * MonoDevelop.XmlEditor/XmlCompletionDataProvider.cs: Track MD APIs.
- * MonoDevelop.XmlEditor/XmlTextEditorExtension.cs: Port code completion
- functionality from XmlEditorView to a TextEditorExtension that will
- work with all editors.
- * MonoDevelop.XmlEditor/XmlDisplayBinding.cs: Unneeded.
- * MonoDevelop.XmlEditor/XmlEditorService.cs: Replace
- XmlEditorViewContent accessors with XmlTextEditorExtension
- accessors (which won't do anything until I commit a MonoDevelop.Ide
- patch). Also many cosmetic tweaks.
- * MonoDevelop.XmlEditor/XmlSchemaCompletionData.cs: Remove some
- unnecessary instantiations.
- * MonoDevelop.XmlEditor/FormatXmlCommand.cs: Port to
- IEditableTextBuffer. Make it operate on the selection if there is
- one.
- * Makefile.am, MonoDevelop.XmlEditor.addin.xml,
- MonoDevelop.XmlEditor.mdp: Disable all of the files and extensions
- that are not yet ported. Remove the GtkSourceView and SourceEditor
- dependencies.
-
-2008-03-10 Michael Hutchinson <mhutchinson@novell.com>
-
- * Makefile.am:
- * MonoDevelop.XmlEditor.mds:
- * MonoDevelop.XmlEditor.mdp: Fix MonoDevelop project.
-
-2008-03-07 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor/XmlSchemasPanel.cs:
- * MonoDevelop.XmlEditor/XmlEditorOptionsPanel.cs:
- * MonoDevelop.XmlEditor.addin.xml: Track options panel API changes.
-
-2008-03-06 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor/Schemas: Move to schemas.
- * MonoDevelop.XmlEditor/schemas: Moved from Schemas.
-
- * Makefile.am: Fix build.
-
- * MonoDevelop.XmlEditor/RunXslTransformCommand.cs:
- * MonoDevelop.XmlEditor/XmlSchemasPanelWidget.cs:
- * MonoDevelop.XmlEditor/XmlEditorViewContent.cs:
- * MonoDevelop.XmlEditor/XmlEditorView.cs:
- * MonoDevelop.XmlEditor/CreateSchemaCommand.cs:
- * MonoDevelop.XmlEditor/XmlSchemasPanel.cs:
- * MonoDevelop.XmlEditor/XmlEditorService.cs:
- * MonoDevelop.XmlEditor/OpenStylesheetCommand.cs:
- * MonoDevelop.XmlEditor.addin.xml:
- Quick and dirty port to MD trunk and GtkSourceView 2, just to get
- it working before I port it to a TextEditorExtension.
-
-2008-03-06 Michael Hutchinson <mhutchinson@novell.com>
-
- * Makefile.am: Update for the trunk build system and file
- layout changes.
-
-2007-09-13 21:18 mrward
-
- * trunk/configure.in,
- trunk/src/MonoDevelop.XmlEditor.Tests/AssemblyInfo.cs,
- trunk/src/MonoDevelop.XmlEditor/AssemblyInfo.cs,
- trunk/src/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.addin.xml,
- trunk/src/MonoDevelop.XmlEditor/XmlCompletionData.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlEditorAddInOptions.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlEditorService.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlEditorView.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlEditorViewContent.cs: XML
- Editor now compiles and works with MonoDevelop 0.15
-
-2007-06-13 22:31 mrward
-
- * trunk/configure.in: Configure now checks the MonoDevelop version
- is 0.14
-
-2007-06-13 22:23 mrward
-
- * trunk/ChangeLog: Updated changelog ready for a snapshot release
- 0.4 that builds against MonoDevelop 0.14
-
-2007-06-10 10:50 mrward
-
- * trunk/src/MonoDevelop.XmlEditor.Tests/CompletionData/XmlCompletionDataStringTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlCompletionData.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlCompletionListWindow.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlEditorView.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlEditorViewContent.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlEditorWindow.cs:
- XmlCompletionData now implements the IActionCompletionData
- interface. All xml completion is now done via the InsertAction
- method.
-
-2007-06-09 17:51 mrward
-
- * trunk/src/MonoDevelop.XmlEditor/XmlCompletionListWindow.cs: The
- completion list window now selects the matching namespace during
- namespace completion.
-
-2007-06-09 17:03 mrward
-
- * trunk/src/MonoDevelop.XmlEditor/XmlCompletionListWindow.cs: The
- completion list window now selects the matching list item when
- the user types in a special xml character (e.g. colon).
-
-2007-06-09 15:34 mrward
-
- * trunk/src/MonoDevelop.XmlEditor.Tests/FindSchemaObject/AttributeGroupReferenceSelectedTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/FindSchemaObject/AttributeReferenceSelectedTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/FindSchemaObject/AttributeSelectedTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/FindSchemaObject/AttributeTypeSelectedTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/FindSchemaObject/ElementReferenceSelectedTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/FindSchemaObject/ElementReferenceWithPrefixSelectedTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/FindSchemaObject/ElementSelectedTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/FindSchemaObject/ElementTypeSelectedTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/FindSchemaObject/ElementTypeWithPrefixSelectedTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/FindSchemaObject/GroupReferenceSelectedTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Schema/GetSchemaFromFileNameTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor/GoToSchemaDefinitionCommand.cs,
- trunk/src/MonoDevelop.XmlEditor/ICompletionData.cs,
- trunk/src/MonoDevelop.XmlEditor/ICompletionDataProvider.cs,
- trunk/src/MonoDevelop.XmlEditor/ICompletionWidget.cs,
- trunk/src/MonoDevelop.XmlEditor/Makefile.am,
- trunk/src/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.addin.xml,
- trunk/src/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.mdp,
- trunk/src/MonoDevelop.XmlEditor/XmlCompletionDataProvider.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlCompletionListWindow.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlEditorListWindow.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlEditorView.cs: Removed the
- ICompletionData, ICompletionDataProvider and the
- ICompletionWidget files. The XML editor now uses these interfaces
- from MonoDevelop. The 0.14 MonoDevelop assemblies are now
- referenced in the addin xml file.
-
-2007-05-28 11:58 mrward
-
- * trunk/configure.in,
- trunk/src/MonoDevelop.XmlEditor.Tests/AssemblyInfo.cs,
- trunk/src/MonoDevelop.XmlEditor/AssemblyInfo.cs,
- trunk/src/MonoDevelop.XmlEditor/CreateSchemaCommand.cs,
- trunk/src/MonoDevelop.XmlEditor/FormatXmlCommand.cs,
- trunk/src/MonoDevelop.XmlEditor/Makefile.am,
- trunk/src/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.addin.xml,
- trunk/src/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.mdp,
- trunk/src/MonoDevelop.XmlEditor/OpenXPathQueryPadCommand.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlEditorService.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlEditorViewContent.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlFileExtensionCodon.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlFileExtensionNode.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlFileExtensions.cs: XML Editor
- can now be compiled against MonoDevelop revision 77999. Updated
- MonoDevelop.XmlEditor.addin.xml so it uses the new format and
- extension points. Fixed compilation errors due to namespace
- changes in MonoDevelop and its use of Mono.Addins.
-
-2007-04-08 19:04 mrward
-
- * trunk/src/MonoDevelop.XmlEditor.Tests/MimeTypeHandledTests.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/MonoDevelop.XmlEditor.Tests.mdp,
- trunk/src/MonoDevelop.XmlEditor/XmlEditorViewContent.cs: The XML
- editor now supports the 'application/xml' mime type.
-
-2007-04-08 18:46 mrward
-
- * trunk/src/MonoDevelop.XmlEditor/XmlEditorViewContent.cs:
- XmlEditorViewContent now implements the new ITextFile's GetCharAt
- method.
-
-2007-02-23 18:21 mrward
-
- * trunk/ChangeLog: Updated changelog ready for a snapshot release
- 0.3 that builds against MonoDevelop 0.13
-
-2007-02-23 18:17 mrward
-
- * trunk/src/MonoDevelop.XmlEditor.Tests/AssemblyInfo.cs,
- trunk/src/MonoDevelop.XmlEditor/AssemblyInfo.cs: Updated Xml
- Editor addin assembly version to 0.3
-
-2007-02-23 18:15 mrward
-
- * trunk/configure.in: Updated configure to check for MonoDevelop
- 0.13. Xml Editor addin version set to 0.3.
-
-2007-02-23 17:43 mrward
-
- * trunk/src/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.addin.xml:
- Renamed menu item to 'Go to Schema Definition' to be consistent
- with MonoDevelop which has 'Go to' as two separate words.
-
-2007-02-23 17:39 mrward
-
- * trunk/src/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.addin.xml:
- Added missing addin dependencies to
- MonoDevelop.XmlEditor.addin.xml file.
-
-2007-02-19 18:35 mrward
-
- * trunk/src/MonoDevelop.XmlEditor.Tests/Parser/QualifiedNameTestFixture.cs:
- Added unit test for QualifiedName.GetHashCode()
-
-2007-02-19 18:31 mrward
-
- * trunk/src/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.addin.xml:
- Updated the version number of the MonoDevelop dependencies to
- 0.13.0
-
-2007-02-17 21:13 mrward
-
- * trunk/src/MonoDevelop.XmlEditor.Tests/MonoDevelop.XmlEditor.Tests.mdp,
- trunk/src/MonoDevelop.XmlEditor.mds,
- trunk/src/MonoDevelop.XmlEditor/ICompletionData.cs,
- trunk/src/MonoDevelop.XmlEditor/ICompletionDataProvider.cs,
- trunk/src/MonoDevelop.XmlEditor/ICompletionWidget.cs,
- trunk/src/MonoDevelop.XmlEditor/Makefile.am,
- trunk/src/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.mdp,
- trunk/src/MonoDevelop.XmlEditor/XmlCompletionListWindow.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlEditorService.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlEditorView.cs: Copied the
- ICompletionData, ICompletionDataProvider and ICompletionWidget
- interfaces into the XML Editor project from MonoDevelop 0.12. Due
- to changes in the code completion infrastructure in the latest
- version of MonoDevelop the XML Editor would not compile. The old
- versions of the completion interfaces have been used as an
- interim fix before attempting to use the new infrastructure.
-
-2006-12-26 22:55 mrward
-
- * trunk/src, trunk/src/MonoDevelop.XmlEditor/schemas/nant.xsd,
- trunk/src/MonoDevelop.XmlEditor/schemas/readme.txt: Updated the
- NAnt 0.85 schema.
-
-2006-12-06 00:49 mrward
-
- * trunk/TODO,
- trunk/src/MonoDevelop.XmlEditor/CreateSchemaCommand.cs,
- trunk/src/MonoDevelop.XmlEditor/FormatXmlCommand.cs,
- trunk/src/MonoDevelop.XmlEditor/RunXslTransformCommand.cs,
- trunk/src/MonoDevelop.XmlEditor/ValidateXmlCommand.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlEditorService.cs: Fixed
- compilation errors due to methods being renamed in MonoDevelop's
- TaskService class.
-
-2006-10-23 14:53 mrward
-
- * trunk/src/MonoDevelop.XmlEditor/XmlEditorViewContent.cs: Added
- workaround used in MonoDevelop.SourceEditor to fix a problem with
- the gtk treeview stealing focus. The workaround changes the focus
- back to the editor and scrolls to the cursor position again after
- a short timeout. Without this workaround the XML editor would
- fail to scroll to the correct line when opening a large xml file
- for the first time. For example, when selecting the Goto Schema
- Definition menu item, with the schema file not already open,
- would fail to scroll the editor so the correct line was
- displayed.
-
-2006-10-13 20:43 mrward
-
- * trunk/TODO,
- trunk/src/MonoDevelop.XmlEditor.Tests/FindSchemaObject,
- trunk/src/MonoDevelop.XmlEditor.Tests/FindSchemaObject/AttributeGroupReferenceSelectedTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/FindSchemaObject/AttributeReferenceSelectedTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/FindSchemaObject/AttributeSelectedTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/FindSchemaObject/AttributeTypeSelectedTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/FindSchemaObject/ElementReferenceSelectedTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/FindSchemaObject/ElementReferenceWithPrefixSelectedTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/FindSchemaObject/ElementSelectedTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/FindSchemaObject/ElementTypeSelectedTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/FindSchemaObject/ElementTypeWithPrefixSelectedTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/FindSchemaObject/GroupReferenceSelectedTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/MonoDevelop.XmlEditor.Tests.mdp,
- trunk/src/MonoDevelop.XmlEditor.Tests/Parser/ActiveElementUnderCursorTests.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Parser/AttributeNameTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Parser/AttributeNameUnderCursorTests.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Parser/AttributeValueUnderCursorTests.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Parser/InsideAttributeValueTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Parser/ParentElementPathTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Schema/ElementWithAttributeSchemaTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Schema/FindAttributeFromComplexTypeTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Schema/GetSchemaFromFileNameTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Schema/XmlSchemaNamespaceTests.cs,
- trunk/src/MonoDevelop.XmlEditor/Commands.cs,
- trunk/src/MonoDevelop.XmlEditor/GoToSchemaDefinitionCommand.cs,
- trunk/src/MonoDevelop.XmlEditor/Makefile.am,
- trunk/src/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.addin.xml,
- trunk/src/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.mdp,
- trunk/src/MonoDevelop.XmlEditor/XmlCompletionDataProvider.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlEditorView.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlParser.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlSchemaCompletionData.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlSchemaCompletionDataCollection.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlSchemaManager.cs: Added Goto
- Schema Definition menu item. This allows the user to select an
- element, attribute or attribute value and jump to the
- corresponding schema definition.
-
-2006-10-13 18:14 mrward
-
- * trunk/src/MonoDevelop.XmlEditor/XPathQueryWidget.cs: When an
- XPath query is executed the notebook page showing the results is
- made the current page.
-
-2006-10-07 19:40 mrward
-
- * trunk/src/MonoDevelop.XmlEditor.Tests/MonoDevelop.XmlEditor.Tests.mdp,
- trunk/src/MonoDevelop.XmlEditor.Tests/XPathQuery/XPathHistoryListTests.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/XPathQuery/XPathNamespaceListTests.cs,
- trunk/src/MonoDevelop.XmlEditor/Makefile.am,
- trunk/src/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.mdp,
- trunk/src/MonoDevelop.XmlEditor/XPathHistoryList.cs,
- trunk/src/MonoDevelop.XmlEditor/XPathNamespaceList.cs,
- trunk/src/MonoDevelop.XmlEditor/XPathQueryPad.cs,
- trunk/src/MonoDevelop.XmlEditor/XPathQueryPadOptions.cs,
- trunk/src/MonoDevelop.XmlEditor/XPathQueryWidget.cs: The XPath
- query window saves the xpath history and any namespaces entered
- and restores them on restarting MonoDevelop.
-
-2006-10-07 17:30 mrward
-
- * trunk, trunk/src, trunk/src/MonoDevelop.XmlEditor,
- trunk/src/MonoDevelop.XmlEditor.Tests,
- trunk/src/MonoDevelop.XmlEditor/Commands.cs,
- trunk/src/MonoDevelop.XmlEditor/Makefile.am,
- trunk/src/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.addin.xml,
- trunk/src/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.mdp,
- trunk/src/MonoDevelop.XmlEditor/RemoveXPathHighlightingCommand.cs,
- trunk/src/MonoDevelop.XmlEditor/XPathQueryPad.cs: Added Remove
- XPath Highlighting menu item which will remove the xpath matches
- highlighted in the XML editor.
-
-2006-10-07 16:25 mrward
-
- * trunk/src/MonoDevelop.XmlEditor/XPathQueryWidget.cs: Pressing the
- return key inside the xpath ComboBoxEntry now executes the xpath
- query. Added basic pop-up auto-completion to the xpath
- ComboBoxEntry.
-
-2006-09-27 21:17 mrward
-
- * trunk/src/MonoDevelop.XmlEditor.Tests/MonoDevelop.XmlEditor.Tests.mdp,
- trunk/src/MonoDevelop.XmlEditor.Tests/XPathQuery,
- trunk/src/MonoDevelop.XmlEditor.Tests/XPathQuery/RunXPathQueryTests.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/XPathQuery/XmlNamespaceTests.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/XPathQuery/XmlNamespaceToStringTests.cs,
- trunk/src/MonoDevelop.XmlEditor/Commands.cs,
- trunk/src/MonoDevelop.XmlEditor/Makefile.am,
- trunk/src/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.addin.xml,
- trunk/src/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.mdp,
- trunk/src/MonoDevelop.XmlEditor/OpenXPathQueryPadCommand.cs,
- trunk/src/MonoDevelop.XmlEditor/XPathNodeMatch.cs,
- trunk/src/MonoDevelop.XmlEditor/XPathNodeTextMarker.cs,
- trunk/src/MonoDevelop.XmlEditor/XPathQueryPad.cs,
- trunk/src/MonoDevelop.XmlEditor/XPathQueryPad.png,
- trunk/src/MonoDevelop.XmlEditor/XPathQueryPadOptions.cs,
- trunk/src/MonoDevelop.XmlEditor/XPathQueryWidget.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlEditor.glade,
- trunk/src/MonoDevelop.XmlEditor/XmlEditorView.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlEditorViewContent.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlNamespace.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlSchemasPanelWidget.cs: Added
- XPath Query pad. Allows the user to run XPath queries on the
- active XML document and highlights the results.
-
-2006-09-19 17:48 mrward
-
- * trunk/src/MonoDevelop.XmlEditor/CreateSchemaCommand.cs,
- trunk/src/MonoDevelop.XmlEditor/FormatXmlCommand.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlEditorService.cs: The XML is
- checked to see if it is well formed before attempting to create a
- schema from it. Any errors are displayed in the output window and
- the task list.
-
-2006-09-19 16:54 mrward
-
- * trunk/src/MonoDevelop.XmlEditor/XmlParser.cs: Editing an XML file
- with a url dtd reference (e.g. a .glade file) whilst having no
- network connection would hang MonoDevelop. Fixed this by setting
- the XmlResolver to null when reading the xml into the
- XmlTextReader.
-
-2006-09-09 09:23 mrward
-
- * trunk/ChangeLog, trunk/configure.in,
- trunk/src/MonoDevelop.XmlEditor.Tests/AssemblyInfo.cs,
- trunk/src/MonoDevelop.XmlEditor/AssemblyInfo.cs,
- trunk/src/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.addin.xml:
- Updated version numbers for a snapshot release compatible with
- MonoDevelop 0.12.
-
-2006-08-22 12:53 mrward
-
- * trunk/src/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.addin.xml:
- Stetic files (.stetic) are now opened in the XML editor.
-
-2006-08-22 10:27 mrward
-
- * trunk/configure.in,
- trunk/src/MonoDevelop.XmlEditor.Tests/MonoDevelop.XmlEditor.Tests.mdp,
- trunk/src/MonoDevelop.XmlEditor.mds,
- trunk/src/MonoDevelop.XmlEditor/Makefile.am,
- trunk/src/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.mdp,
- trunk/src/MonoDevelop.XmlEditor/XmlDisplayBinding.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlFileExtensionCodon.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlFileExtensions.cs: XML Editor
- now compiled with gmcs. Added DisplayName to XmlDisplayBinding.
- XmlFileExtensionCodon now has a FileExtension property instead of
- an Extension property which clashed with the AbstractCodon base
- class.
-
-2006-05-02 12:10 mrward
-
- * trunk/src/MonoDevelop.XmlEditor.Tests/MonoDevelop.XmlEditor.Tests.mdp,
- trunk/src/MonoDevelop.XmlEditor.Tests/Schema/AllElementTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.mdp,
- trunk/src/MonoDevelop.XmlEditor/XmlSchemaCompletionData.cs: XML
- completion now working for complex types defined inside an xs:all
- element.
-
-2006-04-17 14:12 mrward
-
- * trunk/src/MonoDevelop.XmlEditor/XmlSchemaCompletionData.cs: An
- XML schema is now only compiled the first time it is used in the
- XML editor. This improves the time taken to display the XML
- Schema options dialog for the first time by a factor of 4.
-
-2006-04-17 11:44 mrward
-
- * trunk/TODO,
- trunk/src/MonoDevelop.XmlEditor.Tests/MonoDevelop.XmlEditor.Tests.mdp,
- trunk/src/MonoDevelop.XmlEditor.Tests/Parser/InsideAttributeValueTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlCompletionDataProvider.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlParser.cs: XML completion
- window no longer displayed when typing in space characters inside
- the attribute value.
-
-2006-04-17 11:29 mrward
-
- * trunk/src/MonoDevelop.XmlEditor.Tests/MonoDevelop.XmlEditor.Tests.mdp,
- trunk/src/MonoDevelop.XmlEditor.Tests/Parser/AttributeNameTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Schema/AllElementTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Schema/XsdSchemaTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.mds,
- trunk/src/MonoDevelop.XmlEditor/XmlSchemaCompletionData.cs: XML
- element completion now working for xs:all child elements.
-
-2006-04-15 18:21 mrward
-
- * trunk/ChangeLog: Updated changelog ready for source code snapshot
- release for MonoDevelop 0.10
-
-2006-04-12 18:34 mrward
-
- * trunk/src/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.addin.xml:
- Add-In configuration file changed to support MonoDevelop 0.10
-
-2006-03-19 13:25 mrward
-
- * trunk/TODO, trunk/src/MonoDevelop.XmlEditor/XmlEditorView.cs:
- Attribute value completion no longer triggered when pressing keys
- such as page up, page down and the cursor keys.
-
-2006-03-19 12:37 mrward
-
- * trunk/TODO, trunk/src/MonoDevelop.XmlEditor/XmlEditorView.cs:
- Comments no longer get autocompleted when typing in the greater
- than sign character.
-
-2006-03-19 12:28 mrward
-
- * trunk/src/MonoDevelop.XmlEditor.Tests/MonoDevelop.XmlEditor.Tests.mdp,
- trunk/src/MonoDevelop.XmlEditor.Tests/Schema/MissingSchemaElementTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlSchemaCompletionData.cs: Fixed
- null reference exception that occurred when generated the
- completion data if the schema referenced an element that was not
- defined in the schema.
-
-2006-03-19 12:19 mrward
-
- * trunk/TODO,
- trunk/src/MonoDevelop.XmlEditor/AssignStylesheetCommand.cs,
- trunk/src/MonoDevelop.XmlEditor/Commands.cs,
- trunk/src/MonoDevelop.XmlEditor/Makefile.am,
- trunk/src/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.addin.xml,
- trunk/src/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.mdp,
- trunk/src/MonoDevelop.XmlEditor/OpenStylesheetCommand.cs,
- trunk/src/MonoDevelop.XmlEditor/RunXslTransformCommand.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlEditorService.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlEditorViewContent.cs,
- trunk/src/MonoDevelop.XmlEditor/XslOutputViewContent.cs: Added
- support for running XSL transforms. Changing the schema
- associated with a file extension now updates any xml files that
- are currently open.
-
-2006-03-09 16:34 mrward
-
- * trunk/TODO,
- trunk/src/MonoDevelop.XmlEditor/ValidateXmlCommand.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlEditorView.cs: Can now indent
- multiple lines using the tab key.
-
-2006-03-09 14:54 mrward
-
- * trunk/TODO, trunk/src/MonoDevelop.XmlEditor/Makefile.am,
- trunk/src/MonoDevelop.XmlEditor/ValidateXmlCommand.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlEditorListWindow.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlEditorViewContent.cs,
- trunk/src/MonoDevelop.XmlEditor/schemas/MonoDevelopAddIn.xsd,
- trunk/src/MonoDevelop.XmlEditor/schemas/readme.txt: Validation of
- .xsd files is now done using the XmlSchema class which provides
- better error information. Added a schema for MonoDevelop add-in
- xml files.
-
-2006-03-08 16:55 mrward
-
- * trunk/TODO, trunk/src/MonoDevelop.XmlEditor/Makefile.am,
- trunk/src/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.mdp,
- trunk/src/MonoDevelop.XmlEditor/XmlCompletionListWindow.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlEditorListWindow.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlEditorViewContent.cs: The
- completion list now matches strings that contain punctuation
- characters, for those characters considered valid for xml element
- names, attribute values and namespaces.
-
-2006-03-08 15:38 mrward
-
- * trunk/src/MonoDevelop.XmlEditor/XmlEditorViewContent.cs: Xml
- editor now uses the same font as the source editor.
-
-2006-03-06 18:10 mrward
-
- * trunk/TODO, trunk/src/MonoDevelop.XmlEditor/Makefile.am,
- trunk/src/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.mdp,
- trunk/src/MonoDevelop.XmlEditor/SourceViewTextIterator.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlEditorView.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlEditorViewContent.cs,
- trunk/src/MonoDevelop.XmlEditor/postbuild.sh: Added support for
- search/replace and goto line.
-
-2006-03-03 15:29 mrward
-
- * trunk/src/Makefile.am,
- trunk/src/MonoDevelop.XmlEditor/Makefile.am: Xml Editor makefile
- no longer tries to build the code when running the uninstall
- target. Fixed incorrect src/Makefile that had been imported.
-
-2006-03-03 15:15 mrward
-
- * trunk/src/MonoDevelop.XmlEditor.Tests/bin: Removed test assembly
- binaries.
-
-2006-03-03 15:08 mrward
-
- * trunk, trunk/AUTHORS, trunk/COPYING, trunk/ChangeLog,
- trunk/INSTALL, trunk/Makefile.am, trunk/NEWS, trunk/README,
- trunk/TODO, trunk/autogen.sh, trunk/configure.in, trunk/src,
- trunk/src/Makefile.am, trunk/src/MonoDevelop.XmlEditor,
- trunk/src/MonoDevelop.XmlEditor.Tests,
- trunk/src/MonoDevelop.XmlEditor.Tests/AssemblyInfo.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/CompletionData,
- trunk/src/MonoDevelop.XmlEditor.Tests/CompletionData/XmlCompletionDataImageTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/CompletionData/XmlCompletionDataStringTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/MonoDevelop.XmlEditor.Tests.mdp,
- trunk/src/MonoDevelop.XmlEditor.Tests/Parser,
- trunk/src/MonoDevelop.XmlEditor.Tests/Parser/ActiveElementStartPathTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Parser/AttributeNameTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Parser/NamespaceDeclarationTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Parser/ParentElementPathTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Parser/QualifiedNameTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Paths,
- trunk/src/MonoDevelop.XmlEditor.Tests/Paths/NoElementPathTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Paths/SingleElementPathTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Paths/TwoElementPathTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Resources,
- trunk/src/MonoDevelop.XmlEditor.Tests/Resources/XMLSchema.xsd,
- trunk/src/MonoDevelop.XmlEditor.Tests/Resources/xhtml1-strict-modified.xsd,
- trunk/src/MonoDevelop.XmlEditor.Tests/Schema,
- trunk/src/MonoDevelop.XmlEditor.Tests/Schema.Includes,
- trunk/src/MonoDevelop.XmlEditor.Tests/Schema.Includes/AttributeGroupRefSchemaIncludeTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Schema.Includes/TwoElementSchemaIncludeTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Schema.Uri,
- trunk/src/MonoDevelop.XmlEditor.Tests/Schema.Uri/GetUriTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Schema/AbstractElementTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Schema/AttributeAnnotationTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Schema/AttributeGroupRefTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Schema/AttributeRefTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Schema/AttributeValueAnnotationTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Schema/ChildElementAttributesTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Schema/ChoiceTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Schema/ComplexContentExtensionTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Schema/DuplicateElementTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Schema/ElementAnnotationTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Schema/ElementRefAnnotationTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Schema/ElementWithAttributeSchemaTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Schema/EnumAttributeValueTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Schema/ExtensionElementTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Schema/GroupRefCompositorTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Schema/GroupRefTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Schema/NamespaceCompletionTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Schema/NestedAttributeGroupRefTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Schema/NestedChoiceTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Schema/NestedElementSchemaTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Schema/NestedSequenceTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Schema/ReferencedElementsTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Schema/RestrictionElementTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Schema/SchemaTestFixtureBase.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Schema/SequencedChoiceTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Schema/SimpleContentWithAttributeTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Schema/SingleElementSchemaTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Schema/TwoElementSchemaTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Schema/XhtmlStrictSchemaTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Schema/XsdSchemaTestFixture.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Utils,
- trunk/src/MonoDevelop.XmlEditor.Tests/Utils/ResourceManager.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/Utils/SchemaIncludeTestFixtureHelper.cs,
- trunk/src/MonoDevelop.XmlEditor.Tests/bin,
- trunk/src/MonoDevelop.XmlEditor.Tests/bin/Debug,
- trunk/src/MonoDevelop.XmlEditor.Tests/bin/Debug/MonoDevelop.Projects.Gui.dll,
- trunk/src/MonoDevelop.XmlEditor.Tests/bin/Debug/MonoDevelop.XmlEditor.Tests.dll,
- trunk/src/MonoDevelop.XmlEditor.Tests/bin/Debug/MonoDevelop.XmlEditor.Tests.dll.mdb,
- trunk/src/MonoDevelop.XmlEditor.Tests/bin/Debug/MonoDevelop.XmlEditor.dll,
- trunk/src/MonoDevelop.XmlEditor.Tests/bin/Debug/MonoDevelop.XmlEditor.dll.mdb,
- trunk/src/MonoDevelop.XmlEditor.mds,
- trunk/src/MonoDevelop.XmlEditor/AssemblyInfo.cs,
- trunk/src/MonoDevelop.XmlEditor/Commands.cs,
- trunk/src/MonoDevelop.XmlEditor/CreateSchemaCommand.cs,
- trunk/src/MonoDevelop.XmlEditor/EncodedStringWriter.cs,
- trunk/src/MonoDevelop.XmlEditor/FormatXmlCommand.cs,
- trunk/src/MonoDevelop.XmlEditor/Makefile.am,
- trunk/src/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.addin.xml,
- trunk/src/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.mdp,
- trunk/src/MonoDevelop.XmlEditor/QualifiedName.cs,
- trunk/src/MonoDevelop.XmlEditor/QualifiedNameCollection.cs,
- trunk/src/MonoDevelop.XmlEditor/SelectXmlSchemaDialog.cs,
- trunk/src/MonoDevelop.XmlEditor/ValidateXmlCommand.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlCompletionData.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlCompletionDataCollection.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlCompletionDataProvider.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlCompletionListWindow.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlDisplayBinding.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlEditor.glade,
- trunk/src/MonoDevelop.XmlEditor/XmlEditorAddInOptions.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlEditorCommandBase.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlEditorOptionsPanel.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlEditorOptionsPanelWidget.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlEditorService.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlEditorView.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlEditorViewContent.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlEditorWindow.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlElementPath.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlFileExtensionCodon.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlFileExtensions.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlParser.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlSchemaAssociation.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlSchemaCompletionData.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlSchemaCompletionDataCollection.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlSchemaManager.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlSchemasPanel.cs,
- trunk/src/MonoDevelop.XmlEditor/XmlSchemasPanelWidget.cs,
- trunk/src/MonoDevelop.XmlEditor/postbuild.sh,
- trunk/src/MonoDevelop.XmlEditor/schemas,
- trunk/src/MonoDevelop.XmlEditor/schemas/W3C-License.html,
- trunk/src/MonoDevelop.XmlEditor/schemas/XMLSchema.xsd,
- trunk/src/MonoDevelop.XmlEditor/schemas/appconfig.xsd,
- trunk/src/MonoDevelop.XmlEditor/schemas/manifest.xsd,
- trunk/src/MonoDevelop.XmlEditor/schemas/nant.xsd,
- trunk/src/MonoDevelop.XmlEditor/schemas/readme.txt,
- trunk/src/MonoDevelop.XmlEditor/schemas/xslt.xsd: Initial import.
-
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Makefile.am b/main/src/addins/MonoDevelop.XmlEditor/Makefile.am
deleted file mode 100644
index c9cc87438f..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/Makefile.am
+++ /dev/null
@@ -1 +0,0 @@
-include $(top_srcdir)/xbuild.include
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XDom.cs b/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XDom.cs
deleted file mode 100644
index 11516aa478..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XDom.cs
+++ /dev/null
@@ -1,636 +0,0 @@
-//
-// XDom.cs
-//
-// Author:
-// Michael Hutchinson <mhutchinson@novell.com>
-//
-// Copyright (C) 2008 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System;
-using System.Diagnostics;
-using System.Collections.Generic;
-using System.Text;
-using ICSharpCode.NRefactory.TypeSystem;
-using ICSharpCode.NRefactory;
-
-namespace MonoDevelop.Xml.StateEngine
-{
- public abstract class XObject
- {
- DomRegion region;
-
- protected XObject (TextLocation start)
- {
- region = new DomRegion (start, TextLocation.Empty);
- }
-
- protected XObject (DomRegion region)
- {
- this.region = region;
- }
-
- public XObject Parent { get; internal protected set; }
-
- public IEnumerable<XNode> Parents {
- get {
- XNode next = Parent as XNode;
- while (next != null) {
- yield return next;
- next = next.Parent as XNode;
- }
- }
- }
-
- public DomRegion Region {
- get { return region; }
- }
-
- public void End (TextLocation endLocation)
- {
- region = new DomRegion (region.Begin, endLocation);
- }
-
- public bool IsEnded {
- get { return region.End > region.Begin; }
- }
-
- public virtual bool IsComplete {
- get { return region.End > region.Begin; }
- }
-
- public virtual void BuildTreeString (StringBuilder builder, int indentLevel)
- {
- builder.Append (' ', indentLevel * 2);
- builder.AppendFormat (ToString ());
- builder.AppendLine ();
- }
-
- public override string ToString ()
- {
- return string.Format ("[{0} Location='{1}']", GetType (), Region);
- }
-
- //creates a parallel tree -- should NOT retain references into old tree
- public XObject ShallowCopy ()
- {
- XObject copy = NewInstance ();
- copy.ShallowCopyFrom (this);
- return copy;
- }
-
- protected abstract XObject NewInstance ();
-
- protected virtual void ShallowCopyFrom (XObject copyFrom)
- {
- region = copyFrom.region; //immutable value type
- }
-
- protected XObject () {}
-
- public virtual string FriendlyPathRepresentation {
- get { return GetType ().ToString (); }
- }
- }
-
- public abstract class XNode : XObject
- {
- protected XNode (TextLocation start) : base (start) {}
- protected XNode (DomRegion region) : base (region) {}
- protected XNode () {}
-
- public XNode NextSibling { get; internal protected set; }
- }
-
- public struct XName : IEquatable<XName>
- {
- readonly string prefix;
- readonly string name;
-
- public XName (string prefix, string name)
- {
- this.prefix = prefix;
- this.name = name;
- }
-
- public XName (string name)
- {
- prefix = null;
- this.name = name;
- }
-
- public string Prefix { get { return prefix; } }
- public string Name { get { return name; } }
- public string FullName { get { return prefix == null? name : prefix + ':' + name; } }
-
- public bool IsValid { get { return !string.IsNullOrEmpty (name); } }
- public bool HasPrefix { get { return !string.IsNullOrEmpty (prefix); } }
-
- #region Equality
-
- public static bool operator == (XName x, XName y)
- {
- return x.Equals (y);
- }
-
- public static bool operator != (XName x, XName y)
- {
- return !x.Equals (y);
- }
-
- public bool Equals (XName other)
- {
- return prefix == other.prefix && name == other.name;
- }
-
- public override bool Equals (object obj)
- {
- if (!(obj is XName))
- return false;
- return Equals ((XName) obj);
- }
-
- public override int GetHashCode ()
- {
- int hash = 0;
- if (prefix != null) hash += prefix.GetHashCode ();
- if (name != null) hash += name.GetHashCode ();
- return hash;
- }
-
- #endregion
-
- public static bool Equals (XName a, XName b, bool ignoreCase)
- {
- StringComparison comp = ignoreCase? StringComparison.OrdinalIgnoreCase : StringComparison.Ordinal;
- return string.Equals (a.prefix, b.prefix, comp) && string.Equals (a.name, b.name, comp);
- }
- }
-
- public abstract class XContainer : XNode
- {
- protected XContainer (TextLocation start) : base (start) { }
-
- XNode firstNode;
- XNode lastChild;
- public XNode FirstChild { get { return firstNode; } }
- public XNode LastChild { get { return lastChild; } }
-
- public IEnumerable<XNode> Nodes {
- get {
- XNode next = firstNode;
- while (next != null) {
- yield return next;
- next = next.NextSibling;
- }
- }
- }
-
- public IEnumerable<XNode> AllDescendentNodes {
- get {
- foreach (XNode n in Nodes) {
- yield return n;
- XContainer c = n as XContainer;
- if (c != null)
- foreach (XNode n2 in c.AllDescendentNodes)
- yield return n2;
- }
- }
- }
-
- public virtual void AddChildNode (XNode newChild)
- {
- newChild.Parent = this;
- if (lastChild != null)
- lastChild.NextSibling = newChild;
- if (firstNode == null)
- firstNode = newChild;
- lastChild = newChild;
- }
-
- protected XContainer () {}
-
- public override void BuildTreeString (StringBuilder builder, int indentLevel)
- {
- base.BuildTreeString (builder, indentLevel);
- foreach (XNode child in Nodes)
- child.BuildTreeString (builder, indentLevel + 1);
- }
- }
-
- public class XElement : XContainer, IAttributedXObject
- {
- XNode closingTag;
- readonly XAttributeCollection attributes;
-
- public XElement (TextLocation start) : base (start)
- {
- attributes = new XAttributeCollection (this);
- }
-
- public XElement (TextLocation start, XName name) : this (start)
- {
- this.Name = name;
- }
-
- public XNode ClosingTag { get { return closingTag; } }
- public bool IsClosed { get { return closingTag != null; } }
- public bool IsSelfClosing { get { return closingTag == this; } }
-
- public void Close (XNode closingTag)
- {
- this.closingTag = closingTag;
- if (closingTag is XClosingTag)
- closingTag.Parent = this;
- }
-
- public XName Name { get; set; }
-
- public override bool IsComplete { get { return base.IsComplete && IsNamed; } }
- public bool IsNamed { get { return Name.IsValid; } }
-
- public XAttributeCollection Attributes {
- get { return attributes; }
- }
-
- protected XElement ()
- {
- attributes = new XAttributeCollection (this);
- }
-
- protected override XObject NewInstance () { return new XElement (); }
-
- protected override void ShallowCopyFrom (XObject copyFrom)
- {
- base.ShallowCopyFrom (copyFrom);
- XElement copyFromEl = (XElement) copyFrom;
- Name = copyFromEl.Name; //XName is immutable value type
- //include attributes
- foreach (var a in copyFromEl.Attributes)
- Attributes.AddAttribute ((XAttribute) a.ShallowCopy ());
- }
-
- public override string ToString ()
- {
- return string.Format ("[XElement Name='{0}' Location='{1}'", Name.FullName, Region);
- }
-
- public override void BuildTreeString (StringBuilder builder, int indentLevel)
- {
- builder.Append (' ', indentLevel * 2);
- builder.AppendFormat ("[XElement Name='{0}' Location='{1}' Children=", Name.FullName, Region);
- builder.AppendLine ();
-
- foreach (XNode child in Nodes)
- child.BuildTreeString (builder, indentLevel + 1);
-
- builder.Append (' ', indentLevel * 2);
- builder.Append ("Attributes=");
- builder.AppendLine ();
-
- foreach (XAttribute att in Attributes)
- att.BuildTreeString (builder, indentLevel + 1);
-
- if (closingTag is XClosingTag) {
- builder.AppendLine ("ClosingTag=");
- closingTag.BuildTreeString (builder, indentLevel + 1);
- } else if (closingTag == null)
- builder.AppendLine ("ClosingTag=(null)");
- else
- builder.AppendLine ("ClosingTag=(Self)");
-
- builder.Append (' ', indentLevel * 2);
- builder.AppendLine ("]");
- }
-
- public override string FriendlyPathRepresentation {
- get { return Name.FullName; }
- }
-
- public IEnumerable<XElement> Elements {
- get {
- XElement el;
- foreach (XNode node in Nodes) {
- el = node as XElement;
- if (el != null)
- yield return el;
- }
- }
- }
-
- public IEnumerable<XElement> AllDescendentElements {
- get {
- foreach (XElement el in Elements) {
- yield return el;
- foreach (XElement el2 in el.AllDescendentElements)
- yield return el2;
- }
- }
- }
-
- }
-
- public class XAttribute : XObject, INamedXObject
- {
-
- public XAttribute (TextLocation start, XName name, string value) : base (start)
- {
- this.Name = name;
- this.Value = value;
- }
-
- public XAttribute (TextLocation start) : base (start)
- {
- }
-
- public XName Name { get; set; }
-
- public override bool IsComplete { get { return base.IsComplete && IsNamed; } }
- public bool IsNamed { get { return Name.IsValid; } }
-
- public string Value { get; set; }
- public XAttribute NextSibling { get; internal protected set; }
-
- protected XAttribute () {}
- protected override XObject NewInstance () { return new XAttribute (); }
-
- protected override void ShallowCopyFrom (XObject copyFrom)
- {
- base.ShallowCopyFrom (copyFrom);
- XAttribute copyFromAtt = (XAttribute) copyFrom;
- //immutable types
- Name = copyFromAtt.Name;
- Value = copyFromAtt.Value;
- }
-
- public override string ToString ()
- {
- return string.Format (
- "[XAttribute Name='{0}' Location='{1}' Value='{2}']", Name.FullName, Region, Value);
- }
-
- public override string FriendlyPathRepresentation {
- get { return "@" + Name.FullName; }
- }
-
-
- }
-
- public class XAttributeCollection : IEnumerable<XAttribute>
- {
- readonly XObject parent;
- XAttribute firstChild;
- XAttribute lastChild;
-
- public XAttributeCollection (XObject parent)
- {
- this.parent = parent;
- }
-
- public Dictionary<XName, XAttribute> ToDictionary ()
- {
- Dictionary<XName, XAttribute> dict = new Dictionary<XName,XAttribute> ();
- XAttribute current = firstChild;
- while (current != null) {
- dict.Add (current.Name, current);
- current = current.NextSibling;
- }
- return dict;
- }
-
- public XAttribute this [XName name] {
- get {
- XAttribute current = firstChild;
- while (current != null) {
- if (current.Name == name)
- return current;
- current = current.NextSibling;
- }
- return null;
- }
- }
-
- public XAttribute this [int index] {
- get {
- XAttribute current = firstChild;
- while (current != null) {
- if (index == 0)
- return current;
- index--;
- current = current.NextSibling;
- }
- throw new IndexOutOfRangeException ();
- }
- }
-
- public XAttribute Get (XName name, bool ignoreCase)
- {
- XAttribute current = firstChild;
- while (current != null) {
- if (XName.Equals (current.Name, name, ignoreCase))
- return current;
- current = current.NextSibling;
- }
- return null;
- }
-
- public string GetValue (XName name, bool ignoreCase)
- {
- var att = Get (name, ignoreCase);
- return att != null? att.Value : null;
- }
-
- public void AddAttribute (XAttribute newChild)
- {
- newChild.Parent = parent;
- if (lastChild != null) {
- lastChild.NextSibling = newChild;
- }
- if (firstChild == null)
- firstChild = newChild;
- lastChild = newChild;
- }
-
- public IEnumerator<XAttribute> GetEnumerator ()
- {
- XAttribute current = firstChild;
- while (current != null) {
- yield return current;
- current = current.NextSibling;
- }
- }
-
- System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator ()
- {
- IEnumerator<XAttribute> en = GetEnumerator ();
- return en;
- }
- }
-
- public class XCData : XNode
- {
- public XCData (TextLocation start) : base (start) {}
- public XCData (DomRegion region) : base (region) {}
-
- protected XCData () {}
- protected override XObject NewInstance () { return new XCData (); }
-
- public override string FriendlyPathRepresentation {
- get { return "<![CDATA[ ]]>"; }
- }
-
- }
-
- public class XComment : XNode
- {
- public XComment (TextLocation start) : base (start) {}
- public XComment (DomRegion region) : base (region) {}
-
- protected XComment () {}
- protected override XObject NewInstance () { return new XComment (); }
-
- public override string FriendlyPathRepresentation {
- get { return "<!-- -->"; }
- }
- }
-
- public class XProcessingInstruction : XNode
- {
- public XProcessingInstruction (TextLocation start) : base (start) {}
- public XProcessingInstruction (DomRegion region) : base (region) {}
-
- protected XProcessingInstruction () {}
- protected override XObject NewInstance () { return new XProcessingInstruction (); }
-
- public override string FriendlyPathRepresentation {
- get { return "<? ?>"; }
- }
- }
-
- public class XDocType : XNode, INamedXObject
- {
- public XDocType (TextLocation start) : base (start) {}
- public XDocType (DomRegion region) : base (region) {}
-
- protected XDocType () {}
- protected override XObject NewInstance () { return new XDocType (); }
-
- public XName RootElement { get; set; }
- public string PublicFpi { get; set; }
- public bool IsPublic { get { return PublicFpi != null; } }
- public DomRegion InternalDeclarationRegion { get; set; }
- public string Uri { get; set; }
-
- public override string FriendlyPathRepresentation {
- get { return "<!DOCTYPE>"; }
- }
-
- protected override void ShallowCopyFrom (XObject copyFrom)
- {
- base.ShallowCopyFrom (copyFrom);
- XDocType copyFromDT = (XDocType) copyFrom;
- //immutable types
- RootElement = copyFromDT.RootElement;
- PublicFpi = copyFromDT.PublicFpi;
- InternalDeclarationRegion = copyFromDT.InternalDeclarationRegion;
- Uri = copyFromDT.Uri;
- }
-
- XName INamedXObject.Name {
- get { return RootElement; }
- set { RootElement = value; }
- }
-
- bool INamedXObject.IsNamed {
- get { return RootElement.IsValid; }
- }
-
- public override string ToString ()
- {
- return string.Format("[DocType: RootElement='{0}', PublicFpi='{1}', InternalDeclarationRegion='{2}', Uri='{3}']",
- RootElement.FullName, PublicFpi, InternalDeclarationRegion, Uri);
- }
- }
-
- public class XClosingTag : XNode, INamedXObject
- {
-
- public XClosingTag (TextLocation start) : base (start) {}
-
- public XClosingTag (XName name, TextLocation start) : base (start)
- {
- this.Name = name;
- }
-
- public XName Name { get; set; }
-
- public override bool IsComplete { get { return base.IsComplete && IsNamed; } }
- public bool IsNamed { get { return Name.IsValid; } }
-
- protected XClosingTag () {}
- protected override XObject NewInstance () { return new XClosingTag (); }
-
- protected override void ShallowCopyFrom (XObject copyFrom)
- {
- base.ShallowCopyFrom (copyFrom);
- XClosingTag copyFromAtt = (XClosingTag) copyFrom;
- //immutable types
- Name = copyFromAtt.Name;
- }
-
- public override string FriendlyPathRepresentation {
- get { return "/" + Name.FullName; }
- }
-
- }
-
- public class XDocument : XContainer
- {
- public XElement RootElement { get; private set; }
-
- public XDocument () : base (new TextLocation (1, 1)) {}
- protected override XObject NewInstance () { return new XDocument (); }
-
- public override string FriendlyPathRepresentation {
- get { throw new InvalidOperationException ("Should not display document in path bar."); }
- }
-
- public override void AddChildNode (XNode newChild)
- {
- if (RootElement == null && newChild is XElement)
- RootElement = (XElement) newChild;
- base.AddChildNode (newChild);
- }
-
- }
-
- public interface INamedXObject
- {
- XName Name { get; set; }
- bool IsNamed { get; }
- }
-
- public interface IAttributedXObject : INamedXObject
- {
- XAttributeCollection Attributes { get; }
- }
-}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XState.cs b/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XState.cs
deleted file mode 100644
index e0f25f4a81..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XState.cs
+++ /dev/null
@@ -1,84 +0,0 @@
-//
-// XState.cs
-//
-// Author:
-// Michael Hutchinson <mhutchinson@novell.com>
-//
-// Copyright (C) 2008 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System;
-
-namespace MonoDevelop.Xml.StateEngine
-{
-
-
- public enum XState
- {
- /// <summary>Not within a tag definition or special section</summary>
- Free,
- Malformed,
-
- //--------------------parts of tag and attribute definitions---------
-
- /// <summary>A tag, the type of which has not been determined.</summary>
- OpeningBracket,
- /// <summary>An opening tag's declaration.</summary>
- Tag,
- /// <summary>A closing tag's declaration.</summary>
- ClosingTag,
- /// <summary>A self-closing tag , after the forward slash.</summary>
- SelfClosing,
- /// <summary>A tag's name.</summary>
- TagName,
- /// <summary>A closing tag's name.</summary>
- ClosingTagName,
- /// <summary>An attribute name.</summary>
- AttributeName,
- /// <summary>An attribute seeking an equals sign.</summary>
- AttributeNamed,
- /// <summary>A named attribute seeking a value.</summary>
- AttributeValue,
- /// <summary>A single-quoted attribute value.</summary>
- AttributeQuotes,
- /// <summary>An unquoted attribute value</summary>
- AttributeUnquoted,
- /// <summary>A double-quoted attribute value.</summary>
- AttributeDoubleQuotes,
-
- //-----------------special XML sections--------------------------------
-
- /// <summary>An XML/HTML comment.</summary>
- Comment,
- CommentOpening,
- CommentClosing,
- /// <summary>A CDATA section.</summary>
- CData,
- CDataOpening,
- CDataClosing,
- /// <summary>An XML/HTML character entity.</summary>
- Entity,
- /// <summary>An XML/HTML processing instruction.</summary>
- ProcessingInstruction,
- ProcessingInstructionClosing,
- }
-}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XmlParser.cs b/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XmlParser.cs
deleted file mode 100644
index d920999f6d..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XmlParser.cs
+++ /dev/null
@@ -1,299 +0,0 @@
-//
-// XmlParser.cs
-//
-// Author:
-// Michael Hutchinson <mhutchinson@novell.com>
-//
-// Copyright (C) 2008 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System;
-using System.Diagnostics;
-
-namespace MonoDevelop.Xml.StateEngine
-{
-
-
- public class XmlParser : Parser2
- {
- public XmlParser () : base (false) {}
- public XmlParser (bool buildTree) : base (buildTree) {}
-
- protected XState CurrentXState {
- get {
- Debug.Assert (CurrentState < StateOffset && CurrentState > -1);
- return (XState) CurrentState;
- }
- }
-
- protected virtual int StateOffset {
- get { return (int) XState.ProcessingInstructionClosing + 1; }
- }
-
- protected override int Dispatch (char c)
- {
- switch (CurrentXState) {
- case XState.Free:
- switch (c) {
- case '<': return (int)XState.OpeningBracket;
-// case '&': return (int) XState.Entity;
- default: return (int)XState.Free;
- }
-
- case XState.Malformed:
- if (StateLength == 0) {
- if (BuildTree)
- ConnectAll ();
- EndAll (true);
- }
- switch (c) {
- case '>': return (int)XState.Free;
- case '<': return (int)XState.OpeningBracket;
- default: return (int)XState.Malformed;
- }
-
- case XState.OpeningBracket:
- if (StateLength == 0) {
- switch (c) {
- case '!': return (int)XState.OpeningBracket;
- case '?':
- Nodes.Push (new XProcessingInstruction (this.Position - 2));
- return (int)XState.ProcessingInstruction;
-
- case '/':
- Nodes.Push (new XClosingTag (this.Position - 2));
- return (int)XState.ClosingTagName;
-
- if (char.IsLetter (c) || c == '_') {
- Nodes.Push (new XElement (this.Position - 2));
- KeywordBuilder.Append (c);
- return (int) XState.TagName;
- }
- }
-
- } else if (StateLength == 1) {
- switch (c) {
- case '-':
- return (int)XState.CommentOpening;
- case '[':
- return (int)XState.CDataOpening;
- }
- }
- LogError ("Malformed tag start.");
- if (c == '>') return (int)XState.Free;
- else if (c == '<') return (int)XState.OpeningBracket;
- else return (int)XState.Malformed;
-
- case XState.TagName:
-return (int)XState.TagName;
-/*
- if (char.IsLetterOrDigit (c) || c == '_') {
- KeywordBuilder.Append (c);
- return (int)XState.TagName;
- }
-
- if (c == ':') {
- XElement el = Nodes.Peek () as INamedXObject;
- if (namedObject.Name.Name != null || KeywordBuilder.Length == 0) {
- LogError ("Unexpected ':' in name.");
- return GetStateForCurrentObject ();
- } else {
- namedObject.Name = new XName (context.KeywordBuilder.ToString ());
- context.KeywordBuilder.Length = 0;
- }
- }
-
- else if (char.IsWhiteSpace (c)) return (int)XState.Tag;
- else if (c == '>') return (int)XState.Free;
- else if (c == '/') return (int)XState.SelfClosing;
- else break;
-
- case XState.Tag:
- if (char.IsWhiteSpace (c)) return (int)XState.Tag;
- else if (char.IsLetter (c)) return PushCurrent (XState.AttributeName);
- else if (c == '>') return (int)XState.Free;
- else if (c == '/') return (int)XState.SelfClosing;
- else break;
-
- case XState.SelfClosing:
- if (c == '>') return (int)XState.Free;
- else break;
-
- case XState.AttributeName:
- if (char.IsWhiteSpace (c))
- return (int)XState.AttributeNamed;
- else if (char.IsLetterOrDigit (c) | c == ':')
- return (int)XState.AttributeName;
- else if (c == '=')
- return (int)XState.AttributeValue;
- else return (int)XState.Malformed;
-
- case XState.AttributeNamed:
- if (c == '=') return (int)XState.AttributeValue;
- else if (char.IsWhiteSpace (c)) return (int)XState.AttributeNamed;
- else return (int)XState.Malformed;
-
- case XState.AttributeValue:
- if (c == '\'') return (int)XState.AttributeQuotes;
- else if (c == '"') return (int)XState.AttributeDoubleQuotes;
- else if (c == '<') break;
- else if (char.IsWhiteSpace (c)) return (int)XState.AttributeValue;
- else if (char.IsLetterOrDigit (c)) {
- LogWarning ("Unquoted attribute value.");
- return (int)XState.AttributeUnquoted;
- } else {
- LogWarning ("Incomplete attribute.");
- return PopState ();
- }
-
- case XState.AttributeQuotes:
- switch (c) {
- case '\'': return PopState ();
- case '<': return UnexpectedOpeningTag;
- case '&': return PushCurrent (XState.Entity);
- default: return (int)XState.AttributeQuotes;
- }
-
- case XState.AttributeDoubleQuotes:
- switch (c) {
- case '"': return PopState ();
- case '<': return UnexpectedOpeningTag;
- case '&': return PushCurrent (XState.Entity);
- default: return (int)XState.AttributeDoubleQuotes;
- }
-
- case XState.AttributeUnquoted:
- switch (c) {
- case '<': return UnexpectedOpeningTag;
- case '&': return PushCurrent (XState.Entity);
- case '.': case '_': case ':': case ';': return CurrentState;
- case '>': return (int)XState.Free;
- }
- if (char.IsLetterOrDigit (c)) return CurrentState;
- else if (char.IsWhiteSpace (c)) return PopState ();
- break;
-*/
- case XState.CData:
- return (int)((c == ']')? XState.CDataClosing: XState.CData);
-
- case XState.CDataOpening:
- if (StateLength < "CDATA[".Length) {
- if ("CDATA["[StateLength] == c) return (int)XState.CDataOpening;
- else break;
- } else {
- Nodes.Push (new XCData (Position - "<![CDATA[".Length));
- return (int)XState.CData;
- }
-
- case XState.CDataClosing:
- if ("]>"[StateLength] == c) {
- if (StateLength == 1) {
- XCData n = (XCData) Nodes.Pop ();
- n.End (Position);
- ((XContainer)Nodes.Peek ()).AddChildNode (n);
- return (int) XState.Free;
- } else {
- return (int)XState.CDataClosing;
- }
- } else return (int)XState.CData;
-/*
- case XState.Entity:
- if ((StateLength == 0 && c == '#') || char.IsLetterOrDigit (c))
- return (int)XState.Entity;
- else if (c == ';') return PopState ();
- else LogWarning ("Malformed entity");
- break;
-*/
- case XState.ProcessingInstruction:
- switch (c) {
- case '<': break;
- case '?': return (int)XState.ProcessingInstructionClosing;
- default: return (int)XState.ProcessingInstruction;
- }
- break;
-
- case XState.ProcessingInstructionClosing:
- switch (c) {
- case '<': break;
- case '?': return (int)XState.ProcessingInstructionClosing;
- case '>': {
- XProcessingInstruction n = (XProcessingInstruction) Nodes.Pop ();
- n.End (Position);
- if (BuildTree)
- ((XContainer)Nodes.Peek ()).AddChildNode (n);
- return (int) XState.Free; }
- default: return (int)XState.ProcessingInstruction;
- }
- break;
-
- case XState.CommentOpening:
- if (c == '-') {
- Nodes.Push (new XComment (Position - "<!--".Length));
- return (int)XState.Comment;
- }
- else break;
-
- case XState.Comment:
- if (c == '-') return (int)XState.CommentClosing;
- else return (int)XState.Comment;
-
- case XState.CommentClosing:
- if (StateLength == 0) {
- if (c == '-') return (int)XState.CommentClosing;
- else return (int)XState.Comment;
- } else if (StateLength > 0) {
- if (c == '>') {
- XComment n = (XComment) Nodes.Pop ();
- n.End (Position);
- if (BuildTree)
- ((XContainer)Nodes.Peek ()).AddChildNode (n);
- }
- else LogWarning ("The string '--' should not appear in comments.");
- if (c == '-') return (int)XState.CommentClosing;
- else return (int)XState.Comment;
- }
- else break;
- }
-
- if (c == '<')
- return UnexpectedOpeningTag;
- return (int)XState.Malformed;
- }
-
- protected override object CreateNew ()
- {
- return new XmlParser ();
- }
-
- protected virtual int UnexpectedOpeningTag {
- get {
- LogError ("Unexpected opening tag");
- return (int)XState.OpeningBracket;
- }
- }
-
- protected override XDocument CreateDocument ()
- {
- return new XDocument ();
- }
- }
-}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.XPath/XPathHistoryList.cs b/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.XPath/XPathHistoryList.cs
deleted file mode 100644
index 7cef27431f..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.XPath/XPathHistoryList.cs
+++ /dev/null
@@ -1,96 +0,0 @@
-//
-// MonoDevelop XML Editor
-//
-// Copyright (C) 2006-2007 Matthew Ward
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-/*
-using MonoDevelop.Core;
-using System;
-using System.Collections.Generic;
-using System.Xml;
-
-namespace MonoDevelop.XmlEditor
-{
- public class XPathHistoryList : ICustomXmlSerializer
- {
- const string xpathHistoryListElementName = "XPathHistoryList";
- const string xpathElementName = "XPath";
-
- List<string> xpaths = new List<string>();
-
- public XPathHistoryList()
- {
- }
-
- /// <summary>
- /// Adds a single xpath to the list.
- /// </summary>
- public void Add(string xpath)
- {
- xpaths.Add(xpath);
- }
-
- /// <summary>
- /// Gets the xpath strings.
- /// </summary>
- public string[] GetXPaths()
- {
- return xpaths.ToArray();
- }
-
- /// <summary>
- /// Creates an XPathHistoryList from the saved xml.
- /// </summary>
- public ICustomXmlSerializer ReadFrom(XmlReader reader)
- {
- XPathHistoryList list = new XPathHistoryList();
- bool finished = false;
- while (reader.Read() && !finished) {
- switch (reader.NodeType) {
- case XmlNodeType.Element:
- if (reader.Name == xpathElementName) {
- list.Add(reader.ReadElementString());
- }
- break;
- case XmlNodeType.EndElement:
- if (reader.Name != xpathElementName) {
- finished = true;
- }
- break;
- }
- }
- return list;
- }
-
- /// <summary>
- /// Creates an xml element from this XPathHistoryList.
- /// </summary>
- public void WriteTo(XmlWriter writer)
- {
- writer.WriteStartElement(xpathHistoryListElementName);
- foreach (string xpath in xpaths) {
- writer.WriteElementString(xpathElementName, xpath);
- }
- writer.WriteEndElement();
- }
- }
-}
- */ \ No newline at end of file
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.XPath/XPathNamespaceList.cs b/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.XPath/XPathNamespaceList.cs
deleted file mode 100644
index 5f9108c412..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.XPath/XPathNamespaceList.cs
+++ /dev/null
@@ -1,96 +0,0 @@
-//
-// MonoDevelop XML Editor
-//
-// Copyright (C) 2006-2007 Matthew Ward
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-using MonoDevelop.Core;
-using System;
-using System.Collections.Generic;
-using System.Xml;
-
-namespace MonoDevelop.XmlEditor
-{
- public class XPathNamespaceList : ICustomXmlSerializer
- {
- const string xpathNamespaceListElementName = "XPathNamespaceList";
- const string xpathNamespaceElementName = "Namespace";
-
- List<XmlNamespace> namespaces = new List<XmlNamespace>();
-
- public XPathNamespaceList()
- {
- }
-
- /// <summary>
- /// Adds a single namespace to the list.
- /// </summary>
- public void Add(string prefix, string uri)
- {
- namespaces.Add(new XmlNamespace(prefix, uri));
- }
-
- /// <summary>
- /// Gets the namespaces.
- /// </summary>
- public XmlNamespace[] GetNamespaces()
- {
- return namespaces.ToArray();
- }
-
- /// <summary>
- /// Creates an XPathNamespaceList from the saved xml.
- /// </summary>
- public ICustomXmlSerializer ReadFrom(XmlReader reader)
- {
- XPathNamespaceList list = new XPathNamespaceList();
- bool finished = false;
- while (reader.Read() && !finished) {
- switch (reader.NodeType) {
- case XmlNodeType.Element:
- if (reader.Name == xpathNamespaceElementName) {
- XmlNamespace ns = XmlNamespace.FromString(reader.ReadElementString());
- list.Add(ns.Prefix, ns.Uri);
- }
- break;
- case XmlNodeType.EndElement:
- if (reader.Name != xpathNamespaceElementName) {
- finished = true;
- }
- break;
- }
- }
- return list;
- }
-
- /// <summary>
- /// Creates an xml element from an XPathNamespaceList.
- /// </summary>
- public void WriteTo(XmlWriter writer)
- {
- writer.WriteStartElement(xpathNamespaceListElementName);
- foreach (XmlNamespace ns in namespaces) {
- writer.WriteElementString(xpathNamespaceElementName, ns.ToString());
- }
- writer.WriteEndElement();
- }
- }
-}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.XPath/XPathNodeMatch.cs b/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.XPath/XPathNodeMatch.cs
deleted file mode 100644
index 37698f446a..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.XPath/XPathNodeMatch.cs
+++ /dev/null
@@ -1,184 +0,0 @@
-//
-// MonoDevelop XML Editor
-//
-// Copyright (C) 2006 Matthew Ward
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-using System;
-using System.Xml;
-using System.Xml.XPath;
-
-namespace MonoDevelop.XmlEditor
-{
- /// <summary>
- /// Stores an XmlNode and its associated line number and position after an
- /// XPath query has been evaluated.
- /// </summary>
- public class XPathNodeMatch : IXmlLineInfo
- {
- int? lineNumber;
- int linePosition;
- string value;
- string displayValue;
- XPathNodeType nodeType;
-
- /// <summary>
- /// Creates an XPathNodeMatch from the navigator which should be position on the
- /// node.
- /// </summary>
- /// <remarks>
- /// We deliberately use the OuterXml when we find a Namespace since the
- /// navigator location returned starts from the xmlns attribute.
- /// </remarks>
- public XPathNodeMatch(XPathNavigator currentNavigator)
- {
- SetLineNumbers(currentNavigator as IXmlLineInfo);
- nodeType = currentNavigator.NodeType;
- switch (nodeType) {
- case XPathNodeType.Text:
- SetTextValue(currentNavigator);
- break;
- case XPathNodeType.Comment:
- SetCommentValue(currentNavigator);
- break;
- case XPathNodeType.Namespace:
- SetNamespaceValue(currentNavigator);
- break;
- case XPathNodeType.Element:
- SetElementValue(currentNavigator);
- break;
- case XPathNodeType.ProcessingInstruction:
- SetProcessingInstructionValue(currentNavigator);
- break;
- case XPathNodeType.Attribute:
- SetAttributeValue(currentNavigator);
- break;
- default:
- value = currentNavigator.LocalName;
- displayValue = value;
- break;
- }
- }
-
- /// <summary>
- /// Line numbers are zero based.
- /// </summary>
- public int LineNumber {
- get {
- return lineNumber.GetValueOrDefault(0);
- }
- }
-
- /// <summary>
- /// Line positions are zero based.
- /// </summary>
- public int LinePosition {
- get {
- return linePosition;
- }
- }
-
- public bool HasLineInfo()
- {
- return lineNumber.HasValue;
- }
-
- /// <summary>
- /// Gets the text value of the node.
- /// </summary>
- public string Value {
- get {
- return value;
- }
- }
-
- /// <summary>
- /// Gets the node display value. This includes the angle brackets if it is
- /// an element, for example.
- /// </summary>
- public string DisplayValue {
- get {
- return displayValue;
- }
- }
-
- public XPathNodeType NodeType {
- get {
- return nodeType;
- }
- }
-
- void SetElementValue(XPathNavigator navigator)
- {
- value = navigator.Name;
- if (navigator.IsEmptyElement) {
- displayValue = String.Concat("<", value, "/>");
- } else {
- displayValue = String.Concat("<", value, ">");
- }
- }
-
- void SetTextValue(XPathNavigator navigator)
- {
- value = navigator.Value;
- displayValue = value;
- }
-
- void SetCommentValue(XPathNavigator navigator)
- {
- value = navigator.Value;
- displayValue = navigator.OuterXml;
- }
-
- void SetNamespaceValue(XPathNavigator navigator)
- {
- value = navigator.OuterXml;
- displayValue = value;
- }
-
- void SetProcessingInstructionValue(XPathNavigator navigator)
- {
- value = navigator.Name;
- displayValue = navigator.OuterXml;
- }
-
- void SetAttributeValue(XPathNavigator navigator)
- {
- value = navigator.Name;
- displayValue = String.Concat("@", value);
- }
-
- /// <summary>
- /// Takes one of the xml line number so the numbers are now zero
- /// based instead of one based.
- /// </summary>
- /// <remarks>A namespace query (e.g. //namespace::*) will return
- /// a line info of -1, -1 for the xml namespace. Which looks like
- /// a bug in the XPathDocument class.</remarks>
- void SetLineNumbers(IXmlLineInfo lineInfo)
- {
- if (lineInfo.HasLineInfo() && lineInfo.LineNumber > 0) {
- lineNumber = lineInfo.LineNumber - 1;
- linePosition = lineInfo.LinePosition - 1;
- }
- }
- }
-}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.XPath/XPathNodeTextMarker.cs b/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.XPath/XPathNodeTextMarker.cs
deleted file mode 100644
index d9e14a521a..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.XPath/XPathNodeTextMarker.cs
+++ /dev/null
@@ -1,82 +0,0 @@
-//
-// MonoDevelop XML Editor
-//
-// Copyright (C) 2006 Matthew Ward
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-/*
-using Gtk;
-using GtkSourceView;
-using System;
-
-namespace MonoDevelop.XmlEditor
-{
- /// <summary>
- /// A text marker for an XPath query match.
- /// </summary>
- public class XPathNodeTextMarker
- {
- SourceBuffer buffer;
- TextTag xpathMatchTextTag;
-
- public XPathNodeTextMarker(SourceBuffer buffer)
- {
- this.buffer = buffer;
-
- xpathMatchTextTag = new TextTag("XPathMatch");
- xpathMatchTextTag.Background = "lightgrey";
- buffer.TagTable.Add(xpathMatchTextTag);
- }
-
- /// <summary>
- /// Adds markers for each XPathNodeMatch.
- /// </summary>
- public void AddMarkers(XPathNodeMatch[] nodes)
- {
- foreach (XPathNodeMatch node in nodes) {
- AddMarker(node);
- }
- }
-
- /// <summary>
- /// Adds a single marker for the XPathNodeMatch.
- /// </summary>
- public void AddMarker(XPathNodeMatch node)
- {
- if (node.HasLineInfo() && node.Value.Length > 0) {
- TextIter lineIter = buffer.GetIterAtLine(node.LineNumber);
- int offset = lineIter.Offset + node.LinePosition;
- TextIter startIter = buffer.GetIterAtOffset(offset);
- offset += node.Value.Length;
- TextIter endIter = buffer.GetIterAtOffset(offset);
- buffer.ApplyTag(xpathMatchTextTag, startIter, endIter);
- }
- }
-
- /// <summary>
- /// Removes all the XPathNodeMarkers.
- /// </summary>
- public void RemoveMarkers()
- {
- buffer.RemoveTag(xpathMatchTextTag, buffer.StartIter, buffer.EndIter);
- }
- }
-}
- */ \ No newline at end of file
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.XPath/XPathQueryPad.cs b/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.XPath/XPathQueryPad.cs
deleted file mode 100644
index 81881a70ab..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.XPath/XPathQueryPad.cs
+++ /dev/null
@@ -1,131 +0,0 @@
-//
-// MonoDevelop XML Editor
-//
-// Copyright (C) 2006-2007 Matthew Ward
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-/*
-using Gtk;
-using MonoDevelop.Core;
-using MonoDevelop.Ide.Gui;
-using System;
-
-namespace MonoDevelop.XmlEditor
-{
- public class XPathQueryPad : IPadContent, IXmlEditorViewContentProvider
- {
- XPathQueryWidget xpathQueryWidget;
- bool disposed;
-
- public XPathQueryPad()
- {
- xpathQueryWidget = new XPathQueryWidget(this);
- xpathQueryWidget.ShowAll();
-
- IdeApp.Workbench.ActiveDocumentChanged += ActiveDocumentChanged;
- LoadProperties();
- }
-
- public void JumpTo(string fileName, int line, int column)
- {
- IdeApp.Workbench.OpenDocument(fileName, Math.Max(1, line), Math.Max(1, column), true);
- }
-
- void IPadContent.Initialize(IPadWindow window)
- {
- window.Title = "XPath Query";
- window.Icon = "MonoDevelop.XmlEditor.XPathQueryPad";
- }
-
- public string Id {
- get {
- return "MonoDevelop.XmlEditor.XPathQueryPad";
- }
- }
-
- public string DefaultPlacement {
- get {
- return "Bottom";
- }
- }
-
- public void RedrawContent()
- {
- }
-
- public Widget Control {
- get {
- return xpathQueryWidget;
- }
- }
-
- public void Dispose()
- {
- if (!disposed) {
- disposed = true;
- IdeApp.Workbench.ActiveDocumentChanged -= ActiveDocumentChanged;
- SaveProperties();
- }
- }
-
- void ActiveDocumentChanged(object source, EventArgs e)
- {
- xpathQueryWidget.UpdateQueryButtonState();
- }
-
- /// <summary>
- /// Reads the xpath query pad properties and updates
- /// XPath Query widget.
- /// </summary>
- void LoadProperties()
- {
- xpathQueryWidget.Query = XPathQueryPadOptions.LastXPathQuery;
-
- foreach (string xpath in XPathQueryPadOptions.XPathHistory.GetXPaths()) {
- xpathQueryWidget.AddXPath(xpath);
- }
-
- foreach (XmlNamespace ns in XPathQueryPadOptions.Namespaces.GetNamespaces()) {
- xpathQueryWidget.AddNamespace(ns.Prefix, ns.Uri);
- }
- }
-
- /// <summary>
- /// Updates the xpath query pad properties from the
- /// XPath Query widget.
- void SaveProperties()
- {
- XPathQueryPadOptions.LastXPathQuery = xpathQueryWidget.Query;
-
- XPathHistoryList history = new XPathHistoryList();
- foreach (string xpath in xpathQueryWidget.GetXPathHistory()) {
- history.Add(xpath);
- }
- XPathQueryPadOptions.XPathHistory = history;
-
- XPathNamespaceList namespaces = new XPathNamespaceList();
- foreach (XmlNamespace ns in xpathQueryWidget.GetNamespaces()) {
- namespaces.Add(ns.Prefix, ns.Uri);
- }
- XPathQueryPadOptions.Namespaces = namespaces;
- }
- }
-}
-*/
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.XPath/XPathQueryPadOptions.cs b/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.XPath/XPathQueryPadOptions.cs
deleted file mode 100644
index ffe6fb70d8..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.XPath/XPathQueryPadOptions.cs
+++ /dev/null
@@ -1,94 +0,0 @@
-//
-// MonoDevelop XML Editor
-//
-// Copyright (C) 2006-2007 Matthew Ward
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-/*
-
-using MonoDevelop.Core;
-using System;
-using System.Xml;
-
-namespace MonoDevelop.XmlEditor
-{
- /// <summary>
- /// The XPath Query Pad options.
- /// </summary>
- public class XPathQueryPadOptions
- {
- public const string OptionsProperty = "XPathQueryPad.Options";
- public const string NamespacesProperty = "Namespaces";
- public const string LastXPathQueryProperty = "LastXPathQuery";
- public const string XPathHistoryProperty = "XPathQueryHistory";
- static Properties properties;
-
- static XPathQueryPadOptions()
- {
- properties = PropertyService.Get(OptionsProperty, new Properties());
- }
-
- static Properties Properties {
- get {
- return properties;
- }
- }
-
- /// <summary>
- /// The last xpath query entered in the XPath Query Pad's
- /// combo box.
- /// </summary>
- public static string LastXPathQuery {
- get {
- return Properties.Get(LastXPathQueryProperty, String.Empty);
- }
- set {
- Properties.Set(LastXPathQueryProperty, value);
- }
- }
-
- /// <summary>
- /// Gets or sets the xpath history.
- /// </summary>
- public static XPathHistoryList XPathHistory {
- get {
- return (XPathHistoryList)Properties.Get(XPathHistoryProperty, new XPathHistoryList());
- }
- set {
- Properties.Set(XPathHistoryProperty, value);
- }
- }
-
- /// <summary>
- /// Gets or sets the xpath namespaces used.
- /// </summary>
- public static XPathNamespaceList Namespaces {
- get {
- return (XPathNamespaceList)Properties.Get(NamespacesProperty, new XPathNamespaceList());
- }
- set {
- Properties.Set(NamespacesProperty, value);
- }
- }
- }
-}
-
-*/
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.XPath/XPathQueryWidget.cs b/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.XPath/XPathQueryWidget.cs
deleted file mode 100644
index 4ccf166e1e..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.XPath/XPathQueryWidget.cs
+++ /dev/null
@@ -1,515 +0,0 @@
-//
-// MonoDevelop XML Editor
-//
-// Copyright (C) 2006-2007 Matthew Ward
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-using Glade;
-using Gtk;
-using GtkSourceView;
-using MonoDevelop.Components;
-using MonoDevelop.Core;
-using MonoDevelop.Core.Gui.Components;
-using MonoDevelop.Core.Gui.Dialogs;
-using System;
-using System.Collections;
-using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.Collections.Specialized;
-using System.Xml;
-using System.Xml.XPath;
-
-/*
-
-namespace MonoDevelop.XmlEditor
-{
- /// <summary>
- /// The XPathQueryWidget uses this interface to
- /// access the currently active XmlEditorViewContent and
- /// jump to a particular file.
- /// </summary>
- public interface IXmlEditorViewContentProvider
- {
- XmlEditorViewContent View {get;}
-
- void JumpTo(string fileName, int line, int column);
- }
-
- public class XPathQueryWidget : GladeWidgetExtract
- {
- /// <summary>
- /// The filename that the last query was executed on.
- /// </summary>
- string fileName = String.Empty;
-
- /// <summary>
- /// The total number of xpath queries to remember.
- /// </summary>
- const int xpathQueryHistoryLimit = 20;
- int xpathHistoryListCount;
-
- /// <summary>
- /// The number of namespaces we have added to the
- /// grid.
- /// </summary>
- int namespaceCount;
-
- enum MoveCaret {
- ByJumping = 1,
- ByScrolling = 2
- }
-
- [Widget] TreeView resultsTreeView;
- [Widget] TreeView namespacesTreeView;
- [Widget] Button queryButton;
- [Widget] ComboBoxEntry xpathComboBoxEntry;
- [Widget] Notebook notebook;
-
- // Results List: xpath result, line number, XPathNodeMatch or Exception.
- const int xpathMatchColumnNumber = 0;
- const int xpathMatchLineColumnNumber = 1;
- const int xpathNodeMatchColumnNumber = 2;
- ListStore resultsList = new ListStore(typeof(string), typeof(string), typeof(object));
-
- // Namespace list: prefix, namespace.
- const int prefixColumnNumber = 0;
- const int namespaceColumnNumber = 1;
- ListStore namespacesList = new ListStore(typeof(string), typeof(string));
-
- // XPath query history: xpath query
- ListStore xpathHistoryList = new ListStore(typeof(string));
-
- IXmlEditorViewContentProvider viewProvider;
-
- public XPathQueryWidget(IXmlEditorViewContentProvider viewProvider)
- : base ("XmlEditor.glade", "XPathQueryPad")
- {
- this.viewProvider = viewProvider;
- InitResultsList();
- InitNamespaceList();
-
- queryButton.Clicked += QueryButtonClicked;
-
- EntryCompletion completion = new EntryCompletion();
- completion.Model = xpathHistoryList;
- completion.TextColumn = 0;
-
- xpathComboBoxEntry.Model = xpathHistoryList;
- xpathComboBoxEntry.TextColumn = 0;
- xpathComboBoxEntry.Entry.Completion = completion;
- xpathComboBoxEntry.Entry.Changed += XPathComboBoxEntryChanged;
- xpathComboBoxEntry.Entry.Activated += XPathComboBoxEntryActivated;
- }
-
- /// <summary>
- /// Adds a namespace to the namespace list.
- /// </summary>
- public void AddNamespace(string prefix, string uri)
- {
- TreeIter iter = namespacesList.Insert(namespaceCount);
- namespacesList.SetValue(iter, prefixColumnNumber, prefix);
- namespacesList.SetValue(iter, namespaceColumnNumber, uri);
- namespaceCount++;
- }
-
- /// <summary>
- /// Gets the list of namespaces in the namespace list.
- /// </summary>
- public ReadOnlyCollection<XmlNamespace> GetNamespaces()
- {
- List<XmlNamespace> namespaces = new List<XmlNamespace>();
- TreeIter iter;
- bool addNamespaces = namespacesList.GetIterFirst(out iter);
- while (addNamespaces) {
- string prefix = GetNamespacePrefix(iter);
- string uri = GetNamespaceUri(iter);
- if (prefix.Length == 0 && uri.Length == 0) {
- // Ignore.
- } else {
- namespaces.Add(new XmlNamespace(prefix, uri));
- }
- addNamespaces = namespacesList.IterNext(ref iter);
- }
- return new ReadOnlyCollection<XmlNamespace>(namespaces);
- }
-
- /// <summary>
- /// Gets the previously used XPath queries from the combo box drop down list.
- /// </summary>
- public string [] GetXPathHistory()
- {
- List<string> xpaths = new List<string>();
- TreeIter iter;
- bool add = xpathHistoryList.GetIterFirst(out iter);
- while (add) {
- string xpath = (string)xpathHistoryList.GetValue(iter, 0);
- xpaths.Add(xpath);
- add = xpathHistoryList.IterNext(ref iter);
- }
- return xpaths.ToArray();
- }
-
- /// <summary>
- /// Adds the xpath into the combo box drop down list.
- /// </summary>
- public void AddXPath(string xpath)
- {
- xpathHistoryList.AppendValues(xpath);
- }
-
- /// <summary>
- /// Gets or sets the active xpath query.
- /// </summary>
- public string Query {
- get {
- return xpathComboBoxEntry.Entry.Text;
- }
- set {
- xpathComboBoxEntry.Entry.Text = value;
- }
- }
-
- public void UpdateQueryButtonState()
- {
- queryButton.Sensitive = IsXPathQueryEntered && IsXmlEditorViewContentActive;
- }
-
- void InitResultsList()
- {
- resultsTreeView.Model = resultsList;
- resultsTreeView.Selection.Mode = SelectionMode.Single;
- resultsTreeView.RowActivated += ResultsTreeViewRowActivated;
- resultsTreeView.Selection.Changed += ResultsTreeViewSelectionChanged;
-
- // Match column.
- CellRendererText renderer = new CellRendererText();
- resultsTreeView.AppendColumn("Match", renderer, "text", xpathMatchColumnNumber);
-
- // Line number column.
- renderer = new CellRendererText();
- resultsTreeView.AppendColumn("Line", renderer, "text", xpathMatchLineColumnNumber);
- }
-
- void InitNamespaceList()
- {
- namespacesTreeView.Model = namespacesList;
- namespacesTreeView.Selection.Mode = SelectionMode.Single;
-
- // Prefix column.
- CellRendererText renderer = new CellRendererText();
- renderer.Edited += PrefixEdited;
- renderer.Editable = true;
- namespacesTreeView.AppendColumn("Prefix", renderer, "text", prefixColumnNumber);
-
- // Namespace column.
- renderer = new CellRendererText();
- renderer.Edited += NamespaceEdited;
- renderer.Editable = true;
- namespacesTreeView.AppendColumn("Namespace", renderer, "text", namespaceColumnNumber);
-
- // Add a few blank rows.
- for (int i = 0; i < 20; ++i) {
- namespacesList.Append();
- }
- }
-
- void PrefixEdited(object source, EditedArgs e)
- {
- ListItemEdited(e, namespacesList, prefixColumnNumber);
- }
-
- void NamespaceEdited(object source, EditedArgs e)
- {
- ListItemEdited(e, namespacesList, namespaceColumnNumber);
- }
-
- /// <summary>
- /// Updates the list store item's text that has been
- /// edited by the user.
- /// </summary>
- void ListItemEdited(EditedArgs e, ListStore list, int column)
- {
- TreePath path = new TreePath(e.Path);
- TreeIter iter;
- if (list.GetIter(out iter, path)) {
- list.SetValue(iter, column, e.NewText);
- }
- }
-
- void XPathComboBoxEntryChanged(object sender, EventArgs e)
- {
- UpdateQueryButtonState();
- }
-
- bool IsXPathQueryEntered {
- get {
- return xpathComboBoxEntry.Entry.Text.Length > 0;
- }
- }
-
- bool IsXmlEditorViewContentActive {
- get {
- return viewProvider.View != null;
- }
- }
-
- void QueryButtonClicked(object sender, EventArgs e)
- {
- RunXPathQuery();
- }
-
- void RunXPathQuery()
- {
- XmlEditorViewContent view = viewProvider.View;
- if (view == null) {
- return;
- }
-
- try {
- fileName = view.FileName;
- // Clear previous XPath results.
- ClearResults();
- view.Select(0, 0);
- XmlEditorView xmlEditor = view.XmlEditorView;
- xmlEditor.RemoveXPathMarkers();
-
- // Run XPath query.
- XPathNodeMatch[] nodes = xmlEditor.SelectNodes(Query, GetNamespaces());
- if (nodes.Length > 0) {
- AddXPathResults(nodes);
- xmlEditor.AddXPathMarkers(nodes);
- } else {
- AddNoXPathResult();
- }
- AddXPathToHistory();
- } catch (XPathException xpathEx) {
- AddErrorResult(xpathEx);
- } catch (XmlException xmlEx) {
- AddErrorResult(xmlEx);
- } finally {
- notebook.CurrentPage = 0;
- }
- }
-
- void ClearResults()
- {
- resultsList.Clear();
- }
-
- void AddXPathResults(XPathNodeMatch[] nodes)
- {
- foreach (XPathNodeMatch node in nodes) {
- string line = String.Empty;
- if (node.HasLineInfo()) {
- int lineNumber = node.LineNumber + 1;
- line = lineNumber.ToString();
- }
- resultsList.AppendValues(node.DisplayValue, line, node);
- }
- }
-
- void AddNoXPathResult()
- {
- resultsList.AppendValues("XPath query found 0 items.");
- }
-
- void AddErrorResult(XmlException ex)
- {
- resultsList.AppendValues(ex.Message, ex.LineNumber.ToString(), ex);
- }
-
- void AddErrorResult(XPathException ex)
- {
- resultsList.AppendValues(String.Concat("XPath: ", ex.Message), String.Empty, ex);
- }
-
- void ResultsTreeViewRowActivated(object sender, EventArgs e)
- {
- JumpToResultLocation();
- }
- /// <summary>
- /// Switches focus to the location of the XPath query result.
- /// </summary>
- void JumpToResultLocation()
- {
- MoveCaretToResultLocation(MoveCaret.ByJumping);
- }
-
- /// <summary>
- /// Scrolls the text editor so the location of the XPath query results is visible.
- /// </summary>
- void ScrollToResultLocation()
- {
- MoveCaretToResultLocation(MoveCaret.ByScrolling);
- }
-
- void MoveCaretToResultLocation(MoveCaret moveCaret)
- {
- TreeIter iter;
- if (resultsTreeView.Selection.GetSelected(out iter)) {
- object tag = resultsList.GetValue(iter, xpathNodeMatchColumnNumber);
- XPathNodeMatch xpathNodeMatch = tag as XPathNodeMatch;
- XPathException xpathException = tag as XPathException;
- XmlException xmlException = tag as XmlException;
- if (xpathNodeMatch != null) {
- MoveCaretToXPathNodeMatch(moveCaret, xpathNodeMatch);
- } else if (xmlException != null) {
- MoveCaretToXmlException(moveCaret, xmlException);
- } else if (xpathException != null && moveCaret == MoveCaret.ByJumping) { xpathComboBoxEntry.Entry.HasFocus = true;
- }
- }
- }
-
- void MoveCaretToXPathNodeMatch(MoveCaret moveCaret, XPathNodeMatch node)
- {
- if (moveCaret == MoveCaret.ByJumping) {
- viewProvider.JumpTo(fileName, node.LineNumber, node.LinePosition);
- } else {
- ScrollTo(fileName, node.LineNumber, node.LinePosition, node.Value.Length);
- }
- }
-
- void MoveCaretToXmlException(MoveCaret moveCaret, XmlException ex)
- {
- int line = ex.LineNumber - 1;
- int column = ex.LinePosition - 1;
- if (moveCaret == MoveCaret.ByJumping) {
- viewProvider.JumpTo(fileName, line, column);
- } else {
- ScrollTo(fileName, line, column);
- }
- }
-
- void ScrollTo(string fileName, int line, int column, int length)
- {
- XmlEditorViewContent view = viewProvider.View;
- if (view != null && IsFileNameMatch(view)) {
- view.SetCaretTo(line, column);
- SourceBuffer buffer = (SourceBuffer)view.XmlEditorView.Buffer;
- if (length > 0 && line < buffer.LineCount) {
- TextIter lineIter = buffer.GetIterAtLine(line);
- int startOffset = lineIter.Offset + column;
- int endOffset = startOffset + length;
- view.Select(startOffset, endOffset);
- }
- }
- }
-
- /// <summary>
- /// Tests whether the specified view matches the filename the XPath /// results were found in.
- /// </summary>
- bool IsFileNameMatch(XmlEditorViewContent view)
- {
- return fileName == view.FileName;
- }
-
- /// <summary>
- /// Adds the text in the combo box to the combo box drop down list.
- /// </summary>
- void AddXPathToHistory()
- {
- string newXPath = Query;
- if (!XPathHistoryListContains(newXPath)) {
- TreeIter iter = xpathHistoryList.Prepend();
- xpathHistoryList.SetValue(iter, 0, newXPath);
- xpathHistoryListCount++;
- if (xpathHistoryListCount > xpathQueryHistoryLimit) {
- iter = GetLastIter(xpathHistoryList);
- xpathHistoryList.Remove(ref iter);
- }
- }
- }
-
- /// <summary>
- /// Brute force approach to get last list item.
- /// </summary>
- TreeIter GetLastIter(ListStore list)
- {
- TreeIter iter = TreeIter.Zero;
- TreeIter lastIter = iter;
- bool success = list.GetIterFirst(out iter);
- while (success) {
- lastIter = iter;
- success = list.IterNext(ref iter);
- }
- return lastIter;
- }
-
- /// <summary>
- /// Returns true if the xpath already exists.
- /// </summary>
- bool XPathHistoryListContains(string xpath)
- {
- TreeIter iter;
- bool success = xpathHistoryList.GetIterFirst(out iter);
- while (success) {
- string existingXPath = (string)xpathHistoryList.GetValue(iter, 0);
- if (xpath.Equals(existingXPath, StringComparison.InvariantCultureIgnoreCase)) {
- return true;
- }
- success = xpathHistoryList.IterNext(ref iter);
- }
- return false;
- }
- void ResultsTreeViewSelectionChanged(object sender, EventArgs e)
- {
- ScrollToResultLocation();
- }
-
- /// <summary>
- /// Gets the namespace prefix from the specified
- /// list store row.
- /// </summary>
- string GetNamespacePrefix(TreeIter iter)
- {
- string prefix = (string)namespacesList.GetValue(iter, prefixColumnNumber);
- if (prefix != null) {
- return prefix;
- }
- return String.Empty;
- }
-
- /// <summary>
- /// Gets the namespace uri from the specified
- /// list store row.
- /// </summary>
- string GetNamespaceUri(TreeIter iter)
- {
- string uri = (string)namespacesList.GetValue(iter, namespaceColumnNumber);
- if (uri != null) {
- return uri;
- }
- return String.Empty;
- }
-
- void ScrollTo(string fileName, int line, int column)
- {
- ScrollTo(fileName, line, column, 0);
- }
-
- void XPathComboBoxEntryActivated(object source, EventArgs e)
- {
- RunXPathQuery();
- }
- }
-}
-
-*/ \ No newline at end of file
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/EncodedStringWriter.cs b/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/EncodedStringWriter.cs
deleted file mode 100755
index 587306f9fb..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/EncodedStringWriter.cs
+++ /dev/null
@@ -1,64 +0,0 @@
-//
-// MonoDevelop XML Editor
-//
-// Copyright (C) 2005 Matthew Ward
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-
-using System;
-using System.IO;
-using System.Text;
-
-namespace MonoDevelop.XmlEditor
-{
- /// <summary>
- /// A string writer that allows you to specify the text encoding to
- /// be used when generating the string.
- /// </summary>
- /// <remarks>
- /// This class is used when generating xml strings using a writer and
- /// the encoding in the xml processing instruction needs to be changed.
- /// The xml encoding string will be the encoding specified in the constructor
- /// of this class (i.e. UTF-8, UTF-16)</remarks>
- public class EncodedStringWriter : StringWriter
- {
- Encoding encoding = Encoding.UTF8;
-
- /// <summary>
- /// Creates a new string writer that will generate a string with the
- /// specified encoding.
- /// </summary>
- /// <remarks>The encoding will be used when generating the
- /// xml encoding header (i.e. UTF-8, UTF-16).</remarks>
- public EncodedStringWriter(Encoding encoding)
- {
- this.encoding = encoding;
- }
-
- /// <summary>
- /// Gets the text encoding that will be used when generating
- /// the string.
- /// </summary>
- public override Encoding Encoding {
- get {
- return encoding;
- }
- }
- }
-}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/OpenStylesheetCommand.cs b/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/OpenStylesheetCommand.cs
deleted file mode 100644
index f4d507ae8d..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/OpenStylesheetCommand.cs
+++ /dev/null
@@ -1,59 +0,0 @@
-//
-// MonoDevelop XML Editor
-//
-// Copyright (C) 2005-2006 Matthew Ward
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-
-using MonoDevelop.Components.Commands;
-using MonoDevelop.Ide.Gui;
-using System;
-namespace MonoDevelop.XmlEditor
-{
- /// <summary>
- /// Opens the stylesheet associated with the active XML document.
- /// </summary>
- public class OpenStylesheetCommand : CommandHandler
- {
- protected override void Run()
- {
- XmlEditorViewContent view = XmlEditorService.GetActiveView();
- if (view != null) {
- if (view.StylesheetFileName != null) {
- try {
- IdeApp.Workbench.OpenDocument(view.StylesheetFileName);
- } catch (Exception ex) {
- MonoDevelop.Core.LoggingService.LogError ("Could not open document.", ex);
- MonoDevelop.Ide.MessageService.ShowError ("Could not open document.", ex.ToString());
- }
- }
- }
- }
-
- protected override void Update(CommandInfo info)
- {
- XmlEditorViewContent view = XmlEditorService.GetActiveView();
- if (view != null && view.StylesheetFileName != null) {
- info.Enabled = true;
- } else {
- info.Enabled = false;
- }
- }
- }
-}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/QualifiedNameCollection.cs b/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/QualifiedNameCollection.cs
deleted file mode 100755
index c7ab7df061..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/QualifiedNameCollection.cs
+++ /dev/null
@@ -1,288 +0,0 @@
-//
-// MonoDevelop XML Editor
-//
-// Copyright (C) 2005 Matthew Ward
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-using System;
-using System.Collections;
-
-namespace MonoDevelop.XmlEditor
-{
- /// <summary>
- /// A collection that stores <see cref='QualifiedName'/> objects.
- /// </summary>
- [Serializable()]
- public class QualifiedNameCollection : CollectionBase {
-
- /// <summary>
- /// Initializes a new instance of <see cref='QualifiedNameCollection'/>.
- /// </summary>
- public QualifiedNameCollection()
- {
- }
-
- /// <summary>
- /// Initializes a new instance of <see cref='QualifiedNameCollection'/> based on another <see cref='QualifiedNameCollection'/>.
- /// </summary>
- /// <param name='val'>
- /// A <see cref='QualifiedNameCollection'/> from which the contents are copied
- /// </param>
- public QualifiedNameCollection(QualifiedNameCollection val)
- {
- this.AddRange(val);
- }
-
- /// <summary>
- /// Initializes a new instance of <see cref='QualifiedNameCollection'/> containing any array of <see cref='QualifiedName'/> objects.
- /// </summary>
- /// <param name='val'>
- /// A array of <see cref='QualifiedName'/> objects with which to intialize the collection
- /// </param>
- public QualifiedNameCollection(QualifiedName[] val)
- {
- this.AddRange(val);
- }
-
- /// <summary>
- /// Represents the entry at the specified index of the <see cref='QualifiedName'/>.
- /// </summary>
- /// <param name='index'>The zero-based index of the entry to locate in the collection.</param>
- /// <value>The entry at the specified index of the collection.</value>
- /// <exception cref='ArgumentOutOfRangeException'><paramref name='index'/> is outside the valid range of indexes for the collection.</exception>
- public QualifiedName this[int index] {
- get {
- return ((QualifiedName)(List[index]));
- }
- set {
- List[index] = value;
- }
- }
-
- /// <summary>
- /// Adds a <see cref='QualifiedName'/> with the specified value to the
- /// <see cref='QualifiedNameCollection'/>.
- /// </summary>
- /// <param name='val'>The <see cref='QualifiedName'/> to add.</param>
- /// <returns>The index at which the new element was inserted.</returns>
- /// <seealso cref='QualifiedNameCollection.AddRange(QualifiedName[])'/>
- public int Add(QualifiedName val)
- {
- return List.Add(val);
- }
-
- /// <summary>
- /// Copies the elements of an array to the end of the <see cref='QualifiedNameCollection'/>.
- /// </summary>
- /// <param name='val'>
- /// An array of type <see cref='QualifiedName'/> containing the objects to add to the collection.
- /// </param>
- /// <seealso cref='QualifiedNameCollection.Add'/>
- public void AddRange(QualifiedName[] val)
- {
- for (int i = 0; i < val.Length; i++) {
- this.Add(val[i]);
- }
- }
-
- /// <summary>
- /// Adds the contents of another <see cref='QualifiedNameCollection'/> to the end of the collection.
- /// </summary>
- /// <param name='val'>
- /// A <see cref='QualifiedNameCollection'/> containing the objects to add to the collection.
- /// </param>
- /// <seealso cref='QualifiedNameCollection.Add'/>
- public void AddRange(QualifiedNameCollection val)
- {
- for (int i = 0; i < val.Count; i++)
- {
- this.Add(val[i]);
- }
- }
-
- /// <summary>
- /// Gets a value indicating whether the
- /// <see cref='QualifiedNameCollection'/> contains the specified <see cref='QualifiedName'/>.
- /// </summary>
- /// <param name='val'>The <see cref='QualifiedName'/> to locate.</param>
- /// <returns>
- /// <see langword='true'/> if the <see cref='QualifiedName'/> is contained in the collection;
- /// otherwise, <see langword='false'/>.
- /// </returns>
- /// <seealso cref='QualifiedNameCollection.IndexOf'/>
- public bool Contains(QualifiedName val)
- {
- return List.Contains(val);
- }
-
- /// <summary>
- /// Copies the <see cref='QualifiedNameCollection'/> values to a one-dimensional <see cref='Array'/> instance at the
- /// specified index.
- /// </summary>
- /// <param name='array'>The one-dimensional <see cref='Array'/> that is the destination of the values copied from <see cref='QualifiedNameCollection'/>.</param>
- /// <param name='index'>The index in <paramref name='array'/> where copying begins.</param>
- /// <exception cref='ArgumentException'>
- /// <para><paramref name='array'/> is multidimensional.</para>
- /// <para>-or-</para>
- /// <para>The number of elements in the <see cref='QualifiedNameCollection'/> is greater than
- /// the available space between <paramref name='arrayIndex'/> and the end of
- /// <paramref name='array'/>.</para>
- /// </exception>
- /// <exception cref='ArgumentNullException'><paramref name='array'/> is <see langword='null'/>. </exception>
- /// <exception cref='ArgumentOutOfRangeException'><paramref name='arrayIndex'/> is less than <paramref name='array'/>'s lowbound. </exception>
- /// <seealso cref='Array'/>
- public void CopyTo(QualifiedName[] array, int index)
- {
- List.CopyTo(array, index);
- }
-
- /// <summary>
- /// Returns the index of a <see cref='QualifiedName'/> in
- /// the <see cref='QualifiedNameCollection'/>.
- /// </summary>
- /// <param name='val'>The <see cref='QualifiedName'/> to locate.</param>
- /// <returns>
- /// The index of the <see cref='QualifiedName'/> of <paramref name='val'/> in the
- /// <see cref='QualifiedNameCollection'/>, if found; otherwise, -1.
- /// </returns>
- /// <seealso cref='QualifiedNameCollection.Contains'/>
- public int IndexOf(QualifiedName val)
- {
- return List.IndexOf(val);
- }
-
- /// <summary>
- /// Inserts a <see cref='QualifiedName'/> into the <see cref='QualifiedNameCollection'/> at the specified index.
- /// </summary>
- /// <param name='index'>The zero-based index where <paramref name='val'/> should be inserted.</param>
- /// <param name='val'>The <see cref='QualifiedName'/> to insert.</param>
- /// <seealso cref='QualifiedNameCollection.Add'/>
- public void Insert(int index, QualifiedName val)
- {
- List.Insert(index, val);
- }
-
- /// <summary>
- /// Returns an enumerator that can iterate through the <see cref='QualifiedNameCollection'/>.
- /// </summary>
- /// <seealso cref='IEnumerator'/>
- public new QualifiedNameEnumerator GetEnumerator()
- {
- return new QualifiedNameEnumerator(this);
- }
-
- /// <summary>
- /// Removes a specific <see cref='QualifiedName'/> from the <see cref='QualifiedNameCollection'/>.
- /// </summary>
- /// <param name='val'>The <see cref='QualifiedName'/> to remove from the <see cref='QualifiedNameCollection'/>.</param>
- /// <exception cref='ArgumentException'><paramref name='val'/> is not found in the Collection.</exception>
- public void Remove(QualifiedName val)
- {
- List.Remove(val);
- }
-
- /// <summary>
- /// Removes the last item in this collection.
- /// </summary>
- public void RemoveLast()
- {
- if (Count > 0) {
- RemoveAt(Count - 1);
- }
- }
-
- /// <summary>
- /// Removes the first item in the collection.
- /// </summary>
- public void RemoveFirst()
- {
- if (Count > 0) {
- RemoveAt(0);
- }
- }
-
- /// <summary>
- /// Gets the namespace prefix of the last item.
- /// </summary>
- public string LastPrefix {
- get {
- string prefix = String.Empty;
-
- if (Count > 0) {
- QualifiedName name = this[Count - 1];
- prefix = name.Prefix;
- }
-
- return prefix;
- }
- }
-
- /// <summary>
- /// Enumerator that can iterate through a QualifiedNameCollection.
- /// </summary>
- /// <seealso cref='IEnumerator'/>
- /// <seealso cref='QualifiedNameCollection'/>
- /// <seealso cref='QualifiedName'/>
- public class QualifiedNameEnumerator : IEnumerator
- {
- IEnumerator baseEnumerator;
- IEnumerable temp;
-
- /// <summary>
- /// Initializes a new instance of <see cref='QualifiedNameEnumerator'/>.
- /// </summary>
- public QualifiedNameEnumerator(QualifiedNameCollection mappings)
- {
- this.temp = ((IEnumerable)(mappings));
- this.baseEnumerator = temp.GetEnumerator();
- }
-
- /// <summary>
- /// Gets the current <see cref='QualifiedName'/> in the <seealso cref='QualifiedNameCollection'/>.
- /// </summary>
- public QualifiedName Current {
- get {
- return ((QualifiedName)(baseEnumerator.Current));
- }
- }
-
- object IEnumerator.Current {
- get {
- return baseEnumerator.Current;
- }
- }
-
- /// <summary>
- /// Advances the enumerator to the next <see cref='QualifiedName'/> of the <see cref='QualifiedNameCollection'/>.
- /// </summary>
- public bool MoveNext()
- {
- return baseEnumerator.MoveNext();
- }
-
- /// <summary>
- /// Sets the enumerator to its initial position, which is before the first element in the <see cref='QualifiedNameCollection'/>.
- /// </summary>
- public void Reset()
- {
- baseEnumerator.Reset();
- }
- }
- }
-}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlCompletionListWindow.cs b/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlCompletionListWindow.cs
deleted file mode 100644
index 524797b8f7..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlCompletionListWindow.cs
+++ /dev/null
@@ -1,417 +0,0 @@
-//
-// MonoDevelop XML Editor
-//
-// Copyright (C) 2004-2007 MonoDevelop Team
-//
-
-using System;
-using System.Collections;
-
-using Gtk;
-using MonoDevelop.Projects;
-using MonoDevelop.Core;
-using MonoDevelop.Ide.CodeCompletion;
-
-namespace MonoDevelop.XmlEditor
-{
- public class XmlCompletionListWindow : XmlEditorListWindow, IListDataProvider
- {
- ICompletionWidget completionWidget;
- ICodeCompletionContext completionContext;
- ICompletionData[] completionData;
- DeclarationViewWindow declarationviewwindow = new DeclarationViewWindow ();
- ICompletionData currentData;
- ICompletionDataProvider provider;
- IMutableCompletionDataProvider mutableProvider;
- Widget parsingMessage;
- char firstChar;
- CompletionDelegate closedDelegate;
-
- const int declarationWindowMargin = 3;
- static DataComparer dataComparer = new DataComparer ();
-
- public static event EventHandler WindowClosed;
-
- class DataComparer: IComparer
- {
- public int Compare (object x, object y)
- {
- ICompletionData d1 = x as ICompletionData;
- ICompletionData d2 = y as ICompletionData;
- return String.Compare (d1.Text[0], d2.Text[0], true);
- }
- }
-
- static XmlCompletionListWindow wnd;
-
- static XmlCompletionListWindow ()
- {
- wnd = new XmlCompletionListWindow ();
- }
-
- internal XmlCompletionListWindow ()
- {
- SizeAllocated += new SizeAllocatedHandler (ListSizeChanged);
- }
-
- public static void ShowWindow (char firstChar, ICompletionDataProvider provider, ICompletionWidget completionWidget, ICodeCompletionContext completionContext, CompletionDelegate closedDelegate)
- {
- try {
- if (!wnd.ShowListWindow (firstChar, provider, completionWidget, completionContext, closedDelegate)) {
- provider.Dispose ();
- return;
- }
-
- // makes control-space in midle of words to work
- string text = wnd.completionWidget.GetCompletionText (completionContext);
- if (text.Length == 0) {
- text = provider.DefaultCompletionString;
- if (text != null && text.Length > 0)
- wnd.SelectEntry (text);
- return;
- }
-
- wnd.PartialWord = text;
- //if there is only one matching result we take it by default
- if (wnd.IsUniqueMatch && !wnd.IsChanging)
- {
- wnd.UpdateWord ();
- wnd.Hide ();
- }
-
- } catch (Exception ex) {
- Console.WriteLine (ex);
- }
- }
-
- bool ShowListWindow (char firstChar, ICompletionDataProvider provider, ICompletionWidget completionWidget, ICodeCompletionContext completionContext, CompletionDelegate closedDelegate)
- {
- if (mutableProvider != null) {
- mutableProvider.CompletionDataChanging -= OnCompletionDataChanging;
- mutableProvider.CompletionDataChanged -= OnCompletionDataChanged;
- }
-
- this.provider = provider;
- this.completionContext = completionContext;
- this.closedDelegate = closedDelegate;
- mutableProvider = provider as IMutableCompletionDataProvider;
-
- if (mutableProvider != null) {
- mutableProvider.CompletionDataChanging += OnCompletionDataChanging;
- mutableProvider.CompletionDataChanged += OnCompletionDataChanged;
-
- if (mutableProvider.IsChanging)
- OnCompletionDataChanging (null, null);
- }
-
- this.completionWidget = completionWidget;
- this.firstChar = firstChar;
-
- return FillList ();
- }
-
- bool FillList ()
- {
- completionData = provider.GenerateCompletionData (completionWidget, firstChar);
- if ((completionData == null || completionData.Length == 0) && !IsChanging)
- return false;
-
- this.Style = completionWidget.GtkStyle;
-
- if (completionData == null)
- completionData = new ICompletionData [0];
- else
- Array.Sort (completionData, dataComparer);
-
- DataProvider = this;
-
- int x = completionContext.TriggerXCoord;
- int y = completionContext.TriggerYCoord;
-
- int w, h;
- GetSize (out w, out h);
-
- if ((x + w) > Screen.Width)
- x = Screen.Width - w;
-
- if ((y + h) > Screen.Height)
- {
- y = y - completionContext.TriggerTextHeight - h;
- }
-
- Move (x, y);
-
- Show ();
-
- // HACK - make window bigger for namespace completion.
- // This should probably be handled by the ListWidget/ListWindow
- // itself.
- if (firstChar == '=') {
- this.Resize(this.List.WidthRequest + 220, this.List.HeightRequest);
- }
- return true;
- }
-
- public static void HideWindow ()
- {
- wnd.Hide ();
- }
-
- /// <summary>
- /// Modified this method so that punctuation characters
- /// will not close the completion window.
- /// </summary>
- public static bool ProcessKeyEvent (Gdk.EventKey e)
- {
- if (!wnd.Visible) return false;
-
- XmlEditorListWindow.KeyAction ka = wnd.ProcessKey (e);
-
- if ((ka & XmlEditorListWindow.KeyAction.CloseWindow) != 0) {
- if (e.Key == Gdk.Key.Escape || e.Key == Gdk.Key.BackSpace || !System.Char.IsPunctuation((char)e.KeyValue)) {
- wnd.Hide ();
- }
- }
-
- if ((ka & XmlEditorListWindow.KeyAction.Complete) != 0) {
- switch (e.Key) {
- case Gdk.Key.Tab:
- case Gdk.Key.Return:
- case Gdk.Key.ISO_Enter:
- case Gdk.Key.Key_3270_Enter:
- case Gdk.Key.KP_Enter:
- wnd.Hide ();
- wnd.UpdateWord ();
- break;
- default:
- break;
- }
- }
-
- if ((ka & XmlEditorListWindow.KeyAction.Ignore) != 0)
- return true;
-
- if ((ka & XmlEditorListWindow.KeyAction.Process) != 0) {
- if (e.Key == Gdk.Key.Left) {
- if (wnd.declarationviewwindow.Multiple) {
- wnd.declarationviewwindow.OverloadLeft ();
- wnd.UpdateDeclarationView ();
- }
- return true;
- } else if (e.Key == Gdk.Key.Right) {
- if (wnd.declarationviewwindow.Multiple) {
- wnd.declarationviewwindow.OverloadRight ();
- wnd.UpdateDeclarationView ();
- }
- return true;
- }
- }
-
- return false;
- }
-
- /// <summary>
- /// HACK - Insert the completion string not the text displayed in the
- /// completion list and move the cursor between the attribute
- /// quotes when an attribute is inserted.
- /// This should really be done using methods in the
- /// ICompletionWidget class. Here I am cheating and using
- /// the XmlEditorView and XmlCompletionData directly (The
- /// XmlCompletionData.InsertAction is not used in MonoDevelop).
- /// </summary>
-// void UpdateWord ()
-// {
-// XmlCompletionData data = (XmlCompletionData)completionData[List.Selection];
-//
-// string completeWord = data.CompletionString;
-// completionWidget.SetCompletionText(completionContext, wnd.PartialWord, completeWord);
-// if (data.XmlCompletionDataType == XmlCompletionData.DataType.XmlAttribute) {
-// // Position cursor inside attribute value string.
-// XmlEditorView view = (XmlEditorView)completionWidget;
-// TextIter iter = view.Buffer.GetIterAtMark(view.Buffer.InsertMark);
-// iter.Offset--;
-// view.Buffer.PlaceCursor(iter);
-// }
-// //completionWidget.SetCompletionText(wnd.PartialWord, wnd.CompleteWord);
-// }
-
- void UpdateWord ()
- {
- string word = wnd.CompleteWord;
- if (word != null) {
- if (wnd.Selection != -1) {
- IActionCompletionData ac = completionData [wnd.Selection] as IActionCompletionData;
- if (ac != null) {
- ac.InsertAction (completionWidget, completionContext);
- return;
- }
- }
- completionWidget.SetCompletionText (completionContext, wnd.PartialWord, word);
- }
- }
-
- public new void Hide ()
- {
- base.Hide ();
- declarationviewwindow.HideAll ();
- if (provider != null) {
- provider.Dispose ();
- provider = null;
- }
- if (closedDelegate != null) {
- closedDelegate ();
- closedDelegate = null;
- }
- }
-
- protected override bool IsValidCompletionChar (char c)
- {
- return XmlParser.IsXmlNameChar(c);
- }
-
- void ListSizeChanged (object obj, SizeAllocatedArgs args)
- {
- UpdateDeclarationView ();
- }
-
- protected override bool OnButtonPressEvent (Gdk.EventButton evnt)
- {
- bool ret = base.OnButtonPressEvent (evnt);
- if (evnt.Button == 1 && evnt.Type == Gdk.EventType.TwoButtonPress) {
- wnd.UpdateWord ();
- wnd.Hide ();
- }
- return ret;
- }
-
- protected override void OnSelectionChanged ()
- {
- base.OnSelectionChanged ();
- UpdateDeclarationView ();
- }
-
- void UpdateDeclarationView ()
- {
- if (completionData == null || List.Selection >= completionData.Length || List.Selection == -1)
- return;
-
- if (List.GdkWindow == null) return;
- Gdk.Rectangle rect = List.GetRowArea (List.Selection);
- int listpos_x = 0, listpos_y = 0;
- while (listpos_x == 0 || listpos_y == 0)
- GetPosition (out listpos_x, out listpos_y);
- int vert = listpos_y + rect.Y;
-
- int lvWidth = 0, lvHeight = 0;
- while (lvWidth == 0)
- this.GdkWindow.GetSize (out lvWidth, out lvHeight);
- if (vert >= listpos_y + lvHeight - 2) {
- vert = listpos_y + lvHeight - rect.Height;
- } else if (vert < listpos_y) {
- vert = listpos_y;
- }
-
- ICompletionData data = completionData[List.Selection];
- ICompletionDataWithMarkup datawMarkup = data as ICompletionDataWithMarkup;
- XmlCompletionData ccdata = (XmlCompletionData) data;
-
- string descMarkup = datawMarkup != null ? datawMarkup.DescriptionPango : data.Description;
-
- declarationviewwindow.Hide ();
-
- if (data != currentData) {
- declarationviewwindow.Clear ();
- declarationviewwindow.Realize ();
-
- declarationviewwindow.AddOverload (descMarkup);
-
- //foreach (CodeCompletionData odata in ccdata.GetOverloads ()) {
- // ICompletionDataWithMarkup odatawMarkup = odata as ICompletionDataWithMarkup;
- // declarationviewwindow.AddOverload (odatawMarkup == null ? odata.Description : odatawMarkup.DescriptionPango);
- //}
- }
-
- currentData = data;
-
- if (declarationviewwindow.DescriptionMarkup.Length == 0)
- return;
-
- int dvwWidth, dvwHeight;
-
- declarationviewwindow.Move (this.Screen.Width+1, vert);
-
- declarationviewwindow.SetFixedWidth (-1);
- declarationviewwindow.ReshowWithInitialSize ();
- declarationviewwindow.ShowAll ();
- //declarationviewwindow.Multiple = (ccdata.Overloads != 0);
-
- declarationviewwindow.GdkWindow.GetSize (out dvwWidth, out dvwHeight);
-
- int horiz = listpos_x + lvWidth + declarationWindowMargin;
- if (this.Screen.Width - horiz >= lvWidth) {
- if (this.Screen.Width - horiz < dvwWidth)
- declarationviewwindow.SetFixedWidth (this.Screen.Width - horiz);
- } else {
- if (listpos_x - dvwWidth - declarationWindowMargin < 0) {
- declarationviewwindow.SetFixedWidth (listpos_x - declarationWindowMargin);
- dvwWidth = declarationviewwindow.SizeRequest ().Width;
- }
- horiz = listpos_x - dvwWidth - declarationWindowMargin;
- }
-
- declarationviewwindow.Move (horiz, vert);
- }
-
- public int ItemCount
- {
- get { return completionData.Length; }
- }
-
- public string GetText (int n)
- {
- return completionData[n].Text[0];
- }
-
- public string GetCompletionText (int n)
- {
- return completionData[n].CompletionString;
- }
-
- public Gdk.Pixbuf GetIcon (int n)
- {
- return RenderIcon (completionData[n].Image, Gtk.IconSize.Menu, "");
- }
-
- internal bool IsChanging {
- get { return mutableProvider != null && mutableProvider.IsChanging; }
- }
-
- void OnCompletionDataChanging (object s, EventArgs args)
- {
- if (parsingMessage == null) {
- VBox box = new VBox ();
- box.PackStart (new Gtk.HSeparator (), false, false, 0);
- HBox hbox = new HBox ();
- hbox.BorderWidth = 3;
- hbox.PackStart (new Gtk.Image ("md-parser", Gtk.IconSize.Menu), false, false, 0);
- Gtk.Label lab = new Gtk.Label (GettextCatalog.GetString ("Gathering class information..."));
- lab.Xalign = 0;
- hbox.PackStart (lab, true, true, 3);
- hbox.ShowAll ();
- parsingMessage = hbox;
- }
- wnd.ShowFooter (parsingMessage);
- }
-
- void OnCompletionDataChanged (object s, EventArgs args)
- {
- wnd.HideFooter ();
- if (Visible) {
- Reset ();
- FillList ();
- }
- }
- }
-
- public delegate void CompletionDelegate ();
-} \ No newline at end of file
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlEditorCommandBase.cs b/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlEditorCommandBase.cs
deleted file mode 100644
index 31f2387f74..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlEditorCommandBase.cs
+++ /dev/null
@@ -1,24 +0,0 @@
-
-using MonoDevelop.Components.Commands;
-using MonoDevelop.Core;
-using MonoDevelop.Ide;
-using MonoDevelop.Ide.Gui;
-using MonoDevelop.Ide.Tasks;
-using System;
-
-namespace ICSharpCode.XmlEditor
-{
- public class XmlEditorCommandBase : CommandHandler
- {
-
-
-
-
-
-
-
-
-
-
- }
-} \ No newline at end of file
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlEditorView.cs b/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlEditorView.cs
deleted file mode 100644
index 1356c591af..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlEditorView.cs
+++ /dev/null
@@ -1,138 +0,0 @@
-//
-// MonoDevelop XML Editor
-//
-// Copyright (C) 2006-2007 Matthew Ward
-// Copyright (C) 2004-2007 MonoDevelop Team
-//
-
-using Gdk;
-using Gtk;
-using GtkSourceView;
-using MonoDevelop.Components.Commands;
-using MonoDevelop.Ide.Commands;
-using MonoDevelop.Ide.Gui.Content;
-using MonoDevelop.Ide.Gui.Search;
-using MonoDevelop.Ide.CodeCompletion;
-using MonoDevelop.SourceEditor;
-using MonoDevelop.SourceEditor.Gui.Dialogs;
-using System;
-using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.IO;
-using System.Text;
-using System.Xml;
-using System.Xml.Schema;
-using System.Xml.XPath;
-
-namespace MonoDevelop.XmlEditor
-{
- public class XmlEditorView : SourceView, ICompletionWidget, IClipboardHandler
- {
- XmlSchemaCompletionDataCollection schemaCompletionDataItems = new XmlSchemaCompletionDataCollection();
- XmlSchemaCompletionData defaultSchemaCompletionData = null;
- string defaultNamespacePrefix = String.Empty;
- bool autoCompleteElements = true;
- bool showSchemaAnnotation = true;
- SourceBuffer buffer;
- Gtk.Clipboard clipboard = Gtk.Clipboard.Get(Gdk.Atom.Intern("CLIPBOARD", false));
- XPathNodeTextMarker xpathNodeTextMarker;
- event EventHandler completionContextChanged;
- ICodeCompletionContext completionContext;
- XmlEditorViewContent viewContent;
-
- public XmlEditorView (XmlEditorViewContent viewContent)
- {
- this.viewContent = viewContent;
- InitSyntaxHighlighting();
- xpathNodeTextMarker = new XPathNodeTextMarker(buffer);
- Buffer.Changed += BufferChanged;
- }
-
- /// <summary>
- /// Gets the schemas that the xml editor will use.
- /// </summary>
- /// <remarks>
- /// Probably should NOT have a 'set' property, but allowing one
- /// allows us to share the completion data amongst multiple
- /// xml editor controls.
- /// </remarks>
- public XmlSchemaCompletionDataCollection SchemaCompletionDataItems {
- get {
- return schemaCompletionDataItems;
- }
- set {
- schemaCompletionDataItems = value;
- }
- }
-
-#region XPath stuff
-
- /// <summary>
- /// Finds the xml nodes that match the specified xpath.
- /// </summary>
- /// <returns>An array of XPathNodeMatch items. These include line number
- /// and line position information aswell as the node found.</returns>
- public static XPathNodeMatch[] SelectNodes(string xml, string xpath, ReadOnlyCollection<XmlNamespace> namespaces)
- {
- XmlTextReader xmlReader = new XmlTextReader(new StringReader(xml));
- xmlReader.XmlResolver = null;
- XPathDocument doc = new XPathDocument(xmlReader);
- XPathNavigator navigator = doc.CreateNavigator();
-
- // Add namespaces.
- XmlNamespaceManager namespaceManager = new XmlNamespaceManager(navigator.NameTable);
- foreach (XmlNamespace xmlNamespace in namespaces) {
- namespaceManager.AddNamespace(xmlNamespace.Prefix, xmlNamespace.Uri);
- }
-
- // Run the xpath query.
- XPathNodeIterator iterator = navigator.Select(xpath, namespaceManager);
-
- List<XPathNodeMatch> nodes = new List<XPathNodeMatch>();
- while (iterator.MoveNext()) {
- nodes.Add(new XPathNodeMatch(iterator.Current));
- }
- return nodes.ToArray();
- }
-
- /// <summary>
- /// Finds the xml nodes that match the specified xpath.
- /// </summary>
- /// <returns>An array of XPathNodeMatch items. These include line number
- /// and line position information aswell as the node found.</returns>
- public static XPathNodeMatch[] SelectNodes(string xml, string xpath)
- {
- List<XmlNamespace> list = new List<XmlNamespace>();
- return SelectNodes(xml, xpath, new ReadOnlyCollection<XmlNamespace>(list));
- }
-
- /// <summary>
- /// Finds the xml nodes in the current document that match the specified xpath.
- /// </summary>
- /// <returns>An array of XPathNodeMatch items. These include line number
- /// and line position information aswell as the node found.</returns>
- public XPathNodeMatch[] SelectNodes(string xpath, ReadOnlyCollection<XmlNamespace> namespaces)
- {
- return SelectNodes(Buffer.Text, xpath, namespaces);
- }
-
- /// <summary>
- /// Highlights the xpath matches in the xml.
- /// </summary>
- public void AddXPathMarkers(XPathNodeMatch[] nodes)
- {
- xpathNodeTextMarker.AddMarkers(nodes);
- }
-
- /// <summary>
- /// Removes the xpath match highlighting.
- /// </summary>
- public void RemoveXPathMarkers()
- {
- xpathNodeTextMarker.RemoveMarkers();
- }
-#endregion
-
-
- }
-}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlEditorViewContent.cs b/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlEditorViewContent.cs
deleted file mode 100644
index 6b403f1920..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlEditorViewContent.cs
+++ /dev/null
@@ -1,614 +0,0 @@
-//
-// MonoDevelop XML Editor
-//
-// Copyright (C) 2007 Matthew Ward
-// Copyright (C) 2004-2007 MonoDevelop Team
-//
-
-using Gnome.Vfs;
-using Gtk;
-using GtkSourceView;
-using MonoDevelop.Core;
-using MonoDevelop.Ide.Gui;
-using MonoDevelop.Ide.Gui.Content;
-using MonoDevelop.Ide.Gui.Search;
-using MonoDevelop.Projects.Text;
-using System;
-using System.IO;
-
-namespace MonoDevelop.XmlEditor
-{
- public class XmlEditorViewContent : AbstractViewContent, IEditableTextBuffer, IDocumentInformation, IClipboardHandler
- {
- XmlEditorWindow xmlEditorWindow;
- SourceBuffer buffer;
- XmlEditorView view;
- const string TextXmlMimeType = "text/xml";
- const string ApplicationXmlMimeType = "application/xml";
- string fileName = String.Empty;
- EventHandler<PropertyChangedEventArgs> propertyChangedHandler;
- string stylesheetFileName;
-
- public XmlEditorViewContent()
- {
- xmlEditorWindow = new XmlEditorWindow(this);
- view = xmlEditorWindow.View;
- buffer = (SourceBuffer)view.Buffer;
- buffer.Changed += BufferChanged;
-
- view.SchemaCompletionDataItems = XmlSchemaManager.SchemaCompletionDataItems;
- SetInitialValues();
-
- // Watch for changes to the source editor properties.
- propertyChangedHandler = (EventHandler<PropertyChangedEventArgs>)DispatchService.GuiDispatch(new EventHandler<PropertyChangedEventArgs>(SourceEditorPropertyChanged));
- TextEditorProperties.Properties.PropertyChanged += propertyChangedHandler;
-
- buffer.ModifiedChanged += new EventHandler (OnModifiedChanged);
- XmlEditorAddInOptions.PropertyChanged += new EventHandler<PropertyChangedEventArgs>(XmlEditorPropertyChanged);
-
- XmlSchemaManager.UserSchemaAdded += new EventHandler(UserSchemaAdded);
- XmlSchemaManager.UserSchemaRemoved += new EventHandler(UserSchemaRemoved);
-
- xmlEditorWindow.ShowAll();
- }
-
- public static bool IsMimeTypeHandled(string mimeType)
- {
- Console.WriteLine("mimeType: " + mimeType);
- if (mimeType != null) {
- if (mimeType == TextXmlMimeType || mimeType == ApplicationXmlMimeType) {
- return true;
- }
- }
- return false;
- }
-
- /// <summary>
- /// Determines whether the file can be displayed by
- /// the xml editor.
- /// </summary>
- public static bool IsFileNameHandled(string fileName)
- {
- if (fileName == null) {
- return false;
- }
-
- string vfsname = fileName;
- vfsname = vfsname.Replace ("%", "%25");
- vfsname = vfsname.Replace ("#", "%23");
- vfsname = vfsname.Replace ("?", "%3F");
- string mimeType = MimeType.GetMimeTypeForUri (vfsname);
- if (IsMimeTypeHandled(mimeType)) {
- return true;
- }
-
- return XmlFileExtensions.IsXmlFileExtension(Path.GetExtension(fileName));
- }
-
- public XmlEditorView XmlEditorView {
- get {
- return view;
- }
- }
-
- public override Gtk.Widget Control {
- get {
- return xmlEditorWindow;
- }
- }
-
- public override bool IsDirty {
- get {
- return base.IsDirty;
- }
- set {
- buffer.Modified = value;
- }
- }
-
- public override string UntitledName {
- get {
- return base.UntitledName;
- }
- set {
- base.UntitledName = value;
- fileName = value;
- if (value != null) {
- SetDefaultSchema(value);
- }
- }
- }
-
- public override string TabPageLabel {
- get {
- return "XML";
- }
- }
-
- public string FileName {
- get {
- return fileName;
- }
- }
-
- /// <summary>
- /// Gets or sets the stylesheet associated with this xml file.
- /// </summary>
- public string StylesheetFileName {
- get {
- return stylesheetFileName;
- }
- set {
- stylesheetFileName = value;
- }
- }
-
- public bool IsSchema {
- get {
- if (fileName != null) {
- string extension = Path.GetExtension(fileName);
- if (extension != null) {
- return String.Compare(extension, ".xsd", true) == 0;
- }
- }
- return false;
- }
- }
-
- public override void Load(string fileName)
- {
- using (StreamReader reader = System.IO.File.OpenText(fileName)) {
- LoadContent(reader.ReadToEnd());
- }
- ContentName = fileName;
- this.fileName = fileName;
- SetDefaultSchema(ContentName);
- }
-
- public void LoadContent(string content)
- {
- buffer.Text = content;
- buffer.Modified = false;
- }
-
- public override void Dispose()
- {
- XmlEditorAddInOptions.PropertyChanged -= new EventHandler<PropertyChangedEventArgs>(XmlEditorPropertyChanged);
- XmlSchemaManager.UserSchemaAdded -= new EventHandler(UserSchemaAdded);
- XmlSchemaManager.UserSchemaRemoved -= new EventHandler(UserSchemaRemoved);
- TextEditorProperties.Properties.PropertyChanged -= propertyChangedHandler;
- xmlEditorWindow.Dispose();
- }
-
- public override void Save(string fileName)
- {
- using (TextWriter s = new StreamWriter (fileName, true)) {
- }
-
- using (TextWriter s = new StreamWriter (fileName, false)) {
- s.Write (buffer.Text);
- }
- ContentName = fileName;
- xmlEditorWindow.View.Buffer.Modified = false;
- }
-
- /// <summary>
- /// Code taken from SourceEditorDisplayBinding.
- /// </summary>
- void SetInitialValues()
- {
- view.ShowSchemaAnnotation = XmlEditorAddInOptions.ShowSchemaAnnotation;
- view.AutoCompleteElements = XmlEditorAddInOptions.AutoCompleteElements;
-
- view.ModifyFont (TextEditorProperties.Font);
- view.ShowLineNumbers = TextEditorProperties.ShowLineNumbers;
- ((SourceBuffer)view.Buffer).HighlightMatchingBrackets = TextEditorProperties.ShowMatchingBracket;
- view.ShowRightMargin = TextEditorProperties.ShowVerticalRuler;
- view.InsertSpacesInsteadOfTabs = TextEditorProperties.ConvertTabsToSpaces;
- view.AutoIndent = (TextEditorProperties.IndentStyle == IndentStyle.Auto);
- view.HighlightCurrentLine = TextEditorProperties.HighlightCurrentLine;
- ((SourceBuffer)view.Buffer).HighlightSyntax = TextEditorProperties.SyntaxHighlight;
-
- if (TextEditorProperties.TabIndent > -1)
- view.TabWidth = (uint) TextEditorProperties.TabIndent;
- else
- view.TabWidth = (uint) 4;
-
- if (TextEditorProperties.VerticalRulerRow > -1)
- view.RightMarginPosition = (uint) TextEditorProperties.VerticalRulerRow;
- else
- view.RightMarginPosition = 80;
-
- UpdateStyleScheme ();
- }
-
- void OnModifiedChanged (object o, EventArgs e)
- {
- base.IsDirty = view.Buffer.Modified;
- }
-
- void UpdateStyleScheme ()
- {
- string id = TextEditorProperties.Properties.Get<string> ("GtkSourceViewStyleScheme", "classic");
- SourceStyleScheme scheme = GtkSourceView.SourceStyleSchemeManager.Default.GetScheme (id);
- if (scheme == null)
- MonoDevelop.Core.LoggingService.LogWarning ("GTKSourceView style scheme '" + id + "' is missing.");
- else
- ((SourceBuffer)view.Buffer).StyleScheme = scheme;
- }
-
- void XmlEditorPropertyChanged(object o, PropertyChangedEventArgs e)
- {
- switch (e.Key) {
- case "AutoCompleteElements":
- view.AutoCompleteElements = XmlEditorAddInOptions.AutoCompleteElements;
- break;
- case "ShowSchemaAnnotation":
- view.ShowSchemaAnnotation = XmlEditorAddInOptions.ShowSchemaAnnotation;
- break;
- default:
- string extension = Path.GetExtension(fileName).ToLower();
- if (e.Key == extension) {
- SetDefaultSchema(extension);
- } else {
- Console.WriteLine("XmlEditor: Unhandled property change: " + e.Key);
- }
- break;
- }
- }
-
- void SourceEditorPropertyChanged(object o, PropertyChangedEventArgs e)
- {
- switch (e.Key) {
- case "DefaultFont":
- view.ModifyFont(TextEditorProperties.Font);
- break;
- case "ShowLineNumbers":
- view.ShowLineNumbers = TextEditorProperties.ShowLineNumbers;
- break;
- case "ConvertTabsToSpaces":
- view.InsertSpacesInsteadOfTabs = TextEditorProperties.ConvertTabsToSpaces;
- break;
- case "ShowBracketHighlight":
- ((SourceBuffer)view.Buffer).HighlightMatchingBrackets = TextEditorProperties.ShowMatchingBracket;
- break;
- case "ShowVRuler":
- view.ShowRightMargin = TextEditorProperties.ShowVerticalRuler;
- break;
- case "VRulerRow":
- if (TextEditorProperties.VerticalRulerRow > -1)
- view.RightMarginPosition = (uint) TextEditorProperties.VerticalRulerRow;
- else
- view.RightMarginPosition = 80;
- break;
- case "TabIndent":
- if (TextEditorProperties.TabIndent > -1)
- view.TabWidth = (uint) TextEditorProperties.TabIndent;
- else
- view.TabWidth = (uint) 4;
- break;
- case "IndentStyle":
- view.AutoIndent = (TextEditorProperties.IndentStyle == IndentStyle.Auto);
- break;
- case "HighlightCurrentLine":
- view.HighlightCurrentLine = TextEditorProperties.HighlightCurrentLine;
- break;
- case "GtkSourceViewStyleScheme":
- UpdateStyleScheme ();
- break;
- default:
- MonoDevelop.Core.LoggingService.LogWarning ("XmlEditor: Unhandled source editor property change: " + e.Key);
- break;
- }
- }
-
- #region IClipboardHandler
- public bool EnableCut {
- get {
- return ((IClipboardHandler)view).EnableCut;
- }
- }
- public bool EnableCopy {
- get {
- return ((IClipboardHandler)view).EnableCopy;
- }
- }
- public bool EnablePaste {
- get {
- return ((IClipboardHandler)view).EnablePaste;
- }
- }
- public bool EnableDelete {
- get {
- return ((IClipboardHandler)view).EnableDelete;
- }
- }
- public bool EnableSelectAll {
- get {
- return ((IClipboardHandler)view).EnableSelectAll;
- }
- }
-
- public void Cut ()
- {
- ((IClipboardHandler)view).Cut ();
- }
-
- public void Copy ()
- {
- ((IClipboardHandler)view).Copy ();
- }
-
- public void Paste ()
- {
- ((IClipboardHandler)view).Paste ();
- }
-
- public void Delete ()
- {
- ((IClipboardHandler)view).Delete ();
- }
-
- public void SelectAll ()
- {
- ((IClipboardHandler)view).SelectAll ();
- }
- #endregion
-
- /// <summary>
- /// Sets the default schema and namespace prefix that the xml editor will use.
- /// </summary>
- void SetDefaultSchema(string fileName)
- {
- if (fileName == null) {
- return;
- }
- string extension = Path.GetExtension(fileName).ToLower();
- view.DefaultSchemaCompletionData = XmlSchemaManager.GetSchemaCompletionData(extension);
- view.DefaultNamespacePrefix = XmlSchemaManager.GetNamespacePrefix(extension);
- }
-
- /// <summary>
- /// Updates the default schema association since the schema
- /// may have been added.
- /// </summary>
- void UserSchemaAdded(object source, EventArgs e)
- {
- SetDefaultSchema(ContentName);
- }
-
- /// <summary>
- /// Updates the default schema association since the schema
- /// may have been removed.
- /// </summary>
- void UserSchemaRemoved(object source, EventArgs e)
- {
- SetDefaultSchema(ContentName);
- }
-
- #region IEditableTextBuffer
-
- public event EventHandler<TextChangedEventArgs> TextChanged;
-
- public void BeginAtomicUndo ()
- {
- //Buffer.BeginUserAction ();
- }
-
- public void EndAtomicUndo ()
- {
- //Buffer.EndUserAction ();
- }
-
- public string Name {
- get {
- return ContentName;
- }
- }
-
- public string Text {
- get {
-// if (needsUpdate) {
-// cachedText = se.Buffer.Text;
-// }
- return buffer.Text;
- }
- set {
- try {
- buffer.BeginUserAction();
- buffer.Text = value;
- } finally {
- buffer.EndUserAction();
- }
- }
- }
-
- public void Undo ()
- {
- view.UndoChange();
- }
-
- public bool EnableUndo {
- get { return buffer.CanUndo; }
- }
-
- public bool EnableRedo {
- get { return buffer.CanRedo; }
- }
-
- public void Redo ()
- {
- view.RedoChange();
- }
-
- public string SelectedText {
- get {
- return view.GetSelectedText();
- }
- set {
- int offset = view.GetLowerSelectionBounds ();
- ((IClipboardHandler)view).Delete ();
- TextIter iter = buffer.GetIterAtOffset (offset);
- buffer.Insert (ref iter, value);
- buffer.PlaceCursor(iter);
- view.ScrollMarkOnscreen (buffer.InsertMark);
- }
- }
-
- public int GetPositionFromLineColumn (int line, int column)
- {
- Console.WriteLine("GetPositionFromLineColumn");
- return -1;
- }
-
- public void InsertText (int position, string text)
- {
- Console.WriteLine("InsertText");
- }
-
- public void DeleteText (int pos, int length)
- {
- TextIter start = buffer.GetIterAtOffset (pos);
- TextIter end = buffer.GetIterAtOffset (pos + length);
- buffer.Delete (ref start, ref end);
- }
-
- public int CursorPosition {
- get {
- return buffer.GetIterAtMark(buffer.InsertMark).Offset;
- }
- set {
- buffer.MoveMark (buffer.InsertMark, buffer.GetIterAtOffset (value));
- }
- }
-
- public void GetLineColumnFromPosition (int position, out int line, out int column)
- {
- Console.WriteLine("GetLineColumnFromPosition");
- column = -1;
- line = -1;
- }
-
- public void ShowPosition (int position)
- {
- view.ScrollToIter (buffer.GetIterAtOffset (position), 0.3, false, 0, 0);
- }
-
- public char GetCharAt (int offset)
- {
- if (offset < 0)
- offset = 0;
- TextIter iter = buffer.GetIterAtOffset (offset);
- if (iter.Equals (TextIter.Zero))
- return ' ';
- if (iter.Char == null || iter.Char.Length == 0)
- return ' ';
- return iter.Char[0];
- }
-
- public string GetText (int startPosition, int endPosition)
- {
- return buffer.GetText (buffer.GetIterAtOffset (startPosition), buffer.GetIterAtOffset (endPosition), true);
- }
-
- int ITextFile.Length {
- get {
- Console.WriteLine("ITextFile.Length");
- return 0;
- }
- }
-
- public void Select (int startPosition, int endPosition)
- {
- buffer.MoveMark (buffer.InsertMark, buffer.GetIterAtOffset (startPosition));
- buffer.MoveMark (buffer.SelectionBound, buffer.GetIterAtOffset (endPosition));
- }
-
- public int SelectionStartPosition {
- get {
- TextIter p1 = buffer.GetIterAtMark (buffer.InsertMark);
- TextIter p2 = buffer.GetIterAtMark (buffer.SelectionBound);
- if (p1.Offset < p2.Offset) return p1.Offset;
- else return p2.Offset;
- }
- }
-
- public int SelectionEndPosition {
- get {
- TextIter p1 = buffer.GetIterAtMark (buffer.InsertMark);
- TextIter p2 = buffer.GetIterAtMark (buffer.SelectionBound);
- if (p1.Offset > p2.Offset) return p1.Offset;
- else return p2.Offset;
- }
- }
-
- #endregion
-
- #region IDocumentInformation
-
- string IDocumentInformation.FileName {
- get { return ContentName != null ? ContentName : UntitledName; }
- }
-
- public ITextIterator GetTextIterator ()
- {
- int startOffset = buffer.GetIterAtMark (buffer.InsertMark).Offset;
- return new SourceViewTextIterator (this, view, startOffset);
- }
-
- public string GetLineTextAtOffset (int offset)
- {
- TextIter resultIter = buffer.GetIterAtOffset (offset);
- TextIter start_line = resultIter, end_line = resultIter;
- start_line.LineOffset = 0;
- end_line.ForwardToLineEnd ();
- return view.GetText (start_line.Offset, end_line.Offset - start_line.Offset);
- }
-
- #endregion
-
- #region IPositionable
-
- public void SetCaretTo (int line, int column)
- {
- // NOTE: 1 based!
- TextIter itr = view.Buffer.GetIterAtLine (line - 1);
- itr.LineOffset = column - 1;
-
- view.Buffer.PlaceCursor (itr);
- view.ScrollToMark (view.Buffer.InsertMark, 0.3, false, 0, 0);
- GLib.Timeout.Add (20, new GLib.TimeoutHandler (changeFocus));
- }
-
- protected virtual void OnCaretPositionSet (EventArgs args)
- {
- if (CaretPositionSet != null)
- CaretPositionSet (this, args);
- }
- public event EventHandler CaretPositionSet;
-
- //This code exists to workaround a gtk+ 2.4 regression/bug
- //
- //The gtk+ 2.4 treeview steals focus with double clicked
- //row_activated.
- // http://bugzilla.gnome.org/show_bug.cgi?id=138458
- bool changeFocus ()
- {
- if (!view.IsRealized)
- return false;
- view.GrabFocus ();
- view.ScrollToMark (view.Buffer.InsertMark, 0.3, false, 0, 0);
- OnCaretPositionSet (EventArgs.Empty);
- return false;
- }
-
- #endregion
-
- void BufferChanged(object source, EventArgs e)
- {
- if (TextChanged != null) {
- TextChanged(this, new TextChangedEventArgs(0, 0));
- }
- }
- }
-}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlNamespace.cs b/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlNamespace.cs
deleted file mode 100644
index cc0023757e..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlNamespace.cs
+++ /dev/null
@@ -1,82 +0,0 @@
-//
-// MonoDevelop XML Editor
-//
-// Copyright (C) 2006 Matthew Ward
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-
-using System;
-
-namespace MonoDevelop.XmlEditor
-{
- /// <summary>
- /// A namespace Uri and a prefix.
- /// </summary>
- public class XmlNamespace
- {
- string prefix = String.Empty;
- string uri = String.Empty;
-
- const string prefixToStringStart = "Prefix [";
- const string uriToStringMiddle = "] Uri [";
-
- public XmlNamespace(string prefix, string uri)
- {
- this.prefix = prefix;
- this.uri = uri;
- }
-
- public string Prefix {
- get {
- return prefix;
- }
- }
-
- public string Uri {
- get {
- return uri;
- }
- }
-
- public override string ToString()
- {
- return String.Concat(prefixToStringStart, prefix, uriToStringMiddle, uri, "]");
- }
-
- /// <summary>
- /// Creates an XmlNamespace instance from the given string that is in the
- /// format returned by ToString.
- /// </summary>
- public static XmlNamespace FromString(string s)
- {
- int prefixIndex = s.IndexOf(prefixToStringStart);
- if (prefixIndex >= 0) {
- prefixIndex += prefixToStringStart.Length;
- int uriIndex = s.IndexOf(uriToStringMiddle, prefixIndex);
- if (uriIndex >= 0) {
- string prefix = s.Substring(prefixIndex, uriIndex - prefixIndex);
- uriIndex += uriToStringMiddle.Length;
- string uri = s.Substring(uriIndex, s.Length - (uriIndex + 1));
- return new XmlNamespace(prefix, uri);
- }
- }
- return new XmlNamespace(String.Empty, String.Empty);
- }
- }
-}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlParser.cs b/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlParser.cs
deleted file mode 100755
index d5081be66a..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlParser.cs
+++ /dev/null
@@ -1,704 +0,0 @@
-//
-// MonoDevelop XML Editor
-//
-// Copyright (C) 2005, 2006 Matthew Ward
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-
-using System;
-using System.Collections;
-using System.IO;
-using System.Net;
-using System.Text;
-using System.Text.RegularExpressions;
-using System.Xml;
-
-namespace MonoDevelop.XmlEditor
-{
- /// <summary>
- /// Utility class that contains xml parsing routines used to determine
- /// the currently selected element so we can provide intellisense.
- /// </summary>
- /// <remarks>
- /// All of the routines return <see cref="XmlElementPath"/> objects
- /// since we are interested in the complete path or tree to the
- /// currently active element.
- /// </remarks>
- public class XmlParser
- {
- /// <summary>
- /// Helper class. Holds the namespace URI and the prefix currently
- /// in use for this namespace.
- /// </summary>
- class NamespaceURI
- {
- string namespaceURI = String.Empty;
- string prefix = String.Empty;
-
- public NamespaceURI()
- {
- }
-
- public NamespaceURI(string namespaceURI, string prefix)
- {
- this.namespaceURI = namespaceURI;
- this.prefix = prefix;
- }
-
- public string Namespace {
- get {
- return namespaceURI;
- }
- set {
- namespaceURI = value;
- }
- }
-
- public string Prefix {
- get {
- return prefix;
- }
- set {
- prefix = value;
- if (prefix == null) {
- prefix = String.Empty;
- }
- }
- }
- }
-
- XmlParser()
- {
- }
-
- /// <summary>
- /// Gets path of the xml element start tag that the specified
- /// <paramref name="index"/> is currently inside.
- /// </summary>
- /// <remarks>If the index outside the start tag then an empty path
- /// is returned.</remarks>
- public static XmlElementPath GetActiveElementStartPath(string xml, int index)
- {
- XmlElementPath path = new XmlElementPath();
-
- string elementText = GetActiveElementStartText(xml, index);
-
- if (elementText != null) {
- QualifiedName elementName = GetElementName(elementText);
- NamespaceURI elementNamespace = GetElementNamespace(elementText);
-
- path = GetParentElementPath(xml.Substring(0, index));
- if (elementNamespace.Namespace.Length == 0) {
- if (path.Elements.Count > 0) {
- QualifiedName parentName = path.Elements[path.Elements.Count - 1];
- elementNamespace.Namespace = parentName.Namespace;
- elementNamespace.Prefix = parentName.Prefix;
- }
- }
-
- path.Elements.Add(new QualifiedName(elementName.Name, elementNamespace.Namespace, elementNamespace.Prefix));
- path.Compact();
- }
-
- return path;
- }
-
- /// <summary>
- /// Gets path of the xml element start tag that the specified
- /// <paramref name="index"/> is currently located. This is different to the
- /// GetActiveElementStartPath method since the index can be inside the element
- /// name.
- /// </summary>
- /// <remarks>If the index outside the start tag then an empty path
- /// is returned.</remarks>
- public static XmlElementPath GetActiveElementStartPathAtIndex(string xml, int index)
- {
- // Find first non xml element name character to the right of the index.
- index = GetCorrectedIndex(xml.Length, index);
- int currentIndex = index;
- for (; currentIndex < xml.Length; ++currentIndex) {
- char ch = xml[currentIndex];
- if (!IsXmlNameChar(ch)) {
- break;
- }
- }
-
- string elementText = GetElementNameAtIndex(xml, currentIndex);
- if (elementText != null) {
- return GetActiveElementStartPath(xml, currentIndex, elementText);
- }
- return new XmlElementPath();
- }
-
- /// <summary>
- /// Gets the parent element path based on the index position.
- /// </summary>
- public static XmlElementPath GetParentElementPath(string xml)
- {
- XmlElementPath path = new XmlElementPath();
-
- try {
- StringReader reader = new StringReader(xml);
- XmlTextReader xmlReader = new XmlTextReader(reader);
- xmlReader.XmlResolver = null;
- while (xmlReader.Read()) {
- switch (xmlReader.NodeType) {
- case XmlNodeType.Element:
- if (!xmlReader.IsEmptyElement) {
- QualifiedName elementName = new QualifiedName(xmlReader.LocalName, xmlReader.NamespaceURI, xmlReader.Prefix);
- path.Elements.Add(elementName);
- }
- break;
- case XmlNodeType.EndElement:
- path.Elements.RemoveLast();
- break;
- }
- }
- } catch (XmlException) {
- // Do nothing.
- } catch (WebException) {
- // Do nothing.
- }
-
- path.Compact();
-
- return path;
- }
-
- /// <summary>
- /// Checks whether the attribute at the end of the string is a
- /// namespace declaration.
- /// </summary>
- public static bool IsNamespaceDeclaration(string xml, int index)
- {
- if (xml.Length == 0) {
- return false;
- }
-
- index = GetCorrectedIndex(xml.Length, index);
-
- // Move back one character if the last character is an '='
- if (xml[index] == '=') {
- xml = xml.Substring(0, xml.Length - 1);
- --index;
- }
-
- // From the end of the string work backwards until we have
- // picked out the last attribute and reached some whitespace.
- StringBuilder reversedAttributeName = new StringBuilder();
-
- bool ignoreWhitespace = true;
- int currentIndex = index;
- for (int i = 0; i < index; ++i) {
-
- char currentChar = xml[currentIndex];
-
- if (Char.IsWhiteSpace(currentChar)) {
- if (ignoreWhitespace == false) {
- // Reached the start of the attribute name.
- break;
- }
- } else if (Char.IsLetterOrDigit(currentChar) || (currentChar == ':')) {
- ignoreWhitespace = false;
- reversedAttributeName.Append(currentChar);
- } else {
- // Invalid string.
- break;
- }
-
- --currentIndex;
- }
-
- // Did we get a namespace?
-
- bool isNamespace = false;
-
- if ((reversedAttributeName.ToString() == "snlmx") || (reversedAttributeName.ToString().EndsWith(":snlmx"))) {
- isNamespace = true;
- }
-
- return isNamespace;
- }
-
- /// <summary>
- /// Gets the name of the attribute inside but before the specified
- /// index.
- /// </summary>
- public static string GetAttributeName(string xml, int index)
- {
- if (xml.Length == 0) {
- return String.Empty;
- }
-
- index = GetCorrectedIndex(xml.Length, index);
-
- return GetAttributeName(xml, index, true, true, true);
- }
-
- /// <summary>
- /// Gets the name of the attribute at the specified index. The index
- /// can be anywhere inside the attribute name or in the attribute value.
- /// </summary>
- public static string GetAttributeNameAtIndex(string xml, int index)
- {
- index = GetCorrectedIndex(xml.Length, index);
-
- bool ignoreWhitespace = true;
- bool ignoreEqualsSign = false;
- bool ignoreQuote = false;
-
- if (IsInsideAttributeValue(xml, index)) {
- // Find attribute name start.
- int elementStartIndex = GetActiveElementStartIndex(xml, index);
- if (elementStartIndex == -1) {
- return String.Empty;
- }
-
- // Find equals sign.
- for (int i = index; i > elementStartIndex; --i) {
- char ch = xml[i];
- if (ch == '=') {
- index = i;
- ignoreEqualsSign = true;
- break;
- }
- }
- } else {
- // Find end of attribute name.
- for (; index < xml.Length; ++index) {
- char ch = xml[index];
- if (!Char.IsLetterOrDigit(ch)) {
- if (ch == '\'' || ch == '\"') {
- ignoreQuote = true;
- ignoreEqualsSign = true;
- }
- break;
- }
- }
- --index;
- }
-
- return GetAttributeName(xml, index, ignoreWhitespace, ignoreQuote, ignoreEqualsSign);
- }
-
- /// <summary>
- /// Checks for valid xml attribute value character
- /// </summary>
- public static bool IsAttributeValueChar(char ch)
- {
- if (Char.IsLetterOrDigit(ch) ||
- (ch == ':') ||
- (ch == '/') ||
- (ch == '_') ||
- (ch == '.') ||
- (ch == '-') ||
- (ch == '#'))
- {
- return true;
- }
-
- return false;
- }
-
- /// <summary>
- /// Checks for valid xml element or attribute name character.
- /// </summary>
- public static bool IsXmlNameChar(char ch)
- {
- if (Char.IsLetterOrDigit(ch) ||
- (ch == ':') ||
- (ch == '/') ||
- (ch == '_') ||
- (ch == '.') ||
- (ch == '-'))
- {
- return true;
- }
-
- return false;
- }
-
- /// <summary>
- /// Determines whether the specified index is inside an attribute value.
- /// </summary>
- public static bool IsInsideAttributeValue(string xml, int index)
- {
- if (xml.Length == 0) {
- return false;
- }
-
- if (index > xml.Length) {
- index = xml.Length;
- }
-
- int elementStartIndex = GetActiveElementStartIndex(xml, index);
- if (elementStartIndex == -1) {
- return false;
- }
-
- // Count the number of double quotes and single quotes that exist
- // before the first equals sign encountered going backwards to
- // the start of the active element.
- bool foundEqualsSign = false;
- int doubleQuotesCount = 0;
- int singleQuotesCount = 0;
- char lastQuoteChar = ' ';
- for (int i = index - 1; i > elementStartIndex; --i) {
- char ch = xml[i];
- if (ch == '=') {
- foundEqualsSign = true;
- break;
- } else if (ch == '\"') {
- lastQuoteChar = ch;
- ++doubleQuotesCount;
- } else if (ch == '\'') {
- lastQuoteChar = ch;
- ++singleQuotesCount;
- }
- }
-
- bool isInside = false;
-
- if (foundEqualsSign) {
- // Odd number of quotes?
- if ((lastQuoteChar == '\"') && ((doubleQuotesCount % 2) > 0)) {
- isInside = true;
- } else if ((lastQuoteChar == '\'') && ((singleQuotesCount %2) > 0)) {
- isInside = true;
- }
- }
-
- return isInside;
- }
-
- /// <summary>
- /// Gets the attribute value at the specified index.
- /// </summary>
- /// <returns>An empty string if no attribute value can be found.</returns>
- public static string GetAttributeValueAtIndex(string xml, int index)
- {
- if (!IsInsideAttributeValue(xml, index)) {
- return String.Empty;
- }
-
- index = GetCorrectedIndex(xml.Length, index);
-
- int elementStartIndex = GetActiveElementStartIndex(xml, index);
- if (elementStartIndex == -1) {
- return String.Empty;
- }
-
- // Find equals sign.
- int equalsSignIndex = -1;
- for (int i = index; i > elementStartIndex; --i) {
- char ch = xml[i];
- if (ch == '=') {
- equalsSignIndex = i;
- break;
- }
- }
-
- if (equalsSignIndex == -1) {
- return String.Empty;
- }
-
- // Find attribute value.
- char quoteChar = ' ';
- bool foundQuoteChar = false;
- StringBuilder attributeValue = new StringBuilder();
- for (int i = equalsSignIndex; i < xml.Length; ++i) {
- char ch = xml[i];
- if (!foundQuoteChar) {
- if (ch == '\"' || ch == '\'') {
- quoteChar = ch;
- foundQuoteChar = true;
- }
- } else {
- if (ch == quoteChar) {
- // End of attribute value.
- return attributeValue.ToString();
- } else if (IsAttributeValueChar(ch) || (ch == '\"' || ch == '\'')) {
- attributeValue.Append(ch);
- } else {
- // Invalid character found.
- return String.Empty;
- }
- }
- }
-
- return String.Empty;
- }
-
- /// <summary>
- /// Gets the text of the xml element start tag that the index is
- /// currently inside.
- /// </summary>
- /// <returns>
- /// Returns the text up to and including the start tag &lt; character.
- /// </returns>
- static string GetActiveElementStartText(string xml, int index)
- {
- int elementStartIndex = GetActiveElementStartIndex(xml, index);
- if (elementStartIndex >= 0) {
- if (elementStartIndex < index) {
- int elementEndIndex = GetActiveElementEndIndex(xml, index);
- if (elementEndIndex >= index) {
- return xml.Substring(elementStartIndex, elementEndIndex - elementStartIndex);
- }
- }
- }
- return null;
- }
-
- /// <summary>
- /// Locates the index of the start tag &lt; character.
- /// </summary>
- /// <returns>
- /// Returns the index of the start tag character; otherwise
- /// -1 if no start tag character is found or a end tag
- /// &gt; character is found first.
- /// </returns>
- static int GetActiveElementStartIndex(string xml, int index)
- {
- int elementStartIndex = -1;
-
- int currentIndex = index - 1;
- for (int i = 0; i < index; ++i) {
-
- char currentChar = xml[currentIndex];
- if (currentChar == '<') {
- elementStartIndex = currentIndex;
- break;
- } else if (currentChar == '>') {
- break;
- }
-
- --currentIndex;
- }
-
- return elementStartIndex;
- }
-
- /// <summary>
- /// Locates the index of the end tag character.
- /// </summary>
- /// <returns>
- /// Returns the index of the end tag character; otherwise
- /// -1 if no end tag character is found or a start tag
- /// character is found first.
- /// </returns>
- static int GetActiveElementEndIndex(string xml, int index)
- {
- int elementEndIndex = index;
-
- for (int i = index; i < xml.Length; ++i) {
-
- char currentChar = xml[i];
- if (currentChar == '>') {
- elementEndIndex = i;
- break;
- } else if (currentChar == '<'){
- elementEndIndex = -1;
- break;
- }
- }
-
- return elementEndIndex;
- }
-
- /// <summary>
- /// Gets the element name from the element start tag string.
- /// </summary>
- /// <param name="xml">This string must start at the
- /// element we are interested in.</param>
- static QualifiedName GetElementName(string xml)
- {
- string name = String.Empty;
-
- // Find the end of the element name.
- xml = xml.Replace("\r\n", " ");
- int index = xml.IndexOf(' ');
- if (index > 0) {
- name = xml.Substring(1, index - 1);
- } else {
- name = xml.Substring(1);
- }
-
- QualifiedName qualifiedName = new QualifiedName();
-
- int prefixIndex = name.IndexOf(':');
- if (prefixIndex > 0) {
- qualifiedName.Prefix = name.Substring(0, prefixIndex);
- qualifiedName.Name = name.Substring(prefixIndex + 1);
- } else {
- qualifiedName.Name = name;
- }
-
- return qualifiedName;
- }
-
- /// <summary>
- /// Gets the element namespace from the element start tag
- /// string.
- /// </summary>
- /// <param name="xml">This string must start at the
- /// element we are interested in.</param>
- static NamespaceURI GetElementNamespace(string xml)
- {
- NamespaceURI namespaceURI = new NamespaceURI();
-
- Match match = Regex.Match(xml, ".*?(xmlns\\s*?|xmlns:.*?)=\\s*?['\\\"](.*?)['\\\"]");
- if (match.Success) {
- namespaceURI.Namespace = match.Groups[2].Value;
-
- string xmlns = match.Groups[1].Value.Trim();
- int prefixIndex = xmlns.IndexOf(':');
- if (prefixIndex > 0) {
- namespaceURI.Prefix = xmlns.Substring(prefixIndex + 1);
- }
- }
-
- return namespaceURI;
- }
-
- static string ReverseString(string text)
- {
- StringBuilder reversedString = new StringBuilder(text);
-
- int index = text.Length;
- foreach (char ch in text) {
- --index;
- reversedString[index] = ch;
- }
-
- return reversedString.ToString();
- }
-
- /// <summary>
- /// Ensures that the index is on the last character if it is
- /// too large.
- /// </summary>
- /// <param name="length">The length of the string.</param>
- /// <param name="index">The current index.</param>
- /// <returns>The index unchanged if the index is smaller than the
- /// length of the string; otherwise it returns length - 1.</returns>
- static int GetCorrectedIndex(int length, int index)
- {
- if (index >= length) {
- index = length - 1;
- }
- return index;
- }
-
- /// <summary>
- /// Gets the active element path given the element text.
- /// </summary>
- static XmlElementPath GetActiveElementStartPath(string xml, int index, string elementText)
- {
- QualifiedName elementName = GetElementName(elementText);
- NamespaceURI elementNamespace = GetElementNamespace(elementText);
-
- XmlElementPath path = GetParentElementPath(xml.Substring(0, index));
- if (elementNamespace.Namespace.Length == 0) {
- if (path.Elements.Count > 0) {
- QualifiedName parentName = path.Elements[path.Elements.Count - 1];
- elementNamespace.Namespace = parentName.Namespace;
- elementNamespace.Prefix = parentName.Prefix;
- }
- }
- path.Elements.Add(new QualifiedName(elementName.Name, elementNamespace.Namespace, elementNamespace.Prefix));
- path.Compact();
- return path;
- }
-
- static string GetAttributeName(string xml, int index, bool ignoreWhitespace, bool ignoreQuote, bool ignoreEqualsSign)
- {
- string name = String.Empty;
-
- // From the end of the string work backwards until we have
- // picked out the attribute name.
- StringBuilder reversedAttributeName = new StringBuilder();
-
- int currentIndex = index;
- bool invalidString = true;
-
- for (int i = 0; i <= index; ++i) {
-
- char currentChar = xml[currentIndex];
-
- if (Char.IsLetterOrDigit(currentChar)) {
- if (!ignoreEqualsSign) {
- ignoreWhitespace = false;
- reversedAttributeName.Append(currentChar);
- }
- } else if (Char.IsWhiteSpace(currentChar)) {
- if (ignoreWhitespace == false) {
- // Reached the start of the attribute name.
- invalidString = false;
- break;
- }
- } else if ((currentChar == '\'') || (currentChar == '\"')) {
- if (ignoreQuote) {
- ignoreQuote = false;
- } else {
- break;
- }
- } else if (currentChar == '='){
- if (ignoreEqualsSign) {
- ignoreEqualsSign = false;
- } else {
- break;
- }
- } else if (IsAttributeValueChar(currentChar)) {
- if (!ignoreQuote) {
- break;
- }
- } else {
- break;
- }
-
- --currentIndex;
- }
-
- if (!invalidString) {
- name = ReverseString(reversedAttributeName.ToString());
- }
-
- return name;
- }
-
- /// <summary>
- /// Gets the element name at the specified index.
- /// </summary>
- static string GetElementNameAtIndex(string xml, int index)
- {
- int elementStartIndex = GetActiveElementStartIndex(xml, index);
- if (elementStartIndex >= 0 && elementStartIndex < index) {
- int elementEndIndex = GetActiveElementEndIndex(xml, index);
- if (elementEndIndex == -1) {
- elementEndIndex = xml.IndexOf(' ', elementStartIndex);
- }
- if (elementEndIndex >= elementStartIndex) {
- return xml.Substring(elementStartIndex, elementEndIndex - elementStartIndex);
- }
- }
- return null;
- }
- }
-}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/README b/main/src/addins/MonoDevelop.XmlEditor/README
deleted file mode 100644
index 0cc9096f73..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/README
+++ /dev/null
@@ -1,79 +0,0 @@
-
-This is an XML Editor add-in for MonoDevelop. The code has
-been ported from the SharpDevelop XML Editor. Please see
-http://md-xed.sourceforge.net for more information.
-
-Requirement
------------
-
-MonoDevelop from the repository has been installed:
-
-http://svn.myrealbox.com/viewcvs/trunk/monodevelop/
-
-
-Compiling for users
--------------------
-
-./configure --prefix=/the/path/where/monodevelop/was/installed
-make
-make install
-
-
-Compiling for developers
-------------------------
-
-To compile run the following command:
-
-./autogen.sh --prefix=/the/path/where/monodevelop/was/installed
-make
-make install
-
-
-Compiling using MonoDevelop
----------------------------
-
-The source code includes a MonoDevelop project file src/MonoDevelop.XmlEditor.mds
-which can be used to build the code.
-
-If MonoDevelop was installed to /home/username then putting the source code from
-the repository into /home/username/src/md-xmleditor should mean the project
-will build without having to modify the project references.
-
-Example folder layout:
-
-/home/matt/lib/monodevelop/AddIns - (MonoDevelop addins folder)
-/home/matt/src/md-xmleditor - (MonoDevelop.XmlEditor source)
-
-The assemblies are built to the build folder, copy the XmlEditor folder and
-all its files and folders to lib/monodevelop/AddIns/XmlEditor.
-
-
-Dependencies
-------------
-MonoDevelop >= 1.0
-Mono >= 1.1.4
-Gtk# >= 2.3.90
-gecko-sharp >= 0.10
-gtksourceview-sharp >= 0.10
-
-
-Directory Roadmap
------------------
-
- build/AddIns/XmlEditor
- The Xml Editor assemblies are built to this folder.
-
- src/
- Source code.
-
- src/MonoDevelop.XmlEditor
- The Xml Editor add-in source code.
-
- src/MonoDevelop.XmlEditor/schemas
- Schemas that are installed with the Xml Editor add-in by default.
-
- src/MonoDevelop.XmlEditor.Tests
- Contains NUnit tests for the core code of the Xml Editor.
-
-
-
diff --git a/main/src/addins/MonoDevelop.XmlEditor/TODO b/main/src/addins/MonoDevelop.XmlEditor/TODO
deleted file mode 100644
index ed77622c2f..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/TODO
+++ /dev/null
@@ -1,64 +0,0 @@
-MonoDevelop XML Editor Issues and TODO list
--------------------------------------------
-
-This list should be moved to the SourceForge issues tracker.
-
-* Cannot create an XML file with any extension other than .xml. MonoDevelop problem.
-* XML Editor has a list of file extensions that it recognises as XML content. Really
- this should be using the mime type. The XML editor add-in should install extra
- types into the mime type database.
-* At the moment it only recognises the mime type "text/xml". XSL files, for example,
- have a mime type of "text/xsl". However, the XML editor checks the file extension
- as well so an XSL file will be opened in the XML editor.
-* 11 unit tests are currently not working. Atsushi Eno has been fixing issues as
- quick as I can report them, so a lot of these unit tests should work under the
- next release of Mono.
-* Autocompletion of elements, after typing in the greater than sign, is over zealous.
-* The autocompletion list requires an icon. I would prefer not to have one for
- XML completion, but at the moment it is using the stock forward icon.
-* When validating XML documents errors are added to the task list by creating a
- CompilerResult object. There is no other way to create an error task.
-* The XML menu option is displayed all the time. In SharpDevelop I used the
- activewindow property to show/hide the menu when the XML editor is being
- used/not used. Unable to get this working.
-* Mixed namespace handling is limited. The element completion list is based on the
- parent element at the current location. Really this should take into account any
- other available namespaces that are allowed at that location.
-* Commenting out regions of XML. SharpDevelop implements this, but there are a few
- bugs.
-* The "Show Schema Annotation" XML Editor option does nothing. Schema annotation
- is always displayed if available.
-* Goto Schema Definition does not scroll to the correct line the first time the
- schema is opened. The XmlEditorView.JumpTo method is called correctly, but
- for some reason it does not scroll.
-* Fix 7 obsolete methods/classes used warnings due to moving to .NET 2.0. The
- "Use XmlReader created by XmlReader.Create() method" is easy to fix. The
- "XmlSchema.Compile' is obsolete: `Use XmlSchemaSet.Compile() instead." might not
- be fixed since the XmlSchemaSet.Compile broke a lot of the unit tests when I
- tried the same thing with SharpDevelop.
-* Hold off switching to using XmlReader.Create. Doing this we hit an error in
- Mono (1.1.15):
-
- System.NullReferenceException: Object reference not set to an instance of an object
- in <0x0006d> Mono.Xml.Schema.XmlSchemaValidatingReader:get_Prefix ()
- in <0x0004f> System.Xml.XmlDocument:ReadAttributeNode (System.Xml.XmlReader reader)
- in <0x00253> System.Xml.XmlDocument:ReadNodeCore (System.Xml.XmlReader reader)
- in <0x000be> System.Xml.XmlDocument:ReadNode (System.Xml.XmlReader reader)
- in <0x00044> System.Xml.XmlDocument:Load (System.Xml.XmlReader xmlReader)
-
- Loading an xml schema using code:
-
- StringReader stringReader = new StringReader(xml);
- XmlTextReader xmlReader = new XmlTextReader(stringReader);
- xmlReader.XmlResolver = null;
- XmlReaderSettings settings = new XmlReaderSettings();
- settings.ValidationType = ValidationType.Schema;
- settings.ValidationFlags = XmlSchemaValidationFlags.None;
- settings.XmlResolver = null;
- settings.Schemas.Add(schema);
- XmlReader reader = XmlReader.Create(xmlReader, settings);
- XmlDocument doc = new XmlDocument();
- doc.Load(reader);
-
-
-
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/AssemblyInfo.cs b/main/src/addins/MonoDevelop.XmlEditor/Tests/AssemblyInfo.cs
deleted file mode 100644
index 8f12aff3ea..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/AssemblyInfo.cs
+++ /dev/null
@@ -1,32 +0,0 @@
-using System.Reflection;
-using System.Runtime.CompilerServices;
-
-// Information about this assembly is defined by the following
-// attributes.
-//
-// change them to the information which is associated with the assembly
-// you compile.
-
-[assembly: AssemblyTitle("")]
-[assembly: AssemblyDescription("")]
-[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("")]
-[assembly: AssemblyCopyright("")]
-[assembly: AssemblyTrademark("")]
-[assembly: AssemblyCulture("")]
-
-// The assembly version has following format :
-//
-// Major.Minor.Build.Revision
-//
-// You can specify all values by your own or you can build default build and revision
-// numbers with the '*' character (the default):
-
-[assembly: AssemblyVersion("0.6")]
-
-// The following attributes specify the key for the sign of your assembly. See the
-// .NET Framework documentation for more information about signing.
-// This is not required, if you don't want signing let these attributes like they're.
-//[assembly: AssemblyDelaySign(false)]
-//[assembly: AssemblyKeyFile("")]
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/ChangeLog b/main/src/addins/MonoDevelop.XmlEditor/Tests/ChangeLog
deleted file mode 100644
index 43b56d48d7..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/ChangeLog
+++ /dev/null
@@ -1,86 +0,0 @@
-2010-03-17 Lluis Sanchez Gual <lluis@novell.com>
-
- * Schema/ChoiceTestFixture.cs:
- * Schema/GroupRefTestFixture.cs:
- * Schema/XsdSchemaTestFixture.cs:
- * Schema/SchemaTestFixtureBase.cs:
- * Schema.Uri/GetUriTestFixture.cs:
- * Schema/AllElementTestFixture.cs:
- * Schema/AttributeRefTestFixture.cs:
- * Schema/NestedChoiceTestFixture.cs:
- * Schema/NestedSequenceTestFixture.cs:
- * Schema/AbstractElementTestFixture.cs:
- * Schema/SequencedChoiceTestFixture.cs:
- * Schema/TwoElementSchemaTestFixture.cs:
- * Schema/DuplicateElementTestFixture.cs:
- * Schema/ExtensionElementTestFixture.cs:
- * Schema/XhtmlStrictSchemaTestFixture.cs:
- * Schema/AttributeGroupRefTestFixture.cs:
- * Schema/ElementAnnotationTestFixture.cs:
- * Schema/GroupRefCompositorTestFixture.cs:
- * Schema/RestrictionElementTestFixture.cs:
- * Schema/EnumAttributeValueTestFixture.cs:
- * Schema/ReferencedElementsTestFixture.cs:
- * Schema/NamespaceCompletionTestFixture.cs:
- * Schema/AttributeAnnotationTestFixture.cs:
- * Schema/SingleElementSchemaTestFixture.cs:
- * Schema/NestedElementSchemaTestFixture.cs:
- * Schema/MissingSchemaElementTestFixture.cs:
- * Schema/ElementRefAnnotationTestFixture.cs:
- * Schema/ChildElementAttributesTestFixture.cs:
- * Schema/NestedAttributeGroupRefTestFixture.cs:
- * Schema/ComplexContentExtensionTestFixture.cs:
- * Schema/AttributeValueAnnotationTestFixture.cs:
- * FindSchemaObject/ElementSelectedTestFixture.cs:
- * Schema/SimpleContentWithAttributeTestFixture.cs:
- * Schema/ElementWithAttributeSchemaTestFixture.cs:
- * FindSchemaObject/AttributeSelectedTestFixture.cs:
- * Schema/FindAttributeFromComplexTypeTestFixture.cs:
- * FindSchemaObject/ElementTypeSelectedTestFixture.cs:
- * CompletionData/XmlCompletionDataImageTestFixture.cs:
- * FindSchemaObject/AttributeTypeSelectedTestFixture.cs:
- * CompletionData/XmlCompletionDataStringTestFixture.cs:
- * FindSchemaObject/GroupReferenceSelectedTestFixture.cs:
- * Schema.Includes/TwoElementSchemaIncludeTestFixture.cs:
- * FindSchemaObject/ElementReferenceSelectedTestFixture.cs:
- * FindSchemaObject/AttributeReferenceSelectedTestFixture.cs:
- * FindSchemaObject/ElementTypeWithPrefixSelectedTestFixture.cs:
- * Schema.Includes/AttributeGroupRefSchemaIncludeTestFixture.cs:
- * FindSchemaObject/AttributeGroupReferenceSelectedTestFixture.cs:
- * FindSchemaObject/ElementReferenceWithPrefixSelectedTestFixture.cs:
- Merged MD.Projects into MD.Core, and MD.Projects.Gui,
- MD.Core.Gui and MD.Components into MD.Ide.
-
-2009-10-29 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.XmlEditor.Tests.csproj: Flush.
-
-2009-06-19 Mike Krüger <mkrueger@novell.com>
-
- * AssemblyInfo.cs: Commented out empty assembly key file
- attribute (Bug 513981 - Project template causes CS1726
- errors).
-
-2009-05-19 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.XmlEditor.Tests.csproj: Flush.
-
-2009-03-13 Mike Krüger <mkrueger@novell.com>
-
- * MonoDevelop.XmlEditor.Tests.csproj: Moved text editor to
- core
-
-2009-02-28 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.XmlEditor.Tests.csproj: Flush.
-
-2009-02-17 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.XmlEditor.Tests.csproj: Updated.
-
-2009-02-06 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.XmlEditor.Tests.mdp:
- * MonoDevelop.XmlEditor.Tests.csproj: Migrated to MSBuild file
- format.
-
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/FindSchemaObject/AttributeGroupReferenceSelectedTestFixture.cs b/main/src/addins/MonoDevelop.XmlEditor/Tests/FindSchemaObject/AttributeGroupReferenceSelectedTestFixture.cs
deleted file mode 100644
index e2dcb84e16..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/FindSchemaObject/AttributeGroupReferenceSelectedTestFixture.cs
+++ /dev/null
@@ -1,55 +0,0 @@
-using NUnit.Framework;
-using System;
-using System.Xml.Schema;
-using MonoDevelop.XmlEditor.Tests.Schema;
-using MonoDevelop.XmlEditor.Tests.Utils;
-using MonoDevelop.XmlEditor.Completion;
-
-namespace MonoDevelop.XmlEditor.Tests.FindSchemaObject
-{
-/* /// <summary>
- /// Tests that an xs:attributeGroup/@ref is located in the schema.
- /// </summary>
- [TestFixture]
- public class AttributeGroupReferenceSelectedTestFixture : SchemaTestFixtureBase
- {
- XmlSchemaAttributeGroup schemaAttributeGroup;
-
- public override void FixtureInit()
- {
- XmlSchemaCompletionDataCollection schemas = new XmlSchemaCompletionDataCollection();
- schemas.Add(SchemaCompletionData);
- XmlSchemaCompletionData xsdSchemaCompletionData = new XmlSchemaCompletionData(ResourceManager.GetXsdSchema());
- schemas.Add(xsdSchemaCompletionData);
- XmlCompletionDataProvider provider = new XmlCompletionDataProvider(schemas, xsdSchemaCompletionData, String.Empty, null);
-
- string xml = GetSchema();
- int index = xml.IndexOf("ref=\"coreattrs\"");
- index = xml.IndexOf("coreattrs", index);
- schemaAttributeGroup = (XmlSchemaAttributeGroup)XmlEditorView.GetSchemaObjectSelected(xml, index, provider, SchemaCompletionData);
- }
-
- [Test]
- public void AttributeGroupName()
- {
- Assert.AreEqual("coreattrs", schemaAttributeGroup.QualifiedName.Name);
- }
-
- protected override string GetSchema()
- {
- return "<xs:schema xmlns:xs=\"http://www.w3.org/2001/XMLSchema\" targetNamespace=\"http://www.w3schools.com\" xmlns=\"http://www.w3schools.com\" elementFormDefault=\"qualified\">\r\n" +
- "<xs:attributeGroup name=\"coreattrs\">" +
- "\t<xs:attribute name=\"id\" type=\"xs:string\"/>" +
- "\t<xs:attribute name=\"style\" type=\"xs:string\"/>" +
- "\t<xs:attribute name=\"title\" type=\"xs:string\"/>" +
- "</xs:attributeGroup>" +
- "\t<xs:element name=\"note\">\r\n" +
- "\t\t<xs:complexType>\r\n" +
- "\t\t\t<xs:attributeGroup ref=\"coreattrs\"/>" +
- "\t\t\t<xs:attribute name=\"name\" type=\"xs:string\"/>\r\n" +
- "\t\t</xs:complexType>\r\n" +
- "\t</xs:element>\r\n" +
- "</xs:schema>";
- }
- }*/
-}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/FindSchemaObject/AttributeReferenceSelectedTestFixture.cs b/main/src/addins/MonoDevelop.XmlEditor/Tests/FindSchemaObject/AttributeReferenceSelectedTestFixture.cs
deleted file mode 100644
index 34c64b3c57..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/FindSchemaObject/AttributeReferenceSelectedTestFixture.cs
+++ /dev/null
@@ -1,70 +0,0 @@
-using NUnit.Framework;
-using System;
-using System.Xml.Schema;
-using MonoDevelop.XmlEditor.Completion;
-using MonoDevelop.XmlEditor.Tests.Schema;
-using MonoDevelop.XmlEditor.Tests.Utils;
-
-namespace MonoDevelop.XmlEditor.Tests.FindSchemaObject
-{
-/* /// <summary>
- /// Tests that an xs:attribute/@ref is located in the schema.
- /// </summary>
- [TestFixture]
- public class AttributeReferenceSelectedTestFixture : SchemaTestFixtureBase
- {
- XmlSchemaAttribute schemaAttribute;
-
- public override void FixtureInit()
- {
- XmlSchemaCompletionDataCollection schemas = new XmlSchemaCompletionDataCollection();
- schemas.Add(SchemaCompletionData);
- XmlSchemaCompletionData xsdSchemaCompletionData = new XmlSchemaCompletionData(ResourceManager.GetXsdSchema());
- schemas.Add(xsdSchemaCompletionData);
- XmlCompletionDataProvider provider = new XmlCompletionDataProvider(schemas, xsdSchemaCompletionData, String.Empty, null);
-
- string xml = GetSchema();
- int index = xml.IndexOf("ref=\"dir\"");
- index = xml.IndexOf("dir", index);
- schemaAttribute = (XmlSchemaAttribute)XmlEditorView.GetSchemaObjectSelected(xml, index, provider, SchemaCompletionData);
- }
-
- [Test]
- public void AttributeName()
- {
- Assert.AreEqual("dir", schemaAttribute.QualifiedName.Name);
- }
-
- protected override string GetSchema()
- {
- return "<xs:schema version=\"1.0\" xml:lang=\"en\"\r\n" +
- " xmlns:xs=\"http://www.w3.org/2001/XMLSchema\"\r\n" +
- " targetNamespace=\"http://foo/xhtml\"\r\n" +
- " xmlns=\"http://foo/xhtml\"\r\n" +
- " elementFormDefault=\"qualified\">\r\n" +
- " <xs:element name=\"html\">\r\n" +
- " <xs:complexType>\r\n" +
- " <xs:sequence>\r\n" +
- " <xs:element ref=\"head\"/>\r\n" +
- " <xs:element ref=\"body\"/>\r\n" +
- " </xs:sequence>\r\n" +
- " <xs:attributeGroup ref=\"i18n\"/>\r\n" +
- " <xs:attribute name=\"id\" ref=\"dir\"/>\r\n" +
- " </xs:complexType>\r\n" +
- " </xs:element>\r\n" +
- "\r\n" +
- " <xs:element name=\"head\" type=\"xs:string\"/>\r\n" +
- " <xs:element name=\"body\" type=\"xs:string\"/>\r\n" +
- "\r\n" +
- " <xs:attribute name=\"dir\">\r\n" +
- " <xs:simpleType>\r\n" +
- " <xs:restriction base=\"xs:token\">\r\n" +
- " <xs:enumeration value=\"ltr\"/>\r\n" +
- " <xs:enumeration value=\"rtl\"/>\r\n" +
- " </xs:restriction>\r\n" +
- " </xs:simpleType>\r\n" +
- " </xs:attribute>\r\n" +
- "</xs:schema>";
- }
- }*/
-}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/FindSchemaObject/AttributeSelectedTestFixture.cs b/main/src/addins/MonoDevelop.XmlEditor/Tests/FindSchemaObject/AttributeSelectedTestFixture.cs
deleted file mode 100644
index 3b9228f5c0..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/FindSchemaObject/AttributeSelectedTestFixture.cs
+++ /dev/null
@@ -1,40 +0,0 @@
-using MonoDevelop.XmlEditor.Completion;
-using NUnit.Framework;
-using System;
-using System.Xml.Schema;
-using MonoDevelop.XmlEditor.Tests.Schema;
-
-namespace MonoDevelop.XmlEditor.Tests.FindSchemaObject
-{
-/* [TestFixture]
- public class AttributeSelectedTestFixture : SchemaTestFixtureBase
- {
- XmlSchemaAttribute schemaAttribute;
-
- public override void FixtureInit()
- {
- XmlSchemaCompletionDataCollection schemas = new XmlSchemaCompletionDataCollection();
- schemas.Add(SchemaCompletionData);
- XmlCompletionDataProvider provider = new XmlCompletionDataProvider(schemas, SchemaCompletionData, String.Empty, null);
- string xml = "<note xmlns='http://www.w3schools.com' name=''></note>";
- schemaAttribute = (XmlSchemaAttribute)XmlEditorView.GetSchemaObjectSelected(xml, xml.IndexOf("name"), provider);
- }
-
- [Test]
- public void AttributeName()
- {
- Assert.AreEqual("name", schemaAttribute.QualifiedName.Name, "Attribute name is incorrect.");
- }
-
- protected override string GetSchema()
- {
- return "<xs:schema xmlns:xs=\"http://www.w3.org/2001/XMLSchema\" targetNamespace=\"http://www.w3schools.com\" xmlns=\"http://www.w3schools.com\" elementFormDefault=\"qualified\">\r\n" +
- " <xs:element name=\"note\">\r\n" +
- " <xs:complexType>\r\n" +
- "\t<xs:attribute name=\"name\" type=\"xs:string\"/>\r\n" +
- " </xs:complexType>\r\n" +
- " </xs:element>\r\n" +
- "</xs:schema>";
- }
- }*/
-}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/FindSchemaObject/AttributeTypeSelectedTestFixture.cs b/main/src/addins/MonoDevelop.XmlEditor/Tests/FindSchemaObject/AttributeTypeSelectedTestFixture.cs
deleted file mode 100644
index 9171517d66..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/FindSchemaObject/AttributeTypeSelectedTestFixture.cs
+++ /dev/null
@@ -1,68 +0,0 @@
-using MonoDevelop.XmlEditor.Completion;
-using NUnit.Framework;
-using System;
-using System.Xml.Schema;
-using MonoDevelop.XmlEditor.Tests.Schema;
-using MonoDevelop.XmlEditor.Tests.Utils;
-
-namespace MonoDevelop.XmlEditor.Tests.FindSchemaObject
-{
-/* /// <summary>
- /// Tests that a xs:attribute/@type can be located in the schema.
- /// </summary>
- [TestFixture]
- public class AttributeTypeSelectedTestFixture : SchemaTestFixtureBase
- {
- XmlSchemaSimpleType schemaSimpleType;
-
- public override void FixtureInit()
- {
- XmlSchemaCompletionDataCollection schemas = new XmlSchemaCompletionDataCollection();
- schemas.Add(SchemaCompletionData);
- XmlSchemaCompletionData xsdSchemaCompletionData = new XmlSchemaCompletionData(ResourceManager.GetXsdSchema());
- schemas.Add(xsdSchemaCompletionData);
- XmlCompletionDataProvider provider = new XmlCompletionDataProvider(schemas, xsdSchemaCompletionData, String.Empty, null);
-
- string xml = GetSchema();
- int index = xml.IndexOf("type=\"dir\"/>");
- index = xml.IndexOf("dir", index);
- schemaSimpleType = (XmlSchemaSimpleType)XmlEditorView.GetSchemaObjectSelected(xml, index, provider, SchemaCompletionData);
- }
-
- [Test]
- public void SimpleTypeName()
- {
- Assert.AreEqual("dir", schemaSimpleType.QualifiedName.Name);
- }
-
- protected override string GetSchema()
- {
- return "<xs:schema version=\"1.0\" xml:lang=\"en\"\r\n" +
- " xmlns:xs=\"http://www.w3.org/2001/XMLSchema\"\r\n" +
- " targetNamespace=\"http://foo/xhtml\"\r\n" +
- " xmlns=\"http://foo/xhtml\"\r\n" +
- " elementFormDefault=\"qualified\">\r\n" +
- " <xs:element name=\"html\">\r\n" +
- " <xs:complexType>\r\n" +
- " <xs:sequence>\r\n" +
- " <xs:element ref=\"head\"/>\r\n" +
- " <xs:element ref=\"body\"/>\r\n" +
- " </xs:sequence>\r\n" +
- " <xs:attributeGroup ref=\"i18n\"/>\r\n" +
- " <xs:attribute name=\"id\" type=\"dir\"/>\r\n" +
- " </xs:complexType>\r\n" +
- " </xs:element>\r\n" +
- "\r\n" +
- " <xs:element name=\"head\" type=\"xs:string\"/>\r\n" +
- " <xs:element name=\"body\" type=\"xs:string\"/>\r\n" +
- "\r\n" +
- " <xs:simpleType name=\"dir\">\r\n" +
- " <xs:restriction base=\"xs:token\">\r\n" +
- " <xs:enumeration value=\"ltr\"/>\r\n" +
- " <xs:enumeration value=\"rtl\"/>\r\n" +
- " </xs:restriction>\r\n" +
- " </xs:simpleType>\r\n" +
- "</xs:schema>";
- }
- }*/
-}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/FindSchemaObject/ElementReferenceSelectedTestFixture.cs b/main/src/addins/MonoDevelop.XmlEditor/Tests/FindSchemaObject/ElementReferenceSelectedTestFixture.cs
deleted file mode 100644
index d97abae1fe..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/FindSchemaObject/ElementReferenceSelectedTestFixture.cs
+++ /dev/null
@@ -1,78 +0,0 @@
-using MonoDevelop.XmlEditor.Completion;
-using NUnit.Framework;
-using System;
-using System.Xml.Schema;
-using MonoDevelop.XmlEditor.Tests.Schema;
-using MonoDevelop.XmlEditor.Tests.Utils;
-
-namespace MonoDevelop.XmlEditor.Tests.FindSchemaObject
-{
-/* /// <summary>
- /// Tests that an xs:element/@ref is located in the schema.
- /// </summary>
- [TestFixture]
- public class ElementReferenceSelectedTestFixture : SchemaTestFixtureBase
- {
- XmlSchemaAttribute schemaAttribute;
- XmlSchemaElement referencedSchemaElement;
-
- public override void FixtureInit()
- {
- XmlSchemaCompletionDataCollection schemas = new XmlSchemaCompletionDataCollection();
- schemas.Add(SchemaCompletionData);
- XmlSchemaCompletionData xsdSchemaCompletionData = new XmlSchemaCompletionData(ResourceManager.GetXsdSchema());
- schemas.Add(xsdSchemaCompletionData);
- XmlCompletionDataProvider provider = new XmlCompletionDataProvider(schemas, xsdSchemaCompletionData, String.Empty, null);
-
- string xml = GetSchema();
- schemaAttribute = (XmlSchemaAttribute)XmlEditorView.GetSchemaObjectSelected(xml, xml.IndexOf("ref=\"name"), provider, SchemaCompletionData);
-
- int index = xml.IndexOf("ref=\"name");
- index = xml.IndexOf('n', index);
- referencedSchemaElement = (XmlSchemaElement)XmlEditorView.GetSchemaObjectSelected(xml, index, provider, SchemaCompletionData);
- }
-
- [Test]
- public void AttributeName()
- {
- Assert.AreEqual("ref", schemaAttribute.QualifiedName.Name);
- }
-
- [Test]
- public void ReferencedElementName()
- {
- Assert.AreEqual("name", referencedSchemaElement.QualifiedName.Name);
- }
-
- protected override string GetSchema()
- {
- return "<xs:schema xmlns:xs=\"http://www.w3.org/2001/XMLSchema\" targetNamespace=\"http://www.w3schools.com\" xmlns=\"http://www.w3schools.com\">\r\n" +
- "\r\n" +
- "<!-- definition of simple elements -->\r\n" +
- "<xs:element name=\"name\" type=\"xs:string\"/>\r\n" +
- "<xs:element name=\"address\" type=\"xs:string\"/>\r\n" +
- "\r\n" +
- "<!-- definition of complex elements -->\r\n" +
- "<xs:element name=\"shipto\">\r\n" +
- " <xs:complexType>\r\n" +
- " <xs:sequence>\r\n" +
- " <xs:element ref=\"name\"/>\r\n" +
- " <xs:element ref=\"address\"/>\r\n" +
- " </xs:sequence>\r\n" +
- " <xs:attribute name=\"address\"/>\r\n" +
- " </xs:complexType>\r\n" +
- "</xs:element>\r\n" +
- "\r\n" +
- "<xs:element name=\"shiporder\">\r\n" +
- " <xs:complexType>\r\n" +
- " <xs:sequence>\r\n" +
- " <xs:element ref=\"shipto\"/>\r\n" +
- " </xs:sequence>\r\n" +
- " <xs:attribute name=\"id\"/>\r\n" +
- " </xs:complexType>\r\n" +
- "</xs:element>\r\n" +
- "\r\n" +
- "</xs:schema>";
- }
- }*/
-}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/FindSchemaObject/ElementReferenceWithPrefixSelectedTestFixture.cs b/main/src/addins/MonoDevelop.XmlEditor/Tests/FindSchemaObject/ElementReferenceWithPrefixSelectedTestFixture.cs
deleted file mode 100644
index d7f103f4ce..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/FindSchemaObject/ElementReferenceWithPrefixSelectedTestFixture.cs
+++ /dev/null
@@ -1,76 +0,0 @@
-using MonoDevelop.XmlEditor.Completion;
-using NUnit.Framework;
-using System;
-using System.Xml.Schema;
-using MonoDevelop.XmlEditor.Tests.Schema;
-using MonoDevelop.XmlEditor.Tests.Utils;
-
-namespace MonoDevelop.XmlEditor.Tests.FindSchemaObject
-{
-/* /// <summary>
- /// Tests that an xs:element/@ref='prefix:name' is located in the schema.
- /// </summary>
- [TestFixture]
- public class ElementReferenceWithPrefixSelectedTestFixture : SchemaTestFixtureBase
- {
- XmlSchemaElement referencedSchemaElement;
-
- public override void FixtureInit()
- {
- XmlSchemaCompletionDataCollection schemas = new XmlSchemaCompletionDataCollection();
- schemas.Add(SchemaCompletionData);
- XmlSchemaCompletionData xsdSchemaCompletionData = new XmlSchemaCompletionData(ResourceManager.GetXsdSchema());
- schemas.Add(xsdSchemaCompletionData);
- XmlCompletionDataProvider provider = new XmlCompletionDataProvider(schemas, xsdSchemaCompletionData, String.Empty, null);
-
- string xml = GetSchema();
-
- int index = xml.IndexOf("ref=\"xs:list");
- index = xml.IndexOf("xs", index);
- referencedSchemaElement = (XmlSchemaElement)XmlEditorView.GetSchemaObjectSelected(xml, index, provider, SchemaCompletionData);
- }
-
- [Test]
- public void ReferencedElementName()
- {
- Assert.AreEqual("list", referencedSchemaElement.QualifiedName.Name);
- }
-
- [Test]
- public void ReferencedElementNamespace()
- {
- Assert.AreEqual("http://www.w3.org/2001/XMLSchema", referencedSchemaElement.QualifiedName.Namespace);
- }
-
- protected override string GetSchema()
- {
- return "<xs:schema xmlns:xs=\"http://www.w3.org/2001/XMLSchema\" targetNamespace=\"http://www.w3schools.com\" xmlns=\"http://www.w3schools.com\">\r\n" +
- "\r\n" +
- "<!-- definition of simple elements -->\r\n" +
- "<xs:element name=\"name\" type=\"xs:string\"/>\r\n" +
- "<xs:element name=\"address\" type=\"xs:string\"/>\r\n" +
- "\r\n" +
- "<!-- definition of complex elements -->\r\n" +
- "<xs:element name=\"shipto\">\r\n" +
- " <xs:complexType>\r\n" +
- " <xs:sequence>\r\n" +
- " <xs:element ref=\"name\"/>\r\n" +
- " <xs:element ref=\"xs:list\"/>\r\n" +
- " </xs:sequence>\r\n" +
- " <xs:attribute name=\"address\"/>\r\n" +
- " </xs:complexType>\r\n" +
- "</xs:element>\r\n" +
- "\r\n" +
- "<xs:element name=\"shiporder\">\r\n" +
- " <xs:complexType>\r\n" +
- " <xs:sequence>\r\n" +
- " <xs:element ref=\"shipto\"/>\r\n" +
- " </xs:sequence>\r\n" +
- " <xs:attribute name=\"id\"/>\r\n" +
- " </xs:complexType>\r\n" +
- "</xs:element>\r\n" +
- "\r\n" +
- "</xs:schema>";
- }
- }*/
-}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/FindSchemaObject/ElementSelectedTestFixture.cs b/main/src/addins/MonoDevelop.XmlEditor/Tests/FindSchemaObject/ElementSelectedTestFixture.cs
deleted file mode 100644
index 6cd6dfd77d..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/FindSchemaObject/ElementSelectedTestFixture.cs
+++ /dev/null
@@ -1,49 +0,0 @@
-using MonoDevelop.XmlEditor.Completion;
-using NUnit.Framework;
-using System;
-using System.Xml.Schema;
-using MonoDevelop.XmlEditor.Tests.Schema;
-
-namespace MonoDevelop.XmlEditor.Tests.FindSchemaObject
-{
-/* [TestFixture]
- public class ElementSelectedTestFixture : SchemaTestFixtureBase
- {
- XmlSchemaElement schemaElement;
-
- public override void FixtureInit()
- {
- XmlSchemaCompletionDataCollection schemas = new XmlSchemaCompletionDataCollection();
- schemas.Add(SchemaCompletionData);
- XmlCompletionDataProvider provider = new XmlCompletionDataProvider(schemas, SchemaCompletionData, String.Empty, null);
- string xml = "<note xmlns='http://www.w3schools.com'></note>";
- schemaElement = (XmlSchemaElement)XmlEditorView.GetSchemaObjectSelected(xml, xml.IndexOf("note xmlns"), provider);
- }
-
- [Test]
- public void SchemaElementNamespace()
- {
- Assert.AreEqual("http://www.w3schools.com",
- schemaElement.QualifiedName.Namespace,
- "Unexpected namespace.");
- }
-
- [Test]
- public void SchemaElementName()
- {
- Assert.AreEqual("note", schemaElement.QualifiedName.Name);
- }
-
- protected override string GetSchema()
- {
- return "<?xml version=\"1.0\"?>\r\n" +
- "<xs:schema xmlns:xs=\"http://www.w3.org/2001/XMLSchema\"\r\n" +
- "targetNamespace=\"http://www.w3schools.com\"\r\n" +
- "xmlns=\"http://www.w3schools.com\"\r\n" +
- "elementFormDefault=\"qualified\">\r\n" +
- "<xs:element name=\"note\">\r\n" +
- "</xs:element>\r\n" +
- "</xs:schema>";
- }
- }*/
-}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/FindSchemaObject/ElementTypeSelectedTestFixture.cs b/main/src/addins/MonoDevelop.XmlEditor/Tests/FindSchemaObject/ElementTypeSelectedTestFixture.cs
deleted file mode 100644
index 4977893544..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/FindSchemaObject/ElementTypeSelectedTestFixture.cs
+++ /dev/null
@@ -1,54 +0,0 @@
-using MonoDevelop.XmlEditor.Completion;
-using NUnit.Framework;
-using System;
-using System.Xml.Schema;
-using MonoDevelop.XmlEditor.Tests.Schema;
-using MonoDevelop.XmlEditor.Tests.Utils;
-
-namespace MonoDevelop.XmlEditor.Tests.FindSchemaObject
-{
-/* /// <summary>
- /// Tests that an xs:element/@type is located in the schema.
- /// </summary>
- [TestFixture]
- public class ElementTypeSelectedTestFixture : SchemaTestFixtureBase
- {
- XmlSchemaComplexType schemaComplexType;
-
- public override void FixtureInit()
- {
- XmlSchemaCompletionDataCollection schemas = new XmlSchemaCompletionDataCollection();
- schemas.Add(SchemaCompletionData);
- XmlSchemaCompletionData xsdSchemaCompletionData = new XmlSchemaCompletionData(ResourceManager.GetXsdSchema());
- schemas.Add(xsdSchemaCompletionData);
- XmlCompletionDataProvider provider = new XmlCompletionDataProvider(schemas, xsdSchemaCompletionData, String.Empty, null);
-
- string xml = GetSchema();
- int index = xml.IndexOf("type=\"text-type\"");
- index = xml.IndexOf("text-type", index);
- schemaComplexType = (XmlSchemaComplexType)XmlEditorView.GetSchemaObjectSelected(xml, index, provider, SchemaCompletionData);
- }
-
- [Test]
- public void ComplexTypeName()
- {
- Assert.AreEqual("text-type", schemaComplexType.QualifiedName.Name);
- }
-
- protected override string GetSchema()
- {
- return "<xs:schema xmlns:xs=\"http://www.w3.org/2001/XMLSchema\" targetNamespace=\"http://www.w3schools.com\" xmlns=\"http://www.w3schools.com\" elementFormDefault=\"qualified\">\r\n" +
- "\t<xs:element name=\"note\">\r\n" +
- "\t\t<xs:complexType> \r\n" +
- "\t\t\t<xs:sequence>\r\n" +
- "\t\t\t\t<xs:element name=\"text\" type=\"text-type\"/>\r\n" +
- "\t\t\t</xs:sequence>\r\n" +
- "\t\t</xs:complexType>\r\n" +
- "\t</xs:element>\r\n" +
- "\t<xs:complexType name=\"text-type\">\r\n" +
- "\t\t<xs:attribute name=\"foo\"/>\r\n" +
- "\t</xs:complexType>\r\n" +
- "</xs:schema>";
- }
- }*/
-}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/FindSchemaObject/ElementTypeWithPrefixSelectedTestFixture.cs b/main/src/addins/MonoDevelop.XmlEditor/Tests/FindSchemaObject/ElementTypeWithPrefixSelectedTestFixture.cs
deleted file mode 100644
index 1638c3001d..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/FindSchemaObject/ElementTypeWithPrefixSelectedTestFixture.cs
+++ /dev/null
@@ -1,57 +0,0 @@
-using MonoDevelop.XmlEditor.Completion;
-using NUnit.Framework;
-using System;
-using System.Xml.Schema;
-using MonoDevelop.XmlEditor.Tests.Schema;
-using MonoDevelop.XmlEditor.Tests.Utils;
-
-namespace MonoDevelop.XmlEditor.Tests.FindSchemaObject
-{
-/* /// <summary>
- /// Tests that an xs:element/@type="prefix:name" is located in the schema.
- /// </summary>
- [TestFixture]
- public class ElementTypeWithPrefixSelectedTestFixture : SchemaTestFixtureBase
- {
- XmlSchemaComplexType schemaComplexType;
-
- public override void FixtureInit()
- {
- XmlSchemaCompletionDataCollection schemas = new XmlSchemaCompletionDataCollection();
- schemas.Add(SchemaCompletionData);
- XmlSchemaCompletionData xsdSchemaCompletionData = new XmlSchemaCompletionData(ResourceManager.GetXsdSchema());
- schemas.Add(xsdSchemaCompletionData);
- XmlCompletionDataProvider provider = new XmlCompletionDataProvider(schemas, xsdSchemaCompletionData, String.Empty, null);
-
- string xml = GetSchema();
- int index = xml.IndexOf("type=\"xs:complexType\"");
- index = xml.IndexOf("xs:complexType", index);
- schemaComplexType = (XmlSchemaComplexType)XmlEditorView.GetSchemaObjectSelected(xml, index, provider, SchemaCompletionData);
- }
-
- [Test]
- public void ComplexTypeName()
- {
- Assert.AreEqual("complexType", schemaComplexType.QualifiedName.Name);
- }
-
- [Test]
- public void ComplexTypeNamespace()
- {
- Assert.AreEqual("http://www.w3.org/2001/XMLSchema", schemaComplexType.QualifiedName.Namespace);
- }
-
- protected override string GetSchema()
- {
- return "<xs:schema xmlns:xs=\"http://www.w3.org/2001/XMLSchema\" targetNamespace=\"http://www.w3schools.com\" xmlns=\"http://www.w3schools.com\" elementFormDefault=\"qualified\">\r\n" +
- "\t<xs:element name=\"note\">\r\n" +
- "\t\t<xs:complexType> \r\n" +
- "\t\t\t<xs:sequence>\r\n" +
- "\t\t\t\t<xs:element name=\"text\" type=\"xs:complexType\"/>\r\n" +
- "\t\t\t</xs:sequence>\r\n" +
- "\t\t</xs:complexType>\r\n" +
- "\t</xs:element>\r\n" +
- "</xs:schema>";
- }
- }*/
-}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/FindSchemaObject/GroupReferenceSelectedTestFixture.cs b/main/src/addins/MonoDevelop.XmlEditor/Tests/FindSchemaObject/GroupReferenceSelectedTestFixture.cs
deleted file mode 100644
index cc0011a3cf..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/FindSchemaObject/GroupReferenceSelectedTestFixture.cs
+++ /dev/null
@@ -1,89 +0,0 @@
-using MonoDevelop.XmlEditor.Completion;
-using NUnit.Framework;
-using System;
-using System.Xml.Schema;
-using MonoDevelop.XmlEditor.Tests.Schema;
-using MonoDevelop.XmlEditor.Tests.Utils;
-
-namespace MonoDevelop.XmlEditor.Tests.FindSchemaObject
-{
-/* /// <summary>
- /// Tests that an xs:group/@ref is located in the schema.
- /// </summary>
- [TestFixture]
- public class GroupReferenceSelectedTestFixture : SchemaTestFixtureBase
- {
- XmlSchemaGroup schemaGroup;
-
- public override void FixtureInit()
- {
- XmlSchemaCompletionDataCollection schemas = new XmlSchemaCompletionDataCollection();
- schemas.Add(SchemaCompletionData);
- XmlSchemaCompletionData xsdSchemaCompletionData = new XmlSchemaCompletionData(ResourceManager.GetXsdSchema());
- schemas.Add(xsdSchemaCompletionData);
- XmlCompletionDataProvider provider = new XmlCompletionDataProvider(schemas, xsdSchemaCompletionData, String.Empty, null);
-
- string xml = GetSchema();
- int index = xml.IndexOf("ref=\"block\"");
- index = xml.IndexOf("block", index);
- schemaGroup = (XmlSchemaGroup)XmlEditorView.GetSchemaObjectSelected(xml, index, provider, SchemaCompletionData);
- }
-
- [Test]
- public void GroupName()
- {
- Assert.AreEqual("block", schemaGroup.QualifiedName.Name);
- }
-
- protected override string GetSchema()
- {
- return "<xs:schema version=\"1.0\" xml:lang=\"en\"\r\n" +
- " xmlns:xs=\"http://www.w3.org/2001/XMLSchema\"\r\n" +
- " targetNamespace=\"http://foo/xhtml\"\r\n" +
- " xmlns=\"http://foo/xhtml\"\r\n" +
- " elementFormDefault=\"qualified\">\r\n" +
- "\r\n" +
- " <xs:element name=\"html\">\r\n" +
- " <xs:complexType>\r\n" +
- " <xs:sequence>\r\n" +
- " <xs:element ref=\"head\"/>\r\n" +
- " <xs:element ref=\"body\"/>\r\n" +
- " </xs:sequence>\r\n" +
- " </xs:complexType>\r\n" +
- " </xs:element>\r\n" +
- "\r\n" +
- " <xs:element name=\"head\" type=\"xs:string\"/>\r\n" +
- " <xs:element name=\"body\">\r\n" +
- " <xs:complexType>\r\n" +
- " <xs:sequence>\r\n" +
- " <xs:group ref=\"block\"/>\r\n" +
- " <xs:element name=\"form\"/>\r\n" +
- " </xs:sequence>\r\n" +
- " </xs:complexType>\r\n" +
- " </xs:element>\r\n" +
- "\r\n" +
- "\r\n" +
- " <xs:group name=\"block\">\r\n" +
- " <xs:choice>\r\n" +
- " <xs:element ref=\"p\"/>\r\n" +
- " <xs:group ref=\"heading\"/>\r\n" +
- " </xs:choice>\r\n" +
- " </xs:group>\r\n" +
- "\r\n" +
- " <xs:element name=\"p\">\r\n" +
- " <xs:complexType>\r\n" +
- " <xs:attribute name=\"id\"/>" +
- " </xs:complexType>\r\n" +
- " </xs:element>\r\n" +
- "\r\n" +
- " <xs:group name=\"heading\">\r\n" +
- " <xs:choice>\r\n" +
- " <xs:element name=\"test\"/>\r\n" +
- " <xs:element name=\"id\"/>\r\n" +
- " </xs:choice>\r\n" +
- " </xs:group>\r\n" +
- "\r\n" +
- "</xs:schema>";
- }
- }*/
-}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/MimeTypeHandledTests.cs b/main/src/addins/MonoDevelop.XmlEditor/Tests/MimeTypeHandledTests.cs
deleted file mode 100644
index dcf2f6a450..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/MimeTypeHandledTests.cs
+++ /dev/null
@@ -1,37 +0,0 @@
-using NUnit.Framework;
-
-namespace MonoDevelop.XmlEditor.Tests
-{
- /// <summary>
- /// Tests that the mime types "text/xml" and
- /// "application/xml" are handled by the
- /// XmlEditorViewContent.
- /// </summary>
-/* [TestFixture]
- public class MimeTypeHandledTests
- {
- [Test]
- public void IsTextXmlHandled()
- {
- Assert.IsTrue(XmlEditorViewContent.IsMimeTypeHandled("text/xml"));
- }
-
- [Test]
- public void IsApplicationXmlHandled()
- {
- Assert.IsTrue(XmlEditorViewContent.IsMimeTypeHandled("application/xml"));
- }
-
- [Test]
- public void NullMimeTypeIsNotHandled()
- {
- Assert.IsFalse(XmlEditorViewContent.IsMimeTypeHandled(null));
- }
-
- [Test]
- public void IsUnknownMimeTypeHandled()
- {
- Assert.IsFalse(XmlEditorViewContent.IsMimeTypeHandled("unknown/xml"));
- }
- }*/
-}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Parser/ActiveElementStartPathTestFixture.cs b/main/src/addins/MonoDevelop.XmlEditor/Tests/Parser/ActiveElementStartPathTestFixture.cs
deleted file mode 100755
index 011f62602b..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Parser/ActiveElementStartPathTestFixture.cs
+++ /dev/null
@@ -1,106 +0,0 @@
-using MonoDevelop.XmlEditor;
-using NUnit.Framework;
-
-namespace MonoDevelop.XmlEditor.Tests.Parser
-{
- [TestFixture]
- public class ActiveElementStartPathTestFixture
- {
- XmlElementPath elementPath;
- XmlElementPath expectedElementPath;
- string namespaceURI = "http://foo.com/foo.xsd";
-
- [Test]
- public void PathTest1()
- {
- string text = "<foo xmlns='" + namespaceURI + "' ";
- elementPath = XmlParser.GetActiveElementStartPath(text, text.Length);
-
- expectedElementPath = new XmlElementPath();
- expectedElementPath.Elements.Add(new QualifiedName("foo", namespaceURI));
- Assert.IsTrue(elementPath.Equals(expectedElementPath),
- "Incorrect active element path.");
- }
-
- [Test]
- public void PathTest2()
- {
- string text = "<foo xmlns='" + namespaceURI + "' ><bar ";
- elementPath = XmlParser.GetActiveElementStartPath(text, text.Length);
-
- expectedElementPath = new XmlElementPath();
- expectedElementPath.Elements.Add(new QualifiedName("foo", namespaceURI));
- expectedElementPath.Elements.Add(new QualifiedName("bar", namespaceURI));
- Assert.IsTrue(expectedElementPath.Equals(elementPath),
- "Incorrect active element path.");
- }
-
- [Test]
- public void PathTest3()
- {
- string text = "<f:foo xmlns:f='" + namespaceURI + "' ><f:bar ";
- elementPath = XmlParser.GetActiveElementStartPath(text, text.Length);
-
- expectedElementPath = new XmlElementPath();
- expectedElementPath.Elements.Add(new QualifiedName("foo", namespaceURI, "f"));
- expectedElementPath.Elements.Add(new QualifiedName("bar", namespaceURI, "f"));
- Assert.IsTrue(expectedElementPath.Equals(elementPath),
- "Incorrect active element path.");
- }
-
- [Test]
- public void PathTest4()
- {
- string text = "<x:foo xmlns:x='" + namespaceURI + "' ";
- elementPath = XmlParser.GetActiveElementStartPath(text, text.Length);
-
- expectedElementPath = new XmlElementPath();
- expectedElementPath.Elements.Add(new QualifiedName("foo", namespaceURI, "x"));
- Assert.IsTrue(expectedElementPath.Equals(elementPath),
- "Incorrect active element path.");
- }
-
- [Test]
- public void PathTest5()
- {
- string text = "<foo xmlns='" + namespaceURI + "'>\r\n"+
- "<y\r\n" +
- "Id = 'foo' ";
-
- elementPath = XmlParser.GetActiveElementStartPath(text, text.Length);
-
- expectedElementPath = new XmlElementPath();
- expectedElementPath.Elements.Add(new QualifiedName("foo", namespaceURI));
- expectedElementPath.Elements.Add(new QualifiedName("y", namespaceURI));
- Assert.IsTrue(expectedElementPath.Equals(elementPath),
- "Incorrect active element path.");
- }
-
- [Test]
- public void PathTest6()
- {
- string text = "<bar xmlns='http://bar'>\r\n" +
- "<foo xmlns='" + namespaceURI + "' ";
-
- elementPath = XmlParser.GetActiveElementStartPath(text, text.Length);
-
- expectedElementPath = new XmlElementPath();
- expectedElementPath.Elements.Add(new QualifiedName("foo", namespaceURI));
- Assert.IsTrue(expectedElementPath.Equals(elementPath),
- "Incorrect active element path.");
- }
-
- /// <summary>
- /// Tests that we get no path back if we are outside the start
- /// tag.
- /// </summary>
- [Test]
- public void OutOfStartTagPathTest1()
- {
- string text = "<foo xmlns='" + namespaceURI + "'> ";
-
- elementPath = XmlParser.GetActiveElementStartPath(text, text.Length);
- Assert.AreEqual(0, elementPath.Elements.Count, "Should have no path.");
- }
- }
-}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Parser/ActiveElementUnderCursorTests.cs b/main/src/addins/MonoDevelop.XmlEditor/Tests/Parser/ActiveElementUnderCursorTests.cs
deleted file mode 100644
index 8ff9c5c966..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Parser/ActiveElementUnderCursorTests.cs
+++ /dev/null
@@ -1,161 +0,0 @@
-using MonoDevelop.XmlEditor;
-using NUnit.Framework;
-
-namespace MonoDevelop.XmlEditor.Tests.Parser
-{
- /// <summary>
- /// Tests the XmlParser.GetActiveElementStartPathAtIndex which finds the element
- /// path where the index is at. The index may be in the middle or start of the element
- /// tag.
- /// </summary>
- [TestFixture]
- public class ActiveElementUnderCursorTests
- {
- XmlElementPath elementPath;
- XmlElementPath expectedElementPath;
- string namespaceURI = "http://foo.com/foo.xsd";
-
- [Test]
- public void PathTest1()
- {
- string text = "<foo xmlns='" + namespaceURI + "'><bar ";
- elementPath = XmlParser.GetActiveElementStartPathAtIndex(text, text.IndexOf("bar "));
-
- expectedElementPath = new XmlElementPath();
- expectedElementPath.Elements.Add(new QualifiedName("foo", namespaceURI));
- expectedElementPath.Elements.Add(new QualifiedName("bar", namespaceURI));
- Assert.IsTrue(elementPath.Equals(expectedElementPath),
- "Incorrect active element path.");
- }
-
- [Test]
- public void PathTest2()
- {
- string text = "<foo xmlns='" + namespaceURI + "'><bar>";
- elementPath = XmlParser.GetActiveElementStartPathAtIndex(text, text.IndexOf("bar>"));
-
- expectedElementPath = new XmlElementPath();
- expectedElementPath.Elements.Add(new QualifiedName("foo", namespaceURI));
- expectedElementPath.Elements.Add(new QualifiedName("bar", namespaceURI));
- Assert.IsTrue(elementPath.Equals(expectedElementPath),
- "Incorrect active element path.");
- }
-
- [Test]
- public void PathTest3()
- {
- string text = "<foo xmlns='" + namespaceURI + "'><bar>";
- elementPath = XmlParser.GetActiveElementStartPathAtIndex(text, text.IndexOf("ar>"));
-
- expectedElementPath = new XmlElementPath();
- expectedElementPath.Elements.Add(new QualifiedName("foo", namespaceURI));
- expectedElementPath.Elements.Add(new QualifiedName("bar", namespaceURI));
- Assert.IsTrue(elementPath.Equals(expectedElementPath),
- "Incorrect active element path.");
- }
-
- [Test]
- public void PathTest4()
- {
- string text = "<foo xmlns='" + namespaceURI + "'><bar>";
- elementPath = XmlParser.GetActiveElementStartPathAtIndex(text, text.Length - 1);
-
- expectedElementPath = new XmlElementPath();
- expectedElementPath.Elements.Add(new QualifiedName("foo", namespaceURI));
- expectedElementPath.Elements.Add(new QualifiedName("bar", namespaceURI));
- Assert.IsTrue(elementPath.Equals(expectedElementPath),
- "Incorrect active element path.");
- }
-
- [Test]
- public void PathTest5()
- {
- string text = "<foo xmlns='" + namespaceURI + "'><bar a='a'>";
- elementPath = XmlParser.GetActiveElementStartPathAtIndex(text, text.IndexOf("='a'"));
-
- expectedElementPath = new XmlElementPath();
- expectedElementPath.Elements.Add(new QualifiedName("foo", namespaceURI));
- expectedElementPath.Elements.Add(new QualifiedName("bar", namespaceURI));
- Assert.IsTrue(elementPath.Equals(expectedElementPath),
- "Incorrect active element path.");
- }
-
- [Test]
- public void PathTest6()
- {
- string text = "<foo xmlns='" + namespaceURI + "'><bar a='a'";
- elementPath = XmlParser.GetActiveElementStartPathAtIndex(text, text.Length - 1);
-
- expectedElementPath = new XmlElementPath();
- expectedElementPath.Elements.Add(new QualifiedName("foo", namespaceURI));
- expectedElementPath.Elements.Add(new QualifiedName("bar", namespaceURI));
- Assert.IsTrue(elementPath.Equals(expectedElementPath),
- "Incorrect active element path.");
- }
-
- [Test]
- public void PathTest7()
- {
- string text = "<foo xmlns='" + namespaceURI + "'><bar a='a'";
- elementPath = XmlParser.GetActiveElementStartPathAtIndex(text, text.Length);
-
- expectedElementPath = new XmlElementPath();
- expectedElementPath.Elements.Add(new QualifiedName("foo", namespaceURI));
- expectedElementPath.Elements.Add(new QualifiedName("bar", namespaceURI));
- Assert.IsTrue(elementPath.Equals(expectedElementPath),
- "Incorrect active element path.");
- }
-
- [Test]
- public void PathTest8()
- {
- string text = "<foo xmlns='" + namespaceURI + "'><bar>";
- elementPath = XmlParser.GetActiveElementStartPathAtIndex(text, text.Length);
-
- expectedElementPath = new XmlElementPath();
- expectedElementPath.Elements.Add(new QualifiedName("foo", namespaceURI));
- expectedElementPath.Elements.Add(new QualifiedName("bar", namespaceURI));
- Assert.IsTrue(elementPath.Equals(expectedElementPath),
- "Incorrect active element path.");
- }
-
- [Test]
- public void PathTest9()
- {
- string text = "<foo xmlns='" + namespaceURI + "'><bar ";
- elementPath = XmlParser.GetActiveElementStartPathAtIndex(text, text.Length);
-
- expectedElementPath = new XmlElementPath();
- expectedElementPath.Elements.Add(new QualifiedName("foo", namespaceURI));
- expectedElementPath.Elements.Add(new QualifiedName("bar", namespaceURI));
- Assert.IsTrue(elementPath.Equals(expectedElementPath),
- "Incorrect active element path.");
- }
-
- [Test]
- public void PathTest10()
- {
- string text = "<foo xmlns='" + namespaceURI + "'><bar Id=\r\n</foo>";
- elementPath = XmlParser.GetActiveElementStartPathAtIndex(text, text.IndexOf("Id="));
-
- expectedElementPath = new XmlElementPath();
- expectedElementPath.Elements.Add(new QualifiedName("foo", namespaceURI));
- expectedElementPath.Elements.Add(new QualifiedName("bar", namespaceURI));
- Assert.IsTrue(elementPath.Equals(expectedElementPath),
- "Incorrect active element path.");
- }
-
- [Test]
- public void PathTest11()
- {
- string text = "<foo xmlns='" + namespaceURI + "'>";
- elementPath = XmlParser.GetActiveElementStartPathAtIndex(text, 2);
-
- expectedElementPath = new XmlElementPath();
- expectedElementPath.Elements.Add(new QualifiedName("foo", namespaceURI));
- Assert.IsTrue(elementPath.Equals(expectedElementPath),
- "Incorrect active element path.");
- }
-
- }
-}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Parser/AttributeNameTestFixture.cs b/main/src/addins/MonoDevelop.XmlEditor/Tests/Parser/AttributeNameTestFixture.cs
deleted file mode 100755
index 3f18883dea..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Parser/AttributeNameTestFixture.cs
+++ /dev/null
@@ -1,89 +0,0 @@
-using MonoDevelop.XmlEditor;
-using NUnit.Framework;
-using System;
-
-namespace MonoDevelop.XmlEditor.Tests.Parser
-{
- /// <summary>
- /// Tests that we can detect the attribute's name.
- /// </summary>
- [TestFixture]
- public class AttributeNameTestFixture
- {
- [Test]
- public void SuccessTest1()
- {
- string text = " foo='a";
- Assert.AreEqual("foo", XmlParser.GetAttributeName(text, text.Length), "Should have retrieved the attribute name 'foo'");
- }
-
- [Test]
- public void SuccessTest2()
- {
- string text = " foo='";
- Assert.AreEqual("foo", XmlParser.GetAttributeName(text, text.Length), "Should have retrieved the attribute name 'foo'");
- }
-
- [Test]
- public void SuccessTest3()
- {
- string text = " foo=";
- Assert.AreEqual("foo", XmlParser.GetAttributeName(text, text.Length), "Should have retrieved the attribute name 'foo'");
- }
-
- [Test]
- public void SuccessTest4()
- {
- string text = " foo=\"";
- Assert.AreEqual("foo", XmlParser.GetAttributeName(text, text.Length), "Should have retrieved the attribute name 'foo'");
- }
-
- [Test]
- public void SuccessTest5()
- {
- string text = " foo = \"";
- Assert.AreEqual("foo", XmlParser.GetAttributeName(text, text.Length), "Should have retrieved the attribute name 'foo'");
- }
-
- [Test]
- public void SuccessTest6()
- {
- string text = " foo = '#";
- Assert.AreEqual("foo", XmlParser.GetAttributeName(text, text.Length), "Should have retrieved the attribute name 'foo'");
- }
-
- [Test]
- public void FailureTest1()
- {
- string text = "foo=";
- Assert.AreEqual(String.Empty, XmlParser.GetAttributeName(text, text.Length), "Should have retrieved the attribute name 'foo'");
- }
-
- [Test]
- public void FailureTest2()
- {
- string text = "foo=<";
- Assert.AreEqual(String.Empty, XmlParser.GetAttributeName(text, text.Length), "Should have retrieved the attribute name 'foo'");
- }
-
- [Test]
- public void FailureTest3()
- {
- string text = "a";
- Assert.AreEqual(String.Empty, XmlParser.GetAttributeName(text, text.Length));
- }
-
- [Test]
- public void FailureTest4()
- {
- string text = " a";
- Assert.AreEqual(String.Empty, XmlParser.GetAttributeName(text, text.Length));
- }
-
- [Test]
- public void EmptyString()
- {
- Assert.AreEqual(String.Empty, XmlParser.GetAttributeName(String.Empty, 10));
- }
- }
-}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Parser/AttributeNameUnderCursorTests.cs b/main/src/addins/MonoDevelop.XmlEditor/Tests/Parser/AttributeNameUnderCursorTests.cs
deleted file mode 100644
index 8ac5ac6f4a..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Parser/AttributeNameUnderCursorTests.cs
+++ /dev/null
@@ -1,72 +0,0 @@
-using MonoDevelop.XmlEditor;
-using NUnit.Framework;
-
-namespace MonoDevelop.XmlEditor.Tests.Parser
-{
- [TestFixture]
- public class AttributeNameUnderCursorTests
- {
- [Test]
- public void SuccessTest1()
- {
- string text = "<a foo";
- Assert.AreEqual("foo", XmlParser.GetAttributeNameAtIndex(text, text.Length));
- }
-
- [Test]
- public void SuccessTest2()
- {
- string text = "<a foo";
- Assert.AreEqual("foo", XmlParser.GetAttributeNameAtIndex(text, text.IndexOf("foo")));
- }
-
- [Test]
- public void SuccessTest3()
- {
- string text = "<a foo";
- Assert.AreEqual("foo", XmlParser.GetAttributeNameAtIndex(text, text.IndexOf("oo")));
- }
-
- [Test]
- public void SuccessTest4()
- {
- string text = "<a foo";
- Assert.AreEqual("foo", XmlParser.GetAttributeNameAtIndex(text, text.Length - 2));
- }
-
- [Test]
- public void SuccessTest5()
- {
- string text = "<a foo=";
- Assert.AreEqual("foo", XmlParser.GetAttributeNameAtIndex(text, 3));
- }
-
- [Test]
- public void SuccessTest6()
- {
- string text = "<a foo=";
- Assert.AreEqual("foo", XmlParser.GetAttributeNameAtIndex(text, text.Length));
- }
-
- [Test]
- public void SuccessTest7()
- {
- string text = "<a foo='";
- Assert.AreEqual("foo", XmlParser.GetAttributeNameAtIndex(text, text.Length));
- }
-
- [Test]
- public void SuccessTest8()
- {
- string text = "<a type='a";
- Assert.AreEqual("type", XmlParser.GetAttributeNameAtIndex(text, text.Length));
- }
-
- [Test]
- public void SuccessTest9()
- {
- string text = "<a type='a'";
- Assert.AreEqual("type", XmlParser.GetAttributeNameAtIndex(text, text.Length - 1));
- }
- }
-}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Parser/AttributeValueUnderCursorTests.cs b/main/src/addins/MonoDevelop.XmlEditor/Tests/Parser/AttributeValueUnderCursorTests.cs
deleted file mode 100644
index c186bc5a9a..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Parser/AttributeValueUnderCursorTests.cs
+++ /dev/null
@@ -1,67 +0,0 @@
-
-using MonoDevelop.XmlEditor;
-using NUnit.Framework;
-using System;
-
-namespace MonoDevelop.XmlEditor.Tests.Parser
-{
- [TestFixture]
- public class AttributeValueUnderCursorTests
- {
- [Test]
- public void SuccessTest1()
- {
- string text = "<a foo='abc'";
- Assert.AreEqual("abc", XmlParser.GetAttributeValueAtIndex(text, text.Length - 1));
- }
-
- [Test]
- public void SuccessTest2()
- {
- string text = "<a foo=\"abc\"";
- Assert.AreEqual("abc", XmlParser.GetAttributeValueAtIndex(text, text.Length - 1));
- }
-
- [Test]
- public void SuccessTest3()
- {
- string text = "<a foo='abc'";
- Assert.AreEqual("abc", XmlParser.GetAttributeValueAtIndex(text, text.Length - 2));
- }
-
- [Test]
- public void SuccessTest4()
- {
- string text = "<a foo='abc'";
- Assert.AreEqual("abc", XmlParser.GetAttributeValueAtIndex(text, text.IndexOf("abc")));
- }
-
- [Test]
- public void SuccessTest5()
- {
- string text = "<a foo=''";
- Assert.AreEqual(String.Empty, XmlParser.GetAttributeValueAtIndex(text, text.Length - 1));
- }
-
- [Test]
- public void SuccessTest6()
- {
- string text = "<a foo='a'";
- Assert.AreEqual("a", XmlParser.GetAttributeValueAtIndex(text, text.Length - 1));
- }
-
- [Test]
- public void SuccessTest7()
- {
- string text = "<a foo='a\"b\"c'";
- Assert.AreEqual("a\"b\"c", XmlParser.GetAttributeValueAtIndex(text, text.Length - 1));
- }
-
- [Test]
- public void FailureTest1()
- {
- string text = "<a foo='a";
- Assert.AreEqual(String.Empty, XmlParser.GetAttributeValueAtIndex(text, text.Length - 1));
- }
- }
-}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Parser/InsideAttributeValueTestFixture.cs b/main/src/addins/MonoDevelop.XmlEditor/Tests/Parser/InsideAttributeValueTestFixture.cs
deleted file mode 100755
index 36724daa04..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Parser/InsideAttributeValueTestFixture.cs
+++ /dev/null
@@ -1,100 +0,0 @@
-using MonoDevelop.XmlEditor;
-using NUnit.Framework;
-using System;
-
-namespace MonoDevelop.XmlEditor.Tests.Parser
-{
- [TestFixture]
- public class InsideAttributeValueTestFixture
- {
- [Test]
- public void InvalidString()
- {
- Assert.IsFalse(XmlParser.IsInsideAttributeValue(String.Empty, 10));
- }
-
- [Test]
- public void DoubleQuotesTest1()
- {
- string xml = "<foo a=\"";
- Assert.IsTrue(XmlParser.IsInsideAttributeValue(xml, xml.Length));
- }
-
- [Test]
- public void DoubleQuotesTest2()
- {
- string xml = "<foo a=\"\" ";
- Assert.IsFalse(XmlParser.IsInsideAttributeValue(xml, xml.Length));
- }
-
- [Test]
- public void DoubleQuotesTest3()
- {
- string xml = "<foo a=\"\"";
- Assert.IsFalse(XmlParser.IsInsideAttributeValue(xml, xml.Length));
- }
-
- [Test]
- public void DoubleQuotesTest4()
- {
- string xml = "<foo a=\" ";
- Assert.IsTrue(XmlParser.IsInsideAttributeValue(xml, xml.Length));
- }
-
- [Test]
- public void NoXmlElementStart()
- {
- string xml = "foo a=\"";
- Assert.IsFalse(XmlParser.IsInsideAttributeValue(xml, xml.Length));
- }
-
- [Test]
- public void DoubleQuotesTest5()
- {
- string xml = "<foo a=\"\"";
- Assert.IsTrue(XmlParser.IsInsideAttributeValue(xml, 8));
- }
-
- [Test]
- public void EqualsSignTest()
- {
- string xml = "<foo a=";
- Assert.IsFalse(XmlParser.IsInsideAttributeValue(xml, xml.Length));
- }
-
- [Test]
- public void SingleQuoteTest1()
- {
- string xml = "<foo a='";
- Assert.IsTrue(XmlParser.IsInsideAttributeValue(xml, xml.Length));
- }
-
- [Test]
- public void MixedQuotesTest1()
- {
- string xml = "<foo a='\"";
- Assert.IsTrue(XmlParser.IsInsideAttributeValue(xml, xml.Length));
- }
-
- [Test]
- public void MixedQuotesTest2()
- {
- string xml = "<foo a=\"'";
- Assert.IsTrue(XmlParser.IsInsideAttributeValue(xml, xml.Length));
- }
-
- [Test]
- public void MixedQuotesTest3()
- {
- string xml = "<foo a=\"''";
- Assert.IsTrue(XmlParser.IsInsideAttributeValue(xml, xml.Length));
- }
-
- [Test]
- public void MixedQuotesTest4()
- {
- string xml = "<foo a=\"''\"";
- Assert.IsFalse(XmlParser.IsInsideAttributeValue(xml, xml.Length));
- }
- }
-}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Parser/NamespaceDeclarationTestFixture.cs b/main/src/addins/MonoDevelop.XmlEditor/Tests/Parser/NamespaceDeclarationTestFixture.cs
deleted file mode 100755
index 54beae0fdd..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Parser/NamespaceDeclarationTestFixture.cs
+++ /dev/null
@@ -1,112 +0,0 @@
-
-using MonoDevelop.XmlEditor;
-using NUnit.Framework;
-
-namespace MonoDevelop.XmlEditor.Tests.Parser
-{
- /// <summary>
- /// When the user hits the '=' key we need to produce intellisense
- /// if the attribute is of the form 'xmlns' or 'xmlns:foo'. This
- /// tests the parsing of the text before the cursor to see if the
- /// attribute is a namespace declaration.
- /// </summary>
- [TestFixture]
- public class NamespaceDeclarationTestFixture
- {
- [Test]
- public void SuccessTest1()
- {
- string text = "<foo xmlns=";
- bool isNamespace = XmlParser.IsNamespaceDeclaration(text, text.Length);
- Assert.IsTrue(isNamespace, "Namespace should be recognised.");
- }
-
- [Test]
- public void SuccessTest2()
- {
- string text = "<foo xmlns =";
- bool isNamespace = XmlParser.IsNamespaceDeclaration(text, text.Length);
- Assert.IsTrue(isNamespace, "Namespace should be recognised.");
- }
-
- [Test]
- public void SuccessTest3()
- {
- string text = "<foo \r\nxmlns\r\n=";
- bool isNamespace = XmlParser.IsNamespaceDeclaration(text, text.Length);
- Assert.IsTrue(isNamespace, "Namespace should be recognised.");
- }
-
- [Test]
- public void SuccessTest4()
- {
- string text = "<foo xmlns:nant=";
- bool isNamespace = XmlParser.IsNamespaceDeclaration(text, text.Length);
- Assert.IsTrue(isNamespace, "Namespace should be recognised.");
- }
-
- [Test]
- public void SuccessTest5()
- {
- string text = "<foo xmlns";
- bool isNamespace = XmlParser.IsNamespaceDeclaration(text, text.Length);
- Assert.IsTrue(isNamespace, "Namespace should be recognised.");
- }
-
- [Test]
- public void SuccessTest6()
- {
- string text = "<foo xmlns:nant";
- bool isNamespace = XmlParser.IsNamespaceDeclaration(text, text.Length);
- Assert.IsTrue(isNamespace, "Namespace should be recognised.");
- }
-
- [Test]
- public void SuccessTest7()
- {
- string text = " xmlns=";
- bool isNamespace = XmlParser.IsNamespaceDeclaration(text, text.Length);
- Assert.IsTrue(isNamespace, "Namespace should be recognised.");
- }
-
- [Test]
- public void SuccessTest8()
- {
- string text = " xmlns";
- bool isNamespace = XmlParser.IsNamespaceDeclaration(text, text.Length);
- Assert.IsTrue(isNamespace, "Namespace should be recognised.");
- }
-
- [Test]
- public void SuccessTest9()
- {
- string text = " xmlns:f";
- bool isNamespace = XmlParser.IsNamespaceDeclaration(text, text.Length);
- Assert.IsTrue(isNamespace, "Namespace should be recognised.");
- }
-
- [Test]
- public void FailureTest1()
- {
- string text = "<foo bar=";
- bool isNamespace = XmlParser.IsNamespaceDeclaration(text, text.Length);
- Assert.IsFalse(isNamespace, "Namespace should not be recognised.");
- }
-
- [Test]
- public void FailureTest2()
- {
- string text = "";
- bool isNamespace = XmlParser.IsNamespaceDeclaration(text, text.Length);
- Assert.IsFalse(isNamespace, "Namespace should not be recognised.");
- }
-
- [Test]
- public void FailureTest3()
- {
- string text = " ";
- bool isNamespace = XmlParser.IsNamespaceDeclaration(text, text.Length);
- Assert.IsFalse(isNamespace, "Namespace should not be recognised.");
- }
- }
-}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Parser/ParentElementPathTestFixture.cs b/main/src/addins/MonoDevelop.XmlEditor/Tests/Parser/ParentElementPathTestFixture.cs
deleted file mode 100755
index dbe84d585b..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Parser/ParentElementPathTestFixture.cs
+++ /dev/null
@@ -1,62 +0,0 @@
-
-using MonoDevelop.XmlEditor;
-using NUnit.Framework;
-
-namespace MonoDevelop.XmlEditor.Tests.Parser
-{
- [TestFixture]
- public class ParentElementPathTestFixture
- {
- XmlElementPath elementPath;
- XmlElementPath expectedElementPath;
- string namespaceURI = "http://foo/foo.xsd";
-
- [Test]
- public void SuccessTest1()
- {
- string text = "<foo xmlns='" + namespaceURI + "' ><";
- elementPath = XmlParser.GetParentElementPath(text);
-
- expectedElementPath = new XmlElementPath();
- expectedElementPath.Elements.Add(new QualifiedName("foo", namespaceURI));
- Assert.IsTrue(elementPath.Equals(expectedElementPath),
- "Incorrect active element path.");
- }
-
- [Test]
- public void SuccessTest2()
- {
- string text = "<foo xmlns='" + namespaceURI + "' ><bar></bar><";
- elementPath = XmlParser.GetParentElementPath(text);
-
- expectedElementPath = new XmlElementPath();
- expectedElementPath.Elements.Add(new QualifiedName("foo", namespaceURI));
- Assert.IsTrue(elementPath.Equals(expectedElementPath),
- "Incorrect active element path.");
- }
-
- [Test]
- public void SuccessTest3()
- {
- string text = "<foo xmlns='" + namespaceURI + "' ><bar/><";
- elementPath = XmlParser.GetParentElementPath(text);
-
- expectedElementPath = new XmlElementPath();
- expectedElementPath.Elements.Add(new QualifiedName("foo", namespaceURI));
- Assert.IsTrue(elementPath.Equals(expectedElementPath),
- "Incorrect active element path.");
- }
-
- [Test]
- public void SuccessTest4()
- {
- string text = "<bar xmlns='http://test.com'><foo xmlns='" + namespaceURI + "' ><";
- elementPath = XmlParser.GetParentElementPath(text);
-
- expectedElementPath = new XmlElementPath();
- expectedElementPath.Elements.Add(new QualifiedName("foo", namespaceURI));
- Assert.IsTrue(elementPath.Equals(expectedElementPath),
- "Incorrect active element path.");
- }
- }
-}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/GetSchemaFromFileNameTestFixture.cs b/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/GetSchemaFromFileNameTestFixture.cs
deleted file mode 100644
index b3f5e6e204..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/GetSchemaFromFileNameTestFixture.cs
+++ /dev/null
@@ -1,46 +0,0 @@
-using MonoDevelop.XmlEditor.Completion;
-using NUnit.Framework;
-using MonoDevelop.XmlEditor.Tests.Utils;
-
-namespace MonoDevelop.XmlEditor.Tests.Schema
-{
-/* [TestFixture]
- public class GetSchemaFromFileNameTestFixture
- {
- XmlSchemaCompletionDataCollection schemas;
- string expectedNamespace;
- XmlCompletionDataProvider provider;
-
- [TestFixtureSetUp]
- public void SetUpFixture()
- {
- schemas = new XmlSchemaCompletionDataCollection();
- XmlSchemaCompletionData completionData = new XmlSchemaCompletionData(ResourceManager.GetXsdSchema());
- expectedNamespace = completionData.NamespaceUri;
- completionData.FileName = @"/home/Schemas/MySchema.xsd";
- schemas.Add(completionData);
-
- provider = new XmlCompletionDataProvider(schemas, completionData, String.Empty, null);
- }
-
- [Test]
- public void SameFileName()
- {
- XmlSchemaCompletionData foundSchema = schemas.GetSchemaFromFileName(@"/home/Schemas/MySchema.xsd");
- Assert.AreEqual(expectedNamespace, foundSchema.NamespaceUri);
- }
-
- [Test]
- public void SameFileNameFromProvider()
- {
- XmlSchemaCompletionData foundSchema = provider.FindSchemaFromFileName(@"/home/Schemas/MySchema.xsd");
- Assert.AreEqual(expectedNamespace, foundSchema.NamespaceUri);
- }
-
- [Test]
- public void MissingFileName()
- {
- Assert.IsNull(schemas.GetSchemaFromFileName(@"/Test/test.xsd"));
- }
- }*/
-}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/XPathQuery/RunXPathQueryTests.cs b/main/src/addins/MonoDevelop.XmlEditor/Tests/XPathQuery/RunXPathQueryTests.cs
deleted file mode 100644
index 540499749f..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/XPathQuery/RunXPathQueryTests.cs
+++ /dev/null
@@ -1,169 +0,0 @@
-using MonoDevelop.XmlEditor;
-using NUnit.Framework;
-using System;
-using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.Xml;
-using System.Xml.XPath;
-
-namespace MonoDevelop.XmlEditor.Tests.XPathQuery
-{
-/* [TestFixture]
- public class RunXPathQueryTests
- {
- [Test]
- public void OneElementNode()
- {
- string xml = "<root>\r\n" +
- "\t<foo/>\r\n" +
- "</root>";
-
- XPathNodeMatch[] nodes = XmlEditorView.SelectNodes(xml, "//foo");
- XPathNodeMatch node = nodes[0];
- IXmlLineInfo lineInfo = node as IXmlLineInfo;
- Assert.AreEqual(1, nodes.Length);
- Assert.AreEqual(1, node.LineNumber);
- Assert.AreEqual(2, node.LinePosition);
- Assert.AreEqual("foo", node.Value);
- Assert.AreEqual("<foo/>", node.DisplayValue);
- Assert.AreEqual(XPathNodeType.Element, node.NodeType);
- Assert.IsNotNull(lineInfo);
- }
-
- [Test]
- public void OneElementNodeWithNamespace()
- {
- string xml = "<root xmlns='http://foo.com'>\r\n" +
- "\t<foo></foo>\r\n" +
- "</root>";
- List<XmlNamespace> namespaces = new List<XmlNamespace>();
- namespaces.Add(new XmlNamespace("f", "http://foo.com"));
- ReadOnlyCollection<XmlNamespace> readOnlyNamespaces = new ReadOnlyCollection<XmlNamespace>(namespaces);
- XPathNodeMatch[] nodes = XmlEditorView.SelectNodes(xml, "//f:foo", readOnlyNamespaces);
- XPathNodeMatch node = nodes[0];
- IXmlLineInfo lineInfo = node as IXmlLineInfo;
- Assert.AreEqual(1, nodes.Length);
- Assert.AreEqual(1, node.LineNumber);
- Assert.AreEqual(2, node.LinePosition);
- Assert.AreEqual("foo", node.Value);
- Assert.AreEqual("<foo>", node.DisplayValue);
- Assert.AreEqual(XPathNodeType.Element, node.NodeType);
- Assert.IsNotNull(lineInfo);
- }
-
- [Test]
- public void ElementWithNamespacePrefix()
- {
- string xml = "<f:root xmlns:f='http://foo.com'>\r\n" +
- "\t<f:foo></f:foo>\r\n" +
- "</f:root>";
- List<XmlNamespace> namespaces = new List<XmlNamespace>();
- namespaces.Add(new XmlNamespace("fo", "http://foo.com"));
- ReadOnlyCollection<XmlNamespace> readOnlyNamespaces = new ReadOnlyCollection<XmlNamespace>(namespaces);
- XPathNodeMatch[] nodes = XmlEditorView.SelectNodes(xml, "//fo:foo", readOnlyNamespaces);
- XPathNodeMatch node = nodes[0];
- IXmlLineInfo lineInfo = node as IXmlLineInfo;
- Assert.AreEqual(1, nodes.Length);
- Assert.AreEqual(1, node.LineNumber);
- Assert.AreEqual(2, node.LinePosition);
- Assert.AreEqual("f:foo", node.Value);
- Assert.AreEqual("<f:foo>", node.DisplayValue);
- Assert.AreEqual(XPathNodeType.Element, node.NodeType);
- Assert.IsNotNull(lineInfo);
- }
-
- [Test]
- public void NoNodeFound()
- {
- string xml = "<root>\r\n" +
- "\t<foo/>\r\n" +
- "</root>";
- XPathNodeMatch[] nodes = XmlEditorView.SelectNodes(xml, "//bar");
- Assert.AreEqual(0, nodes.Length);
- }
-
- [Test]
- public void TextNode()
- {
- string xml = "<root>\r\n" +
- "\t<foo>test</foo>\r\n" +
- "</root>";
- XPathNodeMatch[] nodes = XmlEditorView.SelectNodes(xml, "//foo/text()");
- XPathNodeMatch node = nodes[0];
- Assert.AreEqual(1, nodes.Length);
- Assert.AreEqual(1, node.LineNumber);
- Assert.AreEqual(6, node.LinePosition);
- Assert.AreEqual("test", node.Value);
- Assert.AreEqual("test", node.DisplayValue);
- }
-
- [Test]
- public void CommentNode()
- {
- string xml = "<!-- Test --><root/>";
- XPathNodeMatch[] nodes = XmlEditorView.SelectNodes(xml, "//comment()");
- XPathNodeMatch node = nodes[0];
- Assert.AreEqual(1, nodes.Length);
- Assert.AreEqual(0, node.LineNumber);
- Assert.AreEqual(4, node.LinePosition);
- Assert.AreEqual(" Test ", node.Value);
- Assert.AreEqual("<!-- Test -->", node.DisplayValue);
- }
-
- [Test]
- public void EmptyCommentNode()
- {
- string xml = "<!----><root/>";
- XPathNodeMatch[] nodes = XmlEditorView.SelectNodes(xml, "//comment()");
- XPathNodeMatch node = nodes[0];
- Assert.AreEqual(1, nodes.Length);
- Assert.AreEqual(0, node.LineNumber);
- Assert.AreEqual(4, node.LinePosition);
- Assert.AreEqual(String.Empty, node.Value);
- Assert.AreEqual("<!---->", node.DisplayValue);
- }
-
- [Test]
- public void NamespaceNode()
- {
- string xml = "<root xmlns='http://foo.com'/>";
- XPathNodeMatch[] nodes = XmlEditorView.SelectNodes(xml, "//namespace::*");
- XPathNodeMatch node = nodes[0];
- XPathNodeMatch xmlNamespaceNode = nodes[1];
- Assert.AreEqual(2, nodes.Length);
- Assert.AreEqual(0, node.LineNumber);
- Assert.AreEqual(6, node.LinePosition);
- Assert.AreEqual("xmlns=\"http://foo.com\"", node.Value);
- Assert.AreEqual("xmlns=\"http://foo.com\"", node.DisplayValue);
- Assert.IsFalse(xmlNamespaceNode.HasLineInfo());
- Assert.AreEqual("xmlns:xml=\"http://www.w3.org/XML/1998/namespace\"", xmlNamespaceNode.Value);
- }
-
- [Test]
- public void ProcessingInstructionNode()
- {
- string xml = "<root><?test processinstruction='1.0'?></root>";
- XPathNodeMatch[] nodes = XmlEditorView.SelectNodes(xml, "//processing-instruction()");
- XPathNodeMatch node = nodes[0];
- Assert.AreEqual("test", node.Value);
- Assert.AreEqual("<?test processinstruction='1.0'?>", node.DisplayValue);
- Assert.AreEqual(0, node.LineNumber);
- Assert.AreEqual(8, node.LinePosition);
- }
-
- [Test]
- public void AttributeNode()
- {
- string xml = "<root>\r\n" +
- "\t<foo Id='ab'></foo>\r\n" +
- "</root>";
- XPathNodeMatch[] nodes = XmlEditorView.SelectNodes(xml, "//foo/@Id");
- XPathNodeMatch node = nodes[0];
- Assert.AreEqual(1, nodes.Length);
- Assert.AreEqual(1, node.LineNumber);
- Assert.AreEqual(6, node.LinePosition);
- Assert.AreEqual("Id", node.Value);
- Assert.AreEqual("@Id", node.DisplayValue);
- }
- }*/
-}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/XPathQuery/XPathHistoryListTests.cs b/main/src/addins/MonoDevelop.XmlEditor/Tests/XPathQuery/XPathHistoryListTests.cs
deleted file mode 100644
index def98dd6fe..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/XPathQuery/XPathHistoryListTests.cs
+++ /dev/null
@@ -1,107 +0,0 @@
-using NUnit.Framework;
-using System.IO;
-using System.Text;
-using System.Xml;
-
-namespace MonoDevelop.XmlEditor.Tests.XPathQuery
-{
-/* [TestFixture]
- public class XPathHistoryListTests
- {
- StringBuilder xml;
- XmlWriter writer;
-
- [SetUp]
- public void Init()
- {
- xml = new StringBuilder();
- XmlWriterSettings settings = new XmlWriterSettings();
- settings.Indent = true;
- settings.OmitXmlDeclaration = true;
- settings.IndentChars = "\t";
- writer = XmlWriter.Create(xml, settings);
- }
-
- [Test]
- public void ToXmlNoItems()
- {
- XPathHistoryList list = new XPathHistoryList();
- list.WriteTo(writer);
-
- string expectedXml = "<XPathHistoryList />";
- Assert.AreEqual(expectedXml, xml.ToString());
- }
-
- [Test]
- public void ToXmlOneItem()
- {
- XPathHistoryList list = new XPathHistoryList();
- list.Add("//test");
- list.WriteTo(writer);
-
- string expectedXml = "<XPathHistoryList>\n" +
- "\t<XPath>//test</XPath>\n" +
- "</XPathHistoryList>";
- Assert.AreEqual(expectedXml, xml.ToString());
- }
-
- [Test]
- public void FromXmlNoItems()
- {
- XPathHistoryList list = new XPathHistoryList();
- list.WriteTo(writer);
-
- string propertiesXml = "<SerializedNode>" + xml.ToString() + "</SerializedNode>";
- XmlTextReader reader = new XmlTextReader(new StringReader(propertiesXml));
- list = new XPathHistoryList();
- list = (XPathHistoryList)list.ReadFrom(reader);
-
- Assert.AreEqual(0, list.GetXPaths().Length);
- }
-
- [Test]
- public void FromXmlOneItem()
- {
- XPathHistoryList list = new XPathHistoryList();
- list.Add("//test");
- list.WriteTo(writer);
-
- string propertiesXml = "<SerializedNode>" + xml.ToString() + "</SerializedNode>";
- XmlTextReader reader = new XmlTextReader(new StringReader(propertiesXml));
- list = new XPathHistoryList();
- list = (XPathHistoryList)list.ReadFrom(reader);
- string[] xpaths = list.GetXPaths();
-
- Assert.AreEqual(1, xpaths.Length);
- Assert.AreEqual("//test", xpaths[0]);
- }
-
- [Test]
- public void FromXmlTwoItems()
- {
- XPathHistoryList list = new XPathHistoryList();
- list.Add("//test");
- list.Add("//a");
- list.WriteTo(writer);
-
- string propertiesXml = "<SerializedNode>" + xml.ToString() + "</SerializedNode>";
- XmlTextReader reader = new XmlTextReader(new StringReader(propertiesXml));
- list = new XPathHistoryList();
- list = (XPathHistoryList)list.ReadFrom(reader);
-
- string[] xpaths = list.GetXPaths();
- Assert.AreEqual(2, xpaths.Length);
- Assert.AreEqual("//test", xpaths[0]);
- Assert.AreEqual("//a", xpaths[1]);
- }
-
- [Test]
- public void FromXmlContainingNoXPathHistoryList()
- {
- XPathHistoryList list = new XPathHistoryList();
- XmlTextReader reader = new XmlTextReader(new StringReader("<SerializedNode/>"));
- list = (XPathHistoryList)list.ReadFrom(reader);
- Assert.AreEqual(0, list.GetXPaths().Length);
- }
- }*/
-}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/XPathQuery/XPathNamespaceListTests.cs b/main/src/addins/MonoDevelop.XmlEditor/Tests/XPathQuery/XPathNamespaceListTests.cs
deleted file mode 100644
index 45ac127a17..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/XPathQuery/XPathNamespaceListTests.cs
+++ /dev/null
@@ -1,130 +0,0 @@
-
-using MonoDevelop.Core;
-using NUnit.Framework;
-using System;
-using System.IO;
-using System.Text;
-using System.Xml;
-
-namespace MonoDevelop.XmlEditor.Tests.XPathQuery
-{
-/* [TestFixture]
- public class XPathNamespaceListTests
- {
- StringBuilder xml;
- XmlWriter writer;
-
- [SetUp]
- public void Init()
- {
- xml = new StringBuilder();
- XmlWriterSettings settings = new XmlWriterSettings();
- settings.Indent = true;
- settings.OmitXmlDeclaration = true;
- settings.IndentChars = "\t";
- writer = XmlWriter.Create(xml, settings);
- }
-
- [Test]
- public void ToXmlNoItems()
- {
- XPathNamespaceList list = new XPathNamespaceList();
- list.WriteTo(writer);
- string expectedXml = "<XPathNamespaceList />";
-
- Assert.AreEqual(expectedXml, xml.ToString());
- }
-
- [Test]
- public void ToXmlOneItem()
- {
- XPathNamespaceList list = new XPathNamespaceList();
- list.Add("n", "http://mono-project.com");
- list.WriteTo(writer);
- string expectedXml = "<XPathNamespaceList>\n" +
- "\t<Namespace>Prefix [n] Uri [http://mono-project.com]</Namespace>\n" +
- "</XPathNamespaceList>";
-
- Assert.AreEqual(expectedXml, xml.ToString());
- }
-
- [Test]
- public void FromXmlNoItems()
- {
- XPathNamespaceList list = new XPathNamespaceList();
- list.WriteTo(writer);
-
- string propertiesXml = "<SerializedNode>" + xml.ToString() + "</SerializedNode>";
- XmlTextReader reader = new XmlTextReader(new StringReader(propertiesXml));
- list = new XPathNamespaceList();
- list = (XPathNamespaceList)list.ReadFrom(reader);
-
- Assert.AreEqual(0, list.GetNamespaces().Length);
- }
-
- [Test]
- public void FromXmlOneItem()
- {
- XPathNamespaceList list = new XPathNamespaceList();
- list.Add("n", "http://mono-project.com");
- list.WriteTo(writer);
-
- string propertiesXml = "<SerializedNode>" + xml.ToString() + "</SerializedNode>";
- XmlTextReader reader = new XmlTextReader(new StringReader(propertiesXml));
- list = new XPathNamespaceList();
- list = (XPathNamespaceList)list.ReadFrom(reader);
-
- XmlNamespace[] namespaces = list.GetNamespaces();
- Assert.AreEqual(1, namespaces.Length);
- Assert.AreEqual("n", namespaces[0].Prefix);
- Assert.AreEqual("http://mono-project.com", namespaces[0].Uri);
- }
-
- [Test]
- public void FromXmlTwoItems()
- {
- XPathNamespaceList list = new XPathNamespaceList();
- list.Add("a", "Namespace-a");
- list.Add("b", "Namespace-b");
- list.WriteTo(writer);
-
- string propertiesXml = "<SerializedNode>" + xml.ToString() + "</SerializedNode>";
- XmlTextReader reader = new XmlTextReader(new StringReader(propertiesXml));
- list = new XPathNamespaceList();
- list = (XPathNamespaceList)list.ReadFrom(reader);
-
- XmlNamespace[] namespaces = list.GetNamespaces();
- Assert.AreEqual(2, namespaces.Length);
- Assert.AreEqual("Namespace-a", namespaces[0].Uri);
- Assert.AreEqual("Namespace-b", namespaces[1].Uri);
- }
-
- [Test]
- public void InvalidNamespace()
- {
- string xml = "<XPathNamespaceList>\n" +
- "\t<Namespace>Prefix [n] Uri [http://mono-project.com]</Namespace>\n" +
- "\t<Namespace></Namespace>\n" +
- "</XPathNamespaceList>";
-
- string propertiesXml = "<SerializedNode>" + xml.ToString() + "</SerializedNode>";
- XmlTextReader reader = new XmlTextReader(new StringReader(propertiesXml));
- XPathNamespaceList list = new XPathNamespaceList();
- list = (XPathNamespaceList)list.ReadFrom(reader);
-
- XmlNamespace[] namespaces = list.GetNamespaces();
- Assert.AreEqual(2, namespaces.Length);
- Assert.AreEqual("http://mono-project.com", namespaces[0].Uri);
- Assert.AreEqual(String.Empty, namespaces[1].Uri);
- }
-
- [Test]
- public void FromXmlContainingNoXPathNamespaceList()
- {
- XPathNamespaceList list = new XPathNamespaceList();
- XmlTextReader reader = new XmlTextReader(new StringReader("<SerializedNode/>"));
- list = (XPathNamespaceList)list.ReadFrom(reader);
- Assert.AreEqual(0, list.GetNamespaces().Length);
- }
- }*/
-}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/XPathQuery/XmlNamespaceTests.cs b/main/src/addins/MonoDevelop.XmlEditor/Tests/XPathQuery/XmlNamespaceTests.cs
deleted file mode 100644
index 069c100bc5..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/XPathQuery/XmlNamespaceTests.cs
+++ /dev/null
@@ -1,18 +0,0 @@
-
-using MonoDevelop.XmlEditor;
-using NUnit.Framework;
-
-namespace MonoDevelop.XmlEditor.Tests.XPathQuery
-{
- [TestFixture]
- public class XmlNamespaceTests
- {
- [Test]
- public void SimpleNamespace()
- {
- XmlNamespace ns = new XmlNamespace("s", "http://sharpdevelop.com");
- Assert.AreEqual("s", ns.Prefix);
- Assert.AreEqual("http://sharpdevelop.com", ns.Uri);
- }
- }
-}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/XPathQuery/XmlNamespaceToStringTests.cs b/main/src/addins/MonoDevelop.XmlEditor/Tests/XPathQuery/XmlNamespaceToStringTests.cs
deleted file mode 100644
index 55182fef25..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/XPathQuery/XmlNamespaceToStringTests.cs
+++ /dev/null
@@ -1,50 +0,0 @@
-
-using MonoDevelop.XmlEditor;
-using NUnit.Framework;
-using System;
-
-namespace MonoDevelop.XmlEditor.Tests.XPathQuery
-{
- [TestFixture]
- public class XmlNamespaceToStringTests
- {
- [Test]
- public void PrefixAndNamespaceToString()
- {
- XmlNamespace ns = new XmlNamespace("f", "http://foo.com");
- Assert.AreEqual("Prefix [f] Uri [http://foo.com]", ns.ToString());
- }
-
- [Test]
- public void PrefixAndNamespaceFromString()
- {
- XmlNamespace ns = XmlNamespace.FromString("Prefix [f] Uri [http://foo.com]");
- Assert.AreEqual("f", ns.Prefix);
- Assert.AreEqual("http://foo.com", ns.Uri);
- }
-
- [Test]
- public void EmptyPrefixAndNamespaceFromString()
- {
- XmlNamespace ns = XmlNamespace.FromString("Prefix [] Uri [http://foo.com]");
- Assert.AreEqual(String.Empty, ns.Prefix);
- Assert.AreEqual("http://foo.com", ns.Uri);
- }
-
- [Test]
- public void PrefixAndEmptyNamespaceFromString()
- {
- XmlNamespace ns = XmlNamespace.FromString("Prefix [f] Uri []");
- Assert.AreEqual("f", ns.Prefix);
- Assert.AreEqual(String.Empty, ns.Uri);
- }
-
- [Test]
- public void FromEmptyString()
- {
- XmlNamespace ns = XmlNamespace.FromString(String.Empty);
- Assert.AreEqual(String.Empty, ns.Prefix);
- Assert.AreEqual(String.Empty, ns.Uri);
- }
- }
-}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/gtk-gui/MonoDevelop.Xml.Formatting.XmlFormattingPolicyPanelWidget.cs b/main/src/addins/MonoDevelop.XmlEditor/gtk-gui/MonoDevelop.Xml.Formatting.XmlFormattingPolicyPanelWidget.cs
deleted file mode 100644
index 963729d207..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/gtk-gui/MonoDevelop.Xml.Formatting.XmlFormattingPolicyPanelWidget.cs
+++ /dev/null
@@ -1,159 +0,0 @@
-
-// This file has been generated by the GUI designer. Do not modify.
-namespace MonoDevelop.Xml.Formatting
-{
- internal partial class XmlFormattingPolicyPanelWidget
- {
- private global::Gtk.VBox vbox2;
- private global::Gtk.HBox hbox1;
- private global::Gtk.VBox boxScopes;
- private global::Gtk.ScrolledWindow GtkScrolledWindow;
- private global::Gtk.TreeView listView;
- private global::Gtk.HBox hbox2;
- private global::Gtk.Button buttonAdd;
- private global::Gtk.Button buttonRemove;
- private global::Gtk.VBox vbox4;
- private global::Gtk.Label labelScopes;
- private global::Gtk.Table tableScopes;
- private global::MonoDevelop.Components.PropertyGrid.PropertyGrid propertyGrid;
- private global::Gtk.HBox hbox3;
- private global::Gtk.Button buttonAdvanced;
-
- protected virtual void Build ()
- {
- global::Stetic.Gui.Initialize (this);
- // Widget MonoDevelop.Xml.Formatting.XmlFormattingPolicyPanelWidget
- global::Stetic.BinContainer.Attach (this);
- this.Name = "MonoDevelop.Xml.Formatting.XmlFormattingPolicyPanelWidget";
- // Container child MonoDevelop.Xml.Formatting.XmlFormattingPolicyPanelWidget.Gtk.Container+ContainerChild
- this.vbox2 = new global::Gtk.VBox ();
- this.vbox2.Name = "vbox2";
- this.vbox2.Spacing = 6;
- // Container child vbox2.Gtk.Box+BoxChild
- this.hbox1 = new global::Gtk.HBox ();
- this.hbox1.Name = "hbox1";
- this.hbox1.Spacing = 6;
- // Container child hbox1.Gtk.Box+BoxChild
- this.boxScopes = new global::Gtk.VBox ();
- this.boxScopes.Name = "boxScopes";
- this.boxScopes.Spacing = 6;
- // Container child boxScopes.Gtk.Box+BoxChild
- this.GtkScrolledWindow = new global::Gtk.ScrolledWindow ();
- this.GtkScrolledWindow.Name = "GtkScrolledWindow";
- this.GtkScrolledWindow.ShadowType = ((global::Gtk.ShadowType)(1));
- // Container child GtkScrolledWindow.Gtk.Container+ContainerChild
- this.listView = new global::Gtk.TreeView ();
- this.listView.CanFocus = true;
- this.listView.Name = "listView";
- this.listView.HeadersVisible = false;
- this.GtkScrolledWindow.Add (this.listView);
- this.boxScopes.Add (this.GtkScrolledWindow);
- global::Gtk.Box.BoxChild w2 = ((global::Gtk.Box.BoxChild)(this.boxScopes [this.GtkScrolledWindow]));
- w2.Position = 0;
- // Container child boxScopes.Gtk.Box+BoxChild
- this.hbox2 = new global::Gtk.HBox ();
- this.hbox2.Name = "hbox2";
- this.hbox2.Spacing = 6;
- // Container child hbox2.Gtk.Box+BoxChild
- this.buttonAdd = new global::Gtk.Button ();
- this.buttonAdd.CanFocus = true;
- this.buttonAdd.Name = "buttonAdd";
- this.buttonAdd.UseStock = true;
- this.buttonAdd.UseUnderline = true;
- this.buttonAdd.Label = "gtk-add";
- this.hbox2.Add (this.buttonAdd);
- global::Gtk.Box.BoxChild w3 = ((global::Gtk.Box.BoxChild)(this.hbox2 [this.buttonAdd]));
- w3.Position = 0;
- w3.Expand = false;
- w3.Fill = false;
- // Container child hbox2.Gtk.Box+BoxChild
- this.buttonRemove = new global::Gtk.Button ();
- this.buttonRemove.CanFocus = true;
- this.buttonRemove.Name = "buttonRemove";
- this.buttonRemove.UseStock = true;
- this.buttonRemove.UseUnderline = true;
- this.buttonRemove.Label = "gtk-remove";
- this.hbox2.Add (this.buttonRemove);
- global::Gtk.Box.BoxChild w4 = ((global::Gtk.Box.BoxChild)(this.hbox2 [this.buttonRemove]));
- w4.Position = 1;
- w4.Expand = false;
- w4.Fill = false;
- this.boxScopes.Add (this.hbox2);
- global::Gtk.Box.BoxChild w5 = ((global::Gtk.Box.BoxChild)(this.boxScopes [this.hbox2]));
- w5.Position = 1;
- w5.Expand = false;
- w5.Fill = false;
- this.hbox1.Add (this.boxScopes);
- global::Gtk.Box.BoxChild w6 = ((global::Gtk.Box.BoxChild)(this.hbox1 [this.boxScopes]));
- w6.Position = 0;
- w6.Expand = false;
- w6.Fill = false;
- // Container child hbox1.Gtk.Box+BoxChild
- this.vbox4 = new global::Gtk.VBox ();
- this.vbox4.Name = "vbox4";
- this.vbox4.Spacing = 6;
- // Container child vbox4.Gtk.Box+BoxChild
- this.labelScopes = new global::Gtk.Label ();
- this.labelScopes.Name = "labelScopes";
- this.labelScopes.Xalign = 0F;
- this.labelScopes.LabelProp = global::Mono.Unix.Catalog.GetString ("Enter one or several xpath expressions to which this format applies:");
- this.vbox4.Add (this.labelScopes);
- global::Gtk.Box.BoxChild w7 = ((global::Gtk.Box.BoxChild)(this.vbox4 [this.labelScopes]));
- w7.Position = 0;
- w7.Expand = false;
- w7.Fill = false;
- // Container child vbox4.Gtk.Box+BoxChild
- this.tableScopes = new global::Gtk.Table (((uint)(3)), ((uint)(3)), false);
- this.tableScopes.Name = "tableScopes";
- this.tableScopes.RowSpacing = ((uint)(6));
- this.tableScopes.ColumnSpacing = ((uint)(6));
- this.vbox4.Add (this.tableScopes);
- global::Gtk.Box.BoxChild w8 = ((global::Gtk.Box.BoxChild)(this.vbox4 [this.tableScopes]));
- w8.Position = 1;
- w8.Expand = false;
- w8.Fill = false;
- // Container child vbox4.Gtk.Box+BoxChild
- this.propertyGrid = new global::MonoDevelop.Components.PropertyGrid.PropertyGrid ();
- this.propertyGrid.Name = "propertyGrid";
- this.propertyGrid.ShowToolbar = false;
- this.propertyGrid.ShowHelp = false;
- this.vbox4.Add (this.propertyGrid);
- global::Gtk.Box.BoxChild w9 = ((global::Gtk.Box.BoxChild)(this.vbox4 [this.propertyGrid]));
- w9.Position = 2;
- this.hbox1.Add (this.vbox4);
- global::Gtk.Box.BoxChild w10 = ((global::Gtk.Box.BoxChild)(this.hbox1 [this.vbox4]));
- w10.Position = 1;
- this.vbox2.Add (this.hbox1);
- global::Gtk.Box.BoxChild w11 = ((global::Gtk.Box.BoxChild)(this.vbox2 [this.hbox1]));
- w11.Position = 0;
- // Container child vbox2.Gtk.Box+BoxChild
- this.hbox3 = new global::Gtk.HBox ();
- this.hbox3.Name = "hbox3";
- this.hbox3.Spacing = 6;
- // Container child hbox3.Gtk.Box+BoxChild
- this.buttonAdvanced = new global::Gtk.Button ();
- this.buttonAdvanced.CanFocus = true;
- this.buttonAdvanced.Name = "buttonAdvanced";
- this.buttonAdvanced.UseUnderline = true;
- this.buttonAdvanced.Label = global::Mono.Unix.Catalog.GetString ("Advanced Settings");
- this.hbox3.Add (this.buttonAdvanced);
- global::Gtk.Box.BoxChild w12 = ((global::Gtk.Box.BoxChild)(this.hbox3 [this.buttonAdvanced]));
- w12.Position = 0;
- w12.Expand = false;
- w12.Fill = false;
- this.vbox2.Add (this.hbox3);
- global::Gtk.Box.BoxChild w13 = ((global::Gtk.Box.BoxChild)(this.vbox2 [this.hbox3]));
- w13.Position = 1;
- w13.Expand = false;
- w13.Fill = false;
- this.Add (this.vbox2);
- if ((this.Child != null)) {
- this.Child.ShowAll ();
- }
- this.Hide ();
- this.buttonAdd.Clicked += new global::System.EventHandler (this.OnButtonAddClicked);
- this.buttonRemove.Clicked += new global::System.EventHandler (this.OnButtonRemoveClicked);
- this.buttonAdvanced.Clicked += new global::System.EventHandler (this.OnButtonAdvancedClicked);
- }
- }
-}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/gtk-gui/MonoDevelop.XmlEditor.Gui.XmlEditorOptionsPanelWidget.cs b/main/src/addins/MonoDevelop.XmlEditor/gtk-gui/MonoDevelop.XmlEditor.Gui.XmlEditorOptionsPanelWidget.cs
deleted file mode 100644
index 3a284d598b..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/gtk-gui/MonoDevelop.XmlEditor.Gui.XmlEditorOptionsPanelWidget.cs
+++ /dev/null
@@ -1,67 +0,0 @@
-
-// This file has been generated by the GUI designer. Do not modify.
-namespace MonoDevelop.XmlEditor.Gui
-{
- public partial class XmlEditorOptionsPanelWidget
- {
- private global::Gtk.VBox vbox1;
- private global::Gtk.CheckButton autoCompleteElementsCheck;
- private global::Gtk.CheckButton autoAddPunctuationCheck;
- private global::Gtk.CheckButton showSchemaAnnotationCheck;
-
- protected virtual void Build ()
- {
- global::Stetic.Gui.Initialize (this);
- // Widget MonoDevelop.XmlEditor.Gui.XmlEditorOptionsPanelWidget
- global::Stetic.BinContainer.Attach (this);
- this.Name = "MonoDevelop.XmlEditor.Gui.XmlEditorOptionsPanelWidget";
- // Container child MonoDevelop.XmlEditor.Gui.XmlEditorOptionsPanelWidget.Gtk.Container+ContainerChild
- this.vbox1 = new global::Gtk.VBox ();
- this.vbox1.Name = "vbox1";
- this.vbox1.Spacing = 6;
- // Container child vbox1.Gtk.Box+BoxChild
- this.autoCompleteElementsCheck = new global::Gtk.CheckButton ();
- this.autoCompleteElementsCheck.CanFocus = true;
- this.autoCompleteElementsCheck.Name = "autoCompleteElementsCheck";
- this.autoCompleteElementsCheck.Label = global::Mono.Unix.Catalog.GetString ("Automatically insert closing tags");
- this.autoCompleteElementsCheck.DrawIndicator = true;
- this.autoCompleteElementsCheck.UseUnderline = true;
- this.vbox1.Add (this.autoCompleteElementsCheck);
- global::Gtk.Box.BoxChild w1 = ((global::Gtk.Box.BoxChild)(this.vbox1 [this.autoCompleteElementsCheck]));
- w1.Position = 0;
- w1.Expand = false;
- w1.Fill = false;
- // Container child vbox1.Gtk.Box+BoxChild
- this.autoAddPunctuationCheck = new global::Gtk.CheckButton ();
- this.autoAddPunctuationCheck.CanFocus = true;
- this.autoAddPunctuationCheck.Name = "autoAddPunctuationCheck";
- this.autoAddPunctuationCheck.Label = global::Mono.Unix.Catalog.GetString ("Automatically insert punctuation (=\"\", />, etc.)");
- this.autoAddPunctuationCheck.Active = true;
- this.autoAddPunctuationCheck.DrawIndicator = true;
- this.autoAddPunctuationCheck.UseUnderline = true;
- this.vbox1.Add (this.autoAddPunctuationCheck);
- global::Gtk.Box.BoxChild w2 = ((global::Gtk.Box.BoxChild)(this.vbox1 [this.autoAddPunctuationCheck]));
- w2.Position = 1;
- w2.Expand = false;
- w2.Fill = false;
- // Container child vbox1.Gtk.Box+BoxChild
- this.showSchemaAnnotationCheck = new global::Gtk.CheckButton ();
- this.showSchemaAnnotationCheck.Sensitive = false;
- this.showSchemaAnnotationCheck.CanFocus = true;
- this.showSchemaAnnotationCheck.Name = "showSchemaAnnotationCheck";
- this.showSchemaAnnotationCheck.Label = global::Mono.Unix.Catalog.GetString ("Show schema annotation");
- this.showSchemaAnnotationCheck.DrawIndicator = true;
- this.showSchemaAnnotationCheck.UseUnderline = true;
- this.vbox1.Add (this.showSchemaAnnotationCheck);
- global::Gtk.Box.BoxChild w3 = ((global::Gtk.Box.BoxChild)(this.vbox1 [this.showSchemaAnnotationCheck]));
- w3.Position = 2;
- w3.Expand = false;
- w3.Fill = false;
- this.Add (this.vbox1);
- if ((this.Child != null)) {
- this.Child.ShowAll ();
- }
- this.Show ();
- }
- }
-}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/gtk-gui/MonoDevelop.XmlEditor.Gui.XmlSchemasPanelWidget.cs b/main/src/addins/MonoDevelop.XmlEditor/gtk-gui/MonoDevelop.XmlEditor.Gui.XmlSchemasPanelWidget.cs
deleted file mode 100644
index 0434dc2ac7..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/gtk-gui/MonoDevelop.XmlEditor.Gui.XmlSchemasPanelWidget.cs
+++ /dev/null
@@ -1,179 +0,0 @@
-
-// This file has been generated by the GUI designer. Do not modify.
-namespace MonoDevelop.XmlEditor.Gui
-{
- public partial class XmlSchemasPanelWidget
- {
- private global::Gtk.VBox vbox1;
- private global::Gtk.Label label1;
- private global::Gtk.HBox hbox1;
- private global::Gtk.ScrolledWindow GtkScrolledWindow;
- private global::Gtk.TreeView registeredSchemasView;
- private global::Gtk.VBox vbox2;
- private global::Gtk.Button registeredSchemasAddButton;
- private global::Gtk.Button registeredSchemasRemoveButton;
- private global::Gtk.Label label3;
- private global::Gtk.Label label2;
- private global::Gtk.HBox hbox2;
- private global::Gtk.ScrolledWindow GtkScrolledWindow1;
- private global::Gtk.TreeView defaultAssociationsView;
- private global::Gtk.VBox vbox3;
- private global::Gtk.Button defaultAssociationsAddButton;
- private global::Gtk.Button defaultAssociationsRemoveButton;
-
- protected virtual void Build ()
- {
- global::Stetic.Gui.Initialize (this);
- // Widget MonoDevelop.XmlEditor.Gui.XmlSchemasPanelWidget
- global::Stetic.BinContainer.Attach (this);
- this.Name = "MonoDevelop.XmlEditor.Gui.XmlSchemasPanelWidget";
- // Container child MonoDevelop.XmlEditor.Gui.XmlSchemasPanelWidget.Gtk.Container+ContainerChild
- this.vbox1 = new global::Gtk.VBox ();
- this.vbox1.Name = "vbox1";
- this.vbox1.Spacing = 6;
- // Container child vbox1.Gtk.Box+BoxChild
- this.label1 = new global::Gtk.Label ();
- this.label1.Name = "label1";
- this.label1.Xalign = 0F;
- this.label1.LabelProp = global::Mono.Unix.Catalog.GetString ("<b>Registered Schemas</b>");
- this.label1.UseMarkup = true;
- this.vbox1.Add (this.label1);
- global::Gtk.Box.BoxChild w1 = ((global::Gtk.Box.BoxChild)(this.vbox1 [this.label1]));
- w1.Position = 0;
- w1.Expand = false;
- w1.Fill = false;
- // Container child vbox1.Gtk.Box+BoxChild
- this.hbox1 = new global::Gtk.HBox ();
- this.hbox1.Name = "hbox1";
- this.hbox1.Spacing = 6;
- // Container child hbox1.Gtk.Box+BoxChild
- this.GtkScrolledWindow = new global::Gtk.ScrolledWindow ();
- this.GtkScrolledWindow.Name = "GtkScrolledWindow";
- this.GtkScrolledWindow.ShadowType = ((global::Gtk.ShadowType)(1));
- // Container child GtkScrolledWindow.Gtk.Container+ContainerChild
- this.registeredSchemasView = new global::Gtk.TreeView ();
- this.registeredSchemasView.CanFocus = true;
- this.registeredSchemasView.Name = "registeredSchemasView";
- this.GtkScrolledWindow.Add (this.registeredSchemasView);
- this.hbox1.Add (this.GtkScrolledWindow);
- global::Gtk.Box.BoxChild w3 = ((global::Gtk.Box.BoxChild)(this.hbox1 [this.GtkScrolledWindow]));
- w3.Position = 0;
- // Container child hbox1.Gtk.Box+BoxChild
- this.vbox2 = new global::Gtk.VBox ();
- this.vbox2.Name = "vbox2";
- this.vbox2.Spacing = 6;
- // Container child vbox2.Gtk.Box+BoxChild
- this.registeredSchemasAddButton = new global::Gtk.Button ();
- this.registeredSchemasAddButton.CanFocus = true;
- this.registeredSchemasAddButton.Name = "registeredSchemasAddButton";
- this.registeredSchemasAddButton.UseStock = true;
- this.registeredSchemasAddButton.UseUnderline = true;
- this.registeredSchemasAddButton.Label = "gtk-add";
- this.vbox2.Add (this.registeredSchemasAddButton);
- global::Gtk.Box.BoxChild w4 = ((global::Gtk.Box.BoxChild)(this.vbox2 [this.registeredSchemasAddButton]));
- w4.Position = 0;
- w4.Expand = false;
- w4.Fill = false;
- // Container child vbox2.Gtk.Box+BoxChild
- this.registeredSchemasRemoveButton = new global::Gtk.Button ();
- this.registeredSchemasRemoveButton.CanFocus = true;
- this.registeredSchemasRemoveButton.Name = "registeredSchemasRemoveButton";
- this.registeredSchemasRemoveButton.UseStock = true;
- this.registeredSchemasRemoveButton.UseUnderline = true;
- this.registeredSchemasRemoveButton.Label = "gtk-remove";
- this.vbox2.Add (this.registeredSchemasRemoveButton);
- global::Gtk.Box.BoxChild w5 = ((global::Gtk.Box.BoxChild)(this.vbox2 [this.registeredSchemasRemoveButton]));
- w5.Position = 1;
- w5.Expand = false;
- w5.Fill = false;
- this.hbox1.Add (this.vbox2);
- global::Gtk.Box.BoxChild w6 = ((global::Gtk.Box.BoxChild)(this.hbox1 [this.vbox2]));
- w6.Position = 1;
- w6.Expand = false;
- w6.Fill = false;
- this.vbox1.Add (this.hbox1);
- global::Gtk.Box.BoxChild w7 = ((global::Gtk.Box.BoxChild)(this.vbox1 [this.hbox1]));
- w7.Position = 1;
- // Container child vbox1.Gtk.Box+BoxChild
- this.label3 = new global::Gtk.Label ();
- this.label3.Name = "label3";
- this.vbox1.Add (this.label3);
- global::Gtk.Box.BoxChild w8 = ((global::Gtk.Box.BoxChild)(this.vbox1 [this.label3]));
- w8.Position = 2;
- w8.Expand = false;
- w8.Fill = false;
- // Container child vbox1.Gtk.Box+BoxChild
- this.label2 = new global::Gtk.Label ();
- this.label2.Name = "label2";
- this.label2.Xalign = 0F;
- this.label2.LabelProp = global::Mono.Unix.Catalog.GetString ("<b>Default File Associations</b>");
- this.label2.UseMarkup = true;
- this.vbox1.Add (this.label2);
- global::Gtk.Box.BoxChild w9 = ((global::Gtk.Box.BoxChild)(this.vbox1 [this.label2]));
- w9.Position = 3;
- w9.Expand = false;
- w9.Fill = false;
- // Container child vbox1.Gtk.Box+BoxChild
- this.hbox2 = new global::Gtk.HBox ();
- this.hbox2.Name = "hbox2";
- this.hbox2.Spacing = 6;
- // Container child hbox2.Gtk.Box+BoxChild
- this.GtkScrolledWindow1 = new global::Gtk.ScrolledWindow ();
- this.GtkScrolledWindow1.Name = "GtkScrolledWindow1";
- this.GtkScrolledWindow1.ShadowType = ((global::Gtk.ShadowType)(1));
- // Container child GtkScrolledWindow1.Gtk.Container+ContainerChild
- this.defaultAssociationsView = new global::Gtk.TreeView ();
- this.defaultAssociationsView.CanFocus = true;
- this.defaultAssociationsView.Name = "defaultAssociationsView";
- this.GtkScrolledWindow1.Add (this.defaultAssociationsView);
- this.hbox2.Add (this.GtkScrolledWindow1);
- global::Gtk.Box.BoxChild w11 = ((global::Gtk.Box.BoxChild)(this.hbox2 [this.GtkScrolledWindow1]));
- w11.Position = 0;
- // Container child hbox2.Gtk.Box+BoxChild
- this.vbox3 = new global::Gtk.VBox ();
- this.vbox3.Name = "vbox3";
- this.vbox3.Spacing = 6;
- // Container child vbox3.Gtk.Box+BoxChild
- this.defaultAssociationsAddButton = new global::Gtk.Button ();
- this.defaultAssociationsAddButton.CanFocus = true;
- this.defaultAssociationsAddButton.Name = "defaultAssociationsAddButton";
- this.defaultAssociationsAddButton.UseStock = true;
- this.defaultAssociationsAddButton.UseUnderline = true;
- this.defaultAssociationsAddButton.Label = "gtk-add";
- this.vbox3.Add (this.defaultAssociationsAddButton);
- global::Gtk.Box.BoxChild w12 = ((global::Gtk.Box.BoxChild)(this.vbox3 [this.defaultAssociationsAddButton]));
- w12.Position = 0;
- w12.Expand = false;
- w12.Fill = false;
- // Container child vbox3.Gtk.Box+BoxChild
- this.defaultAssociationsRemoveButton = new global::Gtk.Button ();
- this.defaultAssociationsRemoveButton.CanFocus = true;
- this.defaultAssociationsRemoveButton.Name = "defaultAssociationsRemoveButton";
- this.defaultAssociationsRemoveButton.UseStock = true;
- this.defaultAssociationsRemoveButton.UseUnderline = true;
- this.defaultAssociationsRemoveButton.Label = "gtk-remove";
- this.vbox3.Add (this.defaultAssociationsRemoveButton);
- global::Gtk.Box.BoxChild w13 = ((global::Gtk.Box.BoxChild)(this.vbox3 [this.defaultAssociationsRemoveButton]));
- w13.Position = 1;
- w13.Expand = false;
- w13.Fill = false;
- this.hbox2.Add (this.vbox3);
- global::Gtk.Box.BoxChild w14 = ((global::Gtk.Box.BoxChild)(this.hbox2 [this.vbox3]));
- w14.Position = 1;
- w14.Expand = false;
- w14.Fill = false;
- this.vbox1.Add (this.hbox2);
- global::Gtk.Box.BoxChild w15 = ((global::Gtk.Box.BoxChild)(this.vbox1 [this.hbox2]));
- w15.Position = 4;
- this.Add (this.vbox1);
- if ((this.Child != null)) {
- this.Child.ShowAll ();
- }
- this.Show ();
- this.registeredSchemasAddButton.Clicked += new global::System.EventHandler (this.addRegisteredSchema);
- this.registeredSchemasRemoveButton.Clicked += new global::System.EventHandler (this.removeRegisteredSchema);
- this.defaultAssociationsAddButton.Clicked += new global::System.EventHandler (this.addFileAssociation);
- this.defaultAssociationsRemoveButton.Clicked += new global::System.EventHandler (this.removeFileAssocation);
- }
- }
-}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/gtk-gui/generated.cs b/main/src/addins/MonoDevelop.XmlEditor/gtk-gui/generated.cs
deleted file mode 100644
index 75935e2e55..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/gtk-gui/generated.cs
+++ /dev/null
@@ -1,81 +0,0 @@
-
-// This file has been generated by the GUI designer. Do not modify.
-namespace Stetic
-{
- internal class Gui
- {
- private static bool initialized;
-
- internal static void Initialize (Gtk.Widget iconRenderer)
- {
- if ((Stetic.Gui.initialized == false)) {
- Stetic.Gui.initialized = true;
- }
- }
- }
-
- internal class BinContainer
- {
- private Gtk.Widget child;
- private Gtk.UIManager uimanager;
-
- public static BinContainer Attach (Gtk.Bin bin)
- {
- BinContainer bc = new BinContainer ();
- bin.SizeRequested += new Gtk.SizeRequestedHandler (bc.OnSizeRequested);
- bin.SizeAllocated += new Gtk.SizeAllocatedHandler (bc.OnSizeAllocated);
- bin.Added += new Gtk.AddedHandler (bc.OnAdded);
- return bc;
- }
-
- private void OnSizeRequested (object sender, Gtk.SizeRequestedArgs args)
- {
- if ((this.child != null)) {
- args.Requisition = this.child.SizeRequest ();
- }
- }
-
- private void OnSizeAllocated (object sender, Gtk.SizeAllocatedArgs args)
- {
- if ((this.child != null)) {
- this.child.Allocation = args.Allocation;
- }
- }
-
- private void OnAdded (object sender, Gtk.AddedArgs args)
- {
- this.child = args.Widget;
- }
-
- public void SetUiManager (Gtk.UIManager uim)
- {
- this.uimanager = uim;
- this.child.Realized += new System.EventHandler (this.OnRealized);
- }
-
- private void OnRealized (object sender, System.EventArgs args)
- {
- if ((this.uimanager != null)) {
- Gtk.Widget w;
- w = this.child.Toplevel;
- if (((w != null) && typeof(Gtk.Window).IsInstanceOfType (w))) {
- ((Gtk.Window)(w)).AddAccelGroup (this.uimanager.AccelGroup);
- this.uimanager = null;
- }
- }
- }
- }
-
- internal class ActionGroups
- {
- public static Gtk.ActionGroup GetActionGroup (System.Type type)
- {
- return Stetic.ActionGroups.GetActionGroup (type.FullName);
- }
-
- public static Gtk.ActionGroup GetActionGroup (string name)
- {
- return null;
- }
- }
-}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/gtk-gui/gui.stetic b/main/src/addins/MonoDevelop.XmlEditor/gtk-gui/gui.stetic
deleted file mode 100644
index 0096e79cd6..0000000000
--- a/main/src/addins/MonoDevelop.XmlEditor/gtk-gui/gui.stetic
+++ /dev/null
@@ -1,491 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<stetic-interface>
- <configuration>
- <images-root-path>..</images-root-path>
- <target-gtk-version>2.12</target-gtk-version>
- </configuration>
- <import>
- <widget-library name="glade-sharp, Version=2.12.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f" />
- <widget-library name="../../../../build/bin/MonoDevelop.Ide.dll" />
- <widget-library name="../../../../build/AddIns/MonoDevelop.DesignerSupport/MonoDevelop.DesignerSupport.dll" />
- <widget-library name="../../../../build/AddIns/DisplayBindings/SourceEditor/MonoDevelop.SourceEditor2.dll" />
- <widget-library name="../../../../build/bin/Mono.TextEditor.dll" />
- <widget-library name="../../../../build/AddIns/MonoDevelop.Debugger/MonoDevelop.Debugger.dll" />
- <widget-library name="../../../../build/AddIns/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.dll" internal="true" />
- </import>
- <widget class="Gtk.Bin" id="MonoDevelop.XmlEditor.Gui.XmlEditorOptionsPanelWidget" design-size="367 300">
- <property name="MemberName" />
- <child>
- <widget class="Gtk.VBox" id="vbox1">
- <property name="MemberName" />
- <property name="Spacing">6</property>
- <child>
- <widget class="Gtk.CheckButton" id="autoCompleteElementsCheck">
- <property name="MemberName" />
- <property name="CanFocus">True</property>
- <property name="Label" translatable="yes">Automatically insert closing tags</property>
- <property name="DrawIndicator">True</property>
- <property name="HasLabel">True</property>
- <property name="UseUnderline">True</property>
- </widget>
- <packing>
- <property name="Position">0</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.CheckButton" id="autoAddPunctuationCheck">
- <property name="MemberName" />
- <property name="CanFocus">True</property>
- <property name="Label" translatable="yes">Automatically insert punctuation (="", /&gt;, etc.)</property>
- <property name="Active">True</property>
- <property name="DrawIndicator">True</property>
- <property name="HasLabel">True</property>
- <property name="UseUnderline">True</property>
- </widget>
- <packing>
- <property name="Position">1</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.CheckButton" id="showSchemaAnnotationCheck">
- <property name="MemberName" />
- <property name="Sensitive">False</property>
- <property name="CanFocus">True</property>
- <property name="Label" translatable="yes">Show schema annotation</property>
- <property name="DrawIndicator">True</property>
- <property name="HasLabel">True</property>
- <property name="UseUnderline">True</property>
- </widget>
- <packing>
- <property name="Position">2</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <placeholder />
- </child>
- </widget>
- </child>
- </widget>
- <widget class="Gtk.Bin" id="MonoDevelop.XmlEditor.Gui.XmlSchemasPanelWidget" design-size="569 340">
- <property name="MemberName" />
- <child>
- <widget class="Gtk.VBox" id="vbox1">
- <property name="MemberName" />
- <property name="Spacing">6</property>
- <child>
- <widget class="Gtk.Label" id="label1">
- <property name="MemberName" />
- <property name="Xalign">0</property>
- <property name="LabelProp" translatable="yes">&lt;b&gt;Registered Schemas&lt;/b&gt;</property>
- <property name="UseMarkup">True</property>
- </widget>
- <packing>
- <property name="Position">0</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.HBox" id="hbox1">
- <property name="MemberName" />
- <property name="Spacing">6</property>
- <child>
- <widget class="Gtk.ScrolledWindow" id="GtkScrolledWindow">
- <property name="MemberName" />
- <property name="ShadowType">In</property>
- <child>
- <widget class="Gtk.TreeView" id="registeredSchemasView">
- <property name="MemberName" />
- <property name="CanFocus">True</property>
- <property name="ShowScrollbars">True</property>
- </widget>
- </child>
- </widget>
- <packing>
- <property name="Position">0</property>
- <property name="AutoSize">True</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.VBox" id="vbox2">
- <property name="MemberName" />
- <property name="Spacing">6</property>
- <child>
- <widget class="Gtk.Button" id="registeredSchemasAddButton">
- <property name="MemberName" />
- <property name="CanFocus">True</property>
- <property name="UseStock">True</property>
- <property name="Type">StockItem</property>
- <property name="StockId">gtk-add</property>
- <signal name="Clicked" handler="addRegisteredSchema" />
- <property name="label">gtk-add</property>
- </widget>
- <packing>
- <property name="Position">0</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.Button" id="registeredSchemasRemoveButton">
- <property name="MemberName" />
- <property name="CanFocus">True</property>
- <property name="UseStock">True</property>
- <property name="Type">StockItem</property>
- <property name="StockId">gtk-remove</property>
- <signal name="Clicked" handler="removeRegisteredSchema" />
- <property name="label">gtk-remove</property>
- </widget>
- <packing>
- <property name="Position">1</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <placeholder />
- </child>
- </widget>
- <packing>
- <property name="Position">1</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="Position">1</property>
- <property name="AutoSize">True</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.Label" id="label3">
- <property name="MemberName" />
- </widget>
- <packing>
- <property name="Position">2</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.Label" id="label2">
- <property name="MemberName" />
- <property name="Xalign">0</property>
- <property name="LabelProp" translatable="yes">&lt;b&gt;Default File Associations&lt;/b&gt;</property>
- <property name="UseMarkup">True</property>
- </widget>
- <packing>
- <property name="Position">3</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.HBox" id="hbox2">
- <property name="MemberName" />
- <property name="Spacing">6</property>
- <child>
- <widget class="Gtk.ScrolledWindow" id="GtkScrolledWindow1">
- <property name="MemberName" />
- <property name="ShadowType">In</property>
- <child>
- <widget class="Gtk.TreeView" id="defaultAssociationsView">
- <property name="MemberName" />
- <property name="CanFocus">True</property>
- <property name="ShowScrollbars">True</property>
- </widget>
- </child>
- </widget>
- <packing>
- <property name="Position">0</property>
- <property name="AutoSize">True</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.VBox" id="vbox3">
- <property name="MemberName" />
- <property name="Spacing">6</property>
- <child>
- <widget class="Gtk.Button" id="defaultAssociationsAddButton">
- <property name="MemberName" />
- <property name="CanFocus">True</property>
- <property name="UseStock">True</property>
- <property name="Type">StockItem</property>
- <property name="StockId">gtk-add</property>
- <signal name="Clicked" handler="addFileAssociation" />
- <property name="label">gtk-add</property>
- </widget>
- <packing>
- <property name="Position">0</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.Button" id="defaultAssociationsRemoveButton">
- <property name="MemberName" />
- <property name="CanFocus">True</property>
- <property name="UseStock">True</property>
- <property name="Type">StockItem</property>
- <property name="StockId">gtk-remove</property>
- <signal name="Clicked" handler="removeFileAssocation" />
- <property name="label">gtk-remove</property>
- </widget>
- <packing>
- <property name="Position">1</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <placeholder />
- </child>
- </widget>
- <packing>
- <property name="Position">1</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="Position">4</property>
- <property name="AutoSize">True</property>
- </packing>
- </child>
- <child>
- <placeholder />
- </child>
- </widget>
- </child>
- </widget>
- <widget class="Gtk.Bin" id="MonoDevelop.Xml.Formatting.XmlFormattingPolicyPanelWidget" design-size="544 349">
- <property name="MemberName" />
- <property name="Visible">False</property>
- <property name="GeneratePublic">False</property>
- <child>
- <widget class="Gtk.VBox" id="vbox2">
- <property name="MemberName" />
- <property name="Spacing">6</property>
- <child>
- <widget class="Gtk.HBox" id="hbox1">
- <property name="MemberName" />
- <property name="Spacing">6</property>
- <child>
- <widget class="Gtk.VBox" id="boxScopes">
- <property name="MemberName" />
- <property name="Spacing">6</property>
- <child>
- <widget class="Gtk.ScrolledWindow" id="GtkScrolledWindow">
- <property name="MemberName" />
- <property name="ShadowType">In</property>
- <child>
- <widget class="Gtk.TreeView" id="listView">
- <property name="MemberName" />
- <property name="CanFocus">True</property>
- <property name="ShowScrollbars">True</property>
- <property name="HeadersVisible">False</property>
- </widget>
- </child>
- </widget>
- <packing>
- <property name="Position">0</property>
- <property name="AutoSize">True</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.HBox" id="hbox2">
- <property name="MemberName" />
- <property name="Spacing">6</property>
- <child>
- <widget class="Gtk.Button" id="buttonAdd">
- <property name="MemberName" />
- <property name="CanFocus">True</property>
- <property name="UseStock">True</property>
- <property name="Type">StockItem</property>
- <property name="StockId">gtk-add</property>
- <signal name="Clicked" handler="OnButtonAddClicked" />
- <property name="label">gtk-add</property>
- </widget>
- <packing>
- <property name="Position">0</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.Button" id="buttonRemove">
- <property name="MemberName" />
- <property name="CanFocus">True</property>
- <property name="UseStock">True</property>
- <property name="Type">StockItem</property>
- <property name="StockId">gtk-remove</property>
- <signal name="Clicked" handler="OnButtonRemoveClicked" />
- <property name="label">gtk-remove</property>
- </widget>
- <packing>
- <property name="Position">1</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <placeholder />
- </child>
- </widget>
- <packing>
- <property name="Position">1</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="Position">0</property>
- <property name="AutoSize">False</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.VBox" id="vbox4">
- <property name="MemberName" />
- <property name="Spacing">6</property>
- <child>
- <widget class="Gtk.Label" id="labelScopes">
- <property name="MemberName" />
- <property name="Xalign">0</property>
- <property name="LabelProp" translatable="yes">Enter one or several xpath expressions to which this format applies:</property>
- </widget>
- <packing>
- <property name="Position">0</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.Table" id="tableScopes">
- <property name="MemberName" />
- <property name="NRows">3</property>
- <property name="NColumns">3</property>
- <property name="RowSpacing">6</property>
- <property name="ColumnSpacing">6</property>
- <child>
- <placeholder />
- </child>
- <child>
- <placeholder />
- </child>
- <child>
- <placeholder />
- </child>
- <child>
- <placeholder />
- </child>
- <child>
- <placeholder />
- </child>
- <child>
- <placeholder />
- </child>
- <child>
- <placeholder />
- </child>
- <child>
- <placeholder />
- </child>
- <child>
- <placeholder />
- </child>
- </widget>
- <packing>
- <property name="Position">1</property>
- <property name="AutoSize">False</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="MonoDevelop.Components.PropertyGrid.PropertyGrid" id="propertyGrid">
- <property name="MemberName" />
- <property name="ShowToolbar">False</property>
- <property name="ShowHelp">False</property>
- </widget>
- <packing>
- <property name="Position">2</property>
- <property name="AutoSize">False</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="Position">1</property>
- <property name="AutoSize">False</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="Position">0</property>
- <property name="AutoSize">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.HBox" id="hbox3">
- <property name="MemberName" />
- <property name="Spacing">6</property>
- <child>
- <widget class="Gtk.Button" id="buttonAdvanced">
- <property name="MemberName" />
- <property name="CanFocus">True</property>
- <property name="Type">TextOnly</property>
- <property name="Label" translatable="yes">Advanced Settings</property>
- <property name="UseUnderline">True</property>
- <signal name="Clicked" handler="OnButtonAdvancedClicked" />
- </widget>
- <packing>
- <property name="Position">0</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <placeholder />
- </child>
- <child>
- <placeholder />
- </child>
- </widget>
- <packing>
- <property name="Position">1</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- </widget>
- </child>
- </widget>
-</stetic-interface> \ No newline at end of file
diff --git a/main/src/addins/VersionControl/MonoDevelop.VersionControl/gtk-gui/generated.cs b/main/src/addins/VersionControl/MonoDevelop.VersionControl/gtk-gui/generated.cs
index 3285e87c05..97249fd82d 100644
--- a/main/src/addins/VersionControl/MonoDevelop.VersionControl/gtk-gui/generated.cs
+++ b/main/src/addins/VersionControl/MonoDevelop.VersionControl/gtk-gui/generated.cs
@@ -1,82 +1,83 @@
-
-// This file has been generated by the GUI designer. Do not modify.
-namespace Stetic
-{
- internal class Gui
- {
- private static bool initialized;
-
- internal static void Initialize (Gtk.Widget iconRenderer)
- {
- if ((Stetic.Gui.initialized == false)) {
- Stetic.Gui.initialized = true;
- }
- }
- }
-
- internal class BinContainer
- {
- private Gtk.Widget child;
-
- private Gtk.UIManager uimanager;
-
- public static BinContainer Attach (Gtk.Bin bin)
- {
- BinContainer bc = new BinContainer ();
- bin.SizeRequested += new Gtk.SizeRequestedHandler (bc.OnSizeRequested);
- bin.SizeAllocated += new Gtk.SizeAllocatedHandler (bc.OnSizeAllocated);
- bin.Added += new Gtk.AddedHandler (bc.OnAdded);
- return bc;
- }
-
- private void OnSizeRequested (object sender, Gtk.SizeRequestedArgs args)
- {
- if ((this.child != null)) {
- args.Requisition = this.child.SizeRequest ();
- }
- }
-
- private void OnSizeAllocated (object sender, Gtk.SizeAllocatedArgs args)
- {
- if ((this.child != null)) {
- this.child.Allocation = args.Allocation;
- }
- }
-
- private void OnAdded (object sender, Gtk.AddedArgs args)
- {
- this.child = args.Widget;
- }
-
- public void SetUiManager (Gtk.UIManager uim)
- {
- this.uimanager = uim;
- this.child.Realized += new System.EventHandler (this.OnRealized);
- }
-
- private void OnRealized (object sender, System.EventArgs args)
- {
- if ((this.uimanager != null)) {
- Gtk.Widget w;
- w = this.child.Toplevel;
- if (((w != null) && typeof(Gtk.Window).IsInstanceOfType (w))) {
- ((Gtk.Window)(w)).AddAccelGroup (this.uimanager.AccelGroup);
- this.uimanager = null;
- }
- }
- }
- }
-
- internal class ActionGroups
- {
- public static Gtk.ActionGroup GetActionGroup (System.Type type)
- {
- return Stetic.ActionGroups.GetActionGroup (type.FullName);
- }
-
- public static Gtk.ActionGroup GetActionGroup (string name)
- {
- return null;
- }
- }
-}
+
+// This file has been generated by the GUI designer. Do not modify.
+namespace Stetic
+{
+ internal class Gui
+ {
+ private static bool initialized;
+
+ internal static void Initialize (Gtk.Widget iconRenderer)
+ {
+ if ((Stetic.Gui.initialized == false)) {
+ Stetic.Gui.initialized = true;
+ }
+ }
+ }
+
+ internal class BinContainer
+ {
+ private Gtk.Widget child;
+
+ private Gtk.UIManager uimanager;
+
+ public static BinContainer Attach (Gtk.Bin bin)
+ {
+ BinContainer bc = new BinContainer ();
+ bin.SizeRequested += new Gtk.SizeRequestedHandler (bc.OnSizeRequested);
+ bin.SizeAllocated += new Gtk.SizeAllocatedHandler (bc.OnSizeAllocated);
+ bin.Added += new Gtk.AddedHandler (bc.OnAdded);
+ return bc;
+ }
+
+ private void OnSizeRequested (object sender, Gtk.SizeRequestedArgs args)
+ {
+ if ((this.child != null)) {
+ args.Requisition = this.child.SizeRequest ();
+ }
+ }
+
+ private void OnSizeAllocated (object sender, Gtk.SizeAllocatedArgs args)
+ {
+ if ((this.child != null)) {
+ this.child.Allocation = args.Allocation;
+ }
+ }
+
+ private void OnAdded (object sender, Gtk.AddedArgs args)
+ {
+ this.child = args.Widget;
+ }
+
+ public void SetUiManager (Gtk.UIManager uim)
+ {
+ this.uimanager = uim;
+ this.child.Realized += new System.EventHandler (this.OnRealized);
+ }
+
+ private void OnRealized (object sender, System.EventArgs args)
+ {
+ if ((this.uimanager != null)) {
+ Gtk.Widget w;
+ w = this.child.Toplevel;
+ if (((w != null)
+ && typeof(Gtk.Window).IsInstanceOfType (w))) {
+ ((Gtk.Window)(w)).AddAccelGroup (this.uimanager.AccelGroup);
+ this.uimanager = null;
+ }
+ }
+ }
+ }
+
+ internal class ActionGroups
+ {
+ public static Gtk.ActionGroup GetActionGroup (System.Type type)
+ {
+ return Stetic.ActionGroups.GetActionGroup (type.FullName);
+ }
+
+ public static Gtk.ActionGroup GetActionGroup (string name)
+ {
+ return null;
+ }
+ }
+}
diff --git a/main/src/addins/Web/Makefile.am b/main/src/addins/Web/Makefile.am
new file mode 100644
index 0000000000..d9cd4205a7
--- /dev/null
+++ b/main/src/addins/Web/Makefile.am
@@ -0,0 +1,2 @@
+SUBDIRS = \
+ MonoDevelop.AspNet
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Completion/EmptyXmlCompletionProvider.cs b/main/src/addins/Xml/Completion/EmptyXmlCompletionProvider.cs
index 6a6ac12b52..8c6adceec0 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Completion/EmptyXmlCompletionProvider.cs
+++ b/main/src/addins/Xml/Completion/EmptyXmlCompletionProvider.cs
@@ -26,13 +26,10 @@
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
-using System;
using MonoDevelop.Ide.CodeCompletion;
-namespace MonoDevelop.XmlEditor.Completion
+namespace MonoDevelop.Xml.Completion
{
-
-
public class EmptyXmlCompletionProvider : IXmlCompletionProvider
{
public CompletionDataList GetElementCompletionData ()
@@ -45,17 +42,17 @@ namespace MonoDevelop.XmlEditor.Completion
return new CompletionDataList ();
}
- public CompletionDataList GetChildElementCompletionData (MonoDevelop.XmlEditor.XmlElementPath path)
+ public CompletionDataList GetChildElementCompletionData (XmlElementPath path)
{
return new CompletionDataList ();
}
- public CompletionDataList GetAttributeCompletionData (MonoDevelop.XmlEditor.XmlElementPath path)
+ public CompletionDataList GetAttributeCompletionData (XmlElementPath path)
{
return new CompletionDataList ();
}
- public CompletionDataList GetAttributeValueCompletionData (MonoDevelop.XmlEditor.XmlElementPath path, string name)
+ public CompletionDataList GetAttributeValueCompletionData (XmlElementPath path, string name)
{
return new CompletionDataList ();
}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Completion/ILazilyLoadedProvider.cs b/main/src/addins/Xml/Completion/ILazilyLoadedProvider.cs
index a8f4df9a05..8d6c8e6aee 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Completion/ILazilyLoadedProvider.cs
+++ b/main/src/addins/Xml/Completion/ILazilyLoadedProvider.cs
@@ -28,7 +28,7 @@
using System;
-namespace MonoDevelop.XmlEditor.Completion
+namespace MonoDevelop.Xml.Completion
{
public interface ILazilyLoadedProvider
{
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Completion/IXmlCompletionProvider.cs b/main/src/addins/Xml/Completion/IXmlCompletionProvider.cs
index 97b4a9ec29..95251d5b73 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Completion/IXmlCompletionProvider.cs
+++ b/main/src/addins/Xml/Completion/IXmlCompletionProvider.cs
@@ -28,8 +28,9 @@
using System;
using MonoDevelop.Ide.CodeCompletion;
+using MonoDevelop.Xml.Editor;
-namespace MonoDevelop.XmlEditor.Completion
+namespace MonoDevelop.Xml.Completion
{
public interface IXmlCompletionProvider
{
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Completion/InferredXmlCompletionProvider.cs b/main/src/addins/Xml/Completion/InferredXmlCompletionProvider.cs
index daea4da569..e1c361f76b 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Completion/InferredXmlCompletionProvider.cs
+++ b/main/src/addins/Xml/Completion/InferredXmlCompletionProvider.cs
@@ -27,12 +27,10 @@
using System;
using System.Collections.Generic;
using MonoDevelop.Ide.CodeCompletion;
-using MonoDevelop.Xml.StateEngine;
+using MonoDevelop.Xml.Dom;
-namespace MonoDevelop.XmlEditor.Completion
+namespace MonoDevelop.Xml.Completion
{
-
-
public class InferredXmlCompletionProvider : IXmlCompletionProvider
{
Dictionary<string,HashSet<string>> elementCompletions = new Dictionary<string,HashSet<string>> ();
@@ -40,11 +38,7 @@ namespace MonoDevelop.XmlEditor.Completion
public DateTime TimeStampUtc { get; set; }
public int ErrorCount { get; set; }
-
- public InferredXmlCompletionProvider ()
- {
- }
-
+
//TODO: respect namespaces
public void Populate (XDocument doc)
{
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Completion/LocalOnlyXmlResolver.cs b/main/src/addins/Xml/Completion/LocalOnlyXmlResolver.cs
index 5df457f498..f5ddb3e5de 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Completion/LocalOnlyXmlResolver.cs
+++ b/main/src/addins/Xml/Completion/LocalOnlyXmlResolver.cs
@@ -26,7 +26,7 @@
using System;
using System.Xml;
-namespace MonoDevelop.XmlEditor.Completion
+namespace MonoDevelop.Xml.Completion
{
public class LocalOnlyXmlResolver : XmlUrlResolver
{
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/QualifiedName.cs b/main/src/addins/Xml/Completion/QualifiedName.cs
index 5d59729f1c..58bbfcd3a9 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/QualifiedName.cs
+++ b/main/src/addins/Xml/Completion/QualifiedName.cs
@@ -24,7 +24,7 @@
using System;
using System.Xml;
-namespace MonoDevelop.XmlEditor
+namespace MonoDevelop.Xml.Completion
{
/// <summary>
/// An <see cref="XmlQualifiedName"/> with the namespace prefix.
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Completion/XmlCompletionData.cs b/main/src/addins/Xml/Completion/XmlCompletionData.cs
index f7d3dff4d3..c3c77f6e94 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Completion/XmlCompletionData.cs
+++ b/main/src/addins/Xml/Completion/XmlCompletionData.cs
@@ -22,19 +22,17 @@
// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-using Gdk;
-using Gtk;
-using MonoDevelop.Ide.Gui;
-using MonoDevelop.Ide.CodeCompletion;
-using System;
-using MonoDevelop.XmlEditor;
-using MonoDevelop.Core;
+using System;
+using Gdk;
using Mono.TextEditor;
-using MonoDevelop.Ide.Gui.Content;
+using MonoDevelop.Core;
using MonoDevelop.Ide;
+using MonoDevelop.Ide.CodeCompletion;
using MonoDevelop.Ide.Commands;
+using MonoDevelop.Ide.Gui.Content;
+using MonoDevelop.Xml.Editor;
-namespace MonoDevelop.XmlEditor.Completion
+namespace MonoDevelop.Xml.Completion
{
/// <summary>
/// Holds the text for namespace, child element or attribute
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Completion/XmlCompletionDataList.cs b/main/src/addins/Xml/Completion/XmlCompletionDataList.cs
index 0cbd8fa3d3..4cbf341bd3 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Completion/XmlCompletionDataList.cs
+++ b/main/src/addins/Xml/Completion/XmlCompletionDataList.cs
@@ -31,7 +31,7 @@ using System.Text;
using System.Xml.Schema;
using System.Xml;
-namespace MonoDevelop.XmlEditor.Completion
+namespace MonoDevelop.Xml.Completion
{
public class XmlCompletionDataList: CompletionDataList
{
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlElementPath.cs b/main/src/addins/Xml/Completion/XmlElementPath.cs
index 50ca7a3163..61050fff3b 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlElementPath.cs
+++ b/main/src/addins/Xml/Completion/XmlElementPath.cs
@@ -21,10 +21,12 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
-using System;
-using MonoDevelop.XmlEditor.Completion;
+using System.Collections.Generic;
+using System.Text;
+using MonoDevelop.Xml.Completion;
+using MonoDevelop.Xml.Dom;
-namespace MonoDevelop.XmlEditor
+namespace MonoDevelop.Xml.Completion
{
/// <summary>
/// Represents the path to an xml element starting from the root of the
@@ -32,20 +34,49 @@ namespace MonoDevelop.XmlEditor
/// </summary>
public class XmlElementPath
{
- QualifiedNameCollection elements = new QualifiedNameCollection();
+ readonly List<QualifiedName> elements;
XmlNamespacePrefixMap nsMap = new XmlNamespacePrefixMap ();
public XmlNamespacePrefixMap Namespaces { get { return nsMap; } }
-
- public XmlElementPath()
+
+ public XmlElementPath (params QualifiedName[] elements)
{
+ this.elements = new List<QualifiedName> (elements);
+ }
+
+ public static XmlElementPath Resolve (IList<XObject> path, string defaultNamespace = null, string defaultPrefix = null)
+ {
+ var elementPath = new XmlElementPath ();
+
+ if (!string.IsNullOrEmpty (defaultNamespace))
+ elementPath.Namespaces.AddPrefix (defaultNamespace, defaultPrefix);
+
+ foreach (var obj in path) {
+ var el = obj as XElement;
+ if (el == null)
+ continue;
+ foreach (var att in el.Attributes) {
+ if (!string.IsNullOrEmpty (att.Value)) {
+ if (att.Name.HasPrefix) {
+ if (att.Name.Prefix == "xmlns")
+ elementPath.Namespaces.AddPrefix (att.Value, att.Name.Name);
+ } else if (att.Name.Name == "xmlns") {
+ elementPath.Namespaces.AddPrefix (att.Value, "");
+ }
+ }
+ }
+ string ns = elementPath.Namespaces.GetNamespace (el.Name.HasPrefix? el.Name.Prefix : "");
+ var qn = new QualifiedName (el.Name.Name, ns, el.Name.Prefix ?? "");
+ elementPath.Elements.Add (qn);
+ }
+ return elementPath;
}
/// <summary>
/// Gets the elements specifying the path.
/// </summary>
/// <remarks>The order of the elements determines the path.</remarks>
- public QualifiedNameCollection Elements {
+ public List<QualifiedName> Elements {
get {
return elements;
}
@@ -77,10 +108,12 @@ namespace MonoDevelop.XmlEditor
/// </summary>
public override bool Equals(object obj) {
- if (!(obj is XmlElementPath)) return false;
- if (this == obj) return true;
-
- XmlElementPath rhs = (XmlElementPath)obj;
+ var rhs = obj as XmlElementPath;
+ if (rhs == null)
+ return false;
+ if (this == obj)
+ return true;
+
if (elements.Count == rhs.elements.Count) {
for (int i = 0; i < elements.Count; ++i) {
@@ -105,7 +138,8 @@ namespace MonoDevelop.XmlEditor
{
while (index >= 0) {
--index;
- elements.RemoveFirst();
+ if (elements.Count > 0)
+ elements.RemoveAt (0);
}
}
@@ -129,5 +163,14 @@ namespace MonoDevelop.XmlEditor
}
return index;
}
+
+ public override string ToString ()
+ {
+ var sb = new StringBuilder ();
+ foreach (var el in elements) {
+ sb.AppendFormat ("/{0}[{1}]", el.Name, el.Namespace);
+ }
+ return sb.ToString ();
+ }
}
}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Completion/XmlMultipleClosingTagCompletionData.cs b/main/src/addins/Xml/Completion/XmlMultipleClosingTagCompletionData.cs
index b3aafd8821..2397d663e4 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Completion/XmlMultipleClosingTagCompletionData.cs
+++ b/main/src/addins/Xml/Completion/XmlMultipleClosingTagCompletionData.cs
@@ -26,23 +26,19 @@
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
-using System;
using System.Text;
using MonoDevelop.Core;
using MonoDevelop.Ide.CodeCompletion;
-using MonoDevelop.Ide.Gui.Content;
-using MonoDevelop.Xml.StateEngine;
+using MonoDevelop.Xml.Dom;
-namespace MonoDevelop.XmlEditor.Completion
+namespace MonoDevelop.Xml.Completion
{
-
-
public class XmlMultipleClosingTagCompletionData : CompletionData
{
string name, description;
- XElement finalEl;
- XElement[] intEls;
+ readonly XElement finalEl;
+ readonly XElement[] intEls;
public XmlMultipleClosingTagCompletionData (XElement finalEl, XElement[] intermediateElements)
{
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Completion/XmlNamespacePrefixMap.cs b/main/src/addins/Xml/Completion/XmlNamespacePrefixMap.cs
index fe71e384e9..1dc5e08606 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Completion/XmlNamespacePrefixMap.cs
+++ b/main/src/addins/Xml/Completion/XmlNamespacePrefixMap.cs
@@ -27,7 +27,7 @@
using System;
using System.Collections.Generic;
-namespace MonoDevelop.XmlEditor.Completion
+namespace MonoDevelop.Xml.Completion
{
public class XmlNamespacePrefixMap
{
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Completion/XmlSchemaCompletionData.cs b/main/src/addins/Xml/Completion/XmlSchemaCompletionData.cs
index 2f77e6d39c..6a52d9ffc3 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Completion/XmlSchemaCompletionData.cs
+++ b/main/src/addins/Xml/Completion/XmlSchemaCompletionData.cs
@@ -21,15 +21,15 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
-using MonoDevelop.Ide.CodeCompletion;
using System;
-using System.Collections;
using System.IO;
-using System.Text;
+using System.Linq;
using System.Xml;
using System.Xml.Schema;
+using MonoDevelop.Ide.CodeCompletion;
+using MonoDevelop.Xml.Editor;
-namespace MonoDevelop.XmlEditor.Completion
+namespace MonoDevelop.Xml.Completion
{
/// <summary>
/// Holds the completion (intellisense) data for an xml schema.
@@ -262,8 +262,10 @@ namespace MonoDevelop.XmlEditor.Completion
var data = new XmlCompletionDataList (path.Namespaces);
var element = FindElement (path);
- if (element != null)
- GetChildElementCompletionData (data, element, path.Elements.LastPrefix);
+ if (element != null) {
+ var last = path.Elements.LastOrDefault ();
+ GetChildElementCompletionData (data, element, last != null ? last.Prefix : "");
+ }
return data;
}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Completion/XmlSchemaCompletionDataCollection.cs b/main/src/addins/Xml/Completion/XmlSchemaCompletionDataCollection.cs
index 1035529793..5df7aa6a9f 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Completion/XmlSchemaCompletionDataCollection.cs
+++ b/main/src/addins/Xml/Completion/XmlSchemaCompletionDataCollection.cs
@@ -25,7 +25,7 @@ using MonoDevelop.Ide.CodeCompletion;
using System;
using System.Collections.Generic;
-namespace MonoDevelop.XmlEditor.Completion
+namespace MonoDevelop.Xml.Completion
{
public interface IXmlSchemaCompletionDataCollection: IEnumerable<XmlSchemaCompletionData>
{
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Completion/XmlTagCompletionData.cs b/main/src/addins/Xml/Completion/XmlTagCompletionData.cs
index a19782d6b4..befc32f068 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Completion/XmlTagCompletionData.cs
+++ b/main/src/addins/Xml/Completion/XmlTagCompletionData.cs
@@ -32,7 +32,7 @@ using MonoDevelop.Ide.CodeCompletion;
using MonoDevelop.Ide.Gui.Content;
using MonoDevelop.Core;
-namespace MonoDevelop.XmlEditor.Completion
+namespace MonoDevelop.Xml.Completion
{
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/IAspNetLanguageBinding.cs b/main/src/addins/Xml/Dom/IAttributedXObject.cs
index 844eaa3cd0..342c5da81f 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/IAspNetLanguageBinding.cs
+++ b/main/src/addins/Xml/Dom/IAttributedXObject.cs
@@ -1,11 +1,11 @@
-//
-// IAspNetLanguage.cs
-//
+//
+// XDom.cs
+//
// Author:
// Michael Hutchinson <mhutchinson@novell.com>
-//
+//
// Copyright (C) 2008 Novell, Inc (http://www.novell.com)
-//
+//
// Permission is hereby granted, free of charge, to any person obtaining
// a copy of this software and associated documentation files (the
// "Software"), to deal in the Software without restriction, including
@@ -13,10 +13,10 @@
// distribute, sublicense, and/or sell copies of the Software, and to
// permit persons to whom the Software is furnished to do so, subject to
// the following conditions:
-//
+//
// The above copyright notice and this permission notice shall be
// included in all copies or substantial portions of the Software.
-//
+//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
@@ -26,15 +26,10 @@
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
-using System;
-
-using MonoDevelop.Projects;
-
-namespace MonoDevelop.AspNet
+namespace MonoDevelop.Xml.Dom
{
-
- public interface IAspNetLanguageBinding : IDotNetLanguageBinding
+ public interface IAttributedXObject : INamedXObject
{
- string AspNetLanguageCode { get; }
+ XAttributeCollection Attributes { get; }
}
}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/AspMvcCommands.cs b/main/src/addins/Xml/Dom/INamedXObject.cs
index 39f3b9351d..14792c5a92 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/AspMvcCommands.cs
+++ b/main/src/addins/Xml/Dom/INamedXObject.cs
@@ -1,41 +1,34 @@
-//
-// AspMvcCommands.cs
-//
-// Author:
-// Michael Hutchinson <mhutchinson@novell.com>
-//
-// Copyright (c) 2009 Novell, Inc. (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
+//
+// INamedXObject.cs
+//
+// Author:
+// Michael Hutchinson <mhutchinson@novell.com>
+//
+// Copyright (C) 2008 Novell, Inc (http://www.novell.com)
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
-using System;
-
-namespace MonoDevelop.AspNet.Mvc
+namespace MonoDevelop.Xml.Dom
{
-
-
- public enum AspMvcCommands
+ public interface INamedXObject
{
- AddView,
- AddController,
- GoToView,
- GoToController,
- AddViewFromController
+ XName Name { get; set; }
+ bool IsNamed { get; }
}
}
diff --git a/main/src/addins/Xml/Dom/XAttribute.cs b/main/src/addins/Xml/Dom/XAttribute.cs
new file mode 100644
index 0000000000..f34f456727
--- /dev/null
+++ b/main/src/addins/Xml/Dom/XAttribute.cs
@@ -0,0 +1,74 @@
+//
+// XAttribute.cs
+//
+// Author:
+// Michael Hutchinson <mhutchinson@novell.com>
+//
+// Copyright (C) 2008 Novell, Inc (http://www.novell.com)
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+
+using ICSharpCode.NRefactory;
+
+namespace MonoDevelop.Xml.Dom
+{
+ public class XAttribute : XObject, INamedXObject
+ {
+
+ public XAttribute (TextLocation start, XName name, string value) : base (start)
+ {
+ this.Name = name;
+ this.Value = value;
+ }
+
+ public XAttribute (TextLocation start) : base (start)
+ {
+ }
+
+ public XName Name { get; set; }
+
+ public override bool IsComplete { get { return base.IsComplete && IsNamed; } }
+ public bool IsNamed { get { return Name.IsValid; } }
+
+ public string Value { get; set; }
+ public XAttribute NextSibling { get; internal protected set; }
+
+ protected XAttribute () {}
+ protected override XObject NewInstance () { return new XAttribute (); }
+
+ protected override void ShallowCopyFrom (XObject copyFrom)
+ {
+ base.ShallowCopyFrom (copyFrom);
+ var copyFromAtt = (XAttribute) copyFrom;
+ //immutable types
+ Name = copyFromAtt.Name;
+ Value = copyFromAtt.Value;
+ }
+
+ public override string ToString ()
+ {
+ return string.Format (
+ "[XAttribute Name='{0}' Location='{1}' Value='{2}']", Name.FullName, Region, Value);
+ }
+
+ public override string FriendlyPathRepresentation {
+ get { return "@" + Name.FullName; }
+ }
+ }
+}
diff --git a/main/src/addins/Xml/Dom/XAttributeCollection.cs b/main/src/addins/Xml/Dom/XAttributeCollection.cs
new file mode 100644
index 0000000000..0a906f0ec9
--- /dev/null
+++ b/main/src/addins/Xml/Dom/XAttributeCollection.cs
@@ -0,0 +1,122 @@
+//
+// XAttributeCollection.cs
+//
+// Author:
+// Michael Hutchinson <mhutchinson@novell.com>
+//
+// Copyright (C) 2008 Novell, Inc (http://www.novell.com)
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+
+using System;
+using System.Collections.Generic;
+
+namespace MonoDevelop.Xml.Dom
+{
+ public class XAttributeCollection : IEnumerable<XAttribute>
+ {
+ readonly XObject parent;
+ XAttribute firstChild;
+ XAttribute lastChild;
+
+ public XAttributeCollection (XObject parent)
+ {
+ this.parent = parent;
+ }
+
+ public Dictionary<XName, XAttribute> ToDictionary ()
+ {
+ var dict = new Dictionary<XName,XAttribute> ();
+ XAttribute current = firstChild;
+ while (current != null) {
+ dict.Add (current.Name, current);
+ current = current.NextSibling;
+ }
+ return dict;
+ }
+
+ public XAttribute this [XName name] {
+ get {
+ XAttribute current = firstChild;
+ while (current != null) {
+ if (current.Name == name)
+ return current;
+ current = current.NextSibling;
+ }
+ return null;
+ }
+ }
+
+ public XAttribute this [int index] {
+ get {
+ XAttribute current = firstChild;
+ while (current != null) {
+ if (index == 0)
+ return current;
+ index--;
+ current = current.NextSibling;
+ }
+ throw new IndexOutOfRangeException ();
+ }
+ }
+
+ public XAttribute Get (XName name, bool ignoreCase)
+ {
+ XAttribute current = firstChild;
+ while (current != null) {
+ if (XName.Equals (current.Name, name, ignoreCase))
+ return current;
+ current = current.NextSibling;
+ }
+ return null;
+ }
+
+ public string GetValue (XName name, bool ignoreCase)
+ {
+ var att = Get (name, ignoreCase);
+ return att != null? att.Value : null;
+ }
+
+ public void AddAttribute (XAttribute newChild)
+ {
+ newChild.Parent = parent;
+ if (lastChild != null) {
+ lastChild.NextSibling = newChild;
+ }
+ if (firstChild == null)
+ firstChild = newChild;
+ lastChild = newChild;
+ }
+
+ public IEnumerator<XAttribute> GetEnumerator ()
+ {
+ XAttribute current = firstChild;
+ while (current != null) {
+ yield return current;
+ current = current.NextSibling;
+ }
+ }
+
+ System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator ()
+ {
+ IEnumerator<XAttribute> en = GetEnumerator ();
+ return en;
+ }
+ }
+}
diff --git a/main/src/addins/Xml/Dom/XCData.cs b/main/src/addins/Xml/Dom/XCData.cs
new file mode 100644
index 0000000000..001f80521b
--- /dev/null
+++ b/main/src/addins/Xml/Dom/XCData.cs
@@ -0,0 +1,44 @@
+//
+// XCData.cs
+//
+// Author:
+// Michael Hutchinson <mhutchinson@novell.com>
+//
+// Copyright (C) 2008 Novell, Inc (http://www.novell.com)
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+
+using ICSharpCode.NRefactory.TypeSystem;
+using ICSharpCode.NRefactory;
+
+namespace MonoDevelop.Xml.Dom
+{
+ public class XCData : XNode
+ {
+ public XCData (TextLocation start) : base (start) {}
+ public XCData (DomRegion region) : base (region) {}
+
+ protected XCData () {}
+ protected override XObject NewInstance () { return new XCData (); }
+
+ public override string FriendlyPathRepresentation {
+ get { return "<![CDATA[ ]]>"; }
+ }
+ }
+}
diff --git a/main/src/addins/Xml/Dom/XClosingTag.cs b/main/src/addins/Xml/Dom/XClosingTag.cs
new file mode 100644
index 0000000000..c134dea6a4
--- /dev/null
+++ b/main/src/addins/Xml/Dom/XClosingTag.cs
@@ -0,0 +1,60 @@
+//
+// XClosingTag.cs
+//
+// Author:
+// Michael Hutchinson <mhutchinson@novell.com>
+//
+// Copyright (C) 2008 Novell, Inc (http://www.novell.com)
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+
+using ICSharpCode.NRefactory;
+
+namespace MonoDevelop.Xml.Dom
+{
+ public class XClosingTag : XNode, INamedXObject
+ {
+ public XClosingTag (TextLocation start) : base (start) {}
+
+ public XClosingTag (XName name, TextLocation start) : base (start)
+ {
+ this.Name = name;
+ }
+
+ public XName Name { get; set; }
+
+ public override bool IsComplete { get { return base.IsComplete && IsNamed; } }
+ public bool IsNamed { get { return Name.IsValid; } }
+
+ protected XClosingTag () {}
+ protected override XObject NewInstance () { return new XClosingTag (); }
+
+ protected override void ShallowCopyFrom (XObject copyFrom)
+ {
+ base.ShallowCopyFrom (copyFrom);
+ var copyFromAtt = (XClosingTag) copyFrom;
+ //immutable types
+ Name = copyFromAtt.Name;
+ }
+
+ public override string FriendlyPathRepresentation {
+ get { return "/" + Name.FullName; }
+ }
+ }
+}
diff --git a/main/src/addins/Xml/Dom/XComment.cs b/main/src/addins/Xml/Dom/XComment.cs
new file mode 100644
index 0000000000..57231b974f
--- /dev/null
+++ b/main/src/addins/Xml/Dom/XComment.cs
@@ -0,0 +1,44 @@
+//
+// XComment.cs
+//
+// Author:
+// Michael Hutchinson <mhutchinson@novell.com>
+//
+// Copyright (C) 2008 Novell, Inc (http://www.novell.com)
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+
+using ICSharpCode.NRefactory.TypeSystem;
+using ICSharpCode.NRefactory;
+
+namespace MonoDevelop.Xml.Dom
+{
+ public class XComment : XNode
+ {
+ public XComment (TextLocation start) : base (start) {}
+ public XComment (DomRegion region) : base (region) {}
+
+ protected XComment () {}
+ protected override XObject NewInstance () { return new XComment (); }
+
+ public override string FriendlyPathRepresentation {
+ get { return "<!-- -->"; }
+ }
+ }
+}
diff --git a/main/src/addins/Xml/Dom/XContainer.cs b/main/src/addins/Xml/Dom/XContainer.cs
new file mode 100644
index 0000000000..997def1ad0
--- /dev/null
+++ b/main/src/addins/Xml/Dom/XContainer.cs
@@ -0,0 +1,83 @@
+//
+// XContainer.cs
+//
+// Author:
+// Michael Hutchinson <mhutchinson@novell.com>
+//
+// Copyright (C) 2008 Novell, Inc (http://www.novell.com)
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+
+using System.Collections.Generic;
+using System.Text;
+using ICSharpCode.NRefactory;
+
+namespace MonoDevelop.Xml.Dom
+{
+ public abstract class XContainer : XNode
+ {
+ protected XContainer (TextLocation start) : base (start) { }
+
+ XNode firstNode;
+ XNode lastChild;
+ public XNode FirstChild { get { return firstNode; } }
+ public XNode LastChild { get { return lastChild; } }
+
+ public IEnumerable<XNode> Nodes {
+ get {
+ XNode next = firstNode;
+ while (next != null) {
+ yield return next;
+ next = next.NextSibling;
+ }
+ }
+ }
+
+ public IEnumerable<XNode> AllDescendentNodes {
+ get {
+ foreach (XNode n in Nodes) {
+ yield return n;
+ XContainer c = n as XContainer;
+ if (c != null)
+ foreach (XNode n2 in c.AllDescendentNodes)
+ yield return n2;
+ }
+ }
+ }
+
+ public virtual void AddChildNode (XNode newChild)
+ {
+ newChild.Parent = this;
+ if (lastChild != null)
+ lastChild.NextSibling = newChild;
+ if (firstNode == null)
+ firstNode = newChild;
+ lastChild = newChild;
+ }
+
+ protected XContainer () {}
+
+ public override void BuildTreeString (StringBuilder builder, int indentLevel)
+ {
+ base.BuildTreeString (builder, indentLevel);
+ foreach (XNode child in Nodes)
+ child.BuildTreeString (builder, indentLevel + 1);
+ }
+ }
+}
diff --git a/main/src/addins/Xml/Dom/XDocType.cs b/main/src/addins/Xml/Dom/XDocType.cs
new file mode 100644
index 0000000000..ff29a31322
--- /dev/null
+++ b/main/src/addins/Xml/Dom/XDocType.cs
@@ -0,0 +1,76 @@
+//
+// XDocType.cs
+//
+// Author:
+// Michael Hutchinson <mhutchinson@novell.com>
+//
+// Copyright (C) 2008 Novell, Inc (http://www.novell.com)
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+
+using ICSharpCode.NRefactory.TypeSystem;
+using ICSharpCode.NRefactory;
+
+namespace MonoDevelop.Xml.Dom
+{
+ public class XDocType : XNode, INamedXObject
+ {
+ public XDocType (TextLocation start) : base (start) {}
+ public XDocType (DomRegion region) : base (region) {}
+
+ protected XDocType () {}
+ protected override XObject NewInstance () { return new XDocType (); }
+
+ public XName RootElement { get; set; }
+ public string PublicFpi { get; set; }
+ public bool IsPublic { get { return PublicFpi != null; } }
+ public DomRegion InternalDeclarationRegion { get; set; }
+ public string Uri { get; set; }
+
+ public override string FriendlyPathRepresentation {
+ get { return "<!DOCTYPE>"; }
+ }
+
+ protected override void ShallowCopyFrom (XObject copyFrom)
+ {
+ base.ShallowCopyFrom (copyFrom);
+ XDocType copyFromDT = (XDocType) copyFrom;
+ //immutable types
+ RootElement = copyFromDT.RootElement;
+ PublicFpi = copyFromDT.PublicFpi;
+ InternalDeclarationRegion = copyFromDT.InternalDeclarationRegion;
+ Uri = copyFromDT.Uri;
+ }
+
+ XName INamedXObject.Name {
+ get { return RootElement; }
+ set { RootElement = value; }
+ }
+
+ bool INamedXObject.IsNamed {
+ get { return RootElement.IsValid; }
+ }
+
+ public override string ToString ()
+ {
+ return string.Format("[DocType: RootElement='{0}', PublicFpi='{1}', InternalDeclarationRegion='{2}', Uri='{3}']",
+ RootElement.FullName, PublicFpi, InternalDeclarationRegion, Uri);
+ }
+ }
+}
diff --git a/main/src/addins/Xml/Dom/XDocument.cs b/main/src/addins/Xml/Dom/XDocument.cs
new file mode 100644
index 0000000000..dc6cfafccc
--- /dev/null
+++ b/main/src/addins/Xml/Dom/XDocument.cs
@@ -0,0 +1,51 @@
+//
+// XDocument.cs
+//
+// Author:
+// Michael Hutchinson <mhutchinson@novell.com>
+//
+// Copyright (C) 2008 Novell, Inc (http://www.novell.com)
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+
+using System;
+using ICSharpCode.NRefactory;
+
+namespace MonoDevelop.Xml.Dom
+{
+ public class XDocument : XContainer
+ {
+ public XElement RootElement { get; private set; }
+
+ public XDocument () : base (new TextLocation (1, 1)) {}
+ protected override XObject NewInstance () { return new XDocument (); }
+
+ public override string FriendlyPathRepresentation {
+ get { throw new InvalidOperationException ("Should not display document in path bar."); }
+ }
+
+ public override void AddChildNode (XNode newChild)
+ {
+ if (RootElement == null && newChild is XElement)
+ RootElement = (XElement) newChild;
+ base.AddChildNode (newChild);
+ }
+
+ }
+}
diff --git a/main/src/addins/Xml/Dom/XElement.cs b/main/src/addins/Xml/Dom/XElement.cs
new file mode 100644
index 0000000000..a49a2b81d4
--- /dev/null
+++ b/main/src/addins/Xml/Dom/XElement.cs
@@ -0,0 +1,144 @@
+//
+// XElement.cs
+//
+// Author:
+// Michael Hutchinson <mhutchinson@novell.com>
+//
+// Copyright (C) 2008 Novell, Inc (http://www.novell.com)
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+
+using System.Collections.Generic;
+using System.Text;
+using ICSharpCode.NRefactory;
+
+namespace MonoDevelop.Xml.Dom
+{
+ public class XElement : XContainer, IAttributedXObject
+ {
+ XNode closingTag;
+ readonly XAttributeCollection attributes;
+
+ public XElement (TextLocation start) : base (start)
+ {
+ attributes = new XAttributeCollection (this);
+ }
+
+ public XElement (TextLocation start, XName name) : this (start)
+ {
+ this.Name = name;
+ }
+
+ public XNode ClosingTag { get { return closingTag; } }
+ public bool IsClosed { get { return closingTag != null; } }
+ public bool IsSelfClosing { get { return closingTag == this; } }
+
+ public void Close (XNode closingTag)
+ {
+ this.closingTag = closingTag;
+ if (closingTag is XClosingTag)
+ closingTag.Parent = this;
+ }
+
+ public XName Name { get; set; }
+
+ public override bool IsComplete { get { return base.IsComplete && IsNamed; } }
+ public bool IsNamed { get { return Name.IsValid; } }
+
+ public XAttributeCollection Attributes {
+ get { return attributes; }
+ }
+
+ protected XElement ()
+ {
+ attributes = new XAttributeCollection (this);
+ }
+
+ protected override XObject NewInstance () { return new XElement (); }
+
+ protected override void ShallowCopyFrom (XObject copyFrom)
+ {
+ base.ShallowCopyFrom (copyFrom);
+ var copyFromEl = (XElement) copyFrom;
+ Name = copyFromEl.Name; //XName is immutable value type
+ //include attributes
+ foreach (var a in copyFromEl.Attributes)
+ Attributes.AddAttribute ((XAttribute) a.ShallowCopy ());
+ }
+
+ public override string ToString ()
+ {
+ return string.Format ("[XElement Name='{0}' Location='{1}'", Name.FullName, Region);
+ }
+
+ public override void BuildTreeString (StringBuilder builder, int indentLevel)
+ {
+ builder.Append (' ', indentLevel * 2);
+ builder.AppendFormat ("[XElement Name='{0}' Location='{1}' Children=", Name.FullName, Region);
+ builder.AppendLine ();
+
+ foreach (XNode child in Nodes)
+ child.BuildTreeString (builder, indentLevel + 1);
+
+ builder.Append (' ', indentLevel * 2);
+ builder.Append ("Attributes=");
+ builder.AppendLine ();
+
+ foreach (XAttribute att in Attributes)
+ att.BuildTreeString (builder, indentLevel + 1);
+
+ if (closingTag is XClosingTag) {
+ builder.AppendLine ("ClosingTag=");
+ closingTag.BuildTreeString (builder, indentLevel + 1);
+ } else if (closingTag == null)
+ builder.AppendLine ("ClosingTag=(null)");
+ else
+ builder.AppendLine ("ClosingTag=(Self)");
+
+ builder.Append (' ', indentLevel * 2);
+ builder.AppendLine ("]");
+ }
+
+ public override string FriendlyPathRepresentation {
+ get { return Name.FullName; }
+ }
+
+ public IEnumerable<XElement> Elements {
+ get {
+ XElement el;
+ foreach (XNode node in Nodes) {
+ el = node as XElement;
+ if (el != null)
+ yield return el;
+ }
+ }
+ }
+
+ public IEnumerable<XElement> AllDescendentElements {
+ get {
+ foreach (XElement el in Elements) {
+ yield return el;
+ foreach (XElement el2 in el.AllDescendentElements)
+ yield return el2;
+ }
+ }
+ }
+
+ }
+}
diff --git a/main/src/addins/Xml/Dom/XName.cs b/main/src/addins/Xml/Dom/XName.cs
new file mode 100644
index 0000000000..0fb09cc8f1
--- /dev/null
+++ b/main/src/addins/Xml/Dom/XName.cs
@@ -0,0 +1,103 @@
+//
+// XName.cs
+//
+// Author:
+// Michael Hutchinson <mhutchinson@novell.com>
+//
+// Copyright (C) 2008 Novell, Inc (http://www.novell.com)
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+
+using System;
+
+namespace MonoDevelop.Xml.Dom
+{
+
+ public struct XName : IEquatable<XName>
+ {
+ readonly string prefix;
+ readonly string name;
+
+ public XName (string prefix, string name)
+ {
+ this.prefix = prefix;
+ this.name = name;
+ }
+
+ public XName (string name)
+ {
+ prefix = null;
+ this.name = name;
+ }
+
+ public string Prefix { get { return prefix; } }
+ public string Name { get { return name; } }
+ public string FullName { get { return prefix == null? name : prefix + ':' + name; } }
+
+ public bool IsValid { get { return !string.IsNullOrEmpty (name); } }
+ public bool HasPrefix { get { return !string.IsNullOrEmpty (prefix); } }
+
+ #region Equality
+
+ public static bool operator == (XName x, XName y)
+ {
+ return x.Equals (y);
+ }
+
+ public static bool operator != (XName x, XName y)
+ {
+ return !x.Equals (y);
+ }
+
+ public bool Equals (XName other)
+ {
+ return prefix == other.prefix && name == other.name;
+ }
+
+ public override bool Equals (object obj)
+ {
+ if (!(obj is XName))
+ return false;
+ return Equals ((XName) obj);
+ }
+
+ public override int GetHashCode ()
+ {
+ int hash = 0;
+ if (prefix != null) hash += prefix.GetHashCode ();
+ if (name != null) hash += name.GetHashCode ();
+ return hash;
+ }
+
+ #endregion
+
+ public static bool Equals (XName a, XName b, bool ignoreCase)
+ {
+ var comp = ignoreCase? StringComparison.OrdinalIgnoreCase : StringComparison.Ordinal;
+ return string.Equals (a.prefix, b.prefix, comp) && string.Equals (a.name, b.name, comp);
+ }
+
+ public override string ToString ()
+ {
+ if (!HasPrefix)
+ return name;
+ return prefix + ":" + name;
+ }
+ }
+}
diff --git a/main/src/addins/Xml/Dom/XNode.cs b/main/src/addins/Xml/Dom/XNode.cs
new file mode 100644
index 0000000000..d98b02b761
--- /dev/null
+++ b/main/src/addins/Xml/Dom/XNode.cs
@@ -0,0 +1,40 @@
+//
+// XNode.cs
+//
+// Author:
+// Michael Hutchinson <mhutchinson@novell.com>
+//
+// Copyright (C) 2008 Novell, Inc (http://www.novell.com)
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+
+using ICSharpCode.NRefactory.TypeSystem;
+using ICSharpCode.NRefactory;
+
+namespace MonoDevelop.Xml.Dom
+{
+ public abstract class XNode : XObject
+ {
+ protected XNode (TextLocation start) : base (start) {}
+ protected XNode (DomRegion region) : base (region) {}
+ protected XNode () {}
+
+ public XNode NextSibling { get; internal protected set; }
+ }
+}
diff --git a/main/src/addins/Xml/Dom/XObject.cs b/main/src/addins/Xml/Dom/XObject.cs
new file mode 100644
index 0000000000..f999256eea
--- /dev/null
+++ b/main/src/addins/Xml/Dom/XObject.cs
@@ -0,0 +1,110 @@
+//
+// XObject.cs
+//
+// Author:
+// Michael Hutchinson <mhutchinson@novell.com>
+//
+// Copyright (C) 2008 Novell, Inc (http://www.novell.com)
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+
+using System.Collections.Generic;
+using System.Text;
+using ICSharpCode.NRefactory.TypeSystem;
+using ICSharpCode.NRefactory;
+
+namespace MonoDevelop.Xml.Dom
+{
+ public abstract class XObject
+ {
+ DomRegion region;
+
+ protected XObject (TextLocation start)
+ {
+ region = new DomRegion (start, TextLocation.Empty);
+ }
+
+ protected XObject (DomRegion region)
+ {
+ this.region = region;
+ }
+
+ public XObject Parent { get; internal protected set; }
+
+ public IEnumerable<XNode> Parents {
+ get {
+ XNode next = Parent as XNode;
+ while (next != null) {
+ yield return next;
+ next = next.Parent as XNode;
+ }
+ }
+ }
+
+ public DomRegion Region {
+ get { return region; }
+ }
+
+ public void End (TextLocation endLocation)
+ {
+ region = new DomRegion (region.Begin, endLocation);
+ }
+
+ public bool IsEnded {
+ get { return region.End > region.Begin; }
+ }
+
+ public virtual bool IsComplete {
+ get { return region.End > region.Begin; }
+ }
+
+ public virtual void BuildTreeString (StringBuilder builder, int indentLevel)
+ {
+ builder.Append (' ', indentLevel * 2);
+ builder.AppendFormat (ToString ());
+ builder.AppendLine ();
+ }
+
+ public override string ToString ()
+ {
+ return string.Format ("[{0} Location='{1}']", GetType (), Region);
+ }
+
+ //creates a parallel tree -- should NOT retain references into old tree
+ public XObject ShallowCopy ()
+ {
+ XObject copy = NewInstance ();
+ copy.ShallowCopyFrom (this);
+ return copy;
+ }
+
+ protected abstract XObject NewInstance ();
+
+ protected virtual void ShallowCopyFrom (XObject copyFrom)
+ {
+ region = copyFrom.region; //immutable value type
+ }
+
+ protected XObject () {}
+
+ public virtual string FriendlyPathRepresentation {
+ get { return GetType ().ToString (); }
+ }
+ }
+}
diff --git a/main/src/addins/Xml/Dom/XProcessingInstruction.cs b/main/src/addins/Xml/Dom/XProcessingInstruction.cs
new file mode 100644
index 0000000000..9089897116
--- /dev/null
+++ b/main/src/addins/Xml/Dom/XProcessingInstruction.cs
@@ -0,0 +1,44 @@
+//
+// XProcessingInstruction.cs
+//
+// Author:
+// Michael Hutchinson <mhutchinson@novell.com>
+//
+// Copyright (C) 2008 Novell, Inc (http://www.novell.com)
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+
+using ICSharpCode.NRefactory.TypeSystem;
+using ICSharpCode.NRefactory;
+
+namespace MonoDevelop.Xml.Dom
+{
+ public class XProcessingInstruction : XNode
+ {
+ public XProcessingInstruction (TextLocation start) : base (start) {}
+ public XProcessingInstruction (DomRegion region) : base (region) {}
+
+ protected XProcessingInstruction () {}
+ protected override XObject NewInstance () { return new XProcessingInstruction (); }
+
+ public override string FriendlyPathRepresentation {
+ get { return "<? ?>"; }
+ }
+ }
+}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Gui/BaseXmlEditorExtension.cs b/main/src/addins/Xml/Editor/BaseXmlEditorExtension.cs
index c3db708a2c..4a1f05cd07 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Gui/BaseXmlEditorExtension.cs
+++ b/main/src/addins/Xml/Editor/BaseXmlEditorExtension.cs
@@ -30,35 +30,37 @@
using System;
using System.Collections.Generic;
using System.Diagnostics;
+using System.Linq;
+
+using Gtk;
+
+using ICSharpCode.NRefactory;
+using ICSharpCode.NRefactory.TypeSystem;
+using Mono.TextEditor;
+using MonoDevelop.Components;
using MonoDevelop.Core;
using MonoDevelop.DesignerSupport;
-using MonoDevelop.Ide.Gui.Content;
-using MonoDevelop.Ide.CodeCompletion;
-using MonoDevelop.Xml.StateEngine;
-using MonoDevelop.XmlEditor.Completion;
using MonoDevelop.Ide;
-using MonoDevelop.Components;
-using Gtk;
-using System.Linq;
-using System.Text;
-using ICSharpCode.NRefactory.TypeSystem;
+using MonoDevelop.Ide.CodeCompletion;
+using MonoDevelop.Ide.Gui.Content;
using MonoDevelop.Ide.TypeSystem;
-using ICSharpCode.NRefactory;
-using Mono.TextEditor;
using MonoDevelop.Projects;
+using MonoDevelop.Xml.Completion;
+using MonoDevelop.Xml.Dom;
+using MonoDevelop.Xml.Parser;
-namespace MonoDevelop.XmlEditor.Gui
+namespace MonoDevelop.Xml.Editor
{
public abstract class BaseXmlEditorExtension : CompletionTextEditorExtension, IPathedDocument, IOutlinedDocument
{
- DocumentStateTracker<Parser> tracker;
+ DocumentStateTracker<XmlParser> tracker;
ParsedDocument lastCU;
XDocType docType;
MonoDevelop.Ide.Gui.Components.PadTreeView outlineTreeView;
- Gtk.TreeStore outlineTreeStore;
+ TreeStore outlineTreeStore;
List<DotNetProject> ownerProjects;
#region Setup and teardown
@@ -69,26 +71,27 @@ namespace MonoDevelop.XmlEditor.Gui
return doc.GetContent<BaseXmlEditorExtension> () == null;
}
- protected virtual RootState CreateRootState ()
+ protected virtual XmlRootState CreateRootState ()
{
- return new XmlFreeState ();
+ return new XmlRootState ();
}
-
+
public override void Initialize ()
{
base.Initialize ();
+
UpdateOwnerProjects ();
- Parser parser = new Parser (CreateRootState (), false);
- tracker = new DocumentStateTracker<Parser> (parser, Editor);
- Document.DocumentParsed += delegate {
- lastCU = Document.ParsedDocument;
- OnParsedDocumentUpdated ();
- };
+
+ var parser = new XmlParser (CreateRootState (), false);
+ tracker = new DocumentStateTracker<XmlParser> (parser, Editor);
+
+ Document.DocumentParsed += UpdateParsedDocument;
if (Document.ParsedDocument != null) {
lastCU = Document.ParsedDocument;
OnParsedDocumentUpdated ();
}
+
if (IdeApp.Workspace != null) {
IdeApp.Workspace.FileAddedToProject += HandleProjectChanged;
IdeApp.Workspace.FileRemovedFromProject += HandleProjectChanged;
@@ -97,7 +100,8 @@ namespace MonoDevelop.XmlEditor.Gui
void HandleProjectChanged (object sender, ProjectFileEventArgs e)
{
- UpdateOwnerProjects ();
+ if (e.Any (f => f.ProjectFile.FilePath == Document.FileName))
+ UpdateOwnerProjects ();
}
void UpdateOwnerProjects ()
@@ -123,12 +127,21 @@ namespace MonoDevelop.XmlEditor.Gui
UpdatePath ();
}
+ void UpdateParsedDocument (object sender, EventArgs args)
+ {
+ lastCU = Document.ParsedDocument;
+ OnParsedDocumentUpdated ();
+ }
+
public override void Dispose ()
{
if (tracker != null) {
tracker = null;
base.Dispose ();
}
+
+ Document.DocumentParsed -= UpdateParsedDocument;
+
if (IdeApp.Workspace != null) {
IdeApp.Workspace.FileAddedToProject -= HandleProjectChanged;
IdeApp.Workspace.FileRemovedFromProject -= HandleProjectChanged;
@@ -182,19 +195,18 @@ namespace MonoDevelop.XmlEditor.Gui
}
}
- protected DocumentStateTracker<Parser> Tracker {
+ protected DocumentStateTracker<XmlParser> Tracker {
get { return tracker; }
}
protected string GetBufferText (DomRegion region)
{
- MonoDevelop.Ide.Gui.Content.ITextBuffer buf = Buffer;
+ ITextBuffer buf = Buffer;
int start = buf.GetPositionFromLineColumn (region.BeginLine, region.BeginColumn);
int end = buf.GetPositionFromLineColumn (region.EndLine, region.EndColumn);
if (end > start && start >= 0)
return buf.GetText (start, end);
- else
- return null;
+ return null;
}
#endregion
@@ -270,10 +282,10 @@ namespace MonoDevelop.XmlEditor.Gui
protected virtual ICompletionDataList HandleCodeCompletion (
CodeCompletionContext completionContext, bool forced, ref int triggerWordLength)
{
- IEditableTextBuffer buf = this.EditableBuffer;
+ IEditableTextBuffer buf = EditableBuffer;
// completionChar may be a space even if the current char isn't, when ctrl-space is fired t
- TextLocation currentLocation = new TextLocation (completionContext.TriggerLine, completionContext.TriggerLineOffset);
+ var currentLocation = new TextLocation (completionContext.TriggerLine, completionContext.TriggerLineOffset);
char currentChar = completionContext.TriggerOffset < 1? ' ' : buf.GetCharAt (completionContext.TriggerOffset - 1);
char previousChar = completionContext.TriggerOffset < 2? ' ' : buf.GetCharAt (completionContext.TriggerOffset - 2);
@@ -282,7 +294,7 @@ namespace MonoDevelop.XmlEditor.Gui
tracker.Engine.CurrentStateLength, previousChar, currentChar, forced);
//closing tag completion
- if (tracker.Engine.CurrentState is XmlFreeState && currentChar == '>')
+ if (tracker.Engine.CurrentState is XmlRootState && currentChar == '>')
return ClosingTagCompletion (buf, currentLocation);
// Auto insert '>' when '/' is typed inside tag state (for quick tag closing)
@@ -293,10 +305,10 @@ namespace MonoDevelop.XmlEditor.Gui
}
//entity completion
- if (currentChar == '&' && (tracker.Engine.CurrentState is XmlFreeState ||
+ if (currentChar == '&' && (tracker.Engine.CurrentState is XmlRootState ||
tracker.Engine.CurrentState is XmlAttributeValueState))
{
- CompletionDataList list = new CompletionDataList ();
+ var list = new CompletionDataList ();
//TODO: need to tweak semicolon insertion
list.Add ("apos").Description = "'";
@@ -377,22 +389,22 @@ namespace MonoDevelop.XmlEditor.Gui
}
}
-// if (Tracker.Engine.CurrentState is XmlFreeState) {
+// if (Tracker.Engine.CurrentState is XmlRootState) {
// if (line < 3) {
// cp.Add ("<?xml version=\"1.0\" encoding=\"UTF-8\" ?>");
// }
//element completion
- if (currentChar == '<' && tracker.Engine.CurrentState is XmlFreeState ||
+ if (currentChar == '<' && tracker.Engine.CurrentState is XmlRootState ||
(tracker.Engine.CurrentState is XmlNameState && forced)) {
- CompletionDataList list = new CompletionDataList ();
+ var list = new CompletionDataList ();
GetElementCompletions (list);
AddCloseTag (list, Tracker.Engine.Nodes);
return list.Count > 0? list : null;
}
- if (forced && Tracker.Engine.CurrentState is XmlFreeState) {
- CompletionDataList list = new CompletionDataList ();
+ if (forced && Tracker.Engine.CurrentState is XmlRootState) {
+ var list = new CompletionDataList ();
MonoDevelop.Ide.CodeTemplates.CodeTemplateService.AddCompletionDataForFileName (Document.Name, list);
return list.Count > 0? list : null;
}
@@ -403,7 +415,7 @@ namespace MonoDevelop.XmlEditor.Gui
protected virtual ICompletionDataList ClosingTagCompletion (IEditableTextBuffer buf, TextLocation currentLocation)
{
//get name of current node in document that's being ended
- XElement el = tracker.Engine.Nodes.Peek () as XElement;
+ var el = tracker.Engine.Nodes.Peek () as XElement;
if (el != null && el.Region.End >= currentLocation && !el.IsClosed && el.IsNamed) {
string tag = String.Concat ("</", el.Name.FullName, ">");
if (XmlEditorOptions.AutoCompleteElements) {
@@ -424,7 +436,7 @@ namespace MonoDevelop.XmlEditor.Gui
return null;
} else {
- CompletionDataList cp = new CompletionDataList ();
+ var cp = new CompletionDataList ();
cp.Add (new XmlTagCompletionData (tag, 0, true));
return cp;
}
@@ -501,7 +513,7 @@ namespace MonoDevelop.XmlEditor.Gui
skip--;
continue;
}
- XElement el = obj as XElement;
+ var el = obj as XElement;
if (el == null || !el.IsNamed)
yield break;
yield return el.Name;
@@ -515,7 +527,7 @@ namespace MonoDevelop.XmlEditor.Gui
skip--;
continue;
}
- XElement el = obj as XElement;
+ var el = obj as XElement;
return el != null? el.Name : new XName ();
}
return new XName ();
@@ -536,9 +548,9 @@ namespace MonoDevelop.XmlEditor.Gui
protected static void AddCloseTag (CompletionDataList completionList, NodeStack stack)
{
//FIXME: search forward to see if tag's closed already
- List<XElement> elements = new List<XElement> ();
+ var elements = new List<XElement> ();
foreach (XObject ob in stack) {
- XElement el = ob as XElement;
+ var el = ob as XElement;
if (el == null)
continue;
if (!el.IsNamed || el.IsClosed)
@@ -573,7 +585,7 @@ namespace MonoDevelop.XmlEditor.Gui
#region IPathedDocument
PathEntry[] currentPath;
- bool pathUpdateQueued = false;
+ bool pathUpdateQueued;
public override void CursorPositionChanged ()
{
@@ -601,14 +613,14 @@ namespace MonoDevelop.XmlEditor.Gui
void SelectPath (int depth, bool contents)
{
//clone the parser and put it in tree mode
- Parser treeParser = this.tracker.Engine.GetTreeParser ();
+ XmlParser treeParser = tracker.Engine.GetTreeParser ();
//locate the node
- List<XObject> path = new List<XObject> (treeParser.Nodes);
+ var path = new List<XObject> (treeParser.Nodes);
//note: list is backwards, and we want ignore the root XDocument
XObject ob = path [path.Count - (depth + 2)];
- XNode node = ob as XNode;
- XElement el = node as XElement;
+ var node = ob as XNode;
+ var el = node as XElement;
//hoist this as it may not be cheap to evaluate (P/Invoke), but won't be changing during the loop
int textLen = Editor.Length;
@@ -633,22 +645,21 @@ namespace MonoDevelop.XmlEditor.Gui
}
if (el == null) {
- MonoDevelop.Core.LoggingService.LogDebug ("Selecting {0}", ob.Region);
+ LoggingService.LogDebug ("Selecting {0}", ob.Region);
EditorSelect (ob.Region);
}
else if (el.IsClosed) {
- MonoDevelop.Core.LoggingService.LogDebug ("Selecting {0}-{1}",
+ LoggingService.LogDebug ("Selecting {0}-{1}",
el.Region.Begin, el.ClosingTag.Region.End);
- if (el.IsSelfClosing)
- contents = false;
+ contents &= !el.IsSelfClosing;
//pick out the locations, with some offsets to account for the parsing model
var s = contents? el.Region.End : el.Region.Begin;
var e = contents? el.ClosingTag.Region.Begin : el.ClosingTag.Region.End;
EditorSelect (new DomRegion (s, e));
} else {
- MonoDevelop.Core.LoggingService.LogDebug ("No end tag found for selection");
+ LoggingService.LogDebug ("No end tag found for selection");
}
}
@@ -664,7 +675,7 @@ namespace MonoDevelop.XmlEditor.Gui
public event EventHandler<DocumentPathChangedEventArgs> PathChanged;
- public Gtk.Widget CreatePathWidget (int index)
+ public Widget CreatePathWidget (int index)
{
if (ownerProjects.Count > 1 && index == 0) {
var window = new DropDownBoxListWindow (new DataProvider (this));
@@ -675,8 +686,8 @@ namespace MonoDevelop.XmlEditor.Gui
} else {
if (ownerProjects.Count > 1)
index--;
- Menu menu = new Menu ();
- MenuItem mi = new MenuItem (GettextCatalog.GetString ("Select"));
+ var menu = new Menu ();
+ var mi = new MenuItem (GettextCatalog.GetString ("Select"));
mi.Activated += delegate {
SelectPath (index);
};
@@ -747,10 +758,10 @@ namespace MonoDevelop.XmlEditor.Gui
protected XName GetCompleteName ()
{
- Debug.Assert (this.tracker.Engine.CurrentState is XmlNameState);
+ Debug.Assert (tracker.Engine.CurrentState is XmlNameState);
- int end = this.tracker.Engine.Position;
- int start = end - this.tracker.Engine.CurrentStateLength;
+ int end = tracker.Engine.Position;
+ int start = end - tracker.Engine.CurrentStateLength;
int mid = -1;
int limit = Math.Min (Editor.Length, end + 35);
@@ -770,9 +781,8 @@ namespace MonoDevelop.XmlEditor.Gui
if (mid > 0 && end > mid + 1) {
return new XName (Editor.GetTextBetween (start, mid), Editor.GetTextBetween (mid + 1, end));
- } else {
- return new XName (Editor.GetTextBetween (start, end));
}
+ return new XName (Editor.GetTextBetween (start, end));
}
/*
@@ -796,18 +806,18 @@ namespace MonoDevelop.XmlEditor.Gui
protected List<XObject> GetCurrentPath ()
{
- if (this.tracker == null)
+ if (tracker == null)
return null;
- this.tracker.UpdateEngine ();
- List<XObject> path = new List<XObject> (this.tracker.Engine.Nodes);
+ tracker.UpdateEngine ();
+ var path = new List<XObject> (tracker.Engine.Nodes);
//remove the root XDocument
path.RemoveAt (path.Count - 1);
//complete incomplete XName if present
- if (this.tracker.Engine.CurrentState is XmlNameState && path[0] is INamedXObject) {
- path[0] = (XObject) path[0].ShallowCopy ();
+ if (tracker.Engine.CurrentState is XmlNameState && path[0] is INamedXObject) {
+ path [0] = path [0].ShallowCopy ();
XName completeName = GetCompleteName ();
((INamedXObject)path[0]).Name = completeName;
}
@@ -845,17 +855,17 @@ namespace MonoDevelop.XmlEditor.Gui
#region IOutlinedDocument
- bool refreshingOutline = false;
+ bool refreshingOutline;
- Gtk.Widget IOutlinedDocument.GetOutlineWidget ()
+ Widget IOutlinedDocument.GetOutlineWidget ()
{
if (outlineTreeView != null)
return outlineTreeView;
- outlineTreeStore = new Gtk.TreeStore (typeof (object));
+ outlineTreeStore = new TreeStore (typeof (object));
outlineTreeView = new MonoDevelop.Ide.Gui.Components.PadTreeView (outlineTreeStore);
- System.Reflection.PropertyInfo prop = typeof (Gtk.TreeView).GetProperty ("EnableTreeLines");
+ System.Reflection.PropertyInfo prop = typeof (TreeView).GetProperty ("EnableTreeLines");
if (prop != null)
prop.SetValue (outlineTreeView, true, null);
@@ -866,7 +876,7 @@ namespace MonoDevelop.XmlEditor.Gui
outlineTreeView.HeadersVisible = false;
outlineTreeView.Selection.Changed += delegate {
- Gtk.TreeIter iter;
+ TreeIter iter;
if (!outlineTreeView.Selection.GetSelected (out iter))
return;
OutlineSelectionChanged (outlineTreeStore.GetValue (iter, 0));
@@ -874,13 +884,13 @@ namespace MonoDevelop.XmlEditor.Gui
refillOutlineStore ();
- var sw = new MonoDevelop.Components.CompactScrolledWindow ();
+ var sw = new CompactScrolledWindow ();
sw.Add (outlineTreeView);
sw.ShowAll ();
return sw;
}
- IEnumerable<Gtk.Widget> IOutlinedDocument.GetToolbarWidgets ()
+ IEnumerable<Widget> IOutlinedDocument.GetToolbarWidgets ()
{
return null;
}
@@ -889,7 +899,7 @@ namespace MonoDevelop.XmlEditor.Gui
{
outlineTree.TextRenderer.Xpad = 0;
outlineTree.TextRenderer.Ypad = 0;
- outlineTree.AppendColumn ("Node", outlineTree.TextRenderer, new Gtk.TreeCellDataFunc (outlineTreeDataFunc));
+ outlineTree.AppendColumn ("Node", outlineTree.TextRenderer, new TreeCellDataFunc (outlineTreeDataFunc));
}
protected virtual void OutlineSelectionChanged (object selection)
@@ -912,12 +922,12 @@ namespace MonoDevelop.XmlEditor.Gui
return false;
}
- protected virtual void RefillOutlineStore (ParsedDocument doc, Gtk.TreeStore store)
+ protected virtual void RefillOutlineStore (ParsedDocument doc, TreeStore store)
{
XDocument xdoc = ((XmlParsedDocument)doc).XDocument;
if (xdoc == null)
return;
- BuildTreeChildren (store, Gtk.TreeIter.Zero, xdoc);
+ BuildTreeChildren (store, TreeIter.Zero, xdoc);
}
void refillOutlineStore ()
@@ -945,7 +955,7 @@ namespace MonoDevelop.XmlEditor.Gui
if (outlineTreeView == null)
return;
- Gtk.ScrolledWindow w = (Gtk.ScrolledWindow) outlineTreeView.Parent;
+ var w = (ScrolledWindow) outlineTreeView.Parent;
w.Destroy ();
outlineTreeView.Destroy ();
outlineTreeStore.Dispose ();
@@ -953,25 +963,25 @@ namespace MonoDevelop.XmlEditor.Gui
outlineTreeView = null;
}
- static void BuildTreeChildren (Gtk.TreeStore store, Gtk.TreeIter parent, XContainer p)
+ static void BuildTreeChildren (TreeStore store, TreeIter parent, XContainer p)
{
foreach (XNode n in p.Nodes) {
- Gtk.TreeIter childIter;
- if (!parent.Equals (Gtk.TreeIter.Zero))
+ TreeIter childIter;
+ if (!parent.Equals (TreeIter.Zero))
childIter = store.AppendValues (parent, n);
else
childIter = store.AppendValues (n);
- XContainer c = n as XContainer;
+ var c = n as XContainer;
if (c != null && c.FirstChild != null)
BuildTreeChildren (store, childIter, c);
}
}
- void outlineTreeDataFunc (Gtk.TreeViewColumn column, Gtk.CellRenderer cell, Gtk.TreeModel model, Gtk.TreeIter iter)
+ void outlineTreeDataFunc (TreeViewColumn column, CellRenderer cell, TreeModel model, TreeIter iter)
{
- Gtk.CellRendererText txtRenderer = (Gtk.CellRendererText) cell;
- XNode n = (XNode) model.GetValue (iter, 0);
+ var txtRenderer = (CellRendererText) cell;
+ var n = (XNode) model.GetValue (iter, 0);
txtRenderer.Text = n.FriendlyPathRepresentation;
}
@@ -979,7 +989,7 @@ namespace MonoDevelop.XmlEditor.Gui
{
var region = n.Region;
- XElement el = n as XElement;
+ var el = n as XElement;
if (el != null && el.IsClosed && el.ClosingTag.Region.End > region.End) {
region = new DomRegion (region.Begin, el.ClosingTag.Region.End);
}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/Commands.cs b/main/src/addins/Xml/Editor/XmlCommands.cs
index 55b48218b9..15ec848d8f 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/Commands.cs
+++ b/main/src/addins/Xml/Editor/XmlCommands.cs
@@ -21,22 +21,15 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
-using MonoDevelop.Components.Commands;
-using MonoDevelop.Ide.Gui;
-using System;
-
-namespace MonoDevelop.XmlEditor
+namespace MonoDevelop.Xml.Editor
{
- public enum Commands
+ public enum XmlCommands
{
CreateSchema,
Validate,
AssignStylesheet,
OpenStylesheet,
RunXslTransform,
- OpenXPathQueryPad,
- RemoveXPathHighlighting,
- GoToSchemaDefinition,
- ContextualMainMenu
+ GoToSchemaDefinition
}
}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlDocumentParser.cs b/main/src/addins/Xml/Editor/XmlDocumentParser.cs
index a18a2b57f9..5f17fead35 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlDocumentParser.cs
+++ b/main/src/addins/Xml/Editor/XmlDocumentParser.cs
@@ -27,24 +27,21 @@
//
using System;
-using System.Collections.Generic;
using System.IO;
-using System.Linq;
-using System.Xml;
-using MonoDevelop.Xml.StateEngine;
using MonoDevelop.Ide.TypeSystem;
+using MonoDevelop.Xml.Parser;
-namespace MonoDevelop.XmlEditor
+namespace MonoDevelop.Xml.Editor
{
- public class XmlDocumentParser : TypeSystemParser
+ class XmlDocumentParser : TypeSystemParser
{
public override ParsedDocument Parse (bool storeAst, string fileName, TextReader content, MonoDevelop.Projects.Project project = null)
{
- XmlParsedDocument doc = new XmlParsedDocument (fileName);
+ var doc = new XmlParsedDocument (fileName);
doc.Flags |= ParsedDocumentFlags.NonSerializable;
try {
- Parser xmlParser = new Parser (new XmlFreeState (), true);
+ var xmlParser = new XmlParser (new XmlRootState (), true);
xmlParser.Parse (content);
doc.XDocument = xmlParser.Nodes.GetRoot ();
doc.Add (xmlParser.Errors);
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlEditorOptions.cs b/main/src/addins/Xml/Editor/XmlEditorOptions.cs
index 5f82bda54f..cf914ad809 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlEditorOptions.cs
+++ b/main/src/addins/Xml/Editor/XmlEditorOptions.cs
@@ -21,48 +21,47 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
-using MonoDevelop.Core;
-using System;
+using System;
using System.Collections.Generic;
using System.Diagnostics;
-using System.IO;
-using System.Reflection;
-using System.Xml;
-namespace MonoDevelop.XmlEditor
+using MonoDevelop.Core;
+
+namespace MonoDevelop.Xml.Editor
{
/// <summary>
/// The Xml Editor options.
/// </summary>
public static class XmlEditorOptions
{
- internal static readonly string OptionsProperty = "XmlEditor.AddIn.Options";
- internal static readonly string ShowSchemaAnnotationPropertyName = "ShowSchemaAnnotation";
- internal static readonly string AutoCompleteElementsPropertyName = "AutoCompleteElements";
- internal static readonly string AutoInsertFragmentsPropertyName = "AutoInsertFragment";
- internal static readonly string AssociationPrefix = "Association";
+ static readonly string OptionsProperty = "XmlEditor.AddIn.Options";
+ static readonly string ShowSchemaAnnotationPropertyName = "ShowSchemaAnnotation";
+ static readonly string AutoCompleteElementsPropertyName = "AutoCompleteElements";
+ static readonly string AutoInsertFragmentsPropertyName = "AutoInsertFragment";
+ static readonly string AssociationPrefix = "Association";
- static Properties properties;
+ static readonly Properties properties;
+ static bool showSchemaAnnotation, autoCompleteElements, autoInsertFragments;
static XmlEditorOptions ()
{
properties = PropertyService.Get (OptionsProperty, new Properties());
Properties.PropertyChanged += HandlePropertiesPropertyChanged;
- ShowSchemaAnnotation = properties.Get<bool> (ShowSchemaAnnotationPropertyName, false);
- AutoCompleteElements = properties.Get<bool> (AutoCompleteElementsPropertyName, false);
- AutoInsertFragments = properties.Get<bool> (AutoInsertFragmentsPropertyName, false);
+ showSchemaAnnotation = properties.Get<bool> (ShowSchemaAnnotationPropertyName, false);
+ autoCompleteElements = properties.Get<bool> (AutoCompleteElementsPropertyName, false);
+ autoInsertFragments = properties.Get<bool> (AutoInsertFragmentsPropertyName, false);
}
static void HandlePropertiesPropertyChanged (object sender, PropertyChangedEventArgs e)
{
if (e.Key == ShowSchemaAnnotationPropertyName) {
- ShowSchemaAnnotation = (bool)e.NewValue;
+ showSchemaAnnotation = (bool)e.NewValue;
} else if (e.Key == AutoCompleteElementsPropertyName) {
- AutoCompleteElements = (bool)e.NewValue;
+ autoCompleteElements = (bool)e.NewValue;
} else if (e.Key == AutoInsertFragmentsPropertyName) {
- AutoInsertFragments = (bool)e.NewValue;
- } else if (XmlFileAssociationChanged != null && e.Key.StartsWith (AssociationPrefix)) {
+ autoInsertFragments = (bool)e.NewValue;
+ } else if (XmlFileAssociationChanged != null && e.Key.StartsWith (AssociationPrefix, StringComparison.Ordinal)) {
var ext = e.Key.Substring (AssociationPrefix.Length);
var assoc = e.NewValue as XmlFileAssociation;
XmlFileAssociationChanged (null, new XmlFileAssociationChangedEventArgs (ext, assoc));
@@ -101,7 +100,7 @@ namespace MonoDevelop.XmlEditor
//for some reason we get an out of sync error unless we copy the list
var keys = new List<string> (Properties.Keys);
foreach (string key in keys)
- if (key.StartsWith (AssociationPrefix))
+ if (key.StartsWith (AssociationPrefix, StringComparison.Ordinal))
yield return key.Substring (AssociationPrefix.Length);
}
@@ -109,7 +108,7 @@ namespace MonoDevelop.XmlEditor
{
var keys = new List<string> (Properties.Keys);
foreach (string key in keys) {
- if (key.StartsWith (AssociationPrefix)) {
+ if (key.StartsWith (AssociationPrefix, StringComparison.Ordinal)) {
var assoc = Properties.Get<XmlFileAssociation> (key);
//ignore bad data in properties
if (assoc != null)
@@ -118,14 +117,45 @@ namespace MonoDevelop.XmlEditor
}
}
- public static bool ShowSchemaAnnotation { get; private set; }
- public static bool AutoCompleteElements { get; private set; }
+ public static bool ShowSchemaAnnotation {
+ get {
+ return showSchemaAnnotation;
+ }
+ set {
+ if (showSchemaAnnotation == value)
+ return;
+ showSchemaAnnotation = value;
+ properties.Set (ShowSchemaAnnotationPropertyName, value);
+ }
+ }
+
+ public static bool AutoCompleteElements {
+ get {
+ return autoCompleteElements;
+ }
+ set {
+ if (autoCompleteElements == value)
+ return;
+ autoCompleteElements = value;
+ properties.Set (AutoCompleteElementsPropertyName, value);
+ }
+ }
/// <summary>
/// Automatically insert fragments such as ="" when committing an attribute and > when pressing / in a tag.
/// Off by default since it forces the user to alter typing behaviour.
/// </summary>
- public static bool AutoInsertFragments { get; private set; }
+ public static bool AutoInsertFragments {
+ get {
+ return autoInsertFragments;
+ }
+ set {
+ if (autoInsertFragments == value)
+ return;
+ autoInsertFragments = value;
+ properties.Set (AutoInsertFragmentsPropertyName, value);
+ }
+ }
#endregion
}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Gui/XmlEditorOptionsPanel.cs b/main/src/addins/Xml/Editor/XmlEditorOptionsPanel.cs
index a187eed129..e9e6cc337a 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Gui/XmlEditorOptionsPanel.cs
+++ b/main/src/addins/Xml/Editor/XmlEditorOptionsPanel.cs
@@ -27,12 +27,12 @@ using Gtk;
using MonoDevelop.Ide.Gui.Dialogs;
using MonoDevelop.Core;
-namespace MonoDevelop.XmlEditor.Gui
+namespace MonoDevelop.Xml.Editor
{
/// <summary>
/// Configuration settings for the xml editor.
/// </summary>
- public class XmlEditorOptionsPanel : OptionsPanel
+ class XmlEditorOptionsPanel : OptionsPanel
{
XmlEditorOptionsPanelWidget widget;
@@ -47,9 +47,9 @@ namespace MonoDevelop.XmlEditor.Gui
public override void ApplyChanges ()
{
- XmlEditorOptions.Properties.Set (XmlEditorOptions.AutoCompleteElementsPropertyName, widget.AutoCompleteElements);
- XmlEditorOptions.Properties.Set (XmlEditorOptions.AutoInsertFragmentsPropertyName, widget.AutoInsertFragments);
- XmlEditorOptions.Properties.Set (XmlEditorOptions.ShowSchemaAnnotationPropertyName, widget.ShowSchemaAnnotation);
+ XmlEditorOptions.AutoCompleteElements = widget.AutoCompleteElements;
+ XmlEditorOptions.AutoInsertFragments = widget.AutoInsertFragments;
+ XmlEditorOptions.ShowSchemaAnnotation = widget.ShowSchemaAnnotation;
}
}
}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Gui/XmlEditorOptionsPanelWidget.cs b/main/src/addins/Xml/Editor/XmlEditorOptionsPanelWidget.cs
index f0d17d2a33..d36e113c14 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Gui/XmlEditorOptionsPanelWidget.cs
+++ b/main/src/addins/Xml/Editor/XmlEditorOptionsPanelWidget.cs
@@ -26,18 +26,29 @@
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
-using System;
+using Gtk;
+using MonoDevelop.Core;
-namespace MonoDevelop.XmlEditor.Gui
+namespace MonoDevelop.Xml.Editor
{
-
-
- public partial class XmlEditorOptionsPanelWidget : Gtk.Bin
+ class XmlEditorOptionsPanelWidget : VBox
{
-
- public XmlEditorOptionsPanelWidget()
+ readonly CheckButton autoCompleteElementsCheck, autoAddPunctuationCheck, showSchemaAnnotationCheck;
+
+ public XmlEditorOptionsPanelWidget ()
{
- this.Build();
+ Spacing = 6;
+
+ autoCompleteElementsCheck = new CheckButton (GettextCatalog.GetString ("Automatically insert closing tags"));
+ autoAddPunctuationCheck = new CheckButton (GettextCatalog.GetString ("Automatically insert punctuation (=\"\", />, etc.)"));
+ showSchemaAnnotationCheck = new CheckButton (GettextCatalog.GetString ("Show schema annotation"));
+
+ PackStart (autoCompleteElementsCheck, false, false, 0);
+ PackStart (autoAddPunctuationCheck, false, false, 0);
+
+ //PackStart (showSchemaAnnotationCheck, false, false, 0);
+
+ ShowAll ();
}
public bool AutoCompleteElements {
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlEditorService.cs b/main/src/addins/Xml/Editor/XmlEditorService.cs
index 71311ee95e..513b2e7458 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlEditorService.cs
+++ b/main/src/addins/Xml/Editor/XmlEditorService.cs
@@ -21,29 +21,25 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
-using MonoDevelop.Components.Commands;
-using MonoDevelop.Core;
-using MonoDevelop.Ide;
-using MonoDevelop.Ide.Gui;
-using MonoDevelop.Ide.Gui.Content;
-using MonoDevelop.Ide.Tasks;
-using MonoDevelop.XmlEditor.Completion;
-using MonoDevelop.Projects;
-
-using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.IO;
-using System.Text;
+using System.Text;
using System.Xml;
using System.Xml.Schema;
-using System.Xml.XPath;
-using System.Xml.Xsl;
-using MonoDevelop.Components;
-using Gtk;
+using System.Xml.XPath;
+using System.Xml.Xsl;
+
+using MonoDevelop.Components;
using MonoDevelop.Components.Extensions;
+using MonoDevelop.Core;
+using MonoDevelop.Ide;
+using MonoDevelop.Ide.Gui;
+using MonoDevelop.Ide.Tasks;
+using MonoDevelop.Projects;
+using MonoDevelop.Xml.Completion;
-namespace MonoDevelop.XmlEditor
+namespace MonoDevelop.Xml.Editor
{
static class XmlEditorService
{
@@ -118,7 +114,7 @@ namespace MonoDevelop.XmlEditor
public static XmlTextWriter CreateXmlTextWriter (Document doc, TextWriter textWriter)
{
XmlTextWriter xmlWriter = new XmlTextWriter(textWriter);
- xmlWriter.Formatting = Formatting.Indented;
+ xmlWriter.Formatting = System.Xml.Formatting.Indented;
if (doc.Editor.TabsToSpaces) {
xmlWriter.Indentation = doc.Editor.Options.TabSize;
xmlWriter.IndentChar = ' ';
@@ -131,7 +127,7 @@ namespace MonoDevelop.XmlEditor
public static XmlTextWriter CreateXmlTextWriter (Document doc)
{
- return CreateXmlTextWriter (doc, new EncodedStringWriter (System.Text.Encoding.UTF8));
+ return CreateXmlTextWriter (doc, new EncodedStringWriter (Encoding.UTF8));
}
#endregion
@@ -424,6 +420,22 @@ namespace MonoDevelop.XmlEditor
return null;
}
- #endregion
+ #endregion
+
+ class EncodedStringWriter : StringWriter
+ {
+ readonly Encoding encoding;
+
+ public EncodedStringWriter(Encoding encoding)
+ {
+ this.encoding = encoding;
+ }
+
+ public override Encoding Encoding {
+ get {
+ return encoding;
+ }
+ }
+ }
}
}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlFileAssociation.cs b/main/src/addins/Xml/Editor/XmlFileAssociation.cs
index 5230becb67..92b9745974 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlFileAssociation.cs
+++ b/main/src/addins/Xml/Editor/XmlFileAssociation.cs
@@ -24,7 +24,7 @@
using MonoDevelop.Core;
using System.Xml;
-namespace MonoDevelop.XmlEditor
+namespace MonoDevelop.Xml.Editor
{
/// <summary>Represents an file extension that can be handled by the editor.</summary>
public class XmlFileAssociation : ICustomXmlSerializer
@@ -34,7 +34,7 @@ namespace MonoDevelop.XmlEditor
static readonly string namespaceAttributeName = "namespace";
static readonly string prefixAttributeName = "prefix";
- //deseriialization ctor
+ //deserialization ctor
public XmlFileAssociation ()
{
}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlFileAssociationManager.cs b/main/src/addins/Xml/Editor/XmlFileAssociationManager.cs
index e491d024ca..646f3f1935 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlFileAssociationManager.cs
+++ b/main/src/addins/Xml/Editor/XmlFileAssociationManager.cs
@@ -22,11 +22,10 @@
// THE SOFTWARE.
using Mono.Addins;
-using MonoDevelop.Core;
using System;
using System.Collections.Generic;
-namespace MonoDevelop.XmlEditor
+namespace MonoDevelop.Xml.Editor
{
static class XmlFileAssociationManager
{
@@ -36,7 +35,7 @@ namespace MonoDevelop.XmlEditor
{
map = new Dictionary<string,XmlFileAssociation> (StringComparer.OrdinalIgnoreCase);
- foreach (XmlFileAssociationNode node in AddinManager.GetExtensionNodes ("/MonoDevelop/XmlEditor/XmlFileAssociations")) {
+ foreach (XmlFileAssociationNode node in AddinManager.GetExtensionNodes ("/MonoDevelop/Xml/Editor/XmlFileAssociations")) {
var assoc = node.GetAssociation ();
map[assoc.Extension] = assoc;
}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlFileAssociationNode.cs b/main/src/addins/Xml/Editor/XmlFileAssociationNode.cs
index ecd82bafca..d24737d79f 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlFileAssociationNode.cs
+++ b/main/src/addins/Xml/Editor/XmlFileAssociationNode.cs
@@ -24,7 +24,7 @@
using System;
using Mono.Addins;
-namespace MonoDevelop.XmlEditor
+namespace MonoDevelop.Xml.Editor
{
class XmlFileAssociationNode : ExtensionNode
{
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XmlParsedDocument.cs b/main/src/addins/Xml/Editor/XmlParsedDocument.cs
index a818998f2c..bd6bc32cbf 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XmlParsedDocument.cs
+++ b/main/src/addins/Xml/Editor/XmlParsedDocument.cs
@@ -30,8 +30,9 @@ using System;
using System.Collections.Generic;
using MonoDevelop.Ide.TypeSystem;
using ICSharpCode.NRefactory.TypeSystem;
+using MonoDevelop.Xml.Dom;
-namespace MonoDevelop.Xml.StateEngine
+namespace MonoDevelop.Xml.Editor
{
public class XmlParsedDocument : DefaultParsedDocument
{
@@ -39,7 +40,7 @@ namespace MonoDevelop.Xml.StateEngine
{
}
- public MonoDevelop.Xml.StateEngine.XDocument XDocument { get; set; }
+ public XDocument XDocument { get; set; }
public override IEnumerable<FoldingRegion> Foldings {
get {
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlSchemaManager.cs b/main/src/addins/Xml/Editor/XmlSchemaManager.cs
index 550735b760..279737ccf9 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlSchemaManager.cs
+++ b/main/src/addins/Xml/Editor/XmlSchemaManager.cs
@@ -21,15 +21,13 @@
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
-using MonoDevelop.Core;
using System;
+using System.Collections.Generic;
using System.IO;
-using System.Collections.Generic;
-using System.Reflection;
-using System.Xml;
-using MonoDevelop.XmlEditor.Completion;
+using MonoDevelop.Core;
+using MonoDevelop.Xml.Completion;
-namespace MonoDevelop.XmlEditor
+namespace MonoDevelop.Xml.Editor
{
// Keeps track of all the schemas that the Xml Editor is aware of.
public static class XmlSchemaManager
@@ -67,7 +65,7 @@ namespace MonoDevelop.XmlEditor
get {
if (builtinSchemas == null) {
builtinSchemas = new XmlSchemaCompletionDataCollection ();
- var nodes = Mono.Addins.AddinManager.GetExtensionNodes ("/MonoDevelop/XmlEditor/XmlSchemas");
+ var nodes = Mono.Addins.AddinManager.GetExtensionNodes ("/MonoDevelop/Xml/Editor/XmlSchemas");
foreach (XmlSchemaNode node in nodes)
LoadSchema (builtinSchemas, node.File, true);
}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlSchemaNode.cs b/main/src/addins/Xml/Editor/XmlSchemaNode.cs
index 0e3dfe47d8..dd2d4c26b8 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlSchemaNode.cs
+++ b/main/src/addins/Xml/Editor/XmlSchemaNode.cs
@@ -28,7 +28,7 @@ using System;
using Mono.Addins;
using MonoDevelop.Core;
-namespace MonoDevelop.XmlEditor
+namespace MonoDevelop.Xml.Editor
{
class XmlSchemaNode : ExtensionNode
{
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Gui/XmlSchemasPanel.cs b/main/src/addins/Xml/Editor/XmlSchemasPanel.cs
index 9d4cbbbe42..5adda7a6b0 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Gui/XmlSchemasPanel.cs
+++ b/main/src/addins/Xml/Editor/XmlSchemasPanel.cs
@@ -23,13 +23,11 @@
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
using System;
-using System.Collections.Generic;
using Gtk;
using MonoDevelop.Ide.Gui.Dialogs;
-using MonoDevelop.XmlEditor;
-namespace MonoDevelop.XmlEditor.Gui
+namespace MonoDevelop.Xml.Editor
{
/// <summary>
/// Shows the xml schemas that MonoDevelop knows about.
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Gui/XmlSchemasPanelWidget.cs b/main/src/addins/Xml/Editor/XmlSchemasPanelWidget.cs
index 6808152048..f7d2824baf 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.Gui/XmlSchemasPanelWidget.cs
+++ b/main/src/addins/Xml/Editor/XmlSchemasPanelWidget.cs
@@ -34,14 +34,11 @@ using System.Collections.Generic;
using Gtk;
using MonoDevelop.Core;
using MonoDevelop.Ide;
-using MonoDevelop.XmlEditor;
-using MonoDevelop.XmlEditor.Completion;
+using MonoDevelop.Xml.Completion;
-namespace MonoDevelop.XmlEditor.Gui
+namespace MonoDevelop.Xml.Editor
{
-
-
- public partial class XmlSchemasPanelWidget : Bin
+ class XmlSchemasPanelWidget : VBox
{
ListStore registeredSchemasStore;
ListStore defaultAssociationsStore;
@@ -49,10 +46,14 @@ namespace MonoDevelop.XmlEditor.Gui
List<XmlSchemaCompletionData> addedSchemas = new List<XmlSchemaCompletionData> ();
List<XmlSchemaCompletionData> removedSchemas = new List<XmlSchemaCompletionData> ();
List<string> removedExtensions = new List<string> ();
+
+ TreeView registeredSchemasView, defaultAssociationsView;
+ Button registeredSchemasAddButton, registeredSchemasRemoveButton;
+ Button defaultAssociationsAddButton, defaultAssociationsRemoveButton;
public XmlSchemasPanelWidget ()
{
- this.Build ();
+ Build ();
//set up tree view for default schemas
var textRenderer = new CellRendererText ();
@@ -73,7 +74,7 @@ namespace MonoDevelop.XmlEditor.Gui
});
registeredSchemasStore.SetSortFunc (0,
- (model, a, b) => string.Compare (GetSchema (a).NamespaceUri, GetSchema (b).NamespaceUri));
+ (model, a, b) => string.Compare (GetSchema (a).NamespaceUri, GetSchema (b).NamespaceUri, StringComparison.Ordinal));
registeredSchemasStore.SetSortColumnId (0, SortType.Ascending);
@@ -120,9 +121,7 @@ namespace MonoDevelop.XmlEditor.Gui
//editing handlers
extensionTextRenderer.Edited += handleExtensionSet;
- comboEditor.Edited += delegate (object sender, EditedArgs args) {
- setAssocValAndMarkChanged (args.Path, COL_NS, args.NewText ?? "");
- };
+ comboEditor.Edited += (sender, args) => setAssocValAndMarkChanged (args.Path, COL_NS, args.NewText ?? "");
prefixTextRenderer.Edited += delegate (object sender, EditedArgs args) {
foreach (char c in args.NewText)
if (!char.IsLetterOrDigit (c))
@@ -139,6 +138,48 @@ namespace MonoDevelop.XmlEditor.Gui
};
defaultAssociationsRemoveButton.Sensitive = false;
}
+
+ void Build ()
+ {
+ Spacing = 6;
+
+ registeredSchemasView = new TreeView ();
+ defaultAssociationsView = new TreeView ();
+
+ registeredSchemasAddButton = new Button (Stock.Add);
+ registeredSchemasRemoveButton = new Button (Stock.Remove);
+ defaultAssociationsAddButton = new Button (Stock.Add);
+ defaultAssociationsRemoveButton = new Button (Stock.Remove);
+
+ registeredSchemasAddButton.Clicked += addRegisteredSchema;
+ registeredSchemasRemoveButton.Clicked += removeRegisteredSchema;
+ defaultAssociationsAddButton.Clicked += addFileAssociation;
+ defaultAssociationsRemoveButton.Clicked += removeFileAssocation;
+
+ PackStart (new Label { Markup = GettextCatalog.GetString ("<b>Registered Schema</b>"), Xalign = 0 }, false, false, 0);
+ var schemasBox = new HBox (false, 6);
+ var schemaScroll = new ScrolledWindow { Child = registeredSchemasView, ShadowType = ShadowType.In };
+ schemasBox.PackStart (schemaScroll, true, true, 0);
+ var schemasButtonBox = new VBox (false, 6);
+ schemasButtonBox.PackStart (registeredSchemasAddButton, false, false, 0);
+ schemasButtonBox.PackStart (registeredSchemasRemoveButton, false, false, 0);
+ schemasBox.PackStart (schemasButtonBox, false, false, 0);
+ PackStart (schemasBox, true, true, 0);
+
+ PackStart (new Label (" "), false, false, 0);
+
+ PackStart (new Label { Markup = GettextCatalog.GetString ("<b>Default File Associations</b>"), Xalign = 0 }, false, false, 0);
+ var assocBox = new HBox (false, 6);
+ var assocScroll = new ScrolledWindow { Child = defaultAssociationsView, ShadowType = ShadowType.In };
+ assocBox.PackStart (assocScroll, true, true, 0);
+ var assocButtonBox = new VBox (false, 6);
+ assocButtonBox.PackStart (defaultAssociationsAddButton, false, false, 0);
+ assocButtonBox.PackStart (defaultAssociationsRemoveButton, false, false, 0);
+ assocBox.PackStart (assocButtonBox, false, false, 0);
+ PackStart (assocBox, true, true, 0);
+
+ ShowAll ();
+ }
XmlSchemaCompletionData GetSchema (TreeIter iter)
{
@@ -280,7 +321,7 @@ namespace MonoDevelop.XmlEditor.Gui
}
}
- protected virtual void addFileAssociation (object sender, System.EventArgs e)
+ protected virtual void addFileAssociation (object sender, EventArgs e)
{
bool foundExisting = false;
TreeIter newIter = TreeIter.Zero;
@@ -299,7 +340,7 @@ namespace MonoDevelop.XmlEditor.Gui
true);
}
- protected virtual void removeFileAssocation (object sender, System.EventArgs e)
+ protected virtual void removeFileAssocation (object sender, EventArgs e)
{
TreeIter iter;
if (!defaultAssociationsView.Selection.GetSelected (out iter))
@@ -356,7 +397,7 @@ namespace MonoDevelop.XmlEditor.Gui
}
}
- protected virtual void removeRegisteredSchema (object sender, System.EventArgs e)
+ protected virtual void removeRegisteredSchema (object sender, EventArgs e)
{
XmlSchemaCompletionData schema = GetSelectedSchema ();
if (schema == null)
@@ -365,7 +406,7 @@ namespace MonoDevelop.XmlEditor.Gui
RemoveRegisteredSchema (schema);
}
- protected virtual void addRegisteredSchema (object sender, System.EventArgs args)
+ protected virtual void addRegisteredSchema (object sender, EventArgs args)
{
string fileName = XmlEditorService.BrowseForSchemaFile ();
if (string.IsNullOrEmpty (fileName))
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlTextEditorExtension.cs b/main/src/addins/Xml/Editor/XmlTextEditorExtension.cs
index 51317c5625..a9dcf1d6b3 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor/XmlTextEditorExtension.cs
+++ b/main/src/addins/Xml/Editor/XmlTextEditorExtension.cs
@@ -28,25 +28,25 @@
// THE SOFTWARE.
using System;
-using System.Linq;
using System.Collections.Generic;
using System.Xml;
using System.Xml.Schema;
-using MonoDevelop.Core;
+using Mono.TextEditor;
+
using MonoDevelop.Components.Commands;
+using MonoDevelop.Core;
+using MonoDevelop.Ide;
using MonoDevelop.Ide.CodeCompletion;
using MonoDevelop.Ide.Gui.Content;
-using MonoDevelop.XmlEditor.Completion;
-using MonoDevelop.Xml.StateEngine;
using MonoDevelop.Ide.Tasks;
-using MonoDevelop.Ide;
-using MonoDevelop.Ide.CodeFormatting;
-using Mono.TextEditor;
+using MonoDevelop.Xml.Completion;
+using MonoDevelop.Xml.Dom;
+using MonoDevelop.Xml.Parser;
-namespace MonoDevelop.XmlEditor
+namespace MonoDevelop.Xml.Editor
{
- public class XmlTextEditorExtension : MonoDevelop.XmlEditor.Gui.BaseXmlEditorExtension
+ public class XmlTextEditorExtension : BaseXmlEditorExtension
{
const string TextXmlMimeType = "text/xml";
const string ApplicationXmlMimeType = "application/xml";
@@ -99,35 +99,11 @@ namespace MonoDevelop.XmlEditor
XmlElementPath GetElementPath ()
{
- return ConvertPath (GetCurrentPath ());
- }
-
- XmlElementPath ConvertPath (IList<XObject> path)
- {
- var elementPath = new XmlElementPath ();
-
- if (defaultSchemaCompletionData != null && !string.IsNullOrEmpty (defaultSchemaCompletionData.NamespaceUri))
- elementPath.Namespaces.AddPrefix (defaultSchemaCompletionData.NamespaceUri, defaultNamespacePrefix ?? "");
-
- foreach (var obj in path) {
- var el = obj as XElement;
- if (el == null)
- continue;
- foreach (var att in el.Attributes) {
- if (!string.IsNullOrEmpty (att.Value)) {
- if (att.Name.HasPrefix) {
- if (att.Name.Prefix == "xmlns")
- elementPath.Namespaces.AddPrefix (att.Value, att.Name.Name);
- } else if (att.Name.Name == "xmlns") {
- elementPath.Namespaces.AddPrefix (att.Value, "");
- }
- }
- }
- string ns = elementPath.Namespaces.GetNamespace (el.Name.HasPrefix? el.Name.Prefix : "");
- QualifiedName qn = new QualifiedName (el.Name.Name, ns, el.Name.Prefix ?? String.Empty);
- elementPath.Elements.Add (qn);
- }
- return elementPath;
+ return XmlElementPath.Resolve (
+ GetCurrentPath (),
+ defaultSchemaCompletionData != null? defaultSchemaCompletionData.NamespaceUri : null,
+ defaultNamespacePrefix ?? ""
+ );
}
protected override void GetElementCompletions (CompletionDataList list)
@@ -521,7 +497,7 @@ namespace MonoDevelop.XmlEditor
//FIXME: implement
}
- [CommandHandler (Commands.CreateSchema)]
+ [CommandHandler (XmlCommands.CreateSchema)]
public void CreateSchemaCommand ()
{
try {
@@ -548,26 +524,26 @@ namespace MonoDevelop.XmlEditor
}
}
- [CommandHandler (Commands.OpenStylesheet)]
+ [CommandHandler (XmlCommands.OpenStylesheet)]
public void OpenStylesheetCommand ()
{
if (!string.IsNullOrEmpty (stylesheetFileName)) {
try {
- IdeApp.Workbench.OpenDocument (stylesheetFileName);
+ IdeApp.Workbench.OpenDocument (stylesheetFileName, Document.Project);
} catch (Exception ex) {
- MonoDevelop.Core.LoggingService.LogError ("Could not open document.", ex);
+ LoggingService.LogError ("Could not open document.", ex);
MessageService.ShowException (ex, "Could not open document.");
}
}
}
- [CommandUpdateHandler (Commands.OpenStylesheet)]
+ [CommandUpdateHandler (XmlCommands.OpenStylesheet)]
public void UpdateOpenStylesheetCommand (CommandInfo info)
{
info.Enabled = !string.IsNullOrEmpty (stylesheetFileName);
}
- [CommandHandler (Commands.GoToSchemaDefinition)]
+ [CommandHandler (XmlCommands.GoToSchemaDefinition)]
public void GoToSchemaDefinitionCommand ()
{
try {
@@ -580,6 +556,7 @@ namespace MonoDevelop.XmlEditor
string schemaFileName = schemaObject.SourceUri.Replace ("file:/", String.Empty);
IdeApp.Workbench.OpenDocument (
schemaFileName,
+ Document.Project,
Math.Max (1, schemaObject.LineNumber),
Math.Max (1, schemaObject.LinePosition));
}
@@ -589,7 +566,7 @@ namespace MonoDevelop.XmlEditor
}
}
- [CommandHandler (Commands.Validate)]
+ [CommandHandler (XmlCommands.Validate)]
public void ValidateCommand ()
{
TaskService.Errors.Clear ();
@@ -601,7 +578,7 @@ namespace MonoDevelop.XmlEditor
}
}
- [CommandHandler (Commands.AssignStylesheet)]
+ [CommandHandler (XmlCommands.AssignStylesheet)]
public void AssignStylesheetCommand ()
{
// Prompt user for filename.
@@ -610,7 +587,7 @@ namespace MonoDevelop.XmlEditor
stylesheetFileName = fileName;
}
- [CommandHandler (Commands.RunXslTransform)]
+ [CommandHandler (XmlCommands.RunXslTransform)]
public void RunXslTransformCommand ()
{
if (string.IsNullOrEmpty (stylesheetFileName)) {
@@ -667,10 +644,10 @@ namespace MonoDevelop.XmlEditor
}
#endregion
-
+
void QueueInference ()
{
- XmlParsedDocument doc = this.CU as XmlParsedDocument;
+ var doc = CU as XmlParsedDocument;
if (defaultSchemaCompletionData != null || doc == null || doc.XDocument == null || inferenceQueued)
return;
if (inferredCompletionData == null
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.Formatting/MonoXmlPolicy.xml b/main/src/addins/Xml/Formatting/MonoXmlPolicy.xml
index c85c95249f..c85c95249f 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.Formatting/MonoXmlPolicy.xml
+++ b/main/src/addins/Xml/Formatting/MonoXmlPolicy.xml
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.Formatting/XmlFormatter.cs b/main/src/addins/Xml/Formatting/XmlFormatter.cs
index 04dec619c5..04dec619c5 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.Formatting/XmlFormatter.cs
+++ b/main/src/addins/Xml/Formatting/XmlFormatter.cs
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.Formatting/XmlFormatterWriter.cs b/main/src/addins/Xml/Formatting/XmlFormatterWriter.cs
index 99e35d33d5..270747ae03 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.Formatting/XmlFormatterWriter.cs
+++ b/main/src/addins/Xml/Formatting/XmlFormatterWriter.cs
@@ -35,8 +35,8 @@ using System.IO;
using System.Text;
using System.Xml;
-using MonoDevelop.Xml.StateEngine; // for XmlChar
using MonoDevelop.Ide.Gui.Content;
+using MonoDevelop.Xml.Parser;
namespace MonoDevelop.Xml.Formatting
{
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.Formatting/XmlFormattingPolicy.cs b/main/src/addins/Xml/Formatting/XmlFormattingPolicy.cs
index 0ffc56dea7..0ffc56dea7 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.Formatting/XmlFormattingPolicy.cs
+++ b/main/src/addins/Xml/Formatting/XmlFormattingPolicy.cs
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.Formatting/XmlFormattingPolicyPanel.cs b/main/src/addins/Xml/Formatting/XmlFormattingPolicyPanel.cs
index 93405e5ac1..93405e5ac1 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.Formatting/XmlFormattingPolicyPanel.cs
+++ b/main/src/addins/Xml/Formatting/XmlFormattingPolicyPanel.cs
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.Formatting/XmlFormattingPolicyPanelWidget.cs b/main/src/addins/Xml/Formatting/XmlFormattingPolicyPanelWidget.cs
index c995471f1f..b637b0d3d2 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.Formatting/XmlFormattingPolicyPanelWidget.cs
+++ b/main/src/addins/Xml/Formatting/XmlFormattingPolicyPanelWidget.cs
@@ -31,15 +31,14 @@ using MonoDevelop.Ide;
namespace MonoDevelop.Xml.Formatting
{
- [System.ComponentModel.ToolboxItem(true)]
- partial class XmlFormattingPolicyPanelWidget : Gtk.Bin
+ class XmlFormattingPolicyPanelWidget : VBox
{
XmlFormattingPolicy policy;
ListStore store;
public XmlFormattingPolicyPanelWidget ()
{
- this.Build ();
+ Build ();
store = new ListStore (typeof(string), typeof (XmlFormattingSettings));
listView.Model = store;
@@ -50,7 +49,81 @@ namespace MonoDevelop.Xml.Formatting
// propertyGrid.PropertySort = MonoDevelop.Components.PropertyGrid.PropertySort.NoSort;
propertyGrid.ShadowType = ShadowType.In;
}
-
+
+ VBox boxScopes;
+ ScrolledWindow scrolledWindow;
+ TreeView listView;
+ Button buttonAdd;
+ Button buttonRemove;
+ Label labelScopes;
+ Table tableScopes;
+ MonoDevelop.Components.PropertyGrid.PropertyGrid propertyGrid;
+ Button buttonAdvanced;
+
+ void Build ()
+ {
+ Spacing = 6;
+
+ listView = new TreeView {
+ CanFocus = true,
+ HeadersVisible = false
+ };
+
+ scrolledWindow = new ScrolledWindow { ShadowType = ShadowType.In, Child = listView };
+ buttonAdd = new Button (Stock.Add);
+ buttonRemove = new Button (Stock.Remove);
+
+ labelScopes = new Label {
+ Xalign = 0F,
+ Text = GettextCatalog.GetString ("Enter one or several xpath expressions to which this format applies:")
+ };
+
+ tableScopes = new Table (3, 3, false) {
+ RowSpacing = 6,
+ ColumnSpacing = 6
+ };
+
+ propertyGrid = new MonoDevelop.Components.PropertyGrid.PropertyGrid {
+ ShowToolbar = false,
+ ShowHelp = false
+ };
+
+ buttonAdvanced = new Button {
+ Label = GettextCatalog.GetString ("Advanced Settings"),
+ CanFocus = true,
+ UseUnderline = true
+ };
+
+ var buttonBox = new HBox (false, 6);
+ buttonBox.PackStart (buttonAdd, false, false, 0);
+ buttonBox.PackStart (buttonRemove, false, false, 0);
+
+ boxScopes = new VBox (false, 6);
+ boxScopes.PackStart (scrolledWindow, true, true, 0);
+ boxScopes.PackStart (buttonBox, false, false, 0);
+
+ var rightVBox = new VBox (false, 6);
+ rightVBox.PackStart (labelScopes, false, false, 0);
+ rightVBox.PackStart (tableScopes, false, false, 0);
+ rightVBox.PackStart (propertyGrid, true, true, 0);
+
+ var mainBox = new HBox (false, 6);
+ mainBox.PackStart (boxScopes, false, false, 0);
+ mainBox.PackStart (rightVBox, true, true, 0);
+
+ var abbBox = new HBox (false, 6);
+ abbBox.PackStart (buttonAdvanced, false, false, 0);
+
+ PackStart (mainBox, true, true, 0);
+ PackStart (abbBox, false, false, 0);
+
+ ShowAll ();
+
+ buttonAdd.Clicked += OnButtonAddClicked;
+ buttonRemove.Clicked += OnButtonRemoveClicked;
+ buttonAdvanced.Clicked += OnButtonAdvancedClicked;
+ }
+
public void CommitPendingChanges ()
{
propertyGrid.CommitPendingChanges ();
@@ -142,10 +215,10 @@ namespace MonoDevelop.Xml.Formatting
}
for (uint n=0; n<currentFormat.ScopeXPath.Count; n++) {
int capn = (int) n;
- Label la = new Label (GettextCatalog.GetString ("XPath scope:"));
+ var la = new Label (GettextCatalog.GetString ("XPath scope:"));
la.Xalign = 0;
tableScopes.Attach (la, 0, 1, n, n + 1, AttachOptions.Shrink, AttachOptions.Shrink, 0, 0);
- Entry en = new Entry ();
+ var en = new Entry ();
en.Text = currentFormat.ScopeXPath[capn];
tableScopes.Attach (en, 1, 2, n, n + 1, AttachOptions.Expand | AttachOptions.Fill, AttachOptions.Shrink, 0, 0);
en.Changed += delegate {
@@ -154,7 +227,7 @@ namespace MonoDevelop.Xml.Formatting
};
uint c = 2;
if (currentFormat.ScopeXPath.Count != 1) {
- Button butRem = new Button (ImageService.GetImage (Gtk.Stock.Remove, IconSize.Menu));
+ var butRem = new Button (ImageService.GetImage (Stock.Remove, IconSize.Menu));
tableScopes.Attach (butRem, 2, 3, n, n + 1, AttachOptions.Shrink, AttachOptions.Shrink, 0, 0);
butRem.Clicked += delegate {
currentFormat.ScopeXPath.RemoveAt (capn);
@@ -164,7 +237,7 @@ namespace MonoDevelop.Xml.Formatting
c++;
}
if (n == currentFormat.ScopeXPath.Count - 1) {
- Button butAdd = new Button (ImageService.GetImage (Gtk.Stock.Add, IconSize.Menu));
+ var butAdd = new Button (ImageService.GetImage (Stock.Add, IconSize.Menu));
tableScopes.Attach (butAdd, c, c + 1, n, n + 1, AttachOptions.Shrink, AttachOptions.Shrink, 0, 0);
butAdd.Clicked += delegate {
currentFormat.ScopeXPath.Add ("");
@@ -177,7 +250,7 @@ namespace MonoDevelop.Xml.Formatting
tableScopes.ShowAll ();
}
- protected virtual void OnButtonAddClicked (object sender, System.EventArgs e)
+ protected virtual void OnButtonAddClicked (object sender, EventArgs e)
{
var format = new XmlFormattingSettings ();
policy.Formats.Add (format);
@@ -185,7 +258,7 @@ namespace MonoDevelop.Xml.Formatting
listView.Selection.SelectIter (it);
}
- protected virtual void OnButtonRemoveClicked (object sender, System.EventArgs e)
+ protected virtual void OnButtonRemoveClicked (object sender, EventArgs e)
{
TreeIter it;
if (listView.Selection.GetSelected (out it)) {
@@ -225,7 +298,7 @@ namespace MonoDevelop.Xml.Formatting
}
}
- protected virtual void OnButtonAdvancedClicked (object sender, System.EventArgs e)
+ protected virtual void OnButtonAdvancedClicked (object sender, EventArgs e)
{
boxScopes.Show ();
buttonAdvanced.Hide ();
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.MSBuild/MSBuildDocumentParser.cs b/main/src/addins/Xml/MSBuild/MSBuildDocumentParser.cs
index 19cd5e3e74..8f0f457d78 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.MSBuild/MSBuildDocumentParser.cs
+++ b/main/src/addins/Xml/MSBuild/MSBuildDocumentParser.cs
@@ -27,7 +27,9 @@
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
-namespace MonoDevelop.XmlEditor.MSBuild
+using MonoDevelop.Xml.Editor;
+
+namespace MonoDevelop.Xml.MSBuild
{
class MSBuildDocumentParser : XmlDocumentParser
{
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.MSBuild/MSBuildElement.cs b/main/src/addins/Xml/MSBuild/MSBuildElement.cs
index 158358b554..5501e2fcd2 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.MSBuild/MSBuildElement.cs
+++ b/main/src/addins/Xml/MSBuild/MSBuildElement.cs
@@ -28,7 +28,7 @@ using System;
using System.Collections.Generic;
using System.Linq;
-namespace MonoDevelop.XmlEditor.MSBuild
+namespace MonoDevelop.Xml.MSBuild
{
class MSBuildElement
{
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.MSBuild/MSBuildResolveContext.cs b/main/src/addins/Xml/MSBuild/MSBuildResolveContext.cs
index eb65485584..bb01db9027 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.MSBuild/MSBuildResolveContext.cs
+++ b/main/src/addins/Xml/MSBuild/MSBuildResolveContext.cs
@@ -26,10 +26,11 @@
using System;
using System.Collections.Generic;
-using System.Linq;
-using MonoDevelop.Xml.StateEngine;
+using System.Linq;
+using MonoDevelop.Xml.Editor;
+using MonoDevelop.Xml.Dom;
-namespace MonoDevelop.XmlEditor.MSBuild
+namespace MonoDevelop.Xml.MSBuild
{
class MSBuildResolveContext
{
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.MSBuild/MSBuildTextEditorExtension.cs b/main/src/addins/Xml/MSBuild/MSBuildTextEditorExtension.cs
index fce41735c7..b0cbcf3288 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.MSBuild/MSBuildTextEditorExtension.cs
+++ b/main/src/addins/Xml/MSBuild/MSBuildTextEditorExtension.cs
@@ -27,15 +27,16 @@
using System;
using System.Collections.Generic;
-using MonoDevelop.Ide.CodeCompletion;
-using MonoDevelop.Xml.StateEngine;
-using MonoDevelop.XmlEditor.Completion;
-using MonoDevelop.Core;
using System.Threading;
+using MonoDevelop.Core;
+using MonoDevelop.Ide.CodeCompletion;
+using MonoDevelop.Xml.Completion;
+using MonoDevelop.Xml.Dom;
+using MonoDevelop.Xml.Editor;
-namespace MonoDevelop.XmlEditor.MSBuild
+namespace MonoDevelop.Xml.MSBuild
{
- class MSBuildTextEditorExtension : MonoDevelop.XmlEditor.Gui.BaseXmlEditorExtension
+ class MSBuildTextEditorExtension : BaseXmlEditorExtension
{
public static readonly string MSBuildMimeType = "application/x-msbuild";
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/Makefile.am b/main/src/addins/Xml/Makefile.am
index c9cc87438f..c9cc87438f 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/Makefile.am
+++ b/main/src/addins/Xml/Makefile.am
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.csproj b/main/src/addins/Xml/MonoDevelop.Xml.csproj
index c9fb3eda17..78c04d0f75 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.csproj
+++ b/main/src/addins/Xml/MonoDevelop.Xml.csproj
@@ -7,14 +7,14 @@
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{86DFC74A-B0B6-4C73-9E05-9098DA8FA5F1}</ProjectGuid>
<OutputType>Library</OutputType>
- <AssemblyName>MonoDevelop.XmlEditor</AssemblyName>
- <RootNamespace>MonoDevelop.XmlEditor</RootNamespace>
+ <AssemblyName>MonoDevelop.Xml</AssemblyName>
+ <RootNamespace>MonoDevelop.Xml</RootNamespace>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>True</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
- <OutputPath>..\..\..\build\AddIns\MonoDevelop.XmlEditor</OutputPath>
+ <OutputPath>..\..\..\build\AddIns\Xml</OutputPath>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<ExecuteAfterBuild>postbuild.sh</ExecuteAfterBuild>
@@ -24,12 +24,12 @@
</Execution>
<DefineConstants>DEBUG</DefineConstants>
<NoWarn>1591;1573</NoWarn>
- <DocumentationFile>..\..\..\build\AddIns\MonoDevelop.XmlEditor\MonoDevelop.XmlEditor.xml</DocumentationFile>
+ <DocumentationFile>..\..\..\build\AddIns\Xml\MonoDevelop.Xml.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<Optimize>True</Optimize>
- <OutputPath>..\..\..\build\AddIns\MonoDevelop.XmlEditor</OutputPath>
+ <OutputPath>..\..\..\build\AddIns\Xml</OutputPath>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<ExecuteAfterBuild>postbuild.sh</ExecuteAfterBuild>
@@ -39,7 +39,7 @@
</Execution>
<DebugSymbols>true</DebugSymbols>
<NoWarn>1591;1573</NoWarn>
- <DocumentationFile>..\..\..\build\AddIns\MonoDevelop.XmlEditor\MonoDevelop.XmlEditor.xml</DocumentationFile>
+ <DocumentationFile>..\..\..\build\AddIns\Xml\MonoDevelop.Xml.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
@@ -131,97 +131,86 @@
<EmbeddedResource Include="icons\light\prefs-xml-schemas-16%402x.png">
<LogicalName>prefs-xml-schemas-light-16@2x.png</LogicalName>
</EmbeddedResource>
- </ItemGroup>
- <ItemGroup>
- <Compile Include="AssemblyInfo.cs" />
- <Compile Include="MonoDevelop.XmlEditor\Commands.cs" />
- <Compile Include="MonoDevelop.XmlEditor\EncodedStringWriter.cs" />
- <Compile Include="MonoDevelop.XmlEditor\XmlNamespace.cs" />
- <Compile Include="MonoDevelop.XmlEditor\XmlParser.cs" />
- <Compile Include="MonoDevelop.XmlEditor\XmlSchemaManager.cs" />
- <Compile Include="MonoDevelop.XmlEditor\XmlEditorService.cs" />
- <Compile Include="MonoDevelop.XmlEditor\XmlTextEditorExtension.cs" />
- <Compile Include="gtk-gui\generated.cs" />
- <Compile Include="MonoDevelop.XmlEditor.Gui\XmlEditorOptionsPanelWidget.cs" />
- <Compile Include="MonoDevelop.XmlEditor.Gui\XmlEditorOptionsPanel.cs" />
- <Compile Include="gtk-gui\MonoDevelop.XmlEditor.Gui.XmlEditorOptionsPanelWidget.cs" />
- <Compile Include="MonoDevelop.XmlEditor.Gui\XmlSchemasPanelWidget.cs" />
- <Compile Include="gtk-gui\MonoDevelop.XmlEditor.Gui.XmlSchemasPanelWidget.cs" />
- <Compile Include="MonoDevelop.XmlEditor.Gui\XmlSchemasPanel.cs" />
- <Compile Include="MonoDevelop.XmlEditor.Completion\XmlSchemaCompletionData.cs" />
- <Compile Include="MonoDevelop.XmlEditor.Completion\XmlSchemaCompletionDataCollection.cs" />
- <Compile Include="MonoDevelop.XmlEditor.Completion\XmlCompletionData.cs" />
- <Compile Include="MonoDevelop.XmlEditor.Completion\IXmlCompletionProvider.cs" />
- <Compile Include="MonoDevelop.XmlEditor\QualifiedName.cs" />
- <Compile Include="MonoDevelop.XmlEditor\XmlElementPath.cs" />
- <Compile Include="MonoDevelop.XmlEditor\QualifiedNameCollection.cs" />
- <Compile Include="MonoDevelop.XmlEditor.Completion\ILazilyLoadedProvider.cs" />
- <Compile Include="MonoDevelop.XmlEditor.Completion\XmlTagCompletionData.cs" />
- <Compile Include="MonoDevelop.Xml.StateEngine\Parser.cs" />
- <Compile Include="MonoDevelop.Xml.StateEngine\State.cs" />
- <Compile Include="MonoDevelop.Xml.StateEngine\XmlCDataState.cs" />
- <Compile Include="MonoDevelop.Xml.StateEngine\XmlAttributeState.cs" />
- <Compile Include="MonoDevelop.Xml.StateEngine\XmlAttributeValueState.cs" />
- <Compile Include="MonoDevelop.Xml.StateEngine\XmlClosingTagState.cs" />
- <Compile Include="MonoDevelop.Xml.StateEngine\XmlCommentState.cs" />
- <Compile Include="MonoDevelop.Xml.StateEngine\XmlFreeState.cs" />
- <Compile Include="MonoDevelop.Xml.StateEngine\XmlNameState.cs" />
- <Compile Include="MonoDevelop.Xml.StateEngine\XmlTagState.cs" />
- <Compile Include="MonoDevelop.Xml.StateEngine\XmlProcessingInstructionState.cs" />
- <Compile Include="MonoDevelop.Xml.StateEngine\XDom.cs" />
- <Compile Include="MonoDevelop.Xml.StateEngine\XmlDocTypeState.cs" />
- <Compile Include="MonoDevelop.Xml.StateEngine\XmlChar.cs" />
- <Compile Include="MonoDevelop.XmlEditor.Gui\BaseXmlEditorExtension.cs" />
- <Compile Include="MonoDevelop.XmlEditor.Completion\XmlMultipleClosingTagCompletionData.cs" />
- <Compile Include="MonoDevelop.Xml.StateEngine\XmlParsedDocument.cs" />
- <Compile Include="MonoDevelop.XmlEditor\XmlDocumentParser.cs" />
- <Compile Include="MonoDevelop.XmlEditor.Completion\InferredXmlCompletionProvider.cs" />
- <Compile Include="MonoDevelop.Xml.Formatting\XmlFormatterWriter.cs" />
- <Compile Include="MonoDevelop.Xml.Formatting\XmlFormattingPolicy.cs" />
- <Compile Include="MonoDevelop.Xml.Formatting\XmlFormatter.cs" />
- <Compile Include="MonoDevelop.Xml.Formatting\XmlFormattingPolicyPanel.cs" />
- <Compile Include="MonoDevelop.Xml.Formatting\XmlFormattingPolicyPanelWidget.cs" />
- <Compile Include="gtk-gui\MonoDevelop.Xml.Formatting.XmlFormattingPolicyPanelWidget.cs" />
- <Compile Include="MonoDevelop.XmlEditor\XmlEditorOptions.cs" />
- <Compile Include="MonoDevelop.XmlEditor\XmlFileAssociationNode.cs" />
- <Compile Include="MonoDevelop.XmlEditor\XmlFileAssociation.cs" />
- <Compile Include="MonoDevelop.XmlEditor\XmlFileAssociationManager.cs" />
- <Compile Include="MonoDevelop.XmlEditor\XmlSchemaNode.cs" />
- <Compile Include="MonoDevelop.XmlEditor.Completion\LocalOnlyXmlResolver.cs" />
- <Compile Include="MonoDevelop.XmlEditor.Completion\XmlCompletionDataList.cs" />
- <Compile Include="MonoDevelop.XmlEditor.Completion\EmptyXmlCompletionProvider.cs" />
- <Compile Include="MonoDevelop.XmlEditor.Completion\XmlNamespacePrefixMap.cs" />
- <Compile Include="AddinInfo.cs" />
- <Compile Include="MonoDevelop.XmlEditor.MSBuild\MSBuildDocumentParser.cs" />
- <Compile Include="MonoDevelop.XmlEditor.MSBuild\MSBuildResolveContext.cs" />
- <Compile Include="MonoDevelop.XmlEditor.MSBuild\MSBuildTextEditorExtension.cs" />
- <Compile Include="MonoDevelop.XmlEditor.MSBuild\MSBuildElement.cs" />
- </ItemGroup>
- <ItemGroup>
- <EmbeddedResource Include="MonoDevelop.XmlEditor.addin.xml">
- <LogicalName>MonoDevelop.XmlEditor.addin.xml</LogicalName>
- </EmbeddedResource>
- <EmbeddedResource Include="gtk-gui\gui.stetic">
- <LogicalName>gui.stetic</LogicalName>
- </EmbeddedResource>
- <EmbeddedResource Include="MonoDevelop.Xml.Formatting\MonoXmlPolicy.xml">
+ <EmbeddedResource Include="Formatting\MonoXmlPolicy.xml">
<LogicalName>MonoXmlPolicy.xml</LogicalName>
</EmbeddedResource>
+ <EmbeddedResource Include="Properties\MonoDevelop.XmlEditor.addin.xml">
+ <LogicalName>MonoDevelop.XmlEditor.addin.xml</LogicalName>
+ </EmbeddedResource>
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="Parser\XmlParser.cs" />
+ <Compile Include="Parser\XmlParserState.cs" />
+ <Compile Include="Parser\XmlCDataState.cs" />
+ <Compile Include="Parser\XmlAttributeState.cs" />
+ <Compile Include="Parser\XmlAttributeValueState.cs" />
+ <Compile Include="Parser\XmlClosingTagState.cs" />
+ <Compile Include="Parser\XmlCommentState.cs" />
+ <Compile Include="Parser\XmlNameState.cs" />
+ <Compile Include="Parser\XmlTagState.cs" />
+ <Compile Include="Parser\XmlProcessingInstructionState.cs" />
+ <Compile Include="Parser\XmlDocTypeState.cs" />
+ <Compile Include="Parser\XmlChar.cs" />
+ <Compile Include="Dom\IAttributedXObject.cs" />
+ <Compile Include="Dom\XObject.cs" />
+ <Compile Include="Dom\XNode.cs" />
+ <Compile Include="Dom\XName.cs" />
+ <Compile Include="Dom\XContainer.cs" />
+ <Compile Include="Dom\XElement.cs" />
+ <Compile Include="Dom\XAttribute.cs" />
+ <Compile Include="Dom\XAttributeCollection.cs" />
+ <Compile Include="Dom\XCData.cs" />
+ <Compile Include="Dom\XComment.cs" />
+ <Compile Include="Dom\XProcessingInstruction.cs" />
+ <Compile Include="Dom\XDocType.cs" />
+ <Compile Include="Dom\XClosingTag.cs" />
+ <Compile Include="Dom\XDocument.cs" />
+ <Compile Include="Dom\INamedXObject.cs" />
+ <Compile Include="MSBuild\MSBuildDocumentParser.cs" />
+ <Compile Include="MSBuild\MSBuildResolveContext.cs" />
+ <Compile Include="MSBuild\MSBuildTextEditorExtension.cs" />
+ <Compile Include="MSBuild\MSBuildElement.cs" />
+ <Compile Include="Completion\XmlSchemaCompletionData.cs" />
+ <Compile Include="Completion\XmlSchemaCompletionDataCollection.cs" />
+ <Compile Include="Completion\XmlCompletionData.cs" />
+ <Compile Include="Completion\IXmlCompletionProvider.cs" />
+ <Compile Include="Completion\ILazilyLoadedProvider.cs" />
+ <Compile Include="Completion\XmlTagCompletionData.cs" />
+ <Compile Include="Completion\XmlMultipleClosingTagCompletionData.cs" />
+ <Compile Include="Completion\InferredXmlCompletionProvider.cs" />
+ <Compile Include="Completion\LocalOnlyXmlResolver.cs" />
+ <Compile Include="Completion\XmlCompletionDataList.cs" />
+ <Compile Include="Completion\EmptyXmlCompletionProvider.cs" />
+ <Compile Include="Completion\XmlNamespacePrefixMap.cs" />
+ <Compile Include="Formatting\XmlFormatterWriter.cs" />
+ <Compile Include="Formatting\XmlFormattingPolicy.cs" />
+ <Compile Include="Formatting\XmlFormatter.cs" />
+ <Compile Include="Formatting\XmlFormattingPolicyPanel.cs" />
+ <Compile Include="Formatting\XmlFormattingPolicyPanelWidget.cs" />
+ <Compile Include="Properties\AssemblyInfo.cs" />
+ <Compile Include="Properties\AddinInfo.cs" />
+ <Compile Include="Parser\XmlRootState.cs" />
+ <Compile Include="Editor\XmlDocumentParser.cs" />
+ <Compile Include="Editor\XmlParsedDocument.cs" />
+ <Compile Include="Editor\XmlEditorOptions.cs" />
+ <Compile Include="Editor\XmlTextEditorExtension.cs" />
+ <Compile Include="Editor\BaseXmlEditorExtension.cs" />
+ <Compile Include="Editor\XmlFileAssociation.cs" />
+ <Compile Include="Editor\XmlEditorService.cs" />
+ <Compile Include="Editor\XmlSchemaManager.cs" />
+ <Compile Include="Editor\XmlFileAssociationNode.cs" />
+ <Compile Include="Editor\XmlFileAssociationManager.cs" />
+ <Compile Include="Editor\XmlSchemaNode.cs" />
+ <Compile Include="Editor\XmlEditorOptionsPanel.cs" />
+ <Compile Include="Editor\XmlEditorOptionsPanelWidget.cs" />
+ <Compile Include="Editor\XmlSchemasPanel.cs" />
+ <Compile Include="Editor\XmlSchemasPanelWidget.cs" />
+ <Compile Include="Completion\QualifiedName.cs" />
+ <Compile Include="Completion\XmlElementPath.cs" />
+ <Compile Include="Editor\XmlCommands.cs" />
</ItemGroup>
<ItemGroup>
- <None Include="MonoDevelop.XmlEditor\OpenStylesheetCommand.cs" />
- <None Include="MonoDevelop.XmlEditor\OpenXPathQueryPadCommand.cs" />
- <None Include="MonoDevelop.XmlEditor\RemoveXPathHighlightingCommand.cs" />
- <None Include="MonoDevelop.XmlEditor.XPath\XPathHistoryList.cs" />
- <None Include="MonoDevelop.XmlEditor.XPath\XPathNamespaceList.cs" />
- <None Include="MonoDevelop.XmlEditor.XPath\XPathNodeMatch.cs" />
- <None Include="MonoDevelop.XmlEditor.XPath\XPathNodeTextMarker.cs" />
- <None Include="MonoDevelop.XmlEditor.XPath\XPathQueryPad.cs" />
- <None Include="MonoDevelop.XmlEditor.XPath\XPathQueryPadOptions.cs" />
- <None Include="MonoDevelop.XmlEditor.XPath\XPathQueryWidget.cs" />
<None Include="Makefile.am" />
- <None Include="MonoDevelop.Xml.StateEngine\XmlParser.cs" />
- <None Include="MonoDevelop.Xml.StateEngine\XState.cs" />
</ItemGroup>
<ItemGroup>
<Content Include="schemas\appconfig.xsd">
@@ -252,6 +241,18 @@
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<ItemGroup />
<ItemGroup>
- <Folder Include="MonoDevelop.XmlEditor.MSBuild\" />
+ <Folder Include="Dom\" />
+ <Folder Include="MSBuild\" />
+ <Folder Include="Properties\" />
+ <Folder Include="Editor\" />
</ItemGroup>
+ <ProjectExtensions>
+ <MonoDevelop>
+ <Properties>
+ <Policies>
+ <DotNetNamingPolicy DirectoryNamespaceAssociation="PrefixedHierarchical" ResourceNamePolicy="FileName" />
+ </Policies>
+ </Properties>
+ </MonoDevelop>
+ </ProjectExtensions>
</Project>
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XmlAttributeState.cs b/main/src/addins/Xml/Parser/XmlAttributeState.cs
index 6456219d58..3025771d3e 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XmlAttributeState.cs
+++ b/main/src/addins/Xml/Parser/XmlAttributeState.cs
@@ -26,18 +26,15 @@
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
-using System;
-using System.Text;
using System.Diagnostics;
+using MonoDevelop.Xml.Dom;
-namespace MonoDevelop.Xml.StateEngine
+namespace MonoDevelop.Xml.Parser
{
-
-
- public class XmlAttributeState : State
+ public class XmlAttributeState : XmlParserState
{
- XmlNameState XmlNameState;
- XmlAttributeValueState AttributeValueState;
+ readonly XmlNameState XmlNameState;
+ readonly XmlAttributeValueState AttributeValueState;
const int NAMING = 0;
const int GETTINGEQ = 1;
@@ -59,9 +56,9 @@ namespace MonoDevelop.Xml.StateEngine
Adopt (this.AttributeValueState);
}
- public override State PushChar (char c, IParseContext context, ref string rollback)
+ public override XmlParserState PushChar (char c, IXmlParserContext context, ref string rollback)
{
- XAttribute att = context.Nodes.Peek () as XAttribute;
+ var att = context.Nodes.Peek () as XAttribute;
//state has just been entered
if (context.CurrentStateLength == 1) {
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XmlAttributeValueState.cs b/main/src/addins/Xml/Parser/XmlAttributeValueState.cs
index 99b6e03bce..eea5acee05 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XmlAttributeValueState.cs
+++ b/main/src/addins/Xml/Parser/XmlAttributeValueState.cs
@@ -25,10 +25,11 @@
// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
+using MonoDevelop.Xml.Dom;
-namespace MonoDevelop.Xml.StateEngine
+namespace MonoDevelop.Xml.Parser
{
- public class XmlAttributeValueState : State
+ public class XmlAttributeValueState : XmlParserState
{
protected const int FREE = 0;
protected const int UNQUOTED = 1;
@@ -39,7 +40,7 @@ namespace MonoDevelop.Xml.StateEngine
protected const int TagMask = 3;
protected const int TagShift = 2;
- public override State PushChar (char c, IParseContext context, ref string rollback)
+ public override XmlParserState PushChar (char c, IXmlParserContext context, ref string rollback)
{
System.Diagnostics.Debug.Assert (((XAttribute) context.Nodes.Peek ()).Value == null);
@@ -78,7 +79,7 @@ namespace MonoDevelop.Xml.StateEngine
return null;
}
- State BuildUnquotedValue (char c, IParseContext context, ref string rollback)
+ XmlParserState BuildUnquotedValue (char c, IXmlParserContext context, ref string rollback)
{
if (char.IsLetterOrDigit (c) || c == '_' || c == '.') {
context.KeywordBuilder.Append (c);
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XmlCDataState.cs b/main/src/addins/Xml/Parser/XmlCDataState.cs
index c352efaa0b..cc72b04f5b 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XmlCDataState.cs
+++ b/main/src/addins/Xml/Parser/XmlCDataState.cs
@@ -26,19 +26,17 @@
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
-using System;
-using System.Collections.Generic;
-using System.Text;
+using MonoDevelop.Xml.Dom;
-namespace MonoDevelop.Xml.StateEngine
+namespace MonoDevelop.Xml.Parser
{
- public class XmlCDataState : State
+ public class XmlCDataState : XmlParserState
{
const int NOMATCH = 0;
const int SINGLE_BRACKET = 1;
const int DOUBLE_BRACKET = 2;
- public override State PushChar (char c, IParseContext context, ref string rollback)
+ public override XmlParserState PushChar (char c, IXmlParserContext context, ref string rollback)
{
if (context.CurrentStateLength == 1) {
context.Nodes.Push (new XCData (context.LocationMinus ("<![CDATA[".Length + 1)));
@@ -54,7 +52,7 @@ namespace MonoDevelop.Xml.StateEngine
} else if (c == '>' && context.StateTag == DOUBLE_BRACKET) {
// if the ']]' is followed by a '>', the state has ended
// so attach a node to the DOM and end the state
- XCData cdata = (XCData) context.Nodes.Pop ();
+ var cdata = (XCData) context.Nodes.Pop ();
if (context.BuildTree) {
cdata.End (context.Location);
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XmlChar.cs b/main/src/addins/Xml/Parser/XmlChar.cs
index 4dc4b6e754..8fbeaf1032 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XmlChar.cs
+++ b/main/src/addins/Xml/Parser/XmlChar.cs
@@ -31,7 +31,7 @@
using System;
-namespace MonoDevelop.Xml.StateEngine
+namespace MonoDevelop.Xml.Parser
{
public class XmlChar
{
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XmlClosingTagState.cs b/main/src/addins/Xml/Parser/XmlClosingTagState.cs
index 7893d54365..9510f77a6b 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XmlClosingTagState.cs
+++ b/main/src/addins/Xml/Parser/XmlClosingTagState.cs
@@ -26,15 +26,14 @@
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
-using System;
-using System.Collections.Generic;
using System.Diagnostics;
+using MonoDevelop.Xml.Dom;
-namespace MonoDevelop.Xml.StateEngine
+namespace MonoDevelop.Xml.Parser
{
- public class XmlClosingTagState : State
+ public class XmlClosingTagState : XmlParserState
{
- XmlNameState NameState;
+ readonly XmlNameState NameState;
public XmlClosingTagState ()
: this (new XmlNameState ())
@@ -47,9 +46,9 @@ namespace MonoDevelop.Xml.StateEngine
Adopt (NameState);
}
- public override State PushChar (char c, IParseContext context, ref string rollback)
+ public override XmlParserState PushChar (char c, IXmlParserContext context, ref string rollback)
{
- XClosingTag ct = context.Nodes.Peek () as XClosingTag;
+ var ct = context.Nodes.Peek () as XClosingTag;
if (ct == null) {
Debug.Assert (context.CurrentStateLength == 1,
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XmlCommentState.cs b/main/src/addins/Xml/Parser/XmlCommentState.cs
index fee3a8f3a0..c4ff6fb2e7 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XmlCommentState.cs
+++ b/main/src/addins/Xml/Parser/XmlCommentState.cs
@@ -26,19 +26,17 @@
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
-using System;
-using System.Collections.Generic;
-using System.Text;
+using MonoDevelop.Xml.Dom;
-namespace MonoDevelop.Xml.StateEngine
+namespace MonoDevelop.Xml.Parser
{
- public class XmlCommentState : State
+ public class XmlCommentState : XmlParserState
{
const int NOMATCH = 0;
const int SINGLE_DASH = 1;
const int DOUBLE_DASH = 2;
- public override State PushChar (char c, IParseContext context, ref string rollback)
+ public override XmlParserState PushChar (char c, IXmlParserContext context, ref string rollback)
{
if (context.CurrentStateLength == 1) {
context.Nodes.Push (new XComment (context.LocationMinus ("<!--".Length + 1)));
@@ -55,7 +53,7 @@ namespace MonoDevelop.Xml.StateEngine
if (c == '>') {
// if the '--' is followed by a '>', the state has ended
// so attach a node to the DOM and end the state
- XComment comment = (XComment) context.Nodes.Pop ();
+ var comment = (XComment) context.Nodes.Pop ();
if (context.BuildTree) {
comment.End (context.Location);
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XmlDocTypeState.cs b/main/src/addins/Xml/Parser/XmlDocTypeState.cs
index eda4ec27c9..fc8103e8fd 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XmlDocTypeState.cs
+++ b/main/src/addins/Xml/Parser/XmlDocTypeState.cs
@@ -27,25 +27,24 @@
//
using System;
-using System.Collections.Generic;
-using System.Text;
using ICSharpCode.NRefactory.TypeSystem;
using ICSharpCode.NRefactory;
+using MonoDevelop.Xml.Dom;
-namespace MonoDevelop.Xml.StateEngine
+namespace MonoDevelop.Xml.Parser
{
- public class XmlDocTypeState : State
+ public class XmlDocTypeState : XmlParserState
{
- XmlNameState nameState = new XmlNameState ();
+ readonly XmlNameState nameState = new XmlNameState ();
public XmlDocTypeState ()
{
Adopt (nameState);
}
- public override State PushChar (char c, IParseContext context, ref string rollback)
+ public override XmlParserState PushChar (char c, IXmlParserContext context, ref string rollback)
{
- XDocType doc = context.Nodes.Peek () as XDocType;
+ var doc = context.Nodes.Peek () as XDocType;
if (doc == null) {
doc = new XDocType (context.LocationMinus ("<!DOCTYPE".Length + 1));
context.Nodes.Push (doc);
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XmlNameState.cs b/main/src/addins/Xml/Parser/XmlNameState.cs
index 04891fd217..5833c54d98 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XmlNameState.cs
+++ b/main/src/addins/Xml/Parser/XmlNameState.cs
@@ -27,19 +27,17 @@
//
using System;
-using System.Text;
using System.Diagnostics;
+using MonoDevelop.Xml.Dom;
-namespace MonoDevelop.Xml.StateEngine
+namespace MonoDevelop.Xml.Parser
{
-
-
- public class XmlNameState : State
+ public class XmlNameState : XmlParserState
{
- public override State PushChar (char c, IParseContext context, ref string rollback)
+ public override XmlParserState PushChar (char c, IXmlParserContext context, ref string rollback)
{
- INamedXObject namedObject = context.Nodes.Peek () as INamedXObject;
+ var namedObject = context.Nodes.Peek () as INamedXObject;
if (namedObject == null || namedObject.Name.Prefix != null)
throw new InvalidOperationException ("Invalid state");
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/Parser.cs b/main/src/addins/Xml/Parser/XmlParser.cs
index 973040371e..de40145786 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/Parser.cs
+++ b/main/src/addins/Xml/Parser/XmlParser.cs
@@ -30,17 +30,18 @@ using System;
using System.Collections.Generic;
using System.Text;
-using MonoDevelop.Ide.Gui.Content;
+using ICSharpCode.NRefactory;
using ICSharpCode.NRefactory.TypeSystem;
-using ICSharpCode.NRefactory;
+using MonoDevelop.Ide.Gui.Content;
+using MonoDevelop.Xml.Dom;
-namespace MonoDevelop.Xml.StateEngine
+namespace MonoDevelop.Xml.Parser
{
- public class Parser : IDocumentStateEngine, IParseContext
+ public class XmlParser : IDocumentStateEngine, IXmlParserContext
{
- RootState rootState;
- State currentState;
- State previousState;
+ XmlRootState rootState;
+ XmlParserState currentState;
+ XmlParserState previousState;
bool buildTree;
int position;
@@ -52,7 +53,7 @@ namespace MonoDevelop.Xml.StateEngine
NodeStack nodes;
List<Error> errors;
- public Parser (RootState rootState, bool buildTree)
+ public XmlParser (XmlRootState rootState, bool buildTree)
{
this.rootState = rootState;
this.currentState = rootState;
@@ -61,7 +62,7 @@ namespace MonoDevelop.Xml.StateEngine
Reset ();
}
- Parser (Parser copyFrom)
+ XmlParser (XmlParser copyFrom)
{
buildTree = false;
@@ -77,7 +78,7 @@ namespace MonoDevelop.Xml.StateEngine
currentStateLength = copyFrom.currentStateLength;
//clone the node stack
- List<XObject> l = new List<XObject> (CopyXObjects (copyFrom.nodes));
+ var l = new List<XObject> (CopyXObjects (copyFrom.nodes));
l.Reverse ();
nodes = new NodeStack (l);
}
@@ -88,7 +89,7 @@ namespace MonoDevelop.Xml.StateEngine
yield return o.ShallowCopy ();
}
- public RootState RootState { get { return rootState; } }
+ public XmlRootState RootState { get { return rootState; } }
#region IDocumentStateEngine
@@ -141,7 +142,7 @@ namespace MonoDevelop.Xml.StateEngine
string rollback = null;
if (currentState == null)
return;
- State nextState = currentState.PushChar (c, this, ref rollback);
+ XmlParserState nextState = currentState.PushChar (c, this, ref rollback);
// no state change
if (nextState == currentState || nextState == null)
@@ -193,21 +194,21 @@ namespace MonoDevelop.Xml.StateEngine
{
if (buildTree)
throw new InvalidOperationException ("Parser can only be cloned when in stack mode");
- return new Parser (this);
+ return new XmlParser (this);
}
#endregion
- public Parser GetTreeParser ()
+ public XmlParser GetTreeParser ()
{
if (buildTree)
throw new InvalidOperationException ("Parser can only be cloned when in stack mode");
- Parser p = new Parser (this);
+ XmlParser p = new XmlParser (this);
p.buildTree = true;
//reconnect the node tree
- ((IParseContext)p).ConnectAll ();
+ ((IXmlParserContext)p).ConnectAll ();
p.errors = new List<Error> ();
@@ -233,7 +234,7 @@ namespace MonoDevelop.Xml.StateEngine
builder.Append (' ', 2);
builder.AppendLine ("States=");
- State s = currentState;
+ XmlParserState s = currentState;
while (s != null) {
builder.Append (' ', 4);
builder.Append (s.ToString ());
@@ -263,12 +264,12 @@ namespace MonoDevelop.Xml.StateEngine
#region IParseContext
- int IParseContext.StateTag {
+ int IXmlParserContext.StateTag {
get { return stateTag; }
set { stateTag = value; }
}
- TextLocation IParseContext.LocationMinus (int colOffset)
+ TextLocation IXmlParserContext.LocationMinus (int colOffset)
{
int col = Location.Column - colOffset;
int line = Location.Line;
@@ -281,11 +282,11 @@ namespace MonoDevelop.Xml.StateEngine
return new TextLocation (line, col);
}
- StringBuilder IParseContext.KeywordBuilder {
+ StringBuilder IXmlParserContext.KeywordBuilder {
get { return keywordBuilder; }
}
- State IParseContext.PreviousState {
+ XmlParserState IXmlParserContext.PreviousState {
get { return previousState; }
}
@@ -294,37 +295,37 @@ namespace MonoDevelop.Xml.StateEngine
public bool BuildTree { get { return buildTree; } }
- void IParseContext.LogError (string message)
+ void IXmlParserContext.LogError (string message)
{
if (errors != null || ErrorLogged != null)
InternalLogError (new Error (ErrorType.Error, message, Location));
}
- void IParseContext.LogWarning (string message)
+ void IXmlParserContext.LogWarning (string message)
{
if (errors != null || ErrorLogged != null)
- InternalLogError (new Error (ErrorType.Warning, message, ((IParseContext)this).LocationMinus (1)));
+ InternalLogError (new Error (ErrorType.Warning, message, ((IXmlParserContext)this).LocationMinus (1)));
}
- void IParseContext.LogError (string message, TextLocation location)
+ void IXmlParserContext.LogError (string message, TextLocation location)
{
if (errors != null || ErrorLogged != null)
- InternalLogError (new Error (ErrorType.Error, message, ((IParseContext)this).LocationMinus (1)));
+ InternalLogError (new Error (ErrorType.Error, message, ((IXmlParserContext)this).LocationMinus (1)));
}
- void IParseContext.LogWarning (string message, TextLocation location)
+ void IXmlParserContext.LogWarning (string message, TextLocation location)
{
if (errors != null || ErrorLogged != null)
InternalLogError (new Error (ErrorType.Warning, message, location));
}
- void IParseContext.LogError (string message, DomRegion region)
+ void IXmlParserContext.LogError (string message, DomRegion region)
{
if (errors != null || ErrorLogged != null)
InternalLogError (new Error (ErrorType.Error, message, region));
}
- void IParseContext.LogWarning (string message, DomRegion region)
+ void IXmlParserContext.LogWarning (string message, DomRegion region)
{
if (errors != null || ErrorLogged != null)
InternalLogError (new Error (ErrorType.Warning, message, region));
@@ -338,7 +339,7 @@ namespace MonoDevelop.Xml.StateEngine
ErrorLogged (err);
}
- void IParseContext.ConnectAll ()
+ void IXmlParserContext.ConnectAll ()
{
XNode prev = null;
foreach (XObject o in Nodes) {
@@ -351,7 +352,7 @@ namespace MonoDevelop.Xml.StateEngine
}
}
- void IParseContext.EndAll (bool pop)
+ void IXmlParserContext.EndAll (bool pop)
{
int popCount = 0;
foreach (XObject ob in Nodes) {
@@ -369,21 +370,21 @@ namespace MonoDevelop.Xml.StateEngine
#endregion
- public State CurrentState { get { return currentState; } }
+ public XmlParserState CurrentState { get { return currentState; } }
public IList<Error> Errors { get { return errors; } }
public event Action<Error> ErrorLogged;
}
- public interface IParseContext
+ public interface IXmlParserContext
{
int StateTag { get; set; }
StringBuilder KeywordBuilder { get; }
int CurrentStateLength { get; }
TextLocation Location { get; }
TextLocation LocationMinus (int colOffset);
- State PreviousState { get; }
+ XmlParserState PreviousState { get; }
NodeStack Nodes { get; }
bool BuildTree { get; }
void LogError (string message);
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/State.cs b/main/src/addins/Xml/Parser/XmlParserState.cs
index c0edcfdc0a..742802ef74 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/State.cs
+++ b/main/src/addins/Xml/Parser/XmlParserState.cs
@@ -26,48 +26,42 @@
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
-using System;
-using System.Diagnostics;
-using System.Collections.Generic;
-using System.Text;
+using System.Diagnostics;
-namespace MonoDevelop.Xml.StateEngine
+namespace MonoDevelop.Xml.Parser
{
- public abstract class State
+ public abstract class XmlParserState
{
- State parent;
+ XmlParserState parent;
/// <summary>
/// When the <see cref="Parser"/> advances by one character, it calls this method
- /// on the currently active <see cref="State"/> to determine the next state.
+ /// on the currently active <see cref="XmlParserState"/> to determine the next state.
/// </summary>
/// <param name="c">The current character.</param>
+ /// <param name = "context">The parser context.</param>
/// <param name="rollback"> If set non-null, the parser will be rolled back that number
/// of characters (empty string means replay current char to the next state.
/// Note that this will not change the DOM state.</param>
/// <returns>
- /// The next state. A new or parent <see cref="State"/> will change the parser state;
+ /// The next state. A new or parent <see cref="XmlParserState"/> will change the parser state;
/// the current state or null will not.
/// </returns>
- public abstract State PushChar (char c, IParseContext context, ref string rollback);
+ public abstract XmlParserState PushChar (char c, IXmlParserContext context, ref string rollback);
- public State Parent { get { return parent; } }
+ public XmlParserState Parent { get { return parent; } }
- protected void Adopt (State child)
+ protected void Adopt (XmlParserState child)
{
Debug.Assert (child.parent == null);
child.parent = this;
}
- public RootState RootState {
+ public XmlRootState RootState {
get {
- return (this as RootState) ?? parent.RootState;
+ return (this as XmlRootState) ?? parent.RootState;
}
}
}
- public abstract class RootState : State
- {
- public abstract XDocument CreateDocument ();
- }
}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XmlProcessingInstructionState.cs b/main/src/addins/Xml/Parser/XmlProcessingInstructionState.cs
index e6fb76fae2..cf440b16bb 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XmlProcessingInstructionState.cs
+++ b/main/src/addins/Xml/Parser/XmlProcessingInstructionState.cs
@@ -26,18 +26,16 @@
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
-using System;
+using MonoDevelop.Xml.Dom;
-namespace MonoDevelop.Xml.StateEngine
+namespace MonoDevelop.Xml.Parser
{
-
-
- public class XmlProcessingInstructionState : State
+ public class XmlProcessingInstructionState : XmlParserState
{
const int NOMATCH = 0;
const int QUESTION = 1;
- public override State PushChar (char c, IParseContext context, ref string rollback)
+ public override XmlParserState PushChar (char c, IXmlParserContext context, ref string rollback)
{
if (context.CurrentStateLength == 1) {
context.Nodes.Push (new XProcessingInstruction (context.LocationMinus ("<?".Length)));
@@ -51,7 +49,7 @@ namespace MonoDevelop.Xml.StateEngine
} else if (c == '>' && context.StateTag == QUESTION) {
// if the '?' is followed by a '>', the state has ended
// so attach a node to the DOM and end the state
- XProcessingInstruction xpi = (XProcessingInstruction) context.Nodes.Pop ();
+ var xpi = (XProcessingInstruction) context.Nodes.Pop ();
if (context.BuildTree) {
xpi.End (context.Location);
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XmlFreeState.cs b/main/src/addins/Xml/Parser/XmlRootState.cs
index c2de498872..d77d7e787b 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XmlFreeState.cs
+++ b/main/src/addins/Xml/Parser/XmlRootState.cs
@@ -26,14 +26,12 @@
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
-using System;
-using System.Collections.Generic;
-using System.Text;
-using ICSharpCode.NRefactory.TypeSystem;
+using ICSharpCode.NRefactory.TypeSystem;
+using MonoDevelop.Xml.Dom;
-namespace MonoDevelop.Xml.StateEngine
+namespace MonoDevelop.Xml.Parser
{
- public class XmlFreeState : RootState
+ public class XmlRootState : XmlParserState
{
protected const int FREE = 0;
protected const int BRACKET = FREE + 1;
@@ -50,13 +48,13 @@ namespace MonoDevelop.Xml.StateEngine
XmlDocTypeState docTypeState;
XmlProcessingInstructionState processingInstructionState;
- public XmlFreeState () : this (new XmlTagState (), new XmlClosingTagState ()) {}
+ public XmlRootState () : this (new XmlTagState (), new XmlClosingTagState ()) {}
- public XmlFreeState (XmlTagState tagState, XmlClosingTagState closingTagState)
+ public XmlRootState (XmlTagState tagState, XmlClosingTagState closingTagState)
: this (tagState, closingTagState, new XmlCommentState (), new XmlCDataState (),
new XmlDocTypeState (), new XmlProcessingInstructionState ()) {}
- public XmlFreeState (
+ public XmlRootState (
XmlTagState tagState,
XmlClosingTagState closingTagState,
XmlCommentState commentState,
@@ -103,7 +101,7 @@ namespace MonoDevelop.Xml.StateEngine
get { return processingInstructionState; }
}
- public override State PushChar (char c, IParseContext context, ref string rollback)
+ public override XmlParserState PushChar (char c, IXmlParserContext context, ref string rollback)
{
if (c == '<') {
if (context.StateTag != FREE)
@@ -159,11 +157,9 @@ namespace MonoDevelop.Xml.StateEngine
context.KeywordBuilder.Append (c);
if (context.KeywordBuilder.Length < cdataStr.Length)
return null;
- else
- return CDataState;
- } else {
- context.KeywordBuilder.Length = 0;
+ return CDataState;
}
+ context.KeywordBuilder.Length = 0;
break;
case DOCTYPE:
@@ -172,8 +168,7 @@ namespace MonoDevelop.Xml.StateEngine
context.KeywordBuilder.Append (c);
if (context.KeywordBuilder.Length < docTypeStr.Length)
return null;
- else
- return DocTypeState;
+ return DocTypeState;
} else {
context.KeywordBuilder.Length = 0;
}
@@ -189,7 +184,7 @@ namespace MonoDevelop.Xml.StateEngine
return null;
}
- static int LengthFromOpenBracket (IParseContext context)
+ static int LengthFromOpenBracket (IXmlParserContext context)
{
switch (context.StateTag) {
case BRACKET:
@@ -206,7 +201,7 @@ namespace MonoDevelop.Xml.StateEngine
}
}
- public override XDocument CreateDocument ()
+ public virtual XDocument CreateDocument ()
{
return new XDocument ();
}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XmlTagState.cs b/main/src/addins/Xml/Parser/XmlTagState.cs
index 642766916d..a3c4b27fdb 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.Xml.StateEngine/XmlTagState.cs
+++ b/main/src/addins/Xml/Parser/XmlTagState.cs
@@ -28,13 +28,14 @@
using System;
using System.Diagnostics;
-using ICSharpCode.NRefactory;
+using ICSharpCode.NRefactory;
+using MonoDevelop.Xml.Dom;
-namespace MonoDevelop.Xml.StateEngine
+namespace MonoDevelop.Xml.Parser
{
- public class XmlTagState : State
+ public class XmlTagState : XmlParserState
{
const int ATTEMPT_RECOVERY = 1;
const int RECOVERY_FOUND_WHITESPACE = 2;
@@ -58,7 +59,7 @@ namespace MonoDevelop.Xml.StateEngine
Adopt (this.NameState);
}
- public override State PushChar (char c, IParseContext context, ref string rollback)
+ public override XmlParserState PushChar (char c, IXmlParserContext context, ref string rollback)
{
XElement element = context.Nodes.Peek () as XElement;
@@ -141,7 +142,7 @@ namespace MonoDevelop.Xml.StateEngine
return null;
}
- protected virtual void Close (XElement element, IParseContext context, TextLocation location)
+ protected virtual void Close (XElement element, IXmlParserContext context, TextLocation location)
{
//have already checked that element is not null, i.e. top of stack is our element
if (element.IsClosed)
diff --git a/main/src/addins/MonoDevelop.XmlEditor/AddinInfo.cs b/main/src/addins/Xml/Properties/AddinInfo.cs
index eb38989c4c..1878cdf5ab 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/AddinInfo.cs
+++ b/main/src/addins/Xml/Properties/AddinInfo.cs
@@ -1,9 +1,6 @@
-
-using System;
using Mono.Addins;
-using Mono.Addins.Description;
-[assembly:Addin ("XmlEditor",
+[assembly:Addin ("Xml",
Namespace = "MonoDevelop",
Version = MonoDevelop.BuildInfo.Version,
Category = "IDE extensions")]
diff --git a/main/src/addins/MonoDevelop.XmlEditor/AssemblyInfo.cs b/main/src/addins/Xml/Properties/AssemblyInfo.cs
index f6d69570a1..f6d69570a1 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/AssemblyInfo.cs
+++ b/main/src/addins/Xml/Properties/AssemblyInfo.cs
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.addin.xml b/main/src/addins/Xml/Properties/MonoDevelop.XmlEditor.addin.xml
index 73e7d2ba05..0a12f87d2c 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.addin.xml
+++ b/main/src/addins/Xml/Properties/MonoDevelop.XmlEditor.addin.xml
@@ -1,7 +1,6 @@
<ExtensionModel>
<Runtime>
- <Import assembly="MonoDevelop.XmlEditor.dll" />
<Import file="schemas/appconfig.xsd" />
<Import file="schemas/MonoDevelopAddIn.xsd" />
<Import file="schemas/readme.txt" />
@@ -12,16 +11,16 @@
<Import file="schemas/nant.xsd" />
</Runtime>
- <ExtensionPoint path = "/MonoDevelop/XmlEditor/XmlFileAssociations">
- <ExtensionNode name = "Association" type = "MonoDevelop.XmlEditor.XmlFileAssociationNode"/>
+ <ExtensionPoint path = "/MonoDevelop/Xml/Editor/XmlFileAssociations">
+ <ExtensionNode name = "Association" type = "MonoDevelop.Xml.Editor.XmlFileAssociationNode"/>
</ExtensionPoint>
- <ExtensionPoint path = "/MonoDevelop/XmlEditor/XmlSchemas">
- <ExtensionNode name = "Schema" type = "MonoDevelop.XmlEditor.XmlSchemaNode" />
+ <ExtensionPoint path = "/MonoDevelop/Xml/Editor/XmlSchemas">
+ <ExtensionNode name = "Schema" type = "MonoDevelop.Xml.Editor.XmlSchemaNode" />
</ExtensionPoint>
<!-- Additional file extensions that will be opened in the XML editor -->
- <Extension path = "/MonoDevelop/XmlEditor/XmlFileAssociations">
+ <Extension path = "/MonoDevelop/Xml/Editor/XmlFileAssociations">
<Association extension = ".build" namespaceUri="http://nant.sf.net/release/0.85-rc3/nant.xsd" />
<Association extension = ".config" namespaceUri="urn:app-config" />
<Association extension = ".xsd" namespaceUri="http://www.w3.org/2001/XMLSchema" namespacePrefix="xs" />
@@ -30,7 +29,7 @@
<Association extension = ".stetic" />
</Extension>
- <Extension path = "/MonoDevelop/XmlEditor/XmlSchemas">
+ <Extension path = "/MonoDevelop/Xml/Editor/XmlSchemas">
<Schema file="schemas/appconfig.xsd" />
<Schema file="schemas/MonoDevelopAddIn.xsd" />
<Schema file="schemas/XMLSchema.xsd" />
@@ -40,38 +39,30 @@
</Extension>
<Extension path = "/MonoDevelop/Ide/TextEditorExtensions">
- <Class id="MSBuildTextEditorExtension" mimeTypes="application/x-msbuild" class = "MonoDevelop.XmlEditor.MSBuild.MSBuildTextEditorExtension" />
- <Class id="MonoDevelop.XmlEditor.XmlTextEditorExtension" class = "MonoDevelop.XmlEditor.XmlTextEditorExtension" />
+ <Class id="MSBuildTextEditorExtension" mimeTypes="application/x-msbuild" class = "MonoDevelop.Xml.MSBuild.MSBuildTextEditorExtension" />
+ <Class id="XmlTextEditorExtension" class = "MonoDevelop.Xml.Editor.XmlTextEditorExtension" />
</Extension>
<!-- Commands -->
<Extension path = "/MonoDevelop/Ide/Commands">
- <Category _name = "XmlEditor" id="XmlEditor">
- <Command id = "MonoDevelop.XmlEditor.Commands.CreateSchema"
+ <Category _name = "Xml Editor" id="XmlEditor">
+ <Command id = "MonoDevelop.Xml.Editor.XmlCommands.CreateSchema"
_label = "Create _Schema"
description = "Creates a schema from XML"/>
- <Command id = "MonoDevelop.XmlEditor.Commands.Validate"
+ <Command id = "MonoDevelop.Xml.Editor.XmlCommands.Validate"
_label = "_Validate"
- description = "Validates the XML against a schema"/><!--
- <Command id = "MonoDevelop.XmlEditor.Commands.OpenXPathQueryPad"
- defaultHandler = "MonoDevelop.XmlEditor.OpenXPathQueryPadCommand"
- _label = "_XPath Query..."
- description = "Opens XPath Query window"/>
- <Command id = "MonoDevelop.XmlEditor.Commands.RemoveXPathHighlighting"
- defaultHandler = "MonoDevelop.XmlEditor.RemoveXPathHighlightingCommand"
- _label = "Remove XPath _Highlighting"
- description = "Removes the highlighted XPath matches."/>-->
- <Command id = "MonoDevelop.XmlEditor.Commands.AssignStylesheet"
+ description = "Validates the XML against a schema"/>
+ <Command id = "MonoDevelop.Xml.Editor.XmlCommands.AssignStylesheet"
_label = "_Assign XSLT..."
description = "Assigns a stylesheet to the current xml document"/>
- <Command id = "MonoDevelop.XmlEditor.Commands.OpenStylesheet"
+ <Command id = "MonoDevelop.Xml.Editor.XmlCommands.OpenStylesheet"
_label = "_Open XSLT"
description = "Opens the assigned stylesheet"/>
- <Command id = "MonoDevelop.XmlEditor.Commands.RunXslTransform"
+ <Command id = "MonoDevelop.Xml.Editor.XmlCommands.RunXslTransform"
_label = "Run XSL_T"
shortcut = "Alt|Control|T"
description = "Runs an XSL transform"/>
- <Command id = "MonoDevelop.XmlEditor.Commands.GoToSchemaDefinition"
+ <Command id = "MonoDevelop.Xml.Editor.XmlCommands.GoToSchemaDefinition"
_label = "_Go to Schema Definition"
description = "Jumps to the schema definition"/>
</Category>
@@ -80,46 +71,26 @@
<!-- XML menu -->
<Extension path = "/MonoDevelop/Ide/MainMenu/Tools">
<ItemSet id = "XmlMenu" insertafter = "AddinManagerSeparator" _label = "_XML" >
- <CommandItem id = "MonoDevelop.XmlEditor.Commands.CreateSchema" />
- <CommandItem id = "MonoDevelop.XmlEditor.Commands.GoToSchemaDefinition" />
- <CommandItem id = "MonoDevelop.XmlEditor.Commands.Validate" /><!--
- <SeparatorItem id = "XPathCommandsSeparator"/>
- <CommandItem id = "MonoDevelop.XmlEditor.Commands.OpenXPathQueryPad" />
- <CommandItem id = "MonoDevelop.XmlEditor.Commands.RemoveXPathHighlighting" />
- <SeparatorItem id = "StylesheetCommandsSeparator"/>-->
- <CommandItem id = "MonoDevelop.XmlEditor.Commands.AssignStylesheet"/>
- <CommandItem id = "MonoDevelop.XmlEditor.Commands.OpenStylesheet"/>
- <CommandItem id = "MonoDevelop.XmlEditor.Commands.RunXslTransform"/>
+ <CommandItem id = "MonoDevelop.Xml.Editor.XmlCommands.CreateSchema" />
+ <CommandItem id = "MonoDevelop.Xml.Editor.XmlCommands.GoToSchemaDefinition" />
+ <CommandItem id = "MonoDevelop.Xml.Editor.XmlCommands.Validate" />
+ <CommandItem id = "MonoDevelop.Xml.Editor.XmlCommands.AssignStylesheet"/>
+ <CommandItem id = "MonoDevelop.Xml.Editor.XmlCommands.OpenStylesheet"/>
+ <CommandItem id = "MonoDevelop.Xml.Editor.XmlCommands.RunXslTransform"/>
<SeparatorItem/>
</ItemSet>
</Extension>
<Extension path = "/MonoDevelop/Ide/GlobalOptionsDialog/TextEditor/Behavior">
- <Section id="XmlFormattingOptions" insertbefore="Formatting" _label="XML" fill="true" class="MonoDevelop.XmlEditor.Gui.XmlEditorOptionsPanel" icon="md-prefs-xml" />
+ <Section id="XmlFormattingOptions" insertbefore="Formatting" _label="XML" fill="true" class="MonoDevelop.Xml.Editor.XmlEditorOptionsPanel" icon="md-prefs-xml" />
</Extension>
<Extension path = "/MonoDevelop/Ide/GlobalOptionsDialog/TextEditor">
- <Section id="XmlSchemas" _label="XML Schemas" fill="true" class="MonoDevelop.XmlEditor.Gui.XmlSchemasPanel" icon="md-prefs-xml-schemas" />
+ <Section id="XmlSchemas" _label="XML Schemas" fill="true" class="MonoDevelop.Xml.Editor.XmlSchemasPanel" icon="md-prefs-xml-schemas" />
</Extension>
- <!-- XPath Query pad -->
- <!-- Bug in the DockFrame (gitem is null but code calls SetVisible
- when visible is false) prevents us from using setting the XPathQueryPad
- to be a pad
- <Extension path = "/MonoDevelop/Ide/Pads">
- <Pad id = "MonoDevelop.XmlEditor.XPathQueryPad"
- class = "MonoDevelop.XmlEditor.XPathQueryPad"
- defaultPlacement = "Bottom"
- _label = "XPath Query"/>
- </Extension>-->
-
- <!-- Put the XPath Query pad in the View menu -->
- <!--<Extension path = "/SharpDevelop/Workbench/Contexts/Edit">
- <ContextPad id = "MonoDevelop.XmlEditor.XPathQueryPad"/>
- </Extension>-->
-
<Extension path = "/MonoDevelop/TypeSystem/Parser">
- <Parser class = "MonoDevelop.XmlEditor.MSBuild.MSBuildDocumentParser" mimeType = "application/x-msbuild" id = "XmlParser"/>
- <Parser class = "MonoDevelop.XmlEditor.XmlDocumentParser" mimeType = "application/xml" id = "XmlParser"/>
+ <Parser class = "MonoDevelop.Xml.MSBuild.MSBuildDocumentParser" mimeType = "application/x-msbuild" id = "XmlParser"/>
+ <Parser class = "MonoDevelop.Xml.Editor.XmlDocumentParser" mimeType = "application/xml" id = "XmlParser"/>
</Extension>
<Extension path = "/MonoDevelop/Ide/CodeFormatters">
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/CompletionData/XmlCompletionDataImageTestFixture.cs b/main/src/addins/Xml/Tests/CompletionData/XmlCompletionDataImageTestFixture.cs
index fd43f3251c..4af206082f 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/CompletionData/XmlCompletionDataImageTestFixture.cs
+++ b/main/src/addins/Xml/Tests/CompletionData/XmlCompletionDataImageTestFixture.cs
@@ -1,7 +1,7 @@
-using MonoDevelop.XmlEditor.Completion;
+using MonoDevelop.Xml.Completion;
using NUnit.Framework;
-namespace MonoDevelop.XmlEditor.Tests.CompletionData
+namespace MonoDevelop.Xml.Tests.CompletionData
{
[TestFixture]
public class XmlCompletionDataIconTestFixture
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/CompletionData/XmlCompletionDataStringTestFixture.cs b/main/src/addins/Xml/Tests/CompletionData/XmlCompletionDataStringTestFixture.cs
index d674e7481a..83787fa469 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/CompletionData/XmlCompletionDataStringTestFixture.cs
+++ b/main/src/addins/Xml/Tests/CompletionData/XmlCompletionDataStringTestFixture.cs
@@ -1,7 +1,7 @@
-using MonoDevelop.XmlEditor.Completion;
+using MonoDevelop.Xml.Completion;
using NUnit.Framework;
-namespace MonoDevelop.XmlEditor.Tests.CompletionData
+namespace MonoDevelop.Xml.Tests.CompletionData
{
[TestFixture]
public class XmlCompletionDataStringTestFixture
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/MonoDevelop.XmlEditor.Tests.csproj b/main/src/addins/Xml/Tests/MonoDevelop.Xml.Tests.csproj
index c6d42cf208..b49673fdf0 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/MonoDevelop.XmlEditor.Tests.csproj
+++ b/main/src/addins/Xml/Tests/MonoDevelop.Xml.Tests.csproj
@@ -7,8 +7,8 @@
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{8E47B77A-A649-494C-9BF2-B845E39CADE9}</ProjectGuid>
<OutputType>Library</OutputType>
- <AssemblyName>MonoDevelop.XmlEditor.Tests</AssemblyName>
- <RootNamespace>MonoDevelop.XmlEditor.Tests</RootNamespace>
+ <AssemblyName>MonoDevelop.Xml.Tests</AssemblyName>
+ <RootNamespace>MonoDevelop.Xml.Tests</RootNamespace>
<TestRunnerCommand>..\..\..\..\build\bin\mdtool.exe</TestRunnerCommand>
<TestRunnerArgs>run-md-tests</TestRunnerArgs>
</PropertyGroup>
@@ -40,11 +40,6 @@
<NoWarn>1591;1573</NoWarn>
</PropertyGroup>
<ItemGroup>
- <ProjectReference Include="..\MonoDevelop.XmlEditor.csproj">
- <Project>{86DFC74A-B0B6-4C73-9E05-9098DA8FA5F1}</Project>
- <Name>MonoDevelop.XmlEditor</Name>
- <Private>False</Private>
- </ProjectReference>
<ProjectReference Include="..\..\..\core\MonoDevelop.Core\MonoDevelop.Core.csproj">
<Project>{7525BB88-6142-4A26-93B9-A30C6983390A}</Project>
<Name>MonoDevelop.Core</Name>
@@ -63,13 +58,17 @@
<Project>{E13A0A7B-4DE6-43ED-A139-41052D065A9B}</Project>
<Name>GuiUnit_NET_4_0</Name>
</ProjectReference>
+ <ProjectReference Include="..\MonoDevelop.Xml.csproj">
+ <Project>{86DFC74A-B0B6-4C73-9E05-9098DA8FA5F1}</Project>
+ <Name>MonoDevelop.Xml</Name>
+ <Private>False</Private>
+ </ProjectReference>
</ItemGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
- <Compile Include="AssemblyInfo.cs" />
<Compile Include="Parser\ActiveElementStartPathTestFixture.cs" />
<Compile Include="Parser\AttributeNameTestFixture.cs" />
<Compile Include="Parser\NamespaceDeclarationTestFixture.cs" />
@@ -108,9 +107,6 @@
<Compile Include="Schema\TwoElementSchemaTestFixture.cs" />
<Compile Include="Schema\XhtmlStrictSchemaTestFixture.cs" />
<Compile Include="Schema\XsdSchemaTestFixture.cs" />
- <Compile Include="Schema.Includes\AttributeGroupRefSchemaIncludeTestFixture.cs" />
- <Compile Include="Schema.Includes\TwoElementSchemaIncludeTestFixture.cs" />
- <Compile Include="Schema.Uri\GetUriTestFixture.cs" />
<Compile Include="Utils\ResourceManager.cs" />
<Compile Include="Utils\SchemaIncludeTestFixtureHelper.cs" />
<Compile Include="CompletionData\XmlCompletionDataImageTestFixture.cs" />
@@ -118,40 +114,24 @@
<Compile Include="Schema\MissingSchemaElementTestFixture.cs" />
<Compile Include="Schema\AllElementTestFixture.cs" />
<Compile Include="Parser\InsideAttributeValueTestFixture.cs" />
- <Compile Include="XPathQuery\XmlNamespaceTests.cs" />
- <Compile Include="XPathQuery\XmlNamespaceToStringTests.cs" />
- <Compile Include="XPathQuery\RunXPathQueryTests.cs" />
- <Compile Include="XPathQuery\XPathHistoryListTests.cs" />
- <Compile Include="XPathQuery\XPathNamespaceListTests.cs" />
<Compile Include="Schema\XmlSchemaNamespaceTests.cs" />
<Compile Include="Schema\FindAttributeFromComplexTypeTestFixture.cs" />
- <Compile Include="Schema\GetSchemaFromFileNameTestFixture.cs" />
- <Compile Include="FindSchemaObject\AttributeGroupReferenceSelectedTestFixture.cs" />
- <Compile Include="FindSchemaObject\AttributeReferenceSelectedTestFixture.cs" />
- <Compile Include="FindSchemaObject\AttributeSelectedTestFixture.cs" />
- <Compile Include="FindSchemaObject\AttributeTypeSelectedTestFixture.cs" />
- <Compile Include="FindSchemaObject\ElementReferenceSelectedTestFixture.cs" />
- <Compile Include="FindSchemaObject\ElementReferenceWithPrefixSelectedTestFixture.cs" />
- <Compile Include="FindSchemaObject\ElementSelectedTestFixture.cs" />
- <Compile Include="FindSchemaObject\ElementTypeSelectedTestFixture.cs" />
- <Compile Include="FindSchemaObject\ElementTypeWithPrefixSelectedTestFixture.cs" />
- <Compile Include="FindSchemaObject\GroupReferenceSelectedTestFixture.cs" />
<Compile Include="Parser\ActiveElementUnderCursorTests.cs" />
<Compile Include="Parser\AttributeNameUnderCursorTests.cs" />
<Compile Include="Parser\AttributeValueUnderCursorTests.cs" />
- <Compile Include="MimeTypeHandledTests.cs" />
<Compile Include="Schema\SchemaAssociationTests.cs" />
+ <Compile Include="Parser\TestXmlParser.cs" />
+ <Compile Include="Parser\ParsingTests.cs" />
+ <Compile Include="Schema\Uri\GetUriTestFixture.cs" />
+ <Compile Include="Schema\Includes\AttributeGroupRefSchemaIncludeTestFixture.cs" />
+ <Compile Include="Schema\Includes\TwoElementSchemaIncludeTestFixture.cs" />
</ItemGroup>
<ItemGroup>
<Folder Include="Parser\" />
<Folder Include="Paths\" />
<Folder Include="Schema\" />
- <Folder Include="Schema.Includes\" />
- <Folder Include="Schema.Uri\" />
<Folder Include="Utils\" />
<Folder Include="CompletionData\" />
- <Folder Include="XPathQuery\" />
- <Folder Include="FindSchemaObject\" />
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="Resources\xhtml1-strict-modified.xsd">
@@ -162,4 +142,13 @@
</EmbeddedResource>
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
+ <ProjectExtensions>
+ <MonoDevelop>
+ <Properties>
+ <Policies>
+ <DotNetNamingPolicy DirectoryNamespaceAssociation="PrefixedHierarchical" ResourceNamePolicy="FileName" />
+ </Policies>
+ </Properties>
+ </MonoDevelop>
+ </ProjectExtensions>
</Project>
diff --git a/main/src/addins/Xml/Tests/Parser/ActiveElementStartPathTestFixture.cs b/main/src/addins/Xml/Tests/Parser/ActiveElementStartPathTestFixture.cs
new file mode 100644
index 0000000000..9a9b299c5b
--- /dev/null
+++ b/main/src/addins/Xml/Tests/Parser/ActiveElementStartPathTestFixture.cs
@@ -0,0 +1,95 @@
+using System;
+using MonoDevelop.Xml.Completion;
+using MonoDevelop.Xml.Parser;
+using NUnit.Framework;
+
+namespace MonoDevelop.Xml.Tests.Parser
+{
+ [TestFixture]
+ public class ActiveElementStartPathTestFixture
+ {
+ const string namespaceURI = "http://foo.com/foo.xsd";
+
+ [Test]
+ public void PathTest1()
+ {
+ AssertElementPath (
+ "<foo xmlns='" + namespaceURI + "' $",
+ new QualifiedName("foo", namespaceURI)
+ );
+ }
+
+ [Test]
+ public void PathTest2()
+ {
+ AssertElementPath (
+ "<foo xmlns='" + namespaceURI + "' ><bar $",
+ new QualifiedName("foo", namespaceURI),
+ new QualifiedName("bar", namespaceURI)
+ );
+ }
+
+ [Test]
+ public void PathTest3()
+ {
+ AssertElementPath (
+ "<f:foo xmlns:f='" + namespaceURI + "' ><f:bar $",
+ new QualifiedName ("foo", namespaceURI, "f"),
+ new QualifiedName ("bar", namespaceURI, "f")
+ );
+ }
+
+ [Test]
+ public void PathTest4()
+ {
+ AssertElementPath (
+ "<x:foo xmlns:x='" + namespaceURI + "' $",
+ new QualifiedName("foo", namespaceURI, "x")
+ );
+ }
+
+ [Test]
+ public void PathTest5()
+ {
+ AssertElementPath (
+ "<foo xmlns='" + namespaceURI + "'>\r\n<y\r\n" + "Id = 'foo' $",
+ new QualifiedName ("foo", namespaceURI),
+ new QualifiedName ("y", namespaceURI)
+ );
+ }
+
+ [Test]
+ public void PathTest6()
+ {
+ AssertElementPath (
+ "<bar xmlns='http://bar'/>\r\n<foo xmlns='" + namespaceURI + "' $",
+ new QualifiedName ("foo", namespaceURI)
+ );
+ }
+
+ /// <summary>
+ /// Tests that we get no path back if we are outside the start
+ /// tag.
+ /// </summary>
+ [Test]
+ public void OutOfStartTagPathTest1()
+ {
+ TestXmlParser.AssertState (
+ "<foo xmlns='" + namespaceURI + "'> $",
+ p => p.AssertStateIs<XmlRootState> ()
+ );
+ }
+
+ static void AssertElementPath (string text, params QualifiedName[] qualifiedNames)
+ {
+ TestXmlParser.AssertState (text, p => {
+ var arr = p.Nodes.ToArray ();
+ Array.Reverse (arr);
+ Assert.AreEqual (
+ new XmlElementPath (qualifiedNames),
+ XmlElementPath.Resolve (arr)
+ );
+ });
+ }
+ }
+}
diff --git a/main/src/addins/Xml/Tests/Parser/ActiveElementUnderCursorTests.cs b/main/src/addins/Xml/Tests/Parser/ActiveElementUnderCursorTests.cs
new file mode 100644
index 0000000000..916e2873e0
--- /dev/null
+++ b/main/src/addins/Xml/Tests/Parser/ActiveElementUnderCursorTests.cs
@@ -0,0 +1,157 @@
+using MonoDevelop.Xml.Completion;
+using NUnit.Framework;
+
+namespace MonoDevelop.Xml.Tests.Parser
+{
+ /// <summary>
+ /// Tests the XmlParser.GetActiveElementStartPathAtIndex which finds the element
+ /// path where the index is at. The index may be in the middle or start of the element
+ /// tag.
+ /// </summary>
+ [TestFixture]
+ public class ActiveElementUnderCursorTests
+ {
+ const string namespaceURI = "http://foo.com/foo.xsd";
+
+ [Test]
+ public void PathTest1()
+ {
+ TestXmlParser.AssertTree (
+ "<foo xmlns='" + namespaceURI + "'$><bar>",
+ n => TestXmlParser.AssertPath (
+ n,
+ new QualifiedName("foo", namespaceURI)
+ )
+ );
+ }
+
+ [Test]
+ public void PathTest2()
+ {
+ TestXmlParser.AssertTree (
+ "<foo xmlns='" + namespaceURI + "'><$bar>",
+ n => TestXmlParser.AssertPath (
+ n,
+ new QualifiedName("foo", namespaceURI),
+ new QualifiedName("bar", namespaceURI)
+ )
+ );
+ }
+
+ [Test]
+ public void PathTest3()
+ {
+ TestXmlParser.AssertTree (
+ "<foo xmlns='" + namespaceURI + "'><b$ar>",
+ n => TestXmlParser.AssertPath (
+ n,
+ new QualifiedName("foo", namespaceURI),
+ new QualifiedName("bar", namespaceURI)
+ )
+ );
+ }
+
+ [Test]
+ public void PathTest4()
+ {
+ TestXmlParser.AssertTree (
+ "<foo xmlns='" + namespaceURI + "'><bar$>",
+ n => TestXmlParser.AssertPath (
+ n,
+ new QualifiedName ("foo", namespaceURI),
+ new QualifiedName ("bar", namespaceURI)
+ )
+ );
+ }
+
+ [Test]
+ public void PathTest5()
+ {
+ TestXmlParser.AssertTree (
+ "<foo xmlns='" + namespaceURI + "'><bar a$='a'>",
+ n => TestXmlParser.AssertPath (
+ n,
+ new QualifiedName ("foo", namespaceURI),
+ new QualifiedName ("bar", namespaceURI)
+ )
+ );
+ }
+
+ [Test]
+ public void PathTest6()
+ {
+ TestXmlParser.AssertTree (
+ "<foo xmlns='" + namespaceURI + "'><bar a='a$'>",
+ n => TestXmlParser.AssertPath (
+ n,
+ new QualifiedName ("foo", namespaceURI),
+ new QualifiedName ("bar", namespaceURI)
+ )
+ );
+ }
+
+ [Test]
+ public void PathTest7()
+ {
+ TestXmlParser.AssertTree (
+ "<foo xmlns='" + namespaceURI + "'><bar a='a' $>",
+ n => TestXmlParser.AssertPath (
+ n,
+ new QualifiedName("foo", namespaceURI),
+ new QualifiedName("bar", namespaceURI)
+ )
+ );
+ }
+
+ [Test]
+ public void PathTest8()
+ {
+ TestXmlParser.AssertTree (
+ "<foo xmlns='" + namespaceURI + "'><bar>$",
+ n => TestXmlParser.AssertPath (
+ n,
+ new QualifiedName("foo", namespaceURI),
+ new QualifiedName("bar", namespaceURI)
+ )
+ );
+ }
+
+ [Test]
+ public void PathTest9()
+ {
+ TestXmlParser.AssertTree (
+ "<foo xmlns='" + namespaceURI + "'><bar \n\n hi='$'>",
+ n => TestXmlParser.AssertPath (
+ n,
+ new QualifiedName ("foo", namespaceURI),
+ new QualifiedName ("bar", namespaceURI)
+ )
+ );
+ }
+
+ [Test]
+ public void PathTest10()
+ {
+ TestXmlParser.AssertTree (
+ "<foo xmlns='" + namespaceURI + "'><bar $Id=\r\n</foo>",
+ n => TestXmlParser.AssertPath (
+ n,
+ new QualifiedName ("foo", namespaceURI),
+ new QualifiedName ("bar", namespaceURI)
+ )
+ );
+ }
+
+ [Test]
+ public void PathTest11()
+ {
+ TestXmlParser.AssertTree (
+ "<fo$o xmlns='" + namespaceURI + "'>",
+ n => TestXmlParser.AssertPath (
+ n,
+ new QualifiedName ("foo", namespaceURI)
+ )
+ );
+ }
+ }
+}
diff --git a/main/src/addins/Xml/Tests/Parser/AttributeNameTestFixture.cs b/main/src/addins/Xml/Tests/Parser/AttributeNameTestFixture.cs
new file mode 100644
index 0000000000..d63b3f630f
--- /dev/null
+++ b/main/src/addins/Xml/Tests/Parser/AttributeNameTestFixture.cs
@@ -0,0 +1,98 @@
+using System.Linq;
+using MonoDevelop.Xml.Dom;
+using NUnit.Framework;
+
+namespace MonoDevelop.Xml.Tests.Parser
+{
+ /// <summary>
+ /// Tests that we can detect the attribute's name.
+ /// </summary>
+ [TestFixture]
+ public class AttributeNameTestFixture
+ {
+ [Test]
+ public void SuccessTest1()
+ {
+ AssertAttributeName ("<a foo='a$", "foo");
+ }
+
+ [Test]
+ public void SuccessTest2()
+ {
+ AssertAttributeName ("<a foo='$", "foo");
+ }
+
+ [Test]
+ public void SuccessTest3()
+ {
+ AssertAttributeName ("<a foo=$", "foo");
+ }
+
+ [Test]
+ public void SuccessTest4()
+ {
+ AssertAttributeName ("<a foo=\"$", "foo");
+ }
+
+ [Test]
+ public void SuccessTest5()
+ {
+ AssertAttributeName ("<a foo = \"$", "foo");
+ }
+
+ [Test]
+ public void SuccessTest6()
+ {
+ AssertAttributeName ("<a foo = '#$", "foo");
+ }
+
+ [Test]
+ public void FailureTest1()
+ {
+ NotAttribute ("foo=$");
+ }
+
+ [Test]
+ public void FailureTest2()
+ {
+ NotAttribute ("foo=<$");
+ }
+
+ [Test]
+ public void FailureTest3()
+ {
+ NotAttribute ("a$");
+ }
+
+ [Test]
+ public void FailureTest4()
+ {
+ NotAttribute ("< a$");
+ }
+
+ [Test]
+ public void EmptyString()
+ {
+ NotAttribute ("$");
+ }
+
+ static void AssertAttributeName (string doc, string name)
+ {
+ TestXmlParser.AssertState (doc, p => {
+ var att = p.Nodes.FirstOrDefault () as XAttribute;
+ Assert.NotNull (att);
+ Assert.NotNull (att.Name);
+ Assert.IsNull (att.Name.Prefix);
+ Assert.AreEqual (att.Name.Name, name);
+ });
+ }
+
+ static void NotAttribute (string doc)
+ {
+ TestXmlParser.AssertState (doc, p => {
+ var att = p.Nodes.FirstOrDefault () as XAttribute;
+ Assert.IsNull (att);
+ });
+ }
+ }
+}
diff --git a/main/src/addins/Xml/Tests/Parser/AttributeNameUnderCursorTests.cs b/main/src/addins/Xml/Tests/Parser/AttributeNameUnderCursorTests.cs
new file mode 100644
index 0000000000..f50cf21330
--- /dev/null
+++ b/main/src/addins/Xml/Tests/Parser/AttributeNameUnderCursorTests.cs
@@ -0,0 +1,56 @@
+using System.Linq;
+using MonoDevelop.Xml.Dom;
+using MonoDevelop.Xml.Parser;
+using NUnit.Framework;
+
+namespace MonoDevelop.Xml.Tests.Parser
+{
+ [TestFixture]
+ public class AttributeNameUnderCursorTests
+ {
+ [Test]
+ public void SuccessTest1()
+ {
+ AssertAttributeName ("<a foo$", "foo");
+ }
+
+ [Test]
+ public void SuccessTest2()
+ {
+ AssertAttributeName ("<a foo=$", "foo");
+ }
+
+ [Test]
+ public void SuccessTest3()
+ {
+ AssertAttributeName ("<a foo='$", "foo");
+ }
+
+ [Test]
+ public void SuccessTest4()
+ {
+ AssertAttributeName ("<a type='a$", "type");
+ }
+
+ public void AssertAttributeName (string doc, string name)
+ {
+ TestXmlParser.AssertState (doc, p => {
+ var att = p.Nodes.First () as XAttribute;
+ Assert.NotNull (att);
+ Assert.AreEqual (name, GetName (p));
+ });
+ }
+
+ static string GetName (XmlParser parser)
+ {
+ var namedObject = parser.Nodes.First () as INamedXObject;
+ Assert.NotNull (namedObject);
+ if (namedObject.IsNamed)
+ return namedObject.Name.ToString ();
+
+ var state = parser.CurrentState as XmlNameState;
+ Assert.NotNull (state);
+ return ((IXmlParserContext)parser).KeywordBuilder.ToString ();
+ }
+ }
+}
diff --git a/main/src/addins/Xml/Tests/Parser/AttributeValueUnderCursorTests.cs b/main/src/addins/Xml/Tests/Parser/AttributeValueUnderCursorTests.cs
new file mode 100644
index 0000000000..07e6c01f41
--- /dev/null
+++ b/main/src/addins/Xml/Tests/Parser/AttributeValueUnderCursorTests.cs
@@ -0,0 +1,68 @@
+
+using System.Linq;
+using MonoDevelop.Xml.Dom;
+using MonoDevelop.Xml.Parser;
+using NUnit.Framework;
+
+namespace MonoDevelop.Xml.Tests.Parser
+{
+ [TestFixture]
+ public class AttributeValueUnderCursorTests
+ {
+ [Test]
+ public void SuccessTest1()
+ {
+ AssertAttributeValue ("<a foo='abc$'", "abc");
+ }
+
+ [Test]
+ public void SuccessTest2()
+ {
+ AssertAttributeValue ("<a foo=\"abc$\"", "abc");
+ }
+
+ [Test]
+ public void SuccessTest3()
+ {
+ AssertAttributeValue ("<a foo='abc$'", "abc");
+ }
+
+ [Test]
+ public void SuccessTest4()
+ {
+ AssertAttributeValue ("<a foo='$abc'", "");
+ }
+
+ [Test]
+ public void SuccessTest5()
+ {
+ AssertAttributeValue ("<a foo='$a", "");
+ }
+
+ [Test]
+ public void SuccessTest6()
+ {
+ AssertAttributeValue ("<a foo='a$'", "a");
+ }
+
+ [Test]
+ public void SuccessTest7()
+ {
+ AssertAttributeValue ("<a foo='a\"b\"c$'", "a\"b\"c");
+ }
+
+ [Test]
+ public void FailureTest1()
+ {
+ TestXmlParser.AssertState ("<a foo=''$", p => Assert.IsNull (p.Nodes.LastOrDefault () as XAttribute));
+ }
+
+ public void AssertAttributeValue (string doc, string val)
+ {
+ TestXmlParser.AssertState (doc, p => {
+ p.AssertStateIs<XmlAttributeValueState> ();
+ Assert.AreEqual (val, ((IXmlParserContext)p).KeywordBuilder.ToString ());
+ });
+ }
+ }
+}
diff --git a/main/src/addins/Xml/Tests/Parser/InsideAttributeValueTestFixture.cs b/main/src/addins/Xml/Tests/Parser/InsideAttributeValueTestFixture.cs
new file mode 100644
index 0000000000..ae659f2d91
--- /dev/null
+++ b/main/src/addins/Xml/Tests/Parser/InsideAttributeValueTestFixture.cs
@@ -0,0 +1,109 @@
+using NUnit.Framework;
+using MonoDevelop.Xml.Parser;
+
+namespace MonoDevelop.Xml.Tests.Parser
+{
+ [TestFixture]
+ public class InsideAttributeValueTestFixture
+ {
+ [Test]
+ public void InvalidString()
+ {
+ AssertNotInsideAttributeValue ("$");
+ }
+
+ [Test]
+ public void DoubleQuotesTest1()
+ {
+ string xml = "<foo a=\"$";
+ AssertInsideAttributeValue (xml);
+ }
+
+ [Test]
+ public void DoubleQuotesTest2()
+ {
+ string xml = "<foo a=\"\" $";
+ AssertNotInsideAttributeValue (xml);
+ }
+
+ [Test]
+ public void DoubleQuotesTest3()
+ {
+ string xml = "<foo a=\"\"$";
+ AssertNotInsideAttributeValue (xml);
+ }
+
+ [Test]
+ public void DoubleQuotesTest4()
+ {
+ string xml = "<foo a=\" $";
+ AssertInsideAttributeValue (xml);
+ }
+
+ [Test]
+ public void NoXmlElementStart()
+ {
+ string xml = "foo a=\"$";
+ AssertNotInsideAttributeValue (xml);
+ }
+
+ [Test]
+ public void DoubleQuotesTest5()
+ {
+ string xml = "<foo a=\"$\"";
+ AssertInsideAttributeValue (xml);
+ }
+
+ [Test]
+ public void EqualsSignTest()
+ {
+ string xml = "<foo a=$";
+ AssertNotInsideAttributeValue (xml);
+ }
+
+ [Test]
+ public void SingleQuoteTest1()
+ {
+ string xml = "<foo a='$";
+ AssertInsideAttributeValue (xml);
+ }
+
+ [Test]
+ public void MixedQuotesTest1()
+ {
+ string xml = "<foo a='\"$";
+ AssertInsideAttributeValue (xml);
+ }
+
+ [Test]
+ public void MixedQuotesTest2()
+ {
+ string xml = "<foo a=\"'$";
+ AssertInsideAttributeValue (xml);
+ }
+
+ [Test]
+ public void MixedQuotesTest3()
+ {
+ string xml = "<foo a=\"''$";
+ AssertInsideAttributeValue (xml);
+ }
+
+ [Test]
+ public void MixedQuotesTest4()
+ {
+ string xml = "<foo a=\"''\"$";
+ AssertNotInsideAttributeValue (xml);
+ }
+
+ public void AssertInsideAttributeValue (string doc)
+ {
+ TestXmlParser.AssertState (doc, p => p.AssertStateIs<XmlAttributeValueState> ());
+ }
+
+ public void AssertNotInsideAttributeValue (string doc)
+ {
+ TestXmlParser.AssertState (doc, p => p.AssertStateIsNot<XmlAttributeValueState> ());
+ }
+ }
+}
diff --git a/main/src/addins/Xml/Tests/Parser/NamespaceDeclarationTestFixture.cs b/main/src/addins/Xml/Tests/Parser/NamespaceDeclarationTestFixture.cs
new file mode 100644
index 0000000000..49549fe583
--- /dev/null
+++ b/main/src/addins/Xml/Tests/Parser/NamespaceDeclarationTestFixture.cs
@@ -0,0 +1,109 @@
+
+using System.Linq;
+using MonoDevelop.Xml.Dom;
+using NUnit.Framework;
+
+namespace MonoDevelop.Xml.Tests.Parser
+{
+ /// <summary>
+ /// When the user hits the '=' key we need to produce intellisense
+ /// if the attribute is of the form 'xmlns' or 'xmlns:foo'. This
+ /// tests the parsing of the text before the cursor to see if the
+ /// attribute is a namespace declaration.
+ /// </summary>
+ [TestFixture]
+ public class NamespaceDeclarationTestFixture
+ {
+ [Test]
+ public void SuccessTest1()
+ {
+ AssertIsNamespaceDeclaration("<foo xmlns=$");
+ }
+
+ [Test]
+ public void SuccessTest2()
+ {
+ AssertIsNamespaceDeclaration("<foo xmlns =$");
+ }
+
+ [Test]
+ public void SuccessTest3()
+ {
+ AssertIsNamespaceDeclaration("<foo \r\nxmlns\r\n=$");
+ }
+
+ [Test]
+ public void SuccessTest4()
+ {
+ AssertIsNamespaceDeclaration("<foo xmlns:nant=$");
+ }
+
+ [Test]
+ public void FailureTest1()
+ {
+ AssertNotNamespaceDeclaration("<foo xmlns$");
+ }
+
+ [Test]
+ public void FailureTest2()
+ {
+ AssertNotNamespaceDeclaration("<foo xmlns:nant$");
+ }
+
+ [Test]
+ public void FailureTest3()
+ {
+ AssertNotNamespaceDeclaration(" xmlns=$");
+ }
+
+ [Test]
+ public void FailureTest4()
+ {
+ AssertNotNamespaceDeclaration(" xmlns$");
+ }
+
+ [Test]
+ public void FailureTest5()
+ {
+ AssertNotNamespaceDeclaration(" xmlns:f$");
+ }
+
+ [Test]
+ public void FailureTest6()
+ {
+ AssertNotNamespaceDeclaration("<foo bar=$");
+ }
+
+ [Test]
+ public void FailureTest7()
+ {
+ AssertNotNamespaceDeclaration("$");
+ }
+
+ public void AssertIsNamespaceDeclaration (string doc)
+ {
+ TestXmlParser.AssertState (doc, p => {
+ var node = p.Nodes.FirstOrDefault () as XAttribute;
+ Assert.NotNull (node);
+ Assert.IsTrue (node.IsNamed);
+ if (node.Name.HasPrefix)
+ Assert.AreEqual ("xmlns", node.Name.Prefix);
+ else
+ Assert.AreEqual ("xmlns", node.Name.Name);
+ });
+ }
+
+ public void AssertNotNamespaceDeclaration (string doc)
+ {
+ TestXmlParser.AssertState (doc, p => {
+ var node = p.Nodes.FirstOrDefault () as XAttribute;
+ if (node != null && node.IsNamed) {
+ if (node.Name.HasPrefix)
+ Assert.AreNotEqual ("xmlns", node.Name.Prefix);
+ else
+ Assert.AreNotEqual ("xmlns", node.Name.Name);
+ }
+ });
+ }
+ }
+}
diff --git a/main/src/addins/Xml/Tests/Parser/ParentElementPathTestFixture.cs b/main/src/addins/Xml/Tests/Parser/ParentElementPathTestFixture.cs
new file mode 100644
index 0000000000..7f73762161
--- /dev/null
+++ b/main/src/addins/Xml/Tests/Parser/ParentElementPathTestFixture.cs
@@ -0,0 +1,57 @@
+using MonoDevelop.Xml.Completion;
+using NUnit.Framework;
+
+namespace MonoDevelop.Xml.Tests.Parser
+{
+ [TestFixture]
+ public class ParentElementPathTestFixture
+ {
+ const string namespaceURI = "http://foo/foo.xsd";
+
+ [Test]
+ public void SuccessTest1()
+ {
+ AssertParentPath (
+ "<foo xmlns='" + namespaceURI + "' >$<",
+ new QualifiedName ("foo", namespaceURI)
+ );
+ }
+
+ [Test]
+ public void SuccessTest2()
+ {
+ AssertParentPath (
+ "<foo xmlns='" + namespaceURI + "' ><bar></bar><$",
+ new QualifiedName ("foo", namespaceURI)
+ );
+ }
+
+ [Test]
+ public void SuccessTest3()
+ {
+ AssertParentPath (
+ "<foo xmlns='" + namespaceURI + "' ><bar/><$",
+ new QualifiedName ("foo", namespaceURI)
+ );
+ }
+
+ [Test]
+ public void SuccessTest4()
+ {
+ AssertParentPath (
+ "<bar xmlns='http://test.com'/><foo xmlns='" + namespaceURI + "' ><$",
+ new QualifiedName ("foo", namespaceURI)
+ );
+ }
+
+ public void AssertParentPath (string doc, params QualifiedName[] qualifiedNames)
+ {
+ TestXmlParser.AssertState (doc, p =>
+ Assert.AreEqual (
+ new XmlElementPath (qualifiedNames),
+ XmlElementPath.Resolve (p.Nodes.ToArray ())
+ )
+ );;
+ }
+ }
+}
diff --git a/main/tests/UnitTests/MonoDevelop.Xml.StateEngine/ParsingTests.cs b/main/src/addins/Xml/Tests/Parser/ParsingTests.cs
index 3d09ae4610..ad84140b7a 100644
--- a/main/tests/UnitTests/MonoDevelop.Xml.StateEngine/ParsingTests.cs
+++ b/main/src/addins/Xml/Tests/Parser/ParsingTests.cs
@@ -28,26 +28,27 @@
using System.Linq;
-using NUnit.Framework;
using ICSharpCode.NRefactory.TypeSystem;
+using MonoDevelop.Xml.Dom;
+using MonoDevelop.Xml.Parser;
+using NUnit.Framework;
-namespace MonoDevelop.Xml.StateEngine
+namespace MonoDevelop.Xml.Tests.Parser
{
[TestFixture]
public class ParsingTests
{
-
- public virtual XmlFreeState CreateRootState ()
+ public virtual XmlRootState CreateRootState ()
{
- return new XmlFreeState ();
+ return new XmlRootState ();
}
[Test]
public void AttributeName ()
{
- TestParser parser = new TestParser (CreateRootState ());
+ var parser = new TestXmlParser (CreateRootState ());
parser.Parse (@"
<doc>
<tag.a>
@@ -67,7 +68,7 @@ namespace MonoDevelop.Xml.StateEngine
[Test]
public void Attributes ()
{
- TestParser parser = new TestParser (CreateRootState ());
+ var parser = new TestXmlParser (CreateRootState ());
parser.Parse (@"
<doc>
<tag.a name=""foo"" arg=5 wibble = 6 bar.baz = 'y.ff7]' $ />
@@ -85,7 +86,7 @@ namespace MonoDevelop.Xml.StateEngine
[Test]
public void AttributeRecovery ()
{
- TestParser parser = new TestParser (CreateRootState ());
+ var parser = new TestXmlParser (CreateRootState ());
parser.Parse (@"
<doc>
<tag.a>
@@ -107,7 +108,7 @@ namespace MonoDevelop.Xml.StateEngine
[Test]
public void IncompleteTags ()
{
- TestParser parser = new TestParser (CreateRootState ());
+ var parser = new TestXmlParser (CreateRootState ());
parser.Parse (@"
<doc>
<tag.a att1 >
@@ -132,11 +133,11 @@ namespace MonoDevelop.Xml.StateEngine
parser.AssertEmpty ();
parser.AssertErrorCount (5, x => x.ErrorType == ErrorType.Error);
}
-
+
[Test]
public void Unclosed ()
{
- TestParser parser = new TestParser (CreateRootState ());
+ var parser = new TestXmlParser (CreateRootState ());
parser.Parse (@"
<doc>
<tag.a>
@@ -145,12 +146,12 @@ namespace MonoDevelop.Xml.StateEngine
</doc>
",
delegate {
- parser.AssertStateIs<XmlFreeState> ();
+ parser.AssertStateIs<XmlRootState> ();
parser.AssertNodeDepth (5);
parser.AssertPath ("//doc/tag.a/tag.b/tag.b");
},
delegate {
- parser.AssertStateIs<XmlFreeState> ();
+ parser.AssertStateIs<XmlRootState> ();
parser.AssertNodeDepth (2);
parser.AssertPath ("//doc");
}
@@ -162,7 +163,7 @@ namespace MonoDevelop.Xml.StateEngine
[Test]
public void Misc ()
{
- TestParser parser = new TestParser (CreateRootState ());
+ var parser = new TestXmlParser (CreateRootState ());
parser.Parse (@"
<doc>
<!DOCTYPE $ >
@@ -189,11 +190,11 @@ namespace MonoDevelop.Xml.StateEngine
parser.AssertEmpty ();
parser.AssertErrorCount (0);
}
-
+
[Test]
public void DocTypeCapture ()
{
- TestParser parser = new TestParser (CreateRootState (), true);
+ var parser = new TestXmlParser (CreateRootState (), true);
parser.Parse (@"
<!DOCTYPE html PUBLIC ""-//W3C//DTD XHTML 1.0 Strict//EN""
""DTD/xhtml1-strict.dtd""
@@ -217,7 +218,7 @@ namespace MonoDevelop.Xml.StateEngine
[Test]
public void NamespacedAttributes ()
{
- var parser = new TestParser (CreateRootState (), true);
+ var parser = new TestXmlParser (CreateRootState (), true);
parser.Parse (@"<tag foo:bar='1' foo:bar:baz='2' foo='3' />");
parser.AssertEmpty ();
var doc = (XDocument) parser.Nodes.Peek ();
@@ -238,7 +239,7 @@ namespace MonoDevelop.Xml.StateEngine
[Test]
public void SimpleTree ()
{
- var parser = new TestParser (CreateRootState (), true);
+ var parser = new TestXmlParser (CreateRootState (), true);
parser.Parse (@"
<doc>
<a>
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Parser/QualifiedNameTestFixture.cs b/main/src/addins/Xml/Tests/Parser/QualifiedNameTestFixture.cs
index 3abbb9286b..4960bc7ee8 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Parser/QualifiedNameTestFixture.cs
+++ b/main/src/addins/Xml/Tests/Parser/QualifiedNameTestFixture.cs
@@ -1,9 +1,9 @@
-using MonoDevelop.XmlEditor;
+using MonoDevelop.Xml.Completion;
using NUnit.Framework;
using System.Xml;
-namespace MonoDevelop.XmlEditor.Tests.Parser
+namespace MonoDevelop.Xml.Tests.Parser
{
/// <summary>
/// Tests the comparison of <see cref="QualifiedName"/> items.
diff --git a/main/tests/UnitTests/MonoDevelop.Xml.StateEngine/TestParser.cs b/main/src/addins/Xml/Tests/Parser/TestXmlParser.cs
index 5ec3eacb26..74afe274ff 100644
--- a/main/tests/UnitTests/MonoDevelop.Xml.StateEngine/TestParser.cs
+++ b/main/src/addins/Xml/Tests/Parser/TestXmlParser.cs
@@ -27,30 +27,54 @@
//
using System;
-using System.Linq;
using System.Collections.Generic;
-using MonoDevelop.Ide.Gui.Content;
+using System.Linq;
-using NUnit.Framework;
+using ICSharpCode.NRefactory;
using ICSharpCode.NRefactory.TypeSystem;
+using MonoDevelop.Xml.Completion;
+using MonoDevelop.Xml.Dom;
+using MonoDevelop.Xml.Parser;
+using NUnit.Framework;
-namespace MonoDevelop.Xml.StateEngine
+namespace MonoDevelop.Xml.Tests.Parser
{
- public class TestParser : Parser
+ public class TestXmlParser : XmlParser
{
readonly List<Error> errors = new List<Error> ();
- public TestParser (RootState rootState) : this (rootState, false)
+ public TestXmlParser (XmlRootState rootState) : this (rootState, false)
{
}
- public TestParser (RootState rootState, bool buildTree) : base (rootState, buildTree)
+ public TestXmlParser (XmlRootState rootState, bool buildTree) : base (rootState, buildTree)
{
- base.ErrorLogged += delegate (Error err) { errors.Add (err); };
+ ErrorLogged += errors.Add;
}
public new List<Error> Errors { get { return errors; } }
-
+
+ public static void AssertState (string doc, params Action<TestXmlParser>[] asserts)
+ {
+ var p = new TestXmlParser (new XmlRootState ());
+ p.Parse (doc, Array.ConvertAll (asserts, a => (Action)(() => a (p))));
+ }
+
+ public static void AssertTree (string txt, params Action<XNode>[] asserts)
+ {
+ var p = new TestXmlParser (new XmlRootState (), true);
+
+ //parse and capture line/col info
+ var list = new List<TextLocation> ();
+ p.Parse (txt, Array.ConvertAll (asserts, a => (Action)(() => list.Add (p.Location))));
+
+ var doc = (XDocument) p.Nodes.Last ();
+
+ for (int i = 0; i < asserts.Length; i++) {
+ asserts [i] (doc.AllDescendentNodes.FirstOrDefault (n => n.Region.IsInside (list[i])));
+ }
+ }
+
public void Parse (string doc, params Action[] asserts)
{
Parse (doc, '$', asserts);
@@ -74,6 +98,7 @@ namespace MonoDevelop.Xml.StateEngine
Push (c);
}
}
+ Assert.AreEqual (asserts.Length, assertNo);
}
public string GetPath ()
@@ -102,10 +127,15 @@ namespace MonoDevelop.Xml.StateEngine
};
}
- public void AssertStateIs<T> () where T : State
+ public void AssertStateIs<T> () where T : XmlParserState
{
Assert.IsTrue (CurrentState is T, "Current state is {0} not {1}", CurrentState.GetType ().Name, typeof (T).Name);
}
+
+ public void AssertStateIsNot<T> () where T : XmlParserState
+ {
+ Assert.IsFalse (CurrentState is T, "Current state is {0}", typeof (T).Name);
+ }
public void AssertNodeDepth (int depth)
{
@@ -188,5 +218,20 @@ namespace MonoDevelop.Xml.StateEngine
Assert.IsTrue (node is INamedXObject);
Assert.AreEqual (name, ((INamedXObject)node).Name.FullName);
}
+
+ public static void AssertPath (XNode node, params QualifiedName[] qualifiedNames)
+ {
+ var path = new List<XNode> ();
+ while (node != null) {
+ path.Add (node);
+ node = node.Parent as XNode;
+ }
+ path.Reverse ();
+
+ Assert.AreEqual (
+ new XmlElementPath (qualifiedNames),
+ XmlElementPath.Resolve (path.ToArray ())
+ );
+ }
}
}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Paths/NoElementPathTestFixture.cs b/main/src/addins/Xml/Tests/Paths/NoElementPathTestFixture.cs
index 4df417d889..ff95d40e0c 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Paths/NoElementPathTestFixture.cs
+++ b/main/src/addins/Xml/Tests/Paths/NoElementPathTestFixture.cs
@@ -1,8 +1,8 @@
-using MonoDevelop.XmlEditor;
+using MonoDevelop.Xml.Completion;
using NUnit.Framework;
-namespace MonoDevelop.XmlEditor.Tests.Paths
+namespace MonoDevelop.Xml.Tests.Paths
{
[TestFixture]
public class NoElementPathTestFixture
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Paths/SingleElementPathTestFixture.cs b/main/src/addins/Xml/Tests/Paths/SingleElementPathTestFixture.cs
index a9a376ba89..6087294c90 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Paths/SingleElementPathTestFixture.cs
+++ b/main/src/addins/Xml/Tests/Paths/SingleElementPathTestFixture.cs
@@ -1,8 +1,8 @@
-using MonoDevelop.XmlEditor;
+using MonoDevelop.Xml.Completion;
using NUnit.Framework;
-namespace MonoDevelop.XmlEditor.Tests.Paths
+namespace MonoDevelop.Xml.Tests.Paths
{
[TestFixture]
public class SingleElementPathTestFixture
@@ -21,15 +21,7 @@ namespace MonoDevelop.XmlEditor.Tests.Paths
[Test]
public void HasOneItem()
{
- Assert.AreEqual(1, path.Elements.Count,
- "Should have 1 element.");
- }
-
- [Test]
- public void RemoveLastItem()
- {
- path.Elements.RemoveLast();
- Assert.AreEqual(0, path.Elements.Count, "Should have no items.");
+ Assert.AreEqual(1, path.Elements.Count, "Should have 1 element.");
}
[Test]
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Paths/TwoElementPathTestFixture.cs b/main/src/addins/Xml/Tests/Paths/TwoElementPathTestFixture.cs
index 0f74db3836..95c936f410 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Paths/TwoElementPathTestFixture.cs
+++ b/main/src/addins/Xml/Tests/Paths/TwoElementPathTestFixture.cs
@@ -1,8 +1,8 @@
-using MonoDevelop.XmlEditor;
+using MonoDevelop.Xml.Completion;
using NUnit.Framework;
-namespace MonoDevelop.XmlEditor.Tests.Paths
+namespace MonoDevelop.Xml.Tests.Paths
{
[TestFixture]
public class TwoElementPathTestFixture
@@ -20,34 +20,6 @@ namespace MonoDevelop.XmlEditor.Tests.Paths
secondQualifiedName = new QualifiedName("bar", "http://bar", "b");
path.Elements.Add(secondQualifiedName);
- }
-
- [Test]
- public void HasTwoItems()
- {
- Assert.AreEqual(2, path.Elements.Count,
- "Should have 2 elements.");
- }
-
- [Test]
- public void RemoveLastItem()
- {
- path.Elements.RemoveLast();
- Assert.AreEqual(firstQualifiedName, path.Elements[0],
- "Wrong item removed.");
- }
-
- [Test]
- public void LastPrefix()
- {
- Assert.AreEqual("b", path.Elements.LastPrefix, "Incorrect last prefix.");
- }
-
- [Test]
- public void LastPrefixAfterLastItemRemoved()
- {
- path.Elements.RemoveLast();
- Assert.AreEqual("f", path.Elements.LastPrefix, "Incorrect last prefix.");
}
[Test]
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Resources/XMLSchema.xsd b/main/src/addins/Xml/Tests/Resources/XMLSchema.xsd
index 5acc282d5e..5acc282d5e 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Resources/XMLSchema.xsd
+++ b/main/src/addins/Xml/Tests/Resources/XMLSchema.xsd
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Resources/xhtml1-strict-modified.xsd b/main/src/addins/Xml/Tests/Resources/xhtml1-strict-modified.xsd
index 1d25a8e7ef..1d25a8e7ef 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Resources/xhtml1-strict-modified.xsd
+++ b/main/src/addins/Xml/Tests/Resources/xhtml1-strict-modified.xsd
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/AbstractElementTestFixture.cs b/main/src/addins/Xml/Tests/Schema/AbstractElementTestFixture.cs
index baccd90b7e..62dd1300db 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/AbstractElementTestFixture.cs
+++ b/main/src/addins/Xml/Tests/Schema/AbstractElementTestFixture.cs
@@ -1,8 +1,8 @@
using MonoDevelop.Ide.CodeCompletion;
-using MonoDevelop.XmlEditor;
+using MonoDevelop.Xml.Completion;
using NUnit.Framework;
-namespace MonoDevelop.XmlEditor.Tests.Schema
+namespace MonoDevelop.Xml.Tests.Schema
{
/// <summary>
/// Tests elements that are abstract and require substitution groups.
@@ -16,7 +16,7 @@ namespace MonoDevelop.XmlEditor.Tests.Schema
public override void FixtureInit()
{
- XmlElementPath path = new XmlElementPath();
+ var path = new XmlElementPath();
path.Elements.Add(new QualifiedName("project", "http://foo"));
path.Elements.Add(new QualifiedName("items", "http://foo"));
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/AllElementTestFixture.cs b/main/src/addins/Xml/Tests/Schema/AllElementTestFixture.cs
index 241c719aac..a9a7a3265d 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/AllElementTestFixture.cs
+++ b/main/src/addins/Xml/Tests/Schema/AllElementTestFixture.cs
@@ -1,8 +1,8 @@
using MonoDevelop.Ide.CodeCompletion;
-using MonoDevelop.XmlEditor;
+using MonoDevelop.Xml.Completion;
using NUnit.Framework;
-namespace MonoDevelop.XmlEditor.Tests.Schema
+namespace MonoDevelop.Xml.Tests.Schema
{
/// <summary>
/// Tests that element completion works for any child elements
@@ -17,7 +17,7 @@ namespace MonoDevelop.XmlEditor.Tests.Schema
public override void FixtureInit()
{
- XmlElementPath path = new XmlElementPath();
+ var path = new XmlElementPath();
path.Elements.Add(new QualifiedName("person", "http://foo"));
personElementChildren = SchemaCompletionData.GetChildElementCompletionData(path);
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/AttributeAnnotationTestFixture.cs b/main/src/addins/Xml/Tests/Schema/AttributeAnnotationTestFixture.cs
index 90f5ea890b..071f9ac510 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/AttributeAnnotationTestFixture.cs
+++ b/main/src/addins/Xml/Tests/Schema/AttributeAnnotationTestFixture.cs
@@ -1,8 +1,8 @@
using MonoDevelop.Ide.CodeCompletion;
-using MonoDevelop.XmlEditor;
+using MonoDevelop.Xml.Completion;
using NUnit.Framework;
-namespace MonoDevelop.XmlEditor.Tests.Schema
+namespace MonoDevelop.Xml.Tests.Schema
{
/// <summary>
/// Tests that the completion data retrieves the annotation documentation
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/AttributeGroupRefTestFixture.cs b/main/src/addins/Xml/Tests/Schema/AttributeGroupRefTestFixture.cs
index ecc4d15db3..94b397c1bc 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/AttributeGroupRefTestFixture.cs
+++ b/main/src/addins/Xml/Tests/Schema/AttributeGroupRefTestFixture.cs
@@ -1,8 +1,8 @@
using MonoDevelop.Ide.CodeCompletion;
-using MonoDevelop.XmlEditor;
+using MonoDevelop.Xml.Completion;
using NUnit.Framework;
-namespace MonoDevelop.XmlEditor.Tests.Schema
+namespace MonoDevelop.Xml.Tests.Schema
{
/// <summary>
/// Element that uses an attribute group ref.
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/AttributeRefTestFixture.cs b/main/src/addins/Xml/Tests/Schema/AttributeRefTestFixture.cs
index 8fb20a7a19..4cf58808ed 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/AttributeRefTestFixture.cs
+++ b/main/src/addins/Xml/Tests/Schema/AttributeRefTestFixture.cs
@@ -1,8 +1,8 @@
using MonoDevelop.Ide.CodeCompletion;
-using MonoDevelop.XmlEditor;
+using MonoDevelop.Xml.Completion;
using NUnit.Framework;
-namespace MonoDevelop.XmlEditor.Tests.Schema
+namespace MonoDevelop.Xml.Tests.Schema
{
/// <summary>
/// Tests attribute refs
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/AttributeValueAnnotationTestFixture.cs b/main/src/addins/Xml/Tests/Schema/AttributeValueAnnotationTestFixture.cs
index 530b728403..85860aeed5 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/AttributeValueAnnotationTestFixture.cs
+++ b/main/src/addins/Xml/Tests/Schema/AttributeValueAnnotationTestFixture.cs
@@ -1,8 +1,8 @@
using MonoDevelop.Ide.CodeCompletion;
-using MonoDevelop.XmlEditor;
+using MonoDevelop.Xml.Completion;
using NUnit.Framework;
-namespace MonoDevelop.XmlEditor.Tests.Schema
+namespace MonoDevelop.Xml.Tests.Schema
{
/// <summary>
/// Tests that the completion data retrieves the annotation documentation
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/ChildElementAttributesTestFixture.cs b/main/src/addins/Xml/Tests/Schema/ChildElementAttributesTestFixture.cs
index a62b190d8e..4154ee41d4 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/ChildElementAttributesTestFixture.cs
+++ b/main/src/addins/Xml/Tests/Schema/ChildElementAttributesTestFixture.cs
@@ -1,8 +1,8 @@
using MonoDevelop.Ide.CodeCompletion;
-using MonoDevelop.XmlEditor;
+using MonoDevelop.Xml.Completion;
using NUnit.Framework;
-namespace MonoDevelop.XmlEditor.Tests.Schema
+namespace MonoDevelop.Xml.Tests.Schema
{
/// <summary>
/// Child element attributes.
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/ChoiceTestFixture.cs b/main/src/addins/Xml/Tests/Schema/ChoiceTestFixture.cs
index fa857945e0..6eff3b644c 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/ChoiceTestFixture.cs
+++ b/main/src/addins/Xml/Tests/Schema/ChoiceTestFixture.cs
@@ -1,8 +1,8 @@
using MonoDevelop.Ide.CodeCompletion;
-using MonoDevelop.XmlEditor;
+using MonoDevelop.Xml.Completion;
using NUnit.Framework;
-namespace MonoDevelop.XmlEditor.Tests.Schema
+namespace MonoDevelop.Xml.Tests.Schema
{
/// <summary>
/// Tests that nested schema choice elements are handled.
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/ComplexContentExtensionTestFixture.cs b/main/src/addins/Xml/Tests/Schema/ComplexContentExtensionTestFixture.cs
index 3db0909c74..10c8aebc3d 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/ComplexContentExtensionTestFixture.cs
+++ b/main/src/addins/Xml/Tests/Schema/ComplexContentExtensionTestFixture.cs
@@ -1,8 +1,8 @@
using MonoDevelop.Ide.CodeCompletion;
-using MonoDevelop.XmlEditor;
+using MonoDevelop.Xml.Completion;
using NUnit.Framework;
-namespace MonoDevelop.XmlEditor.Tests.Schema
+namespace MonoDevelop.Xml.Tests.Schema
{
/// <summary>
/// Tests complex content extension elements.
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/DuplicateElementTestFixture.cs b/main/src/addins/Xml/Tests/Schema/DuplicateElementTestFixture.cs
index 2f37f1b0ee..07ccb2afb0 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/DuplicateElementTestFixture.cs
+++ b/main/src/addins/Xml/Tests/Schema/DuplicateElementTestFixture.cs
@@ -1,8 +1,8 @@
using MonoDevelop.Ide.CodeCompletion;
-using MonoDevelop.XmlEditor;
+using MonoDevelop.Xml.Completion;
using NUnit.Framework;
-namespace MonoDevelop.XmlEditor.Tests.Schema
+namespace MonoDevelop.Xml.Tests.Schema
{
/// <summary>
/// Tests duplicate elements in the schema.
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/ElementAnnotationTestFixture.cs b/main/src/addins/Xml/Tests/Schema/ElementAnnotationTestFixture.cs
index c3cf34381f..f4f709366e 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/ElementAnnotationTestFixture.cs
+++ b/main/src/addins/Xml/Tests/Schema/ElementAnnotationTestFixture.cs
@@ -1,8 +1,8 @@
using MonoDevelop.Ide.CodeCompletion;
-using MonoDevelop.XmlEditor;
+using MonoDevelop.Xml.Completion;
using NUnit.Framework;
-namespace MonoDevelop.XmlEditor.Tests.Schema
+namespace MonoDevelop.Xml.Tests.Schema
{
/// <summary>
/// Tests that the completion data retrieves the annotation documentation
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/ElementRefAnnotationTestFixture.cs b/main/src/addins/Xml/Tests/Schema/ElementRefAnnotationTestFixture.cs
index f4b248476b..f102adc70e 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/ElementRefAnnotationTestFixture.cs
+++ b/main/src/addins/Xml/Tests/Schema/ElementRefAnnotationTestFixture.cs
@@ -1,8 +1,8 @@
using MonoDevelop.Ide.CodeCompletion;
-using MonoDevelop.XmlEditor;
+using MonoDevelop.Xml.Completion;
using NUnit.Framework;
-namespace MonoDevelop.XmlEditor.Tests.Schema
+namespace MonoDevelop.Xml.Tests.Schema
{
/// <summary>
/// Tests that the completion data retrieves the annotation documentation
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/ElementWithAttributeSchemaTestFixture.cs b/main/src/addins/Xml/Tests/Schema/ElementWithAttributeSchemaTestFixture.cs
index d0e6c65744..5929d39082 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/ElementWithAttributeSchemaTestFixture.cs
+++ b/main/src/addins/Xml/Tests/Schema/ElementWithAttributeSchemaTestFixture.cs
@@ -1,8 +1,8 @@
using MonoDevelop.Ide.CodeCompletion;
-using MonoDevelop.XmlEditor;
+using MonoDevelop.Xml.Completion;
using NUnit.Framework;
-namespace MonoDevelop.XmlEditor.Tests.Schema
+namespace MonoDevelop.Xml.Tests.Schema
{
/// <summary>
/// Element that has a single attribute.
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/EnumAttributeValueTestFixture.cs b/main/src/addins/Xml/Tests/Schema/EnumAttributeValueTestFixture.cs
index cfd9e4c78a..7a56e0a84b 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/EnumAttributeValueTestFixture.cs
+++ b/main/src/addins/Xml/Tests/Schema/EnumAttributeValueTestFixture.cs
@@ -1,8 +1,8 @@
using MonoDevelop.Ide.CodeCompletion;
-using MonoDevelop.XmlEditor;
+using MonoDevelop.Xml.Completion;
using NUnit.Framework;
-namespace MonoDevelop.XmlEditor.Tests.Schema
+namespace MonoDevelop.Xml.Tests.Schema
{
/// <summary>
/// Tests attribute refs
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/ExtensionElementTestFixture.cs b/main/src/addins/Xml/Tests/Schema/ExtensionElementTestFixture.cs
index 106f67d47e..f6ee5ba782 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/ExtensionElementTestFixture.cs
+++ b/main/src/addins/Xml/Tests/Schema/ExtensionElementTestFixture.cs
@@ -1,8 +1,8 @@
using MonoDevelop.Ide.CodeCompletion;
-using MonoDevelop.XmlEditor;
+using MonoDevelop.Xml.Completion;
using NUnit.Framework;
-namespace MonoDevelop.XmlEditor.Tests.Schema
+namespace MonoDevelop.Xml.Tests.Schema
{
/// <summary>
/// Tests complex content extension elements.
@@ -31,7 +31,7 @@ namespace MonoDevelop.XmlEditor.Tests.Schema
includeAttributes = SchemaCompletionData.GetAttributeCompletionData(path);
// Get annotation element info.
- path.Elements.RemoveLast();
+ path.Elements.RemoveAt(path.Elements.Count - 1);
path.Elements.Add(new QualifiedName("annotation", "http://www.w3.org/2001/XMLSchema"));
annotationChildElements = SchemaCompletionData.GetChildElementCompletionData(path);
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/FindAttributeFromComplexTypeTestFixture.cs b/main/src/addins/Xml/Tests/Schema/FindAttributeFromComplexTypeTestFixture.cs
index 93147eee2c..1a4dc4bf83 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/FindAttributeFromComplexTypeTestFixture.cs
+++ b/main/src/addins/Xml/Tests/Schema/FindAttributeFromComplexTypeTestFixture.cs
@@ -1,8 +1,8 @@
-using MonoDevelop.XmlEditor;
+using MonoDevelop.Xml.Completion;
using NUnit.Framework;
using System.Xml.Schema;
-namespace MonoDevelop.XmlEditor.Tests.Schema
+namespace MonoDevelop.Xml.Tests.Schema
{
/// <summary>
/// Element that has a single attribute.
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/GroupRefCompositorTestFixture.cs b/main/src/addins/Xml/Tests/Schema/GroupRefCompositorTestFixture.cs
index 042b18117e..6e6cb086f6 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/GroupRefCompositorTestFixture.cs
+++ b/main/src/addins/Xml/Tests/Schema/GroupRefCompositorTestFixture.cs
@@ -1,8 +1,8 @@
using MonoDevelop.Ide.CodeCompletion;
-using MonoDevelop.XmlEditor;
+using MonoDevelop.Xml.Completion;
using NUnit.Framework;
-namespace MonoDevelop.XmlEditor.Tests.Schema
+namespace MonoDevelop.Xml.Tests.Schema
{
/// <summary>
/// Tests that autocompletion data is correct for an xml schema containing:
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/GroupRefTestFixture.cs b/main/src/addins/Xml/Tests/Schema/GroupRefTestFixture.cs
index 94d47ab956..25d87736df 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/GroupRefTestFixture.cs
+++ b/main/src/addins/Xml/Tests/Schema/GroupRefTestFixture.cs
@@ -1,8 +1,8 @@
using MonoDevelop.Ide.CodeCompletion;
-using MonoDevelop.XmlEditor;
+using MonoDevelop.Xml.Completion;
using NUnit.Framework;
-namespace MonoDevelop.XmlEditor.Tests.Schema
+namespace MonoDevelop.Xml.Tests.Schema
{
/// <summary>
/// Tests element group refs
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema.Includes/AttributeGroupRefSchemaIncludeTestFixture.cs b/main/src/addins/Xml/Tests/Schema/Includes/AttributeGroupRefSchemaIncludeTestFixture.cs
index c3b8037055..e368466589 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema.Includes/AttributeGroupRefSchemaIncludeTestFixture.cs
+++ b/main/src/addins/Xml/Tests/Schema/Includes/AttributeGroupRefSchemaIncludeTestFixture.cs
@@ -1,9 +1,9 @@
using NUnit.Framework;
-using MonoDevelop.XmlEditor.Completion;
-using MonoDevelop.XmlEditor.Tests.Utils;
-using MonoDevelop.XmlEditor.Tests.Schema;
+using MonoDevelop.Xml.Completion;
+using MonoDevelop.Xml.Tests.Utils;
+using MonoDevelop.Xml.Tests.Schema;
-namespace MonoDevelop.XmlEditor.Tests.Schema.Includes
+namespace MonoDevelop.Xml.Tests.Schema.Includes
{
/// <summary>
/// Tests that schemas referenced via xs:include elements are used when
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema.Includes/TwoElementSchemaIncludeTestFixture.cs b/main/src/addins/Xml/Tests/Schema/Includes/TwoElementSchemaIncludeTestFixture.cs
index 06041c6900..197230c76e 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema.Includes/TwoElementSchemaIncludeTestFixture.cs
+++ b/main/src/addins/Xml/Tests/Schema/Includes/TwoElementSchemaIncludeTestFixture.cs
@@ -1,9 +1,9 @@
-using MonoDevelop.XmlEditor.Completion;
+using MonoDevelop.Xml.Completion;
using NUnit.Framework;
-using MonoDevelop.XmlEditor.Tests.Utils;
-using MonoDevelop.XmlEditor.Tests.Schema;
+using MonoDevelop.Xml.Tests.Utils;
+using MonoDevelop.Xml.Tests.Schema;
-namespace MonoDevelop.XmlEditor.Tests.Schema.Includes
+namespace MonoDevelop.Xml.Tests.Schema.Includes
{
/// <summary>
/// Tests that schemas referenced via xs:include elements are used when
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/MissingSchemaElementTestFixture.cs b/main/src/addins/Xml/Tests/Schema/MissingSchemaElementTestFixture.cs
index b5e5b77a8a..0736cbe62b 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/MissingSchemaElementTestFixture.cs
+++ b/main/src/addins/Xml/Tests/Schema/MissingSchemaElementTestFixture.cs
@@ -1,8 +1,8 @@
using MonoDevelop.Ide.CodeCompletion;
-using MonoDevelop.XmlEditor;
+using MonoDevelop.Xml.Completion;
using NUnit.Framework;
-namespace MonoDevelop.XmlEditor.Tests.Schema
+namespace MonoDevelop.Xml.Tests.Schema
{
[TestFixture]
public class MissingSchemaElementTestFixture : SchemaTestFixtureBase
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/NamespaceCompletionTestFixture.cs b/main/src/addins/Xml/Tests/Schema/NamespaceCompletionTestFixture.cs
index 415d3cb0e1..0cf108baec 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/NamespaceCompletionTestFixture.cs
+++ b/main/src/addins/Xml/Tests/Schema/NamespaceCompletionTestFixture.cs
@@ -1,9 +1,9 @@
-using MonoDevelop.XmlEditor.Completion;
+using MonoDevelop.Xml.Completion;
using MonoDevelop.Ide.CodeCompletion;
using NUnit.Framework;
using System.IO;
-namespace MonoDevelop.XmlEditor.Tests.Schema
+namespace MonoDevelop.Xml.Tests.Schema
{
/// <summary>
/// The collection of schemas should provide completion data for the
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/NestedAttributeGroupRefTestFixture.cs b/main/src/addins/Xml/Tests/Schema/NestedAttributeGroupRefTestFixture.cs
index a8a22b8b10..fcb65fb900 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/NestedAttributeGroupRefTestFixture.cs
+++ b/main/src/addins/Xml/Tests/Schema/NestedAttributeGroupRefTestFixture.cs
@@ -1,8 +1,8 @@
using MonoDevelop.Ide.CodeCompletion;
-using MonoDevelop.XmlEditor;
+using MonoDevelop.Xml.Completion;
using NUnit.Framework;
-namespace MonoDevelop.XmlEditor.Tests.Schema
+namespace MonoDevelop.Xml.Tests.Schema
{
/// <summary>
/// Element that uses an attribute group ref.
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/NestedChoiceTestFixture.cs b/main/src/addins/Xml/Tests/Schema/NestedChoiceTestFixture.cs
index ba7a905192..3323065312 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/NestedChoiceTestFixture.cs
+++ b/main/src/addins/Xml/Tests/Schema/NestedChoiceTestFixture.cs
@@ -1,8 +1,8 @@
using MonoDevelop.Ide.CodeCompletion;
-using MonoDevelop.XmlEditor;
+using MonoDevelop.Xml.Completion;
using NUnit.Framework;
-namespace MonoDevelop.XmlEditor.Tests.Schema
+namespace MonoDevelop.Xml.Tests.Schema
{
/// <summary>
/// Tests that nested schema choice elements are handled.
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/NestedElementSchemaTestFixture.cs b/main/src/addins/Xml/Tests/Schema/NestedElementSchemaTestFixture.cs
index 6a74b8552f..20e01b0c72 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/NestedElementSchemaTestFixture.cs
+++ b/main/src/addins/Xml/Tests/Schema/NestedElementSchemaTestFixture.cs
@@ -1,8 +1,8 @@
using MonoDevelop.Ide.CodeCompletion;
-using MonoDevelop.XmlEditor;
+using MonoDevelop.Xml.Completion;
using NUnit.Framework;
-namespace MonoDevelop.XmlEditor.Tests.Schema
+namespace MonoDevelop.Xml.Tests.Schema
{
[TestFixture]
public class NestedElementSchemaTestFixture : SchemaTestFixtureBase
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/NestedSequenceTestFixture.cs b/main/src/addins/Xml/Tests/Schema/NestedSequenceTestFixture.cs
index 7c2958d62f..c4b24ce395 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/NestedSequenceTestFixture.cs
+++ b/main/src/addins/Xml/Tests/Schema/NestedSequenceTestFixture.cs
@@ -1,8 +1,8 @@
using MonoDevelop.Ide.CodeCompletion;
-using MonoDevelop.XmlEditor;
+using MonoDevelop.Xml.Completion;
using NUnit.Framework;
-namespace MonoDevelop.XmlEditor.Tests.Schema
+namespace MonoDevelop.Xml.Tests.Schema
{
/// <summary>
/// Tests that nested schema sequence elements are handled. This
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/ReferencedElementsTestFixture.cs b/main/src/addins/Xml/Tests/Schema/ReferencedElementsTestFixture.cs
index 88cc6479b5..125925b3c5 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/ReferencedElementsTestFixture.cs
+++ b/main/src/addins/Xml/Tests/Schema/ReferencedElementsTestFixture.cs
@@ -1,8 +1,8 @@
using MonoDevelop.Ide.CodeCompletion;
-using MonoDevelop.XmlEditor;
+using MonoDevelop.Xml.Completion;
using NUnit.Framework;
-namespace MonoDevelop.XmlEditor.Tests.Schema
+namespace MonoDevelop.Xml.Tests.Schema
{
[TestFixture]
public class ReferencedElementsTestFixture : SchemaTestFixtureBase
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/RestrictionElementTestFixture.cs b/main/src/addins/Xml/Tests/Schema/RestrictionElementTestFixture.cs
index 0a6053f8e8..44e3075cee 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/RestrictionElementTestFixture.cs
+++ b/main/src/addins/Xml/Tests/Schema/RestrictionElementTestFixture.cs
@@ -1,8 +1,8 @@
using MonoDevelop.Ide.CodeCompletion;
-using MonoDevelop.XmlEditor;
+using MonoDevelop.Xml.Completion;
using NUnit.Framework;
-namespace MonoDevelop.XmlEditor.Tests.Schema
+namespace MonoDevelop.Xml.Tests.Schema
{
/// <summary>
/// Tests complex content restriction elements.
@@ -27,7 +27,7 @@ namespace MonoDevelop.XmlEditor.Tests.Schema
annotationChildElements = SchemaCompletionData.GetChildElementCompletionData(path);
// Get choice child elements.
- path.Elements.RemoveLast();
+ path.Elements.RemoveAt (path.Elements.Count - 1);
path.Elements.Add(new QualifiedName("choice", "http://www.w3.org/2001/XMLSchema"));
choiceChildElements = SchemaCompletionData.GetChildElementCompletionData(path);
}
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/SchemaAssociationTests.cs b/main/src/addins/Xml/Tests/Schema/SchemaAssociationTests.cs
index 2ff5377578..c9603ff192 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/SchemaAssociationTests.cs
+++ b/main/src/addins/Xml/Tests/Schema/SchemaAssociationTests.cs
@@ -1,11 +1,10 @@
-using MonoDevelop.XmlEditor;
using NUnit.Framework;
-using System;
using System.IO;
using System.Text;
using System.Xml;
+using MonoDevelop.Xml.Editor;
-namespace MonoDevelop.XmlEditor.Tests.Schema
+namespace MonoDevelop.Xml.Tests.Schema
{
[TestFixture]
public class SchemaAssociationTests
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/SchemaTestFixtureBase.cs b/main/src/addins/Xml/Tests/Schema/SchemaTestFixtureBase.cs
index 731c9c13a9..5997a316bd 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/SchemaTestFixtureBase.cs
+++ b/main/src/addins/Xml/Tests/Schema/SchemaTestFixtureBase.cs
@@ -1,11 +1,11 @@
using ICSharpCode.NRefactory.Completion;
using MonoDevelop.Ide.CodeCompletion;
-using MonoDevelop.XmlEditor.Completion;
+using MonoDevelop.Xml.Completion;
using NUnit.Framework;
using System;
using System.IO;
-namespace MonoDevelop.XmlEditor.Tests.Schema
+namespace MonoDevelop.Xml.Tests.Schema
{
[TestFixture]
public abstract class SchemaTestFixtureBase
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/SequencedChoiceTestFixture.cs b/main/src/addins/Xml/Tests/Schema/SequencedChoiceTestFixture.cs
index 56f0c88ebc..1d043b61c9 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/SequencedChoiceTestFixture.cs
+++ b/main/src/addins/Xml/Tests/Schema/SequencedChoiceTestFixture.cs
@@ -1,8 +1,8 @@
using MonoDevelop.Ide.CodeCompletion;
-using MonoDevelop.XmlEditor;
+using MonoDevelop.Xml.Completion;
using NUnit.Framework;
-namespace MonoDevelop.XmlEditor.Tests.Schema
+namespace MonoDevelop.Xml.Tests.Schema
{
/// <summary>
/// Tests that nested schema choice elements inside a sequence are handled.
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/SimpleContentWithAttributeTestFixture.cs b/main/src/addins/Xml/Tests/Schema/SimpleContentWithAttributeTestFixture.cs
index a9d29ac4bc..b83fc5e7e2 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/SimpleContentWithAttributeTestFixture.cs
+++ b/main/src/addins/Xml/Tests/Schema/SimpleContentWithAttributeTestFixture.cs
@@ -1,8 +1,8 @@
using MonoDevelop.Ide.CodeCompletion;
-using MonoDevelop.XmlEditor;
+using MonoDevelop.Xml.Completion;
using NUnit.Framework;
-namespace MonoDevelop.XmlEditor.Tests.Schema
+namespace MonoDevelop.Xml.Tests.Schema
{
/// <summary>
/// Element that is a simple content type.
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/SingleElementSchemaTestFixture.cs b/main/src/addins/Xml/Tests/Schema/SingleElementSchemaTestFixture.cs
index 62ba570e03..46cf1e2c70 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/SingleElementSchemaTestFixture.cs
+++ b/main/src/addins/Xml/Tests/Schema/SingleElementSchemaTestFixture.cs
@@ -1,8 +1,8 @@
using MonoDevelop.Ide.CodeCompletion;
-using MonoDevelop.XmlEditor;
+using MonoDevelop.Xml.Completion;
using NUnit.Framework;
-namespace MonoDevelop.XmlEditor.Tests.Schema
+namespace MonoDevelop.Xml.Tests.Schema
{
/// <summary>
/// Retrieve completion data for an xml schema that specifies only one
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/TwoElementSchemaTestFixture.cs b/main/src/addins/Xml/Tests/Schema/TwoElementSchemaTestFixture.cs
index 7d8b7f6c8d..3d101f7e23 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/TwoElementSchemaTestFixture.cs
+++ b/main/src/addins/Xml/Tests/Schema/TwoElementSchemaTestFixture.cs
@@ -1,7 +1,8 @@
using MonoDevelop.Ide.CodeCompletion;
+using MonoDevelop.Xml.Completion;
using NUnit.Framework;
-namespace MonoDevelop.XmlEditor.Tests.Schema
+namespace MonoDevelop.Xml.Tests.Schema
{
/// <summary>
/// Two elements defined in a schema, one uses the 'type' attribute to
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema.Uri/GetUriTestFixture.cs b/main/src/addins/Xml/Tests/Schema/Uri/GetUriTestFixture.cs
index c635f94616..09b261034a 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema.Uri/GetUriTestFixture.cs
+++ b/main/src/addins/Xml/Tests/Schema/Uri/GetUriTestFixture.cs
@@ -1,8 +1,8 @@
-using MonoDevelop.XmlEditor.Completion;
+using MonoDevelop.Xml.Completion;
using NUnit.Framework;
using System;
-namespace MonoDevelop.XmlEditor.Tests.Schema.Uri
+namespace MonoDevelop.Xml.Tests.Schema.Uri
{
/// <summary>
/// Tests the <see cref="XmlSchemaCompletionData.GetUri"/> method.
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/XhtmlStrictSchemaTestFixture.cs b/main/src/addins/Xml/Tests/Schema/XhtmlStrictSchemaTestFixture.cs
index dc6cc269f8..1082b73df2 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/XhtmlStrictSchemaTestFixture.cs
+++ b/main/src/addins/Xml/Tests/Schema/XhtmlStrictSchemaTestFixture.cs
@@ -1,11 +1,10 @@
using MonoDevelop.Ide.CodeCompletion;
-using MonoDevelop.XmlEditor.Completion;
-using MonoDevelop.XmlEditor;
+using MonoDevelop.Xml.Completion;
using NUnit.Framework;
using System.Xml;
-using MonoDevelop.XmlEditor.Tests.Utils;
+using MonoDevelop.Xml.Tests.Utils;
-namespace MonoDevelop.XmlEditor.Tests.Schema
+namespace MonoDevelop.Xml.Tests.Schema
{
/// <summary>
/// Tests the xhtml1-strict schema.
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/XmlSchemaNamespaceTests.cs b/main/src/addins/Xml/Tests/Schema/XmlSchemaNamespaceTests.cs
index b98ab6ec46..e1954c8c64 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/XmlSchemaNamespaceTests.cs
+++ b/main/src/addins/Xml/Tests/Schema/XmlSchemaNamespaceTests.cs
@@ -1,8 +1,8 @@
-using MonoDevelop.XmlEditor;
+using MonoDevelop.Xml.Editor;
using NUnit.Framework;
using System;
-namespace MonoDevelop.XmlEditor.Tests.Schema
+namespace MonoDevelop.Xml.Tests.Schema
{
/// <summary>
/// Tests that the standard W3C namespace for XSD files is recognised.
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/XsdSchemaTestFixture.cs b/main/src/addins/Xml/Tests/Schema/XsdSchemaTestFixture.cs
index 8f171989db..2a436d7e41 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/XsdSchemaTestFixture.cs
+++ b/main/src/addins/Xml/Tests/Schema/XsdSchemaTestFixture.cs
@@ -1,11 +1,10 @@
using MonoDevelop.Ide.CodeCompletion;
-using MonoDevelop.XmlEditor;
-using MonoDevelop.XmlEditor.Completion;
+using MonoDevelop.Xml.Completion;
using NUnit.Framework;
using System.Xml;
-using MonoDevelop.XmlEditor.Tests.Utils;
+using MonoDevelop.Xml.Tests.Utils;
-namespace MonoDevelop.XmlEditor.Tests.Schema
+namespace MonoDevelop.Xml.Tests.Schema
{
/// <summary>
/// Tests the xsd schema.
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Utils/ResourceManager.cs b/main/src/addins/Xml/Tests/Utils/ResourceManager.cs
index 493e495df6..5d3203b743 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Utils/ResourceManager.cs
+++ b/main/src/addins/Xml/Tests/Utils/ResourceManager.cs
@@ -2,7 +2,7 @@ using System.IO;
using System.Reflection;
using System.Xml;
-namespace MonoDevelop.XmlEditor.Tests.Utils
+namespace MonoDevelop.Xml.Tests.Utils
{
/// <summary>
/// Returns strings from the embedded test resources.
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Utils/SchemaIncludeTestFixtureHelper.cs b/main/src/addins/Xml/Tests/Utils/SchemaIncludeTestFixtureHelper.cs
index bdb17999d9..d707dd0104 100755..100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Utils/SchemaIncludeTestFixtureHelper.cs
+++ b/main/src/addins/Xml/Tests/Utils/SchemaIncludeTestFixtureHelper.cs
@@ -1,10 +1,10 @@
-using MonoDevelop.XmlEditor.Completion;
+using MonoDevelop.Xml.Completion;
using System;
using System.IO;
using System.Text;
using System.Xml;
-namespace MonoDevelop.XmlEditor.Tests.Utils
+namespace MonoDevelop.Xml.Tests.Utils
{
/// <summary>
/// Helper class when testing a schema which includes
diff --git a/main/src/addins/MonoDevelop.XmlEditor/icons/light/prefs-xml-16.png b/main/src/addins/Xml/icons/light/prefs-xml-16.png
index fc6082d1cb..fc6082d1cb 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/icons/light/prefs-xml-16.png
+++ b/main/src/addins/Xml/icons/light/prefs-xml-16.png
Binary files differ
diff --git a/main/src/addins/MonoDevelop.XmlEditor/icons/light/prefs-xml-16@2x.png b/main/src/addins/Xml/icons/light/prefs-xml-16@2x.png
index 0aef2fef5d..0aef2fef5d 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/icons/light/prefs-xml-16@2x.png
+++ b/main/src/addins/Xml/icons/light/prefs-xml-16@2x.png
Binary files differ
diff --git a/main/src/addins/MonoDevelop.XmlEditor/icons/light/prefs-xml-schemas-16.png b/main/src/addins/Xml/icons/light/prefs-xml-schemas-16.png
index fc6082d1cb..fc6082d1cb 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/icons/light/prefs-xml-schemas-16.png
+++ b/main/src/addins/Xml/icons/light/prefs-xml-schemas-16.png
Binary files differ
diff --git a/main/src/addins/MonoDevelop.XmlEditor/icons/light/prefs-xml-schemas-16@2x.png b/main/src/addins/Xml/icons/light/prefs-xml-schemas-16@2x.png
index 0aef2fef5d..0aef2fef5d 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/icons/light/prefs-xml-schemas-16@2x.png
+++ b/main/src/addins/Xml/icons/light/prefs-xml-schemas-16@2x.png
Binary files differ
diff --git a/main/src/addins/MonoDevelop.XmlEditor/schemas/MonoDevelopAddIn.xsd b/main/src/addins/Xml/schemas/MonoDevelopAddIn.xsd
index c05f35bc1f..c05f35bc1f 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/schemas/MonoDevelopAddIn.xsd
+++ b/main/src/addins/Xml/schemas/MonoDevelopAddIn.xsd
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/Schemas/W3C-License.html b/main/src/addins/Xml/schemas/W3C-License.html
index 2edbb1ad27..2edbb1ad27 100755
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/Schemas/W3C-License.html
+++ b/main/src/addins/Xml/schemas/W3C-License.html
diff --git a/main/src/addins/MonoDevelop.XmlEditor/schemas/XMLSchema.xsd b/main/src/addins/Xml/schemas/XMLSchema.xsd
index 5acc282d5e..5acc282d5e 100755
--- a/main/src/addins/MonoDevelop.XmlEditor/schemas/XMLSchema.xsd
+++ b/main/src/addins/Xml/schemas/XMLSchema.xsd
diff --git a/main/src/addins/MonoDevelop.XmlEditor/schemas/appconfig.xsd b/main/src/addins/Xml/schemas/appconfig.xsd
index 00ddaf09c9..00ddaf09c9 100755
--- a/main/src/addins/MonoDevelop.XmlEditor/schemas/appconfig.xsd
+++ b/main/src/addins/Xml/schemas/appconfig.xsd
diff --git a/main/src/addins/MonoDevelop.XmlEditor/schemas/manifest.xsd b/main/src/addins/Xml/schemas/manifest.xsd
index 060dbec5f5..060dbec5f5 100755
--- a/main/src/addins/MonoDevelop.XmlEditor/schemas/manifest.xsd
+++ b/main/src/addins/Xml/schemas/manifest.xsd
diff --git a/main/src/addins/MonoDevelop.XmlEditor/schemas/nant.xsd b/main/src/addins/Xml/schemas/nant.xsd
index 19118d1bc3..19118d1bc3 100755
--- a/main/src/addins/MonoDevelop.XmlEditor/schemas/nant.xsd
+++ b/main/src/addins/Xml/schemas/nant.xsd
diff --git a/main/src/addins/MonoDevelop.XmlEditor/schemas/readme.txt b/main/src/addins/Xml/schemas/readme.txt
index a6158b05b9..a6158b05b9 100755
--- a/main/src/addins/MonoDevelop.XmlEditor/schemas/readme.txt
+++ b/main/src/addins/Xml/schemas/readme.txt
diff --git a/main/src/addins/MonoDevelop.XmlEditor/schemas/xslt.xsd b/main/src/addins/Xml/schemas/xslt.xsd
index 45f77399af..45f77399af 100755
--- a/main/src/addins/MonoDevelop.XmlEditor/schemas/xslt.xsd
+++ b/main/src/addins/Xml/schemas/xslt.xsd
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CodeCompletion/CompletionData.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CodeCompletion/CompletionData.cs
index 4a7979c620..2303d06b5e 100644
--- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CodeCompletion/CompletionData.cs
+++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CodeCompletion/CompletionData.cs
@@ -58,7 +58,10 @@ namespace MonoDevelop.Ide.CodeCompletion
public virtual TooltipInformation CreateTooltipInformation (bool smartWrap)
{
- return new TooltipInformation ();
+ var tt = new TooltipInformation ();
+ if (!string.IsNullOrEmpty (Description))
+ tt.AddCategory (null, Description);
+ return tt;
}
public virtual bool HasOverloads {
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CodeCompletion/TooltipInformation.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CodeCompletion/TooltipInformation.cs
index 8ad0637275..47f359e855 100644
--- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CodeCompletion/TooltipInformation.cs
+++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CodeCompletion/TooltipInformation.cs
@@ -36,7 +36,13 @@ namespace MonoDevelop.Ide.CodeCompletion
{
string signatureMarkup;
string summaryMarkup;
- List<Tuple<string, string>> categories = new List<Tuple<string, string>> ();
+ readonly List<Tuple<string, string>> categories = new List<Tuple<string, string>> ();
+
+ public bool IsEmpty {
+ get {
+ return string.IsNullOrEmpty (SignatureMarkup) && string.IsNullOrEmpty (SummaryMarkup) && categories.Count == 0;
+ }
+ }
/// <summary>
/// Gets or sets the signature markup. The signature is never null.
@@ -96,6 +102,8 @@ namespace MonoDevelop.Ide.CodeCompletion
/// </param>
public void AddCategory (string categoryLabel, string categoryMarkup)
{
+ if (categoryMarkup == null)
+ throw new ArgumentNullException ("categoryMarkup");
categories.Add (Tuple.Create (categoryLabel, categoryMarkup));
}
}
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CodeCompletion/TooltipInformationWindow.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CodeCompletion/TooltipInformationWindow.cs
index 5798308ebe..908ab58f73 100644
--- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CodeCompletion/TooltipInformationWindow.cs
+++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CodeCompletion/TooltipInformationWindow.cs
@@ -65,7 +65,7 @@ namespace MonoDevelop.Ide.CodeCompletion
public void AddOverload (TooltipInformation tooltipInformation)
{
- if (tooltipInformation == null || string.IsNullOrEmpty (tooltipInformation.SignatureMarkup))
+ if (tooltipInformation == null || tooltipInformation.IsEmpty)
return;
overloads.Add (tooltipInformation);
@@ -80,7 +80,7 @@ namespace MonoDevelop.Ide.CodeCompletion
public void AddOverload (CompletionData data)
{
var tooltipInformation = data.CreateTooltipInformation (false);
- if (string.IsNullOrEmpty (tooltipInformation.SignatureMarkup))
+ if (tooltipInformation.IsEmpty)
return;
using (var layout = new Pango.Layout (PangoContext)) {
@@ -110,7 +110,7 @@ namespace MonoDevelop.Ide.CodeCompletion
if (current_overload >= 0 && current_overload < overloads.Count) {
var o = overloads[current_overload];
headLabel.Markup = o.SignatureMarkup;
- headLabel.Visible = true;
+ headLabel.Visible = !string.IsNullOrEmpty (o.SignatureMarkup);
int x, y;
GetPosition (out x, out y);
var geometry = DesktopService.GetUsableMonitorGeometry (Screen, Screen.GetMonitorAtPoint (x, y));
@@ -197,11 +197,13 @@ namespace MonoDevelop.Ide.CodeCompletion
vbox.Spacing = 2;
- var catLabel = new FixedWidthWrapLabel ();
- catLabel.Text = categoryName;
- catLabel.ModifyFg (StateType.Normal, foreColor.ToGdkColor ());
+ if (categoryName != null) {
+ var catLabel = new FixedWidthWrapLabel ();
+ catLabel.Text = categoryName;
+ catLabel.ModifyFg (StateType.Normal, foreColor.ToGdkColor ());
- vbox.PackStart (catLabel, false, true, 0);
+ vbox.PackStart (catLabel, false, true, 0);
+ }
var contentLabel = new FixedWidthWrapLabel ();
contentLabel.Wrap = Pango.WrapMode.WordChar;
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CustomTools/CustomToolService.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CustomTools/CustomToolService.cs
index 4897ecb754..78f2292634 100644
--- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CustomTools/CustomToolService.cs
+++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CustomTools/CustomToolService.cs
@@ -42,9 +42,9 @@ namespace MonoDevelop.Ide.CustomTools
{
public static class CustomToolService
{
- static Dictionary<string,CustomToolExtensionNode> nodes = new Dictionary<string,CustomToolExtensionNode> ();
+ static readonly Dictionary<string,CustomToolExtensionNode> nodes = new Dictionary<string,CustomToolExtensionNode> ();
- static Dictionary<string,IAsyncOperation> runningTasks = new Dictionary<string, IAsyncOperation> ();
+ static readonly Dictionary<string,IAsyncOperation> runningTasks = new Dictionary<string, IAsyncOperation> ();
static CustomToolService ()
{
@@ -79,15 +79,25 @@ namespace MonoDevelop.Ide.CustomTools
//forces static ctor to run
}
- static ISingleFileCustomTool GetGenerator (ProjectFile file)
+ static ISingleFileCustomTool GetGenerator (string name)
{
+ if (string.IsNullOrEmpty (name))
+ return null;
+
+ if (name.StartsWith ("msbuild:", StringComparison.OrdinalIgnoreCase)) {
+ string target = name.Substring ("msbuild:".Length).Trim ();
+ if (string.IsNullOrEmpty (target))
+ return null;
+ return new MSBuildCustomTool (target);
+ }
+
CustomToolExtensionNode node;
- if (!string.IsNullOrEmpty (file.Generator) && nodes.TryGetValue (file.Generator, out node)) {
+ if (nodes.TryGetValue (name, out node)) {
try {
return node.Tool;
} catch (Exception ex) {
- LoggingService.LogError ("Error loading generator '" + file.Generator + "'", ex);
- nodes.Remove (file.Generator);
+ LoggingService.LogError ("Error loading generator '" + name + "'", ex);
+ nodes.Remove (name);
}
}
return null;
@@ -95,7 +105,7 @@ namespace MonoDevelop.Ide.CustomTools
public static void Update (ProjectFile file, bool force)
{
- var tool = GetGenerator (file);
+ var tool = GetGenerator (file.Generator);
if (tool == null)
return;
@@ -124,7 +134,7 @@ namespace MonoDevelop.Ide.CustomTools
var aggOp = new AggregatedOperationMonitor (monitor);
try {
monitor.BeginTask (GettextCatalog.GetString ("Running generator '{0}' on file '{1}'...", file.Generator, file.Name), 1);
- var op = tool.Generate (monitor, file, result);
+ IAsyncOperation op = tool.Generate (monitor, file, result);
runningTasks.Add (file.FilePath, op);
aggOp.AddOperation (op);
op.Completed += delegate {
@@ -172,20 +182,21 @@ namespace MonoDevelop.Ide.CustomTools
monitor.ReportError (msg, result.UnhandledException);
LoggingService.LogError (msg, result.UnhandledException);
}
-
+
genFileName = result.GeneratedFilePath.IsNullOrEmpty?
null : result.GeneratedFilePath.ToRelative (file.FilePath.ParentDirectory);
- bool validName = !string.IsNullOrEmpty (genFileName)
- && genFileName.IndexOfAny (new char[] { '/', '\\' }) < 0
- && FileService.IsValidFileName (genFileName);
-
- if (!broken && !validName) {
- broken = true;
- string msg = GettextCatalog.GetString ("The '{0}' code generator output invalid filename '{1}'",
- file.Generator, result.GeneratedFilePath);
- result.Errors.Add (new CompilerError (file.Name, 0, 0, "", msg));
- monitor.ReportError (msg, null);
+ if (!string.IsNullOrEmpty (genFileName)) {
+ bool validName = genFileName.IndexOfAny (new char[] { '/', '\\' }) < 0
+ && FileService.IsValidFileName (genFileName);
+
+ if (!broken && !validName) {
+ broken = true;
+ string msg = GettextCatalog.GetString ("The '{0}' code generator output invalid filename '{1}'",
+ file.Generator, result.GeneratedFilePath);
+ result.Errors.Add (new CompilerError (file.Name, 0, 0, "", msg));
+ monitor.ReportError (msg, null);
+ }
}
if (result.Errors.Count > 0) {
@@ -243,7 +254,7 @@ namespace MonoDevelop.Ide.CustomTools
{
foreach (ProjectFileEventInfo args in e) {
var file = args.ProjectFile;
- var tool = GetGenerator (file);
+ var tool = GetGenerator (file.Generator);
if (tool == null)
continue;
}
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CustomTools/MSBuildCustomTool.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CustomTools/MSBuildCustomTool.cs
new file mode 100644
index 0000000000..1edc9e59fc
--- /dev/null
+++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CustomTools/MSBuildCustomTool.cs
@@ -0,0 +1,55 @@
+//
+// MSBuildCustomTool.cs
+//
+// Author:
+// Michael Hutchinson <mhutch@xamarin.com>
+//
+// Copyright (c) 2014 Xamarin Inc.
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+
+using MonoDevelop.Core;
+using MonoDevelop.Projects;
+using System.CodeDom.Compiler;
+
+namespace MonoDevelop.Ide.CustomTools
+{
+ class MSBuildCustomTool : ISingleFileCustomTool
+ {
+ readonly string targetName;
+
+ public MSBuildCustomTool (string targetName)
+ {
+ this.targetName = targetName;
+ }
+
+ public IAsyncOperation Generate (IProgressMonitor monitor, ProjectFile file, SingleFileCustomToolResult result)
+ {
+ return new ThreadAsyncOperation (() => {
+ var buildResult = file.Project.RunTarget (monitor, targetName, IdeApp.Workspace.ActiveConfiguration);
+ foreach (var err in buildResult.Errors) {
+ result.Errors.Add (new CompilerError (err.FileName, err.Line, err.Column, err.ErrorNumber, err.ErrorText) {
+ IsWarning = err.IsWarning
+ });
+ }
+ }, result);
+ }
+ }
+}
+
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Projects/NewFileDialog.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Projects/NewFileDialog.cs
index e0ba04f386..61600ffd88 100644
--- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Projects/NewFileDialog.cs
+++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Projects/NewFileDialog.cs
@@ -475,6 +475,7 @@ namespace MonoDevelop.Ide.Projects
if (!item.Create (project, project, path, titem.Language, filename))
return;
} catch (Exception ex) {
+ LoggingService.LogError ("Error creating file", ex);
MessageService.ShowException (ex);
return;
}
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.csproj b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.csproj
index 6ec0c12be4..1ecdf471ca 100644
--- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.csproj
+++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.csproj
@@ -2739,6 +2739,7 @@
<Compile Include="MonoDevelop.Ide.Gui.Pads.ProjectPad\SapNodeBuilder.cs" />
<Compile Include="MonoDevelop.Ide.CustomTools\PublicResXFileCodeGenerator.cs" />
<Compile Include="MonoDevelop.Components\ImageLoader.cs" />
+ <Compile Include="MonoDevelop.Ide.CustomTools\MSBuildCustomTool.cs" />
<Compile Include="MonoDevelop.Components\Mac\GtkMacInterop.cs" />
<Compile Include="MonoDevelop.Components\Control.cs" />
</ItemGroup>
diff --git a/main/tests/Makefile.am b/main/tests/Makefile.am
index 60b7c13a98..a7afc5ae80 100644
--- a/main/tests/Makefile.am
+++ b/main/tests/Makefile.am
@@ -29,7 +29,8 @@ TEST_ASSEMBLIES_COMMON = \
$(TEST_DIR)/Mono.TextTemplating.Tests.dll \
$(TEST_DIR)/MonoDevelop.PackageManagement.Tests.dll \
$(TEST_DIR)/MonoDevelop.TextEditor.Tests.dll \
- $(TEST_DIR)/MonoDevelop.XmlEditor.Tests.dll \
+ $(TEST_DIR)/MonoDevelop.Xml.Tests.dll \
+ $(TEST_DIR)/MonoDevelop.AspNet.Tests.dll \
$(EXTERNAL)/nrefactory/bin/Debug/ICSharpCode.NRefactory.Tests.dll
ALL_CSPROJ = $(TEST_PROJECTS_COMMON)
diff --git a/main/tests/UnitTests/MonoDevelop.CSharpBinding/TestDocument.cs b/main/tests/UnitTests/MonoDevelop.CSharpBinding/TestDocument.cs
index b0ae822576..8803593ed1 100644
--- a/main/tests/UnitTests/MonoDevelop.CSharpBinding/TestDocument.cs
+++ b/main/tests/UnitTests/MonoDevelop.CSharpBinding/TestDocument.cs
@@ -31,7 +31,8 @@ namespace MonoDevelop.CSharpBinding
{
public class TestDocument : MonoDevelop.Ide.Gui.Document
{
- internal ParsedDocument HiddenParsedDocument;
+ public ParsedDocument HiddenParsedDocument;
+
public override ParsedDocument ParsedDocument {
get {
return HiddenParsedDocument;
@@ -42,7 +43,7 @@ namespace MonoDevelop.CSharpBinding
{
}
- internal IProjectContent HiddenProjectContent;
+ public IProjectContent HiddenProjectContent;
public override IProjectContent GetProjectContext ()
{
diff --git a/main/tests/UnitTests/UnitTests.csproj b/main/tests/UnitTests/UnitTests.csproj
index f768e80321..502d31e604 100644
--- a/main/tests/UnitTests/UnitTests.csproj
+++ b/main/tests/UnitTests/UnitTests.csproj
@@ -82,11 +82,6 @@
<Name>MonoDevelop.Ide</Name>
<Private>False</Private>
</ProjectReference>
- <ProjectReference Include="..\..\src\addins\MonoDevelop.XmlEditor\MonoDevelop.XmlEditor.csproj">
- <Project>{86DFC74A-B0B6-4C73-9E05-9098DA8FA5F1}</Project>
- <Name>MonoDevelop.XmlEditor</Name>
- <Private>False</Private>
- </ProjectReference>
<ProjectReference Include="..\..\src\addins\CSharpBinding\CSharpBinding.csproj">
<Project>{07CC7654-27D6-421D-A64C-0FFA40456FA2}</Project>
<Name>CSharpBinding</Name>
@@ -102,11 +97,6 @@
<Name>MonoDevelop.Refactoring</Name>
<Private>False</Private>
</ProjectReference>
- <ProjectReference Include="..\..\src\addins\AspNet\MonoDevelop.AspNet\MonoDevelop.AspNet.csproj">
- <Project>{1CF94D07-5480-4D10-A3CD-2EBD5E87B02E}</Project>
- <Name>MonoDevelop.AspNet</Name>
- <Private>False</Private>
- </ProjectReference>
<ProjectReference Include="..\..\src\addins\MonoDevelop.DesignerSupport\MonoDevelop.DesignerSupport.csproj">
<Project>{2C24D515-4A2C-445C-8419-C09231913CFA}</Project>
<Name>MonoDevelop.DesignerSupport</Name>
@@ -147,26 +137,11 @@
<Name>MonoDevelop.Debugger</Name>
<Private>False</Private>
</ProjectReference>
- <ProjectReference Include="..\..\src\addins\MonoDevelop.Debugger.Soft\MonoDevelop.Debugger.Soft.AspNet\MonoDevelop.Debugger.Soft.AspNet.csproj">
- <Project>{F5390DA4-08B7-47E3-B6F3-D50683316AB4}</Project>
- <Name>MonoDevelop.Debugger.Soft.AspNet</Name>
- <Private>False</Private>
- </ProjectReference>
<ProjectReference Include="..\..\src\addins\CSharpBinding\Autotools\Autotools.csproj">
<Project>{F79A67A1-4BA2-48F8-A7DD-A72E316EF6CD}</Project>
<Name>Autotools</Name>
<Private>False</Private>
</ProjectReference>
- <ProjectReference Include="..\..\src\addins\CSharpBinding\AspNet\CSharpBinding.AspNet.csproj">
- <Project>{F426CBB2-77FC-4E14-9E28-E667C2D1299A}</Project>
- <Name>CSharpBinding.AspNet</Name>
- <Private>False</Private>
- </ProjectReference>
- <ProjectReference Include="..\..\src\addins\AspNet\MonoDevelop.AspNet.Mvc\MonoDevelop.AspNet.Mvc.csproj">
- <Project>{B32AD0DD-5247-437B-A2EF-1A4676C1B072}</Project>
- <Name>MonoDevelop.AspNet.Mvc</Name>
- <Private>False</Private>
- </ProjectReference>
<ProjectReference Include="..\..\src\addins\TextTemplating\MonoDevelop.TextTemplating\MonoDevelop.TextTemplating.csproj">
<Project>{8CCA39DD-8412-4547-BE7F-0C3D3ACC6FAC}</Project>
<Name>MonoDevelop.TextTemplating</Name>
@@ -228,16 +203,6 @@
</ProjectReference>
</ItemGroup>
<ItemGroup>
- <Compile Include="MonoDevelop.AspNet.Mvc.Completion\CompletionTests.cs" />
- <Compile Include="MonoDevelop.AspNet.Mvc.Completion\RazorCompletionTesting.cs" />
- <Compile Include="MonoDevelop.AspNet.Mvc.StateEngine\RazorCodeBlockParsingTests.cs" />
- <Compile Include="MonoDevelop.AspNet.Mvc.StateEngine\RazorCodeFragmentsParsingTests.cs" />
- <Compile Include="MonoDevelop.AspNet.Mvc.StateEngine\RazorCommentParsingTests.cs" />
- <Compile Include="MonoDevelop.AspNet.Mvc.StateEngine\RazorDirectivesParsingTests.cs" />
- <Compile Include="MonoDevelop.AspNet.Mvc.StateEngine\RazorExplicitExpressionsParsingTests.cs" />
- <Compile Include="MonoDevelop.AspNet.Mvc.StateEngine\RazorImplicitExpressionsParsingTests.cs" />
- <Compile Include="MonoDevelop.AspNet.Mvc.StateEngine\RazorParsingTests.cs" />
- <Compile Include="MonoDevelop.AspNet.Mvc.StateEngine\RazorStatementsParsingTests.cs" />
<Compile Include="Util.cs" />
<Compile Include="MonoDevelop.Projects\MdsTests.cs" />
<Compile Include="MonoDevelop.Projects\TestProjectsChecks.cs" />
@@ -271,9 +236,6 @@
<Compile Include="MonoDevelop.Core\BacktrackingStringMatcherTests.cs" />
<Compile Include="MonoDevelop.Ide.Gui\SearchPopupWindowTests.cs" />
<Compile Include="MonoDevelop.Core\LaneStringMatcherTests.cs" />
- <Compile Include="MonoDevelop.Xml.StateEngine\HtmlParsingTests.cs" />
- <Compile Include="MonoDevelop.Xml.StateEngine\AspNetParsingTests.cs" />
- <Compile Include="MonoDevelop.Xml.StateEngine\ParsingTests.cs" />
<Compile Include="MonoDevelop.Refactoring\IssueGroupTests.cs" />
<Compile Include="MonoDevelop.Refactoring\MockGroupingProvider.cs" />
<Compile Include="MonoDevelop.Refactoring\GroupingProviderTestBase.cs" />
@@ -283,8 +245,6 @@
<Compile Include="MonoDevelop.CSharpBinding\AutomaticBracketInsertionTests.cs" />
<Compile Include="MonoDevelop.CSharpBinding\NamedArgumentCompletionTests.cs" />
<Compile Include="MonoDevelop.SourceEditor\DebugTooltipTests.cs" />
- <Compile Include="MonoDevelop.AspNet\AspNetCompletionTests.cs" />
- <Compile Include="MonoDevelop.AspNet\AspNetTesting.cs" />
<Compile Include="MonoDevelop.CSharpBinding\UnitTesteditorIntegrationTests.cs" />
<Compile Include="MonoDevelop.Refactoring\AnalysisJobQueueTests.cs" />
<Compile Include="MonoDevelop.Refactoring\SimpleAnalysisJobTests.cs" />
@@ -294,7 +254,6 @@
<Compile Include="MonoDevelop.SourceEditor\JSonIndentEngineTests.cs" />
<Compile Include="MonoDevelop.Projects\SharedAssetsProjectTests.cs" />
<Compile Include="MonoDevelop.Projects\WebProjectTests.cs" />
- <Compile Include="MonoDevelop.Xml.StateEngine\HtmlImplicitClosingTests.cs" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<Import Project="..\..\md.targets" />
@@ -303,10 +262,7 @@
<None Include="MonoDevelop.Projects\CompletionDatabaseTests.cs" />
<None Include="MonoDevelop.Projects\DomPersistenceTests.cs" />
<None Include="MonoDevelop.Projects\DomCompilationUnitTests.cs" />
- <Compile Include="MonoDevelop.Xml.StateEngine\TestParser.cs" />
<None Include="MonoDevelop.Projects\DomTests.cs" />
- <None Include="MonoDevelop.AspNet\AspNetCompletionTests.cs" />
- <None Include="MonoDevelop.AspNet\AspNetTesting.cs" />
</ItemGroup>
<ItemGroup />
<ItemGroup>
diff --git a/version-checks b/version-checks
index 4f596346f9..6d49dcf4a7 100755
--- a/version-checks
+++ b/version-checks
@@ -17,7 +17,7 @@ DEP[0]=md-addins
DEP_NAME[0]=MDADDINS
DEP_PATH[0]=${top_srcdir}/../md-addins
DEP_MODULE[0]=git@github.com:xamarin/md-addins.git
-DEP_NEEDED_VERSION[0]=cede3520489f493218e3d754b3e6f3aa63d299c8
+DEP_NEEDED_VERSION[0]=5f78b9afbe79b84e703fc3d25fda411d371c8140
DEP_BRANCH_AND_REMOTE[0]="master origin/master"
# heap-shot