~ubuntu-branches/ubuntu/oneiric/monodevelop/oneiric

« back to all changes in this revision

Viewing changes to src/core/Mono.Texteditor/Mono.TextEditor/ILineSplitter.cs

  • Committer: Bazaar Package Importer
  • Author(s): Jo Shields
  • Date: 2011-06-27 17:03:13 UTC
  • mto: (1.8.1 upstream)
  • mto: This revision was merged to the branch mainline in revision 54.
  • Revision ID: james.westby@ubuntu.com-20110627170313-6cvz3s19x6e9hqe9
ImportĀ upstreamĀ versionĀ 2.5.92+dfsg

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
 
 
2
using System;
 
3
using System.Collections.Generic;
 
4
using System.Linq;
 
5
namespace Mono.TextEditor
 
6
{
 
7
        public interface ILineSplitter
 
8
        {
 
9
                int Count { get; }
 
10
 
 
11
                IEnumerable<LineSegment> Lines { get; }
 
12
 
 
13
                void Clear ();
 
14
 
 
15
                /// <summary>
 
16
                /// Initializes the splitter with a new text. No events are fired during this process.
 
17
                /// </summary>
 
18
                /// <param name="text"></param>
 
19
                void Initalize (string text);
 
20
 
 
21
                LineSegment Get (int number);
 
22
                LineSegment GetLineByOffset (int offset);
 
23
                int OffsetToLineNumber (int offset);
 
24
 
 
25
                void TextReplaced (object sender, ReplaceEventArgs args);
 
26
                void TextRemove (int offset, int length);
 
27
                void TextInsert (int offset, string text);
 
28
 
 
29
                IEnumerable<LineSegment> GetLinesBetween (int startLine, int endLine);
 
30
                IEnumerable<LineSegment> GetLinesStartingAt (int startLine);
 
31
                IEnumerable<LineSegment> GetLinesReverseStartingAt (int startLine);
 
32
 
 
33
                event EventHandler<LineEventArgs> LineChanged;
 
34
                event EventHandler<LineEventArgs> LineInserted;
 
35
                event EventHandler<LineEventArgs> LineRemoved;
 
36
        }
 
37
}