Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Eclipse Platform Release 3.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.eclipse.jface.text.rules
Class DefaultDamagerRepairer

    java.lang.Object
      org.eclipse.jface.text.rules.DefaultDamagerRepairer

All Implemented Interfaces:
  IPresentationDamager, IPresentationRepairer

Direct Known Subclasses:
  RuleBasedDamagerRepairer

public class DefaultDamagerRepairer
extends Object
implements IPresentationDamager, IPresentationRepairer

A standard implementation of a syntax driven presentation damager and presentation repairer. It uses a token scanner to scan the document and to determine its damage and new text presentation. The tokens returned by the scanner are supposed to return text attributes as their data.

Since:
  2.0
See Also:
  `ITokenScanner`

Field Summary
`protected TextAttribute` | `fDefaultTextAttribute` The default text attribute if non is returned as data by the current token
`protected IDocument` | `fDocument` The document this object works on
`protected ITokenScanner` | `fScanner` The scanner it uses

Constructor Summary
`DefaultDamagerRepairer(ITokenScanner scanner)` Creates a damager/repairer that uses the given scanner.
`DefaultDamagerRepairer(ITokenScanner scanner, TextAttribute defaultTextAttribute)` Deprecated. use DefaultDamagerRepairer(ITokenScanner) instead

Method Summary
`protected void` | `addRange(TextPresentation presentation, int offset, int length, TextAttribute attr)` Adds style information to the given text presentation.
`void` | `createPresentation(TextPresentation presentation, ITypedRegion region)` Fills the given presentation with the style ranges which when applied to the presentation reconciler's text viewer repair the presentational damage described by the given region.
`protected int` | `endOfLineOf(int offset)` Returns the end offset of the line that contains the specified offset or if the offset is inside a line delimiter, the end offset of the next line.
`IRegion` | `getDamageRegion(ITypedRegion partition, DocumentEvent e, boolean documentPartitioningChanged)` Returns the damage in the document's presentation caused by the given document change.
`protected TextAttribute` | `getTokenTextAttribute(IToken token)` Returns a text attribute encoded in the given token.
`void` | `setDocument(IDocument document)` Tells the presentation damager on which document it will work.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### fDocument

    protected IDocument fDocument

  The document this object works on

### fScanner

    protected ITokenScanner fScanner

  The scanner it uses

### fDefaultTextAttribute

    protected TextAttribute fDefaultTextAttribute

  The default text attribute if non is returned as data by the current token

Constructor Detail

### DefaultDamagerRepairer

    public DefaultDamagerRepairer(ITokenScanner scanner,
                                  TextAttribute defaultTextAttribute)

  Deprecated. use DefaultDamagerRepairer(ITokenScanner) instead

  Creates a damager/repairer that uses the given scanner and returns the given default text attribute if the current token does not carry a text attribute.

Parameters:
  `scanner` - the token scanner to be used
  `defaultTextAttribute` - the text attribute to be returned if non is specified by the current token, may not be `null`

### DefaultDamagerRepairer

    public DefaultDamagerRepairer(ITokenScanner scanner)

  Creates a damager/repairer that uses the given scanner. The scanner may not be `null` and is assumed to return only token that carry text attributes.

Parameters:
  `scanner` - the token scanner to be used, may not be `null`

Method Detail

### setDocument

    public void setDocument(IDocument document)

  Description copied from interface: `IPresentationDamager`
  Tells the presentation damager on which document it will work.

  Specified by:
    `setDocument` in interface `IPresentationDamager`
  Parameters:
    `document` - the damager's working document

### endOfLineOf

    protected int endOfLineOf(int offset)
                       throws BadLocationException

  Returns the end offset of the line that contains the specified offset or if the offset is inside a line delimiter, the end offset of the next line.

  Parameters:
    `offset` - the offset whose line end offset must be computed
  Returns:
    the line end offset for the given offset
  Throws:
    `BadLocationException` - if offset is invalid in the current document

### getDamageRegion

    public IRegion getDamageRegion(ITypedRegion partition,
                                   DocumentEvent e,
                                   boolean documentPartitioningChanged)

  Description copied from interface: `IPresentationDamager`
  Returns the damage in the document's presentation caused by the given document change. The damage is restricted to the specified partition for which the presentation damager is responsible. The damage may also depend on whether the document change also caused changes of the document's partitioning.

  Specified by:
    `getDamageRegion` in interface `IPresentationDamager`
  Parameters:
    `partition` - the partition inside which the damage must be determined
    `e` - the event describing the change whose damage must be determined
    `documentPartitioningChanged` - indicates whether the given change changed the document's partitioning
  Returns:
    the computed damage

### createPresentation

    public void createPresentation(TextPresentation presentation,
                                   ITypedRegion region)

  Description copied from interface: `IPresentationRepairer`
  Fills the given presentation with the style ranges which when applied to the presentation reconciler's text viewer repair the presentational damage described by the given region.

  Specified by:
    `createPresentation` in interface `IPresentationRepairer`
  Parameters:
    `presentation` - the text presentation to be filled by this repairer
    `region` - the damage to be repaired

### getTokenTextAttribute

    protected TextAttribute getTokenTextAttribute(IToken token)

  Returns a text attribute encoded in the given token. If the token's data is not `null` and a text attribute it is assumed that it is the encoded text attribute. It returns the default text attribute if there is no encoded text attribute found.

  Parameters:
    `token` - the token whose text attribute is to be determined
  Returns:
    the token's text attribute

### addRange

    protected void addRange(TextPresentation presentation,
                            int offset,
                            int length,
                            TextAttribute attr)

  Adds style information to the given text presentation.

  Parameters:
    `presentation` - the text presentation to be extended
    `offset` - the offset of the range to be styled
    `length` - the length of the range to be styled
    `attr` - the attribute describing the style of the range to be styled

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Eclipse Platform Release 3.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Guidelines for using Eclipse APIs.

Copyright (c) IBM Corp. and others 2000, 2004. All rights reserved.