diff --git a/scalatags/src/scalatags/generic/Attrs.scala b/scalatags/src/scalatags/generic/Attrs.scala
index a4c87cd6..4afb9c2e 100755
--- a/scalatags/src/scalatags/generic/Attrs.scala
+++ b/scalatags/src/scalatags/generic/Attrs.scala
@@ -64,6 +64,7 @@ trait GlobalAttrs[Builder, Output <: FragT, FragT]
def selectDynamic(s: String) = new DataAttribute(s :: sections)
def :=[T](v: T)(implicit ev: AttrValue[Builder, T]) =
AttrPair(Attr(sections.reverse.mkString("-")), v, ev)
+ def apply[T](v: T)(implicit ev: AttrValue[Builder, T]) = :=(v)(ev)
}
def data(suffix: String) = Attr("data-" + suffix)
/**
diff --git a/scalatags/src/scalatags/generic/Core.scala b/scalatags/src/scalatags/generic/Core.scala
index cc564514..c41c97df 100644
--- a/scalatags/src/scalatags/generic/Core.scala
+++ b/scalatags/src/scalatags/generic/Core.scala
@@ -111,6 +111,7 @@ case class Attr(name: String, namespace: Option[Namespace] = None, raw: Boolean
requireNonNull(v)
AttrPair(this, v, ev)
}
+ def apply[Builder, T](v: T)(implicit ev: AttrValue[Builder, T]) = :=(v)(ev)
def empty[Builder](implicit ev: AttrValue[Builder, String]) = this := name
}
@@ -127,6 +128,7 @@ case class Style(jsName: String, cssName: String) {
requireNonNull(v)
StylePair(this, v, ev)
}
+ def apply[Builder, T](v: T)(implicit ev: StyleValue[Builder, T]) = :=(v)(ev)
}
/**
* Wraps up a CSS style in a value.
@@ -141,6 +143,7 @@ case class PixelStyle(jsName: String, cssName: String) {
requireNonNull(v)
ev(realStyle, v)
}
+ def apply[Builder, T](v: T)(implicit ev: PixelStyleValue[Builder, T]) = :=(v)(ev)
}
trait StyleProcessor{
@@ -157,6 +160,7 @@ case class AttrPair[Builder, T](a: Attr, v: T, ev: AttrValue[Builder, T]) extend
requireNonNull(v)
AttrPair(a, v, ev)
}
+ def apply[Builder, T](v: T)(implicit ev: AttrValue[Builder, T]) = :=(v)(ev)
}
/**
* Used to specify how to handle a particular type [[T]] when it is used as
diff --git a/scalatags/src/scalatags/generic/Styles.scala b/scalatags/src/scalatags/generic/Styles.scala
index d069dddd..2dc31667 100644
--- a/scalatags/src/scalatags/generic/Styles.scala
+++ b/scalatags/src/scalatags/generic/Styles.scala
@@ -442,6 +442,7 @@ trait Styles2[Builder, Output <: FragT, FragT] extends StyleMisc[Builder, Output
*/
object columns extends Style("columns", "columns") {
def :=(number: Int, width: String): StylePair[Builder, String] = this := s"$number $width"
+ def apply(number: Int, width: String): StylePair[Builder, String] = this.:=(number, width)
}
/**
@@ -1174,6 +1175,7 @@ trait Styles[Builder, Output <: FragT, FragT] extends StyleMisc[Builder, Output,
*/
object borderSpacing extends Style("borderSpacing", "border-spacing") {
def :=(horizontal: String, vertical: String): StylePair[Builder, String] = this := s"$horizontal $vertical"
+ def apply(horizontal: String, vertical: String): StylePair[Builder, String] = this.:=(horizontal, vertical)
}
diff --git a/scalatags/test/src/scalatags/generic/BasicTests.scala b/scalatags/test/src/scalatags/generic/BasicTests.scala
index bfe61b26..d34bbf26 100644
--- a/scalatags/test/src/scalatags/generic/BasicTests.scala
+++ b/scalatags/test/src/scalatags/generic/BasicTests.scala
@@ -131,6 +131,18 @@ class BasicTests[Builder, Output <: FragT, FragT](omg: Bundle[Builder, Output, F
""""""
)
}
+ test("apply instead of :="){
+ strCheck(
+ a(
+ tabindex(1),
+ onclick("lol")
+ )(
+ href("boo"),
+ alt("g")
+ ),
+ """"""
+ )
+ }
test("autoPixel"){
strCheck(
div(width:=100, zIndex:=100, height:=100),
diff --git a/scalatags/test/src/scalatags/generic/StyleSheetTests.scala b/scalatags/test/src/scalatags/generic/StyleSheetTests.scala
index 285a253b..52fb2cda 100644
--- a/scalatags/test/src/scalatags/generic/StyleSheetTests.scala
+++ b/scalatags/test/src/scalatags/generic/StyleSheetTests.scala
@@ -19,7 +19,7 @@ abstract class StyleSheetTests[Builder, Output <: FragT, FragT]
height := 125
)
val y = cls.hover(
- opacity := 0.5
+ opacity(0.5)
)
val z = cls(x.splice, y.splice)