Bug 546820 - Remove use of deprecated classes in databinding

Change-Id: I76c89549f05c700afdc0afd04072bfcf36a1775e
Signed-off-by: Jens Lidestrom <jens@lidestrom.se>
diff --git a/bundles/org.eclipse.core.databinding.beans/META-INF/MANIFEST.MF b/bundles/org.eclipse.core.databinding.beans/META-INF/MANIFEST.MF
index 221f2dc..1200929 100644
--- a/bundles/org.eclipse.core.databinding.beans/META-INF/MANIFEST.MF
+++ b/bundles/org.eclipse.core.databinding.beans/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
 Bundle-ManifestVersion: 2
 Bundle-Name: %pluginName
 Bundle-SymbolicName: org.eclipse.core.databinding.beans
-Bundle-Version: 1.6.100.qualifier
+Bundle-Version: 1.6.200.qualifier
 Bundle-ClassPath: .
 Bundle-Vendor: %providerName
 Bundle-Localization: plugin
diff --git a/bundles/org.eclipse.core.databinding.beans/src/org/eclipse/core/internal/databinding/beans/BeanPropertyListenerSupport.java b/bundles/org.eclipse.core.databinding.beans/src/org/eclipse/core/internal/databinding/beans/BeanPropertyListenerSupport.java
index dde6011..59671e4 100644
--- a/bundles/org.eclipse.core.databinding.beans/src/org/eclipse/core/internal/databinding/beans/BeanPropertyListenerSupport.java
+++ b/bundles/org.eclipse.core.databinding.beans/src/org/eclipse/core/internal/databinding/beans/BeanPropertyListenerSupport.java
@@ -30,6 +30,8 @@
  * @since 1.0
  */
 public class BeanPropertyListenerSupport {
+	private static final boolean DEBUG = true;
+
 	/**
 	 * Start listen to target (if it supports the JavaBean property change
 	 * listener pattern)
@@ -117,9 +119,8 @@
 	/**
 	 * Logs a message to the Data Binding logger.
 	 */
-	@SuppressWarnings("deprecation")
 	private static void log(int severity, String message, Throwable throwable) {
-		if (org.eclipse.core.databinding.beans.BeansObservables.DEBUG) {
+		if (DEBUG) {
 			Policy.getLog().log(
 					new Status(severity, Policy.JFACE_DATABINDING, IStatus.OK,
 							message, throwable));
diff --git a/bundles/org.eclipse.jface.databinding/src/org/eclipse/jface/databinding/swt/WidgetValueProperty.java b/bundles/org.eclipse.jface.databinding/src/org/eclipse/jface/databinding/swt/WidgetValueProperty.java
index dcb0a04..b419a95 100644
--- a/bundles/org.eclipse.jface.databinding/src/org/eclipse/jface/databinding/swt/WidgetValueProperty.java
+++ b/bundles/org.eclipse.jface.databinding/src/org/eclipse/jface/databinding/swt/WidgetValueProperty.java
@@ -15,12 +15,14 @@
 
 package org.eclipse.jface.databinding.swt;
 
+import org.eclipse.core.databinding.observable.Observables;
 import org.eclipse.core.databinding.observable.Realm;
 import org.eclipse.core.databinding.observable.value.IObservableValue;
 import org.eclipse.core.databinding.observable.value.ValueDiff;
 import org.eclipse.core.databinding.property.INativePropertyListener;
 import org.eclipse.core.databinding.property.ISimplePropertyListener;
 import org.eclipse.core.databinding.property.value.SimpleValueProperty;
+import org.eclipse.jface.internal.databinding.swt.SWTDelayedObservableValueDecorator;
 import org.eclipse.jface.internal.databinding.swt.SWTObservableValueDecorator;
 import org.eclipse.jface.internal.databinding.swt.WidgetListener;
 import org.eclipse.swt.widgets.Listener;
@@ -116,10 +118,10 @@
 		return observe(DisplayRealm.getRealm(widget.getDisplay()), widget);
 	}
 
-	@SuppressWarnings("deprecation")
 	@Override
 	public ISWTObservableValue<T> observeDelayed(int delay, S widget) {
-		return SWTObservables.observeDelayedValue(delay, observe(widget));
+		ISWTObservableValue<T> observable = observe(widget);
+		return new SWTDelayedObservableValueDecorator<>(Observables.observeDelayedValue(delay, observable), widget);
 	}
 
 }
diff --git a/bundles/org.eclipse.jface.databinding/src/org/eclipse/jface/databinding/viewers/ViewerValueProperty.java b/bundles/org.eclipse.jface.databinding/src/org/eclipse/jface/databinding/viewers/ViewerValueProperty.java
index 08f2c44..7dc2bc8 100644
--- a/bundles/org.eclipse.jface.databinding/src/org/eclipse/jface/databinding/viewers/ViewerValueProperty.java
+++ b/bundles/org.eclipse.jface.databinding/src/org/eclipse/jface/databinding/viewers/ViewerValueProperty.java
@@ -15,6 +15,7 @@
 
 package org.eclipse.jface.databinding.viewers;
 
+import org.eclipse.core.databinding.observable.Observables;
 import org.eclipse.core.databinding.observable.Realm;
 import org.eclipse.core.databinding.observable.value.IObservableValue;
 import org.eclipse.core.databinding.property.value.SimpleValueProperty;
@@ -64,6 +65,7 @@
 
 	@Override
 	public IViewerObservableValue<T> observeDelayed(int delay, Viewer viewer) {
-		return ViewersObservables.observeDelayedValue(delay, observe(viewer));
+		IViewerObservableValue<T> observable = observe(viewer);
+		return new ViewerObservableValueDecorator<>(Observables.observeDelayedValue(delay, observable), viewer);
 	}
 }
diff --git a/bundles/org.eclipse.jface.databinding/src/org/eclipse/jface/internal/databinding/swt/WidgetDelegatingValueProperty.java b/bundles/org.eclipse.jface.databinding/src/org/eclipse/jface/internal/databinding/swt/WidgetDelegatingValueProperty.java
index c36c55c..2a52ea7 100644
--- a/bundles/org.eclipse.jface.databinding/src/org/eclipse/jface/internal/databinding/swt/WidgetDelegatingValueProperty.java
+++ b/bundles/org.eclipse.jface.databinding/src/org/eclipse/jface/internal/databinding/swt/WidgetDelegatingValueProperty.java
@@ -14,11 +14,11 @@
 
 package org.eclipse.jface.internal.databinding.swt;
 
+import org.eclipse.core.databinding.observable.Observables;
 import org.eclipse.core.databinding.property.value.DelegatingValueProperty;
 import org.eclipse.jface.databinding.swt.DisplayRealm;
 import org.eclipse.jface.databinding.swt.ISWTObservableValue;
 import org.eclipse.jface.databinding.swt.IWidgetValueProperty;
-import org.eclipse.jface.databinding.swt.SWTObservables;
 import org.eclipse.swt.widgets.Widget;
 
 /**
@@ -29,7 +29,6 @@
  *
  * @since 3.3
  */
-@SuppressWarnings("deprecation")
 public abstract class WidgetDelegatingValueProperty<S extends Widget, T> extends DelegatingValueProperty<S, T>
 		implements IWidgetValueProperty<S, T> {
 
@@ -57,6 +56,7 @@
 
 	@Override
 	public ISWTObservableValue<T> observeDelayed(int delay, S widget) {
-		return SWTObservables.observeDelayedValue(delay, observe(widget));
+		ISWTObservableValue<T> observable = observe(widget);
+		return new SWTDelayedObservableValueDecorator<>(Observables.observeDelayedValue(delay, observable), widget);
 	}
 }