Search in sources :

Example 1 with WritableDoubleValue

use of javafx.beans.value.WritableDoubleValue in project dolphin-platform by canoo.

the class FXBinderTest method testJavaFXDoubleUnidirectional.

@Test
public void testJavaFXDoubleUnidirectional() {
    Property<Double> doubleDolphinProperty = new MockedProperty<>();
    Property<Number> numberDolphinProperty = new MockedProperty<>();
    DoubleProperty doubleJavaFXProperty = new SimpleDoubleProperty();
    WritableDoubleValue writableDoubleValue = new SimpleDoubleProperty();
    doubleDolphinProperty.set(47.0);
    assertNotEquals(doubleJavaFXProperty.doubleValue(), 47.0, EPSILON);
    Binding binding = FXBinder.bind(doubleJavaFXProperty).to(doubleDolphinProperty);
    assertEquals(doubleJavaFXProperty.doubleValue(), 47.0, EPSILON);
    doubleDolphinProperty.set(100.0);
    assertEquals(doubleJavaFXProperty.doubleValue(), 100.0, EPSILON);
    doubleDolphinProperty.set(null);
    assertEquals(doubleJavaFXProperty.doubleValue(), 0.0, EPSILON);
    binding.unbind();
    doubleDolphinProperty.set(100.0);
    assertEquals(doubleJavaFXProperty.doubleValue(), 0.0, EPSILON);
    numberDolphinProperty.set(12.0);
    binding = FXBinder.bind(doubleJavaFXProperty).to(numberDolphinProperty);
    assertEquals(doubleJavaFXProperty.doubleValue(), 12.0, EPSILON);
    numberDolphinProperty.set(null);
    assertEquals(doubleJavaFXProperty.doubleValue(), 0.0, EPSILON);
    binding.unbind();
    numberDolphinProperty.set(100.0);
    assertEquals(doubleJavaFXProperty.doubleValue(), 0.0, EPSILON);
    doubleDolphinProperty.set(47.0);
    binding = FXBinder.bind(writableDoubleValue).to(doubleDolphinProperty);
    assertEquals(writableDoubleValue.get(), 47.0, EPSILON);
    doubleDolphinProperty.set(100.0);
    assertEquals(writableDoubleValue.get(), 100.0, EPSILON);
    doubleDolphinProperty.set(null);
    assertEquals(writableDoubleValue.get(), 0.0, EPSILON);
    binding.unbind();
    doubleDolphinProperty.set(100.0);
    assertEquals(writableDoubleValue.get(), 0.0, EPSILON);
}
Also used : Binding(com.canoo.platform.core.functional.Binding) MockedProperty(com.canoo.dp.impl.remoting.MockedProperty) SimpleDoubleProperty(javafx.beans.property.SimpleDoubleProperty) DoubleProperty(javafx.beans.property.DoubleProperty) SimpleDoubleProperty(javafx.beans.property.SimpleDoubleProperty) WritableDoubleValue(javafx.beans.value.WritableDoubleValue) Test(org.testng.annotations.Test)

Example 2 with WritableDoubleValue

use of javafx.beans.value.WritableDoubleValue in project dolphin-platform by canoo.

the class FXBinderTest method testJavaFXDoubleUnidirectionalWithConverter.

