Package org.eclipse.compare.structuremergeviewer

# Interface IDiffElement

All Superinterfaces:
  `ITypedElement`

All Known Subinterfaces:
  `IDiffContainer`, `ISynchronizeModelElement`

All Known Implementing Classes:
  `DiffContainer`, `DiffElement`, `DiffNode`

public interface IDiffElement extends ITypedElement
An `IDiffElement` is used in the `DiffTreeViewer` to display the kind of change detected as the result of a two-way or three-way compare.

The base interface `ITypedElement` provides a name, a type, and an image. `IDiffElement` adds API for maintaining a parent relationship.

`DiffTreeViewer` works on a tree of `IDiffElements`. Leaf elements must implement the `IDiffElement` interface, inner nodes the `IDiffContainer` interface.

`IDiffElement`s are typically created as the result of performing a compare with the `Differencer`.

Clients may implement this interface, or use one of the standard implementations, `DiffElement`, `DiffContainer`, or `DiffNode`.

See Also:
  - `DiffTreeViewer`
  - `DiffElement`
  - `DiffContainer`
  - `DiffNode`

## Field Summary

### Fields inherited from interface org.eclipse.compare.ITypedElement

`FOLDER_TYPE, TEXT_TYPE, UNKNOWN_TYPE`

## Method Summary

Modifier and Type
Method
Description
`int`
`getKind()`
Returns the kind of difference as defined in `Differencer`.
`IDiffContainer`
`getParent()`
Returns the parent of this element.
`void`
`setParent(IDiffContainer parent)`
Sets the parent of this element.

### Methods inherited from interface org.eclipse.compare.ITypedElement

`getImage, getName, getType`

## Method Details

### getKind

int getKind()
Returns the kind of difference as defined in `Differencer`.

Returns:
  the kind of difference as defined in `Differencer`

### getParent

IDiffContainer getParent()
Returns the parent of this element. If the object is the root of a hierarchy `null` is returned.

Returns:
  the parent of this element, or `null` if the element has no parent

### setParent

void setParent(IDiffContainer parent)
Sets the parent of this element.

Parameters:
  `parent` - the new parent of this element, or `null` if this element is to have no parent