Interface ILineDiffer


public interface ILineDiffer
Protocol that allows direct access to line information. Usually, implementations will also implement IAnnotationModel, which only allows Iterator based access to annotations.

ILineDiffer also allows to revert any lines to their original contents as defined by the quick diff reference used by the receiver.

This interface may be implemented by clients.

In order to provide backward compatibility for clients of ILineDiffer, extension interfaces are used to provide a means of evolution. The following extension interface exists:

  • ILineDifferExtension (since version 3.1): introducing the concept suspending and resuming an ILineDiffer.
  • ILineDifferExtension2 (since version 3.3): allowing to query the suspension state of an ILineDiffer.
Since:
3.0
  • Method Summary

    Modifier and Type
    Method
    Description
    getLineInfo(int line)
    Determines the line state for line line in the targeted document.
    int
    restoreAfterLine(int line)
    Restores the deleted lines after line.
    void
    revertBlock(int line)
    Reverts a block of modified / added lines to their original state, including any deleted lines inside the block or at its borders.
    void
    revertLine(int line)
    Reverts a single changed line to its original state, not touching any lines that are deleted at its borders.
    void
    revertSelection(int line, int nLines)
    Reverts a range of lines to their original state, including any deleted lines inside the block or at its borders.
  • Method Details

    • getLineInfo

      ILineDiffInfo getLineInfo(int line)
      Determines the line state for line line in the targeted document.
      Parameters:
      line - the line to get diff information for
      Returns:
      the line information object for line or null if none
    • revertLine

      void revertLine(int line) throws BadLocationException
      Reverts a single changed line to its original state, not touching any lines that are deleted at its borders.
      Parameters:
      line - the line number of the line to be restored.
      Throws:
      BadLocationException - if line is out of bounds.
    • revertBlock

      void revertBlock(int line) throws BadLocationException
      Reverts a block of modified / added lines to their original state, including any deleted lines inside the block or at its borders. A block is considered to be a range of modified (e.g. changed, or added) lines.
      Parameters:
      line - any line in the block to be reverted.
      Throws:
      BadLocationException - if line is out of bounds.
    • revertSelection

      void revertSelection(int line, int nLines) throws BadLocationException
      Reverts a range of lines to their original state, including any deleted lines inside the block or at its borders.
      Parameters:
      line - any line in the block to be reverted.
      nLines - the number of lines to be reverted, must be > 0.
      Throws:
      BadLocationException - if line is out of bounds.
    • restoreAfterLine

      int restoreAfterLine(int line) throws BadLocationException
      Restores the deleted lines after line.
      Parameters:
      line - the deleted lines following this line number are restored.
      Returns:
      the number of restored lines.
      Throws:
      BadLocationException - if line is out of bounds.