Package org.eclipse.jface.text

## Interface IFindReplaceTargetExtension

    public interface IFindReplaceTargetExtension

Extension interface for `IFindReplaceTarget`.

Introduces the concepts of find/replace sessions, searching in a limiting scope and a replace-all mode.

If a scope is set, `findAndSelect` is limited to the scope. Occurrences outside of the scope are not considered.

Since:
  2.0

### Method Summary

All Methods Instance Methods Abstract Methods
`void` `beginSession()` Indicates that a session with the target begins.
`void` `endSession()` Indicates that a session with the target ends.
`Point` `getLineSelection()` Returns the currently selected range of lines as a offset and length.
`IRegion` `getScope()` Returns the find scope of the target, `null` for global scope.
`void` `setReplaceAllMode​(boolean replaceAll)` Sets the target's replace-all mode.
`void` `setScope​(IRegion scope)` Sets the find scope of the target to operate on.
`void` `setScopeHighlightColor​(Color color)` Sets the scope highlight color
`void` `setSelection​(int offset, int length)` Sets a selection.

### Method Detail

#### beginSession

    void beginSession()

Indicates that a session with the target begins. All calls except `beginSession()` and `endSession()` to `IFindReplaceTarget` and `IFindReplaceTargetExtension` must be embedded within calls to `beginSession()` and `endSession()`.

See Also:
  `endSession()`

#### endSession

    void endSession()

Indicates that a session with the target ends.

See Also:
  `beginSession()`

#### getScope

    IRegion getScope()

Returns the find scope of the target, `null` for global scope.

Returns:
  returns the find scope of the target, may be `null`

#### setScope

    void setScope​(IRegion scope)

Sets the find scope of the target to operate on. `null` indicates that the global scope should be used.

Parameters:
  `scope` - the find scope of the target, may be `null`

#### getLineSelection

    Point getLineSelection()

Returns the currently selected range of lines as a offset and length.

Returns:
  the currently selected line range

#### setSelection

    void setSelection​(int offset,
                      int length)

Sets a selection.

Parameters:
  `offset` - the offset of the selection
  `length` - the length of the selection

#### setScopeHighlightColor

    void setScopeHighlightColor​(Color color)

Sets the scope highlight color

Parameters:
  `color` - the color of the scope highlight

#### setReplaceAllMode

    void setReplaceAllMode​(boolean replaceAll)

Sets the target's replace-all mode.

Parameters:
  `replaceAll` - `true` if this target should switch into replace-all mode, `false` if it should leave the replace-all state