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

All Methods Instance Methods Abstract Methods
`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 Detail

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