@Test
public void testJavaFXDoubleUnidirectionalWithConverter() {
    Property<String> stringDolphinProperty = new MockedProperty<>();
    DoubleProperty doubleJavaFXProperty = new SimpleDoubleProperty();
    WritableDoubleValue writableDoubleValue = new SimpleDoubleProperty();
    Converter<String, Double> stringDoubleConverter = s -> s == null ? null : Double.parseDouble(s);
    stringDolphinProperty.set("47.0");
    assertNotEquals(doubleJavaFXProperty.doubleValue(), 47.0, EPSILON);
    Binding binding = FXBinder.bind(doubleJavaFXProperty).to(stringDolphinProperty, stringDoubleConverter);
    assertEquals(doubleJavaFXProperty.doubleValue(), 47.0, EPSILON);
    stringDolphinProperty.set("100.0");
    assertEquals(doubleJavaFXProperty.doubleValue(), 100.0, EPSILON);
    stringDolphinProperty.set(null);
    assertEquals(doubleJavaFXProperty.doubleValue(), 0.0, EPSILON);
    binding.unbind();
    stringDolphinProperty.set("100.0");
    assertEquals(doubleJavaFXProperty.doubleValue(), 0.0, EPSILON);
    stringDolphinProperty.set("12.0");
    binding = FXBinder.bind(doubleJavaFXProperty).to(stringDolphinProperty, stringDoubleConverter);
    assertEquals(doubleJavaFXProperty.doubleValue(), 12.0, EPSILON);
    stringDolphinProperty.set(null);
    assertEquals(doubleJavaFXProperty.doubleValue(), 0.0, EPSILON);
    binding.unbind();
    stringDolphinProperty.set("100.0");
    assertEquals(doubleJavaFXProperty.doubleValue(), 0.0, EPSILON);
    stringDolphinProperty.set("47.0");
    binding = FXBinder.bind(writableDoubleValue).to(stringDolphinProperty, stringDoubleConverter);
    assertEquals(writableDoubleValue.get(), 47.0, EPSILON);
    stringDolphinProperty.set("100.0");
    assertEquals(writableDoubleValue.get(), 100.0, EPSILON);
    stringDolphinProperty.set(null);
    assertEquals(writableDoubleValue.get(), 0.0, EPSILON);
    binding.unbind();
    stringDolphinProperty.set("100.0");
    assertEquals(writableDoubleValue.get(), 0.0, EPSILON);
}
Also used : Binding(com.canoo.platform.core.functional.Binding) Arrays(java.util.Arrays) WritableBooleanValue(javafx.beans.value.WritableBooleanValue) SimpleStringProperty(javafx.beans.property.SimpleStringProperty) FXCollections(javafx.collections.FXCollections) Assert.assertEquals(org.testng.Assert.assertEquals) DoubleProperty(javafx.beans.property.DoubleProperty) Test(org.testng.annotations.Test) FXBinder(com.canoo.platform.remoting.client.javafx.FXBinder) DefaultBidirectionalConverter(com.canoo.dp.impl.client.javafx.DefaultBidirectionalConverter) Property(com.canoo.platform.remoting.Property) IntegerProperty(javafx.beans.property.IntegerProperty) ArrayList(java.util.ArrayList) WritableStringValue(javafx.beans.value.WritableStringValue) SimpleIntegerProperty(javafx.beans.property.SimpleIntegerProperty) MockedProperty(com.canoo.dp.impl.remoting.MockedProperty) ObservableArrayList(com.canoo.dp.impl.remoting.collections.ObservableArrayList) Assert.assertNotEquals(org.testng.Assert.assertNotEquals) ObservableList(com.canoo.platform.remoting.ObservableList) Converter(com.canoo.platform.remoting.client.javafx.Converter) BidirectionalConverter(com.canoo.platform.remoting.client.javafx.BidirectionalConverter) BooleanProperty(javafx.beans.property.BooleanProperty) List(java.util.List) SimpleBooleanProperty(javafx.beans.property.SimpleBooleanProperty) WritableIntegerValue(javafx.beans.value.WritableIntegerValue) SimpleDoubleProperty(javafx.beans.property.SimpleDoubleProperty) Assert.assertTrue(org.testng.Assert.assertTrue) StringProperty(javafx.beans.property.StringProperty) WritableDoubleValue(javafx.beans.value.WritableDoubleValue) Binding(com.canoo.platform.core.functional.Binding) MockedProperty(com.canoo.dp.impl.remoting.MockedProperty) SimpleDoubleProperty(javafx.beans.property.SimpleDoubleProperty) DoubleProperty(javafx.beans.property.DoubleProperty) SimpleDoubleProperty(javafx.beans.property.SimpleDoubleProperty) WritableDoubleValue(javafx.beans.value.WritableDoubleValue) Test(org.testng.annotations.Test)

Aggregations

MockedProperty (com.canoo.dp.impl.remoting.MockedProperty)2 Binding (com.canoo.platform.core.functional.Binding)2 DoubleProperty (javafx.beans.property.DoubleProperty)2 SimpleDoubleProperty (javafx.beans.property.SimpleDoubleProperty)2 WritableDoubleValue (javafx.beans.value.WritableDoubleValue)2 Test (org.testng.annotations.Test)2 DefaultBidirectionalConverter (com.canoo.dp.impl.client.javafx.DefaultBidirectionalConverter)1 ObservableArrayList (com.canoo.dp.impl.remoting.collections.ObservableArrayList)1 ObservableList (com.canoo.platform.remoting.ObservableList)1 Property (com.canoo.platform.remoting.Property)1 BidirectionalConverter (com.canoo.platform.remoting.client.javafx.BidirectionalConverter)1 Converter (com.canoo.platform.remoting.client.javafx.Converter)1 FXBinder (com.canoo.platform.remoting.client.javafx.FXBinder)1 ArrayList (java.util.ArrayList)1 Arrays (java.util.Arrays)1 List (java.util.List)1 BooleanProperty (javafx.beans.property.BooleanProperty)1 IntegerProperty (javafx.beans.property.IntegerProperty)1 SimpleBooleanProperty (javafx.beans.property.SimpleBooleanProperty)1 SimpleIntegerProperty (javafx.beans.property.SimpleIntegerProperty)1