diff --git a/src/AddIns/BackendBindings/AspNet.Mvc/Project/Src/Folding/CSharpRazorLanguageBinding.cs b/src/AddIns/BackendBindings/AspNet.Mvc/Project/Src/Folding/CSharpRazorLanguageBinding.cs index d2ab5ebaaf..228c97d5ad 100644 --- a/src/AddIns/BackendBindings/AspNet.Mvc/Project/Src/Folding/CSharpRazorLanguageBinding.cs +++ b/src/AddIns/BackendBindings/AspNet.Mvc/Project/Src/Folding/CSharpRazorLanguageBinding.cs @@ -13,9 +13,5 @@ namespace ICSharpCode.AspNet.Mvc.Folding new RazorFoldGeneratorFactory(".cshtml")) { } - - public override string HighlightingSyntaxName { - get { return "C#/Razor"; } - } } } diff --git a/src/AddIns/BackendBindings/AspNet.Mvc/Project/Src/Folding/HtmlLanguageBinding.cs b/src/AddIns/BackendBindings/AspNet.Mvc/Project/Src/Folding/HtmlLanguageBinding.cs index 4b7672243c..26a8805a62 100644 --- a/src/AddIns/BackendBindings/AspNet.Mvc/Project/Src/Folding/HtmlLanguageBinding.cs +++ b/src/AddIns/BackendBindings/AspNet.Mvc/Project/Src/Folding/HtmlLanguageBinding.cs @@ -8,7 +8,7 @@ using ICSharpCode.SharpDevelop.Editor; namespace ICSharpCode.AspNet.Mvc.Folding { - public abstract class HtmlLanguageBinding : DefaultLanguageBinding + public class HtmlLanguageBinding : DefaultLanguageBinding { ITextEditorWithParseInformationFoldingFactory textEditorFactory; IFoldGeneratorFactory foldGeneratorFactory; @@ -30,8 +30,6 @@ namespace ICSharpCode.AspNet.Mvc.Folding get { return LanguageProperties.None; } } - public abstract string HighlightingSyntaxName { get; } - public override void Attach(ITextEditor editor) { Attach(textEditorFactory.CreateTextEditor(editor)); @@ -40,7 +38,6 @@ namespace ICSharpCode.AspNet.Mvc.Folding void Attach(ITextEditorWithParseInformationFolding editor) { foldGenerator = foldGeneratorFactory.CreateFoldGenerator(editor); - editor.UpdateSyntaxHighlighting(HighlightingSyntaxName); } public override void Detach() diff --git a/src/AddIns/BackendBindings/AspNet.Mvc/Project/Src/Folding/ITextEditorWithParseInformationFolding.cs b/src/AddIns/BackendBindings/AspNet.Mvc/Project/Src/Folding/ITextEditorWithParseInformationFolding.cs index 005ea9bc81..a27c100f6f 100644 --- a/src/AddIns/BackendBindings/AspNet.Mvc/Project/Src/Folding/ITextEditorWithParseInformationFolding.cs +++ b/src/AddIns/BackendBindings/AspNet.Mvc/Project/Src/Folding/ITextEditorWithParseInformationFolding.cs @@ -15,6 +15,5 @@ namespace ICSharpCode.AspNet.Mvc.Folding void UpdateFolds(IEnumerable folds); void InstallFoldingManager(); string GetTextSnapshot(); - void UpdateSyntaxHighlighting(string highlightingSyntaxName); } } diff --git a/src/AddIns/BackendBindings/AspNet.Mvc/Project/Src/Folding/TextEditorWithParseInformationFolding.cs b/src/AddIns/BackendBindings/AspNet.Mvc/Project/Src/Folding/TextEditorWithParseInformationFolding.cs index d200b97a35..ac1910a4d3 100644 --- a/src/AddIns/BackendBindings/AspNet.Mvc/Project/Src/Folding/TextEditorWithParseInformationFolding.cs +++ b/src/AddIns/BackendBindings/AspNet.Mvc/Project/Src/Folding/TextEditorWithParseInformationFolding.cs @@ -73,26 +73,5 @@ namespace ICSharpCode.AspNet.Mvc.Folding { FoldingManager.Uninstall(foldingManager); } - - public void UpdateSyntaxHighlighting(string name) - { - if (!IsUsingSyntaxhighlighting(name)) { - ChangeSyntaxHighlighting(name); - } - } - - bool IsUsingSyntaxhighlighting(string name) - { - IHighlightingDefinition highlighting = CodeEditorView.SyntaxHighlighting; - if (highlighting != null) { - return highlighting.Name == name; - } - return false; - } - - void ChangeSyntaxHighlighting(string name) - { - CodeEditorView.SyntaxHighlighting = HighlightingManager.Instance.GetDefinition(name); - } } } diff --git a/src/AddIns/BackendBindings/AspNet.Mvc/Project/Src/Folding/VisualBasicRazorLanguageBinding.cs b/src/AddIns/BackendBindings/AspNet.Mvc/Project/Src/Folding/VisualBasicRazorLanguageBinding.cs index 4625fc00f8..3fd5838a1b 100644 --- a/src/AddIns/BackendBindings/AspNet.Mvc/Project/Src/Folding/VisualBasicRazorLanguageBinding.cs +++ b/src/AddIns/BackendBindings/AspNet.Mvc/Project/Src/Folding/VisualBasicRazorLanguageBinding.cs @@ -13,9 +13,5 @@ namespace ICSharpCode.AspNet.Mvc.Folding new RazorFoldGeneratorFactory(".vbhtml")) { } - - public override string HighlightingSyntaxName { - get { return "VBNET/Razor"; } - } } } diff --git a/src/AddIns/BackendBindings/AspNet.Mvc/Project/Src/Folding/WebFormsLanguageBinding.cs b/src/AddIns/BackendBindings/AspNet.Mvc/Project/Src/Folding/WebFormsLanguageBinding.cs index 0a016667f6..ca57ef3d86 100644 --- a/src/AddIns/BackendBindings/AspNet.Mvc/Project/Src/Folding/WebFormsLanguageBinding.cs +++ b/src/AddIns/BackendBindings/AspNet.Mvc/Project/Src/Folding/WebFormsLanguageBinding.cs @@ -21,9 +21,5 @@ namespace ICSharpCode.AspNet.Mvc.Folding : base(textEditorFactory, foldGeneratorFactory) { } - - public override string HighlightingSyntaxName { - get { return "ASP/XHTML"; } - } } } diff --git a/src/AddIns/DisplayBindings/AvalonEdit.AddIn/Src/AvalonEditViewContent.cs b/src/AddIns/DisplayBindings/AvalonEdit.AddIn/Src/AvalonEditViewContent.cs index 2966a522aa..25b4989d99 100644 --- a/src/AddIns/DisplayBindings/AvalonEdit.AddIn/Src/AvalonEditViewContent.cs +++ b/src/AddIns/DisplayBindings/AvalonEdit.AddIn/Src/AvalonEditViewContent.cs @@ -136,8 +136,7 @@ namespace ICSharpCode.AvalonEdit.AddIn isLoading = true; try { // BookmarksDetach(); - codeEditor.SyntaxHighlighting = - HighlightingManager.Instance.GetDefinitionByExtension(Path.GetExtension(file.FileName)); + UpdateSyntaxHighlighting(file.FileName); if (!file.IsUntitled) { codeEditor.PrimaryTextEditor.IsReadOnly = (File.GetAttributes(file.FileName) & FileAttributes.ReadOnly) == FileAttributes.ReadOnly; @@ -157,6 +156,12 @@ namespace ICSharpCode.AvalonEdit.AddIn } } + void UpdateSyntaxHighlighting(FileName fileName) + { + codeEditor.SyntaxHighlighting = + HighlightingManager.Instance.GetDefinitionByExtension(Path.GetExtension(fileName)); + } + protected override void OnFileNameChanged(OpenedFile file) { base.OnFileNameChanged(file); @@ -174,6 +179,7 @@ namespace ICSharpCode.AvalonEdit.AddIn // processes the file name change codeEditor.FileName = newFileName; + UpdateSyntaxHighlighting(newFileName); ParserService.BeginParse(file.FileName, codeEditor.DocumentAdapter); } diff --git a/src/AddIns/DisplayBindings/XmlEditor/Project/Src/XmlLanguageBinding.cs b/src/AddIns/DisplayBindings/XmlEditor/Project/Src/XmlLanguageBinding.cs index f7cc769f14..188f4ac0c5 100644 --- a/src/AddIns/DisplayBindings/XmlEditor/Project/Src/XmlLanguageBinding.cs +++ b/src/AddIns/DisplayBindings/XmlEditor/Project/Src/XmlLanguageBinding.cs @@ -22,8 +22,6 @@ namespace ICSharpCode.XmlEditor // HACK: disable SharpDevelop's built-in folding codeEditorView = editor.GetService(typeof(AvalonEdit.TextEditor)) as AvalonEdit.AddIn.CodeEditorView; DisableParseInformationFolding(); - - UpdateHighlightingIfNotXml(); foldingManager = new XmlFoldingManager(editor); foldingManager.UpdateFolds(); @@ -32,29 +30,6 @@ namespace ICSharpCode.XmlEditor base.Attach(editor); } - void UpdateHighlightingIfNotXml() - { - if (codeEditorView != null) { - if (!IsUsingXmlHighlighting()) { - ChangeHighlightingToXml(); - } - } - } - - bool IsUsingXmlHighlighting() - { - IHighlightingDefinition highlighting = codeEditorView.SyntaxHighlighting; - if (highlighting != null) { - return highlighting.Name == "XML"; - } - return false; - } - - void ChangeHighlightingToXml() - { - codeEditorView.SyntaxHighlighting = HighlightingManager.Instance.GetDefinition("XML"); - } - public override void Detach() { foldingManager.Stop();