33
33
using MonoDevelop.Ide.Gui.Content;
34
34
using MonoDevelop.Ide.Gui;
35
using MonoDevelop.Projects;
36
using MonoDevelop.Projects.Text;
36
38
namespace MonoDevelop.Ide.Navigation
251
253
currentDoc.Closed += HandleCurrentDocClosed;
253
if (currentDoc.TextEditor != null) {
254
currentDoc.TextEditor.TextChanged += BufferTextChanged;
255
currentDoc.TextEditor.CursorPositionChanged += BufferCaretPositionChanged;
255
if (currentDoc.Editor != null) {
256
currentDoc.Editor.Document.TextReplaced += BufferTextChanged;
257
currentDoc.Editor.Caret.PositionChanged += BufferCaretPositionChanged;
269
271
currentDoc.Closed -= HandleCurrentDocClosed;
270
if (currentDoc.TextEditor != null) {
271
currentDoc.TextEditor.TextChanged -= BufferTextChanged;
272
currentDoc.TextEditor.CursorPositionChanged -= BufferCaretPositionChanged;
272
if (currentDoc.Editor != null) {
273
currentDoc.Editor.Document.TextReplaced -= BufferTextChanged;
274
currentDoc.Editor.Caret.PositionChanged -= BufferCaretPositionChanged;
274
276
currentDoc = null;
289
291
#region Text file line number and snippet updating
291
static void LineCountChanged (object sender, MonoDevelop.Projects.Text.LineCountEventArgs args)
293
// MonoDevelop.Projects.Text.ITextFile textFile = (MonoDevelop.Projects.Text.ITextFile) sender;
296
static void CommitCountChanges (object sender, MonoDevelop.Projects.Text.TextFileEventArgs args)
298
// MonoDevelop.Projects.Text.ITextFile textFile = (MonoDevelop.Projects.Text.ITextFile) sender;
301
static void ResetCountChanges (object sender, MonoDevelop.Projects.Text.TextFileEventArgs args)
303
// MonoDevelop.Projects.Text.ITextFile textFile = (MonoDevelop.Projects.Text.ITextFile) sender;
306
static void FileRenamed (object sender, MonoDevelop.Projects.ProjectFileRenamedEventArgs args)
293
static void LineCountChanged (object sender, LineCountEventArgs args)
295
// MonoDevelop.Projects.Text.ITextFile textFile = (MonoDevelop.Projects.Text.ITextFile) sender;
298
static void CommitCountChanges (object sender, TextFileEventArgs args)
300
// MonoDevelop.Projects.Text.ITextFile textFile = (MonoDevelop.Projects.Text.ITextFile) sender;
303
static void ResetCountChanges (object sender, TextFileEventArgs args)
305
// MonoDevelop.Projects.Text.ITextFile textFile = (MonoDevelop.Projects.Text.ITextFile) sender;
308
static void FileRenamed (object sender, ProjectFileRenamedEventArgs e)
308
310
bool changed = false;
309
foreach (NavigationHistoryItem point in history) {
310
DocumentNavigationPoint dp = point.NavigationPoint as DocumentNavigationPoint;
311
changed &= (dp != null && dp.HandleRenameEvent (args.OldName, args.NewName));
311
foreach (ProjectFileRenamedEventInfo args in e) {
312
foreach (NavigationHistoryItem point in history) {
313
DocumentNavigationPoint dp = point.NavigationPoint as DocumentNavigationPoint;
314
changed &= (dp != null && dp.HandleRenameEvent (args.OldName, args.NewName));
314
318
OnHistoryChanged ();