scalafx-utils/src/main/scala/org/gerweck/scalafx/util/package.scala

40 lines
1023 B
Scala
Raw Normal View History

package org.gerweck.scalafx
import language.implicitConversions
import language.existentials
import scalafx.beans.property._
import scalafx.beans.value._
import scalafx.event.subscriptions.Subscription
import scalafx.scene.Node
import scalafx.scene.control._
import scalafx.scene.layout.GridPane
import scalafx.util.StringConverter
import scalaz._
import Scalaz._
/** Various implicits and global utilities for ScalaFX work.
*
* @author Sarah Gerweck <sarah@atscale.com>
*/
package object util extends ObservableImplicits {
type Observable[A] = ObservableValue[A, _]
2015-04-16 04:05:38 +00:00
type SimpleProperty[A] = Property[A, _]
2015-04-16 07:38:58 +00:00
object TextDisplay {
import scalafx.beans.property._
import scalafx.scene.text.Text
def apply(text: ObservableValue[String,String]) = {
val t = new scalafx.scene.text.Text
t.text <== text
t
}
}
implicit class RichGridPane(val inner: GridPane) extends AnyVal {
def addToRow(ri: Int, children: Node*) = inner.addRow(ri, children map {_.delegate}: _*)
}
}