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

Modifier and Type
Method
Description
`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 Details

### 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
See Also:
  - `IFindReplaceTargetExtension4.setSelection(IRegion[])`

### 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