From 2e002336b41051be03250ce43bc0551ca3d6d7f1 Mon Sep 17 00:00:00 2001 From: Sarah Gerweck Date: Wed, 15 Apr 2015 21:05:38 -0700 Subject: [PATCH] Introduce new `SimpleProperty` alias. --- src/main/scala/org/gerweck/scalafx/util/PropertyBuilder.scala | 4 ++-- src/main/scala/org/gerweck/scalafx/util/package.scala | 3 ++- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/main/scala/org/gerweck/scalafx/util/PropertyBuilder.scala b/src/main/scala/org/gerweck/scalafx/util/PropertyBuilder.scala index 0bb5057..5ebeb46 100644 --- a/src/main/scala/org/gerweck/scalafx/util/PropertyBuilder.scala +++ b/src/main/scala/org/gerweck/scalafx/util/PropertyBuilder.scala @@ -15,7 +15,7 @@ import scalafx.beans.property._ * @author Sarah Gerweck */ trait PropertyBuilder[A] { - type Prop <: Property[A, _] + type Prop <: SimpleProperty[A] def makeNew(default: A): Prop } @@ -52,7 +52,7 @@ object PropertyBuilder extends PropertyBuilderLP { def makeNew(default: String) = StringProperty(default) } - def apply[A](default: A)(implicit builder: PropertyBuilder[A]): Property[A, _] = { + def apply[A](default: A)(implicit builder: PropertyBuilder[A]): SimpleProperty[A] = { builder.makeNew(default) } } diff --git a/src/main/scala/org/gerweck/scalafx/util/package.scala b/src/main/scala/org/gerweck/scalafx/util/package.scala index b2d65f5..0e2dc0f 100644 --- a/src/main/scala/org/gerweck/scalafx/util/package.scala +++ b/src/main/scala/org/gerweck/scalafx/util/package.scala @@ -19,6 +19,7 @@ import Scalaz._ */ package object util { type Observable[A] = ObservableValue[A, _] + type SimpleProperty[A] = Property[A, _] implicit val observableApplicative = new Applicative[Observable] { def point[A](a: => A): Observable[A] = { @@ -48,7 +49,7 @@ package object util { } } - implicit class RichProperty[A](val inner: Property[A, _]) extends AnyVal { + implicit class RichProperty[A](val inner: SimpleProperty[A]) extends AnyVal { def biMap[B <: AnyRef](push: A => B, pull: B => A): ObjectProperty[B] = { val original = push(inner.value) val op = ObjectProperty[B](original)