Exemplo n.º 1
0
        void Doc_TextChanging(object sender, MonoDevelop.Core.Text.TextChangeEventArgs e)
        {
            var lineSegment = LineSegment.Segment;

            for (int i = 0; i < e.TextChanges.Count; ++i)
            {
                var change = e.TextChanges[i];
                if (lineSegment.IsInside(change.Offset) || lineSegment.IsInside(change.Offset + change.RemovalLength) ||
                    change.Offset <= lineSegment.Offset && lineSegment.Offset <= change.Offset + change.RemovalLength)
                {
                    doc.RemoveMarker(this);
                }
            }
        }
Exemplo n.º 2
0
        void Document_TextChanged(object sender, MonoDevelop.Core.Text.TextChangeEventArgs e)
        {
            var oldHeight = TotalHeight;

            Rebuild();
            if ((int)oldHeight != (int)TotalHeight)
            {
                for (int i = 0; i < e.TextChanges.Count; ++i)
                {
                    var change     = e.TextChanges [i];
                    var lineNumber = this.editor.OffsetToLineNumber(change.NewOffset);
                    OnLineUpdateFrom(new HeightChangedEventArgs(lineNumber - 1));
                }
            }
        }
Exemplo n.º 3
0
 void OnTextReplacing(object sender, MonoDevelop.Core.Text.TextChangeEventArgs e)
 {
     lock (document) {
         if (lastChange == null)
         {
             lastChange = new ChangeInfo(e.Offset, new System.Web.Razor.Text.SeekableTextReader((sender as MonoDevelop.Ide.Editor.ITextDocument).Text));
         }
         if (e.ChangeDelta > 0)
         {
             lastChange.Length += e.InsertionLength;
         }
         else
         {
             lastChange.Length -= e.RemovalLength;
         }
     }
 }
Exemplo n.º 4
0
        void TrackDocument_TextChanging(object sender, MonoDevelop.Core.Text.TextChangeEventArgs e)
        {
            if (lineStates == null)
            {
                return;
            }
            var startLine     = trackDocument.GetLineByOffset(e.Offset);
            var endRemoveLine = trackDocument.GetLineByOffset(e.Offset + e.RemovalLength);

            if (startLine == null || endRemoveLine == null)
            {
                return;
            }
            try {
                var lineNumber = startLine.LineNumber;
                lineStates.RemoveRange(lineNumber, endRemoveLine.LineNumber - lineNumber);
            } catch (Exception ex) {
                Console.WriteLine("error while DiffTracker.TrackDocument_TextChanging:" + ex);
            }
        }
Exemplo n.º 5
0
        void TrackDocument_TextChanged(object sender, MonoDevelop.Core.Text.TextChangeEventArgs e)
        {
            var startLine     = trackDocument.GetLineByOffset(e.Offset);
            var endLine       = trackDocument.GetLineByOffset(e.Offset + e.InsertionLength);
            var lineNumber    = startLine.LineNumber;
            var insertedLines = endLine.LineNumber - lineNumber;

            try {
                lineStates [lineNumber] = new LineChangeInfo(Mono.TextEditor.TextDocument.LineState.Dirty);
                if (trackDocument != null)
                {
                    trackDocument.CommitLineUpdate(lineNumber);
                }
                while (insertedLines-- > 0)
                {
                    lineStates.Insert(lineNumber, new LineChangeInfo(Mono.TextEditor.TextDocument.LineState.Dirty));
                }
            } catch (Exception ex) {
                Console.WriteLine("error while DiffTracker.TrackDocument_TextChanged:" + ex);
            }
        }
Exemplo n.º 6
0
 void OnEditorTextChanged(object sender, MonoDevelop.Core.Text.TextChangeEventArgs e)
 {
     _controller.Compile(_textEditor.Text);
     LoadErrors();
     _skWidget.QueueDraw();
 }
Exemplo n.º 7
0
 void Editor_TextChanged(object sender, MonoDevelop.Core.Text.TextChangeEventArgs e)
 {
     preview.Update();
 }