Package org.eclipse.jface.databinding.viewers

# Interface IViewerValueProperty<S,T>

Type Parameters:
  `S` - type of the source object
  `T` - type of the value of the property

All Superinterfaces:
  `IProperty`, `IValueProperty<S,T>`

All Known Implementing Classes:
  `ViewerValueProperty`

public interface IViewerValueProperty<S,T> extends IValueProperty<S,T>
`IValueProperty` for observing a JFace viewer

Since:
  1.3
Restriction:
  This interface is not intended to be implemented by clients.

## Method Summary

Modifier and Type
Method
Description
`IViewerObservableValue<T>`
`observe(Viewer viewer)`
Returns an `IViewerObservableValue` observing this value property on the given viewer
`IObservableValue<T>`
`observe(S viewer)`
This method is redeclared to trigger ambiguous method errors that are hidden by a suspected Eclipse compiler bug 536911.
`IViewerObservableValue<T>`
`observeDelayed(int delay, Viewer viewer)`
Returns an `IViewerObservableValue` observing this value property on the given viewer, which delays notification of value changes until at least `delay` milliseconds have elapsed since that last change event, or until a FocusOut event is received from the viewer's control (whichever happens first).

### Methods inherited from interface org.eclipse.core.databinding.property.value.IValueProperty

`getValue, getValueType, list, map, observe, observeDetail, observeDetail, observeDetail, observeDetail, set, setValue, value, valueFactory, valueFactory`

## Method Details

### observe

IViewerObservableValue<T> observe(Viewer viewer)
Returns an `IViewerObservableValue` observing this value property on the given viewer

Parameters:
  `viewer` - the source viewer
Returns:
  an observable value observing this value property on the given viewer

### observe

IObservableValue<T> observe(S viewer)
This method is redeclared to trigger ambiguous method errors that are hidden by a suspected Eclipse compiler bug 536911. By triggering the bug in this way clients avoid a change of behavior when the bug is fixed. When the bug is fixed this redeclaration should be removed.

Specified by:
  `observe` in interface `IValueProperty<S,T>`
Parameters:
  `viewer` - the property source
Returns:
  an observable value observing this value property on the given property source

### observeDelayed

IViewerObservableValue<T> observeDelayed(int delay, Viewer viewer)
Returns an `IViewerObservableValue` observing this value property on the given viewer, which delays notification of value changes until at least `delay` milliseconds have elapsed since that last change event, or until a FocusOut event is received from the viewer's control (whichever happens first).

This method is equivalent to `ViewersObservables.observeDelayedValue(delay, observe(viewer))`.

Parameters:
  `delay` - the delay in milliseconds.
  `viewer` - the source viewer
Returns:
  an observable value observing this value property on the given viewer, and which delays change notifications for `delay` milliseconds.