1
// Copyright (c) AlphaSierraPapa for the SharpDevelop Team (for details please see \doc\copyright.txt)
2
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
5
using ICSharpCode.AvalonEdit.Document;
6
using ICSharpCode.Core;
7
using ICSharpCode.NRefactory;
8
using ICSharpCode.SharpDevelop.Editor;
10
namespace ICSharpCode.SharpDevelop.Bookmarks
13
/// A bookmark that is persistant across SharpDevelop sessions and has a text marker assigned to it.
15
public abstract class SDMarkerBookmark : SDBookmark
17
public SDMarkerBookmark(FileName fileName, Location location) : base(fileName, location)
24
protected abstract ITextMarker CreateMarker(ITextMarkerService markerService);
29
if (this.Document != null) {
30
ITextMarkerService markerService = this.Document.GetService(typeof(ITextMarkerService)) as ITextMarkerService;
31
if (markerService != null) {
32
marker = CreateMarker(markerService);
37
protected override void OnDocumentChanged(EventArgs e)
39
base.OnDocumentChanged(e);
43
public virtual void RemoveMarker()