summaryrefslogtreecommitdiff
path: root/examples/demos/src
diff options
context:
space:
mode:
Diffstat (limited to 'examples/demos/src')
-rw-r--r--examples/demos/src/main/scala/Splash.scala4
-rw-r--r--examples/demos/src/main/scala/advanced/Async.scala11
-rw-r--r--examples/demos/src/main/scala/advanced/BasicRx.scala6
-rw-r--r--examples/demos/src/main/scala/advanced/Futures.scala21
-rw-r--r--examples/demos/src/main/scala/canvasapp/Clock.scala4
-rw-r--r--examples/demos/src/main/scala/canvasapp/FlappyLine.scala4
-rw-r--r--examples/demos/src/main/scala/canvasapp/ScratchPad.scala3
-rw-r--r--examples/demos/src/main/scala/scrollmenu/Controller.scala9
-rw-r--r--examples/demos/src/main/scala/scrollmenu/ScrollSpy.scala21
-rw-r--r--examples/demos/src/main/scala/webpage/HelloWorld0.scala3
-rw-r--r--examples/demos/src/main/scala/webpage/HelloWorld1.scala3
-rw-r--r--examples/demos/src/main/scala/webpage/Inputs.scala3
-rw-r--r--examples/demos/src/main/scala/webpage/Search0.scala3
-rw-r--r--examples/demos/src/main/scala/webpage/Search1.scala4
-rw-r--r--examples/demos/src/main/scala/webpage/Weather0.scala4
-rw-r--r--examples/demos/src/main/scala/webpage/Weather1.scala6
-rw-r--r--examples/demos/src/main/scala/webpage/Weather2.scala5
-rw-r--r--examples/demos/src/main/scala/webpage/Weather3.scala5
-rw-r--r--examples/demos/src/main/scala/webpage/WeatherSearch.scala5
19 files changed, 68 insertions, 56 deletions
diff --git a/examples/demos/src/main/scala/Splash.scala b/examples/demos/src/main/scala/Splash.scala
index 05cbbc2..c8b35db 100644
--- a/examples/demos/src/main/scala/Splash.scala
+++ b/examples/demos/src/main/scala/Splash.scala
@@ -1,13 +1,13 @@
import java.lang.Math._
import org.scalajs.dom
-
+import dom.html
import scalajs.js.annotation.JSExport
@JSExport
object Splash extends{
@JSExport
- def main(canvas: dom.HTMLCanvasElement) = {
+ def main(canvas: html.Canvas) = {
def clear() = {
canvas.width = canvas.parentElement.clientWidth
diff --git a/examples/demos/src/main/scala/advanced/Async.scala b/examples/demos/src/main/scala/advanced/Async.scala
index 7a7e5ff..3d70f27 100644
--- a/examples/demos/src/main/scala/advanced/Async.scala
+++ b/examples/demos/src/main/scala/advanced/Async.scala
@@ -1,6 +1,7 @@
package advanced
import org.scalajs.dom
+import dom.html
import concurrent._
import async.Async._
import scalajs.js.annotation.JSExport
@@ -8,7 +9,7 @@ import scalajs.concurrent.JSExecutionContext.Implicits.queue
@JSExport
object Async {
- def init(canvas: dom.HTMLCanvasElement) = {
+ def init(canvas: html.Canvas) = {
val renderer = canvas.getContext("2d")
.asInstanceOf[dom.CanvasRenderingContext2D]
@@ -22,7 +23,7 @@ object Async {
renderer
}
@JSExport
- def main(canvas: dom.HTMLCanvasElement) = {
+ def main(canvas: html.Canvas) = {
val renderer = init(canvas)
// async
def rect = canvas.getBoundingClientRect()
@@ -36,7 +37,7 @@ object Async {
new Channel[ME](canvas.onmousedown = _)
// Disabled due to scala-js#1469
- /*async{
+ async{
while(true){
val start = await(mousedown())
renderer.beginPath()
@@ -59,10 +60,10 @@ object Async {
await(mouseup())
renderer.clearRect(0, 0, 1000, 1000)
}
- }*/
+ }
}
@JSExport
- def main0(canvas: dom.HTMLCanvasElement) = {
+ def main0(canvas: html.Canvas) = {
val renderer = init(canvas)
// traditional
def rect = canvas.getBoundingClientRect()
diff --git a/examples/demos/src/main/scala/advanced/BasicRx.scala b/examples/demos/src/main/scala/advanced/BasicRx.scala
index 1c9a0c8..99ccb84 100644
--- a/examples/demos/src/main/scala/advanced/BasicRx.scala
+++ b/examples/demos/src/main/scala/advanced/BasicRx.scala
@@ -5,11 +5,11 @@ import scalajs.js
import scalajs.js.annotation.JSExport
import rx._
import scalatags.JsDom.all._
-
+import dom.html
@JSExport
object BasicRx {
@JSExport
- def main(container: dom.HTMLDivElement) = {
+ def main(container: html.Div) = {
val txt = Var("")
val numChars = Rx{txt().length}
val numWords = Rx{
@@ -39,7 +39,7 @@ object BasicRx {
)
}
@JSExport
- def main2(container: dom.HTMLDivElement) = {
+ def main2(container: html.Div) = {
val fruits = Seq(
"Apple", "Apricot", "Banana", "Cherry",
"Mango", "Mangosteen", "Mandarin",
diff --git a/examples/demos/src/main/scala/advanced/Futures.scala b/examples/demos/src/main/scala/advanced/Futures.scala
index d1142b9..995d768 100644
--- a/examples/demos/src/main/scala/advanced/Futures.scala
+++ b/examples/demos/src/main/scala/advanced/Futures.scala
@@ -1,8 +1,9 @@
package advanced
import org.scalajs.dom
+import dom.html
import org.scalajs.dom.XMLHttpRequest
-import org.scalajs.dom.extensions.{Ajax, KeyCode}
+import org.scalajs.dom.ext.{Ajax, KeyCode}
import scala.collection.mutable
import scala.concurrent.Future
import scalajs.js
@@ -11,8 +12,8 @@ import scalajs.js.annotation.JSExport
import scalajs.concurrent.JSExecutionContext.Implicits.runNow
@JSExport
object Futures {
- def main(container: dom.HTMLDivElement,
- handle: (Seq[String], dom.HTMLDivElement) => Unit) = {
+ def main(container: html.Div,
+ handle: (Seq[String], html.Div) => Unit) = {
val myInput = input(value:="London,Singapore,Berlin,New York").render
val output = div.render
myInput.onkeyup = (e: dom.KeyboardEvent) => {
@@ -42,7 +43,7 @@ object Futures {
.asInstanceOf[Double]
kelvins - 272.15
}
- def formatResults(output: dom.HTMLElement, results: Seq[(String, Double)]) = {
+ def formatResults(output: html.Element, results: Seq[(String, Double)]) = {
output.innerHTML = ""
output.appendChild(ul(
for((name, temp) <- results) yield li(
@@ -51,8 +52,8 @@ object Futures {
).render)
}
@JSExport
- def main0(container: dom.HTMLDivElement) = {
- def handle0(names: Seq[String], output: dom.HTMLDivElement) = {
+ def main0(container: html.Div) = {
+ def handle0(names: Seq[String], output: html.Div) = {
val results = mutable.Buffer.empty[(String, Double)]
for(name <- names){
val xhr = new XMLHttpRequest
@@ -70,8 +71,8 @@ object Futures {
main(container, handle0)
}
@JSExport
- def main1(container: dom.HTMLDivElement) = {
- def handle1(names: Seq[String], output: dom.HTMLDivElement) = {
+ def main1(container: html.Div) = {
+ def handle1(names: Seq[String], output: html.Div) = {
val results = mutable.Buffer.empty[(String, Double)]
for{
name <- names
@@ -87,8 +88,8 @@ object Futures {
main(container, handle1)
}
@JSExport
- def main2(container: dom.HTMLDivElement) = {
- def handle2(names: Seq[String], output: dom.HTMLDivElement) = {
+ def main2(container: html.Div) = {
+ def handle2(names: Seq[String], output: html.Div) = {
val futures = for(name <- names) yield{
Ajax.get(urlFor(name)).map( xhr =>
(name, parseTemp(xhr.responseText))
diff --git a/examples/demos/src/main/scala/canvasapp/Clock.scala b/examples/demos/src/main/scala/canvasapp/Clock.scala
index 793b84c..b64fcbe 100644
--- a/examples/demos/src/main/scala/canvasapp/Clock.scala
+++ b/examples/demos/src/main/scala/canvasapp/Clock.scala
@@ -2,13 +2,13 @@ package canvasapp
import org.scalajs.dom
-
+import dom.html
import scalajs.js
import scalajs.js.annotation.JSExport
@JSExport
object Clock extends{
@JSExport
- def main(canvas: dom.HTMLCanvasElement) = {
+ def main(canvas: html.Canvas) = {
/*setup*/
val renderer = canvas.getContext("2d")
.asInstanceOf[dom.CanvasRenderingContext2D]
diff --git a/examples/demos/src/main/scala/canvasapp/FlappyLine.scala b/examples/demos/src/main/scala/canvasapp/FlappyLine.scala
index af797f8..f05d68c 100644
--- a/examples/demos/src/main/scala/canvasapp/FlappyLine.scala
+++ b/examples/demos/src/main/scala/canvasapp/FlappyLine.scala
@@ -2,14 +2,14 @@ package canvasapp
import org.scalajs.dom
-
+import dom.html
import scalajs.js.annotation.JSExport
import scala.util.Random
@JSExport
object FlappyLine extends{
@JSExport
- def main(canvas: dom.HTMLCanvasElement) = {
+ def main(canvas: html.Canvas) = {
/*setup*/
val renderer = canvas.getContext("2d")
.asInstanceOf[dom.CanvasRenderingContext2D]
diff --git a/examples/demos/src/main/scala/canvasapp/ScratchPad.scala b/examples/demos/src/main/scala/canvasapp/ScratchPad.scala
index 65e873c..2d7daf1 100644
--- a/examples/demos/src/main/scala/canvasapp/ScratchPad.scala
+++ b/examples/demos/src/main/scala/canvasapp/ScratchPad.scala
@@ -4,11 +4,12 @@ package canvasapp
import org.scalajs.dom
import scalajs.js.annotation.JSExport
+import dom.html
@JSExport
object ScratchPad extends{
@JSExport
- def main(canvas: dom.HTMLCanvasElement) = {
+ def main(canvas: html.Canvas) = {
/*setup*/
val renderer = canvas.getContext("2d")
.asInstanceOf[dom.CanvasRenderingContext2D]
diff --git a/examples/demos/src/main/scala/scrollmenu/Controller.scala b/examples/demos/src/main/scala/scrollmenu/Controller.scala
index cfef7b0..b4e9b3b 100644
--- a/examples/demos/src/main/scala/scrollmenu/Controller.scala
+++ b/examples/demos/src/main/scala/scrollmenu/Controller.scala
@@ -1,7 +1,8 @@
package scrollmenu
import org.scalajs.dom
-import org.scalajs.dom.extensions._
+import dom.html
+import org.scalajs.dom.ext._
import scalajs.js
import scalajs.js.annotation.JSExport
@@ -23,7 +24,7 @@ object Controller{
val Seq(main, menu, layout, menuLink) = Seq(
"main", "menu", "layout", "menuLink"
- ).map(dom.document.getElementById(_).asInstanceOf[dom.HTMLElement])
+ ).map(dom.document.getElementById(_).asInstanceOf[html.Element])
val snippets = dom.document.getElementsByClassName("highlight-me")
@@ -73,8 +74,8 @@ object Controller{
menuLink.classList.toggle("active")
}
- main.onscroll = (e: dom.UIEvent) => updateScroll()
- updateScroll()
+// main.onscroll = (e: dom.UIEvent) => updateScroll()
+// updateScroll()
}
}
diff --git a/examples/demos/src/main/scala/scrollmenu/ScrollSpy.scala b/examples/demos/src/main/scala/scrollmenu/ScrollSpy.scala
index 9a64314..6419dc4 100644
--- a/examples/demos/src/main/scala/scrollmenu/ScrollSpy.scala
+++ b/examples/demos/src/main/scala/scrollmenu/ScrollSpy.scala
@@ -1,20 +1,21 @@
package scrollmenu
import org.scalajs.dom
-import org.scalajs.dom.extensions._
+import dom.html
+import org.scalajs.dom.ext._
import scalajs.js
import scalatags.JsDom.all._
case class Tree[T](value: T, children: Vector[Tree[T]])
-case class MenuNode(frag: dom.HTMLElement, id: String, start: Int, end: Int)
+case class MenuNode(frag: html.Element, id: String, start: Int, end: Int)
/**
* High performance scrollspy to work keep the left menu bar in sync.
* Lots of sketchy imperative code in order to maximize performance.
*/
class ScrollSpy(structure: Tree[String],
- main: dom.HTMLElement){
+ main: html.Element){
lazy val domTrees = {
var i = -1
def recurse(t: Tree[String], depth: Int): Tree[MenuNode] = {
@@ -44,9 +45,9 @@ class ScrollSpy(structure: Tree[String],
val domTrees = recurse(structure, 0)
domTrees
}
- def offset(el: dom.HTMLElement, parent: dom.HTMLElement): Double = {
+ def offset(el: html.Element, parent: html.Element): Double = {
if (el == parent) 0
- else el.offsetTop + offset(el.offsetParent.asInstanceOf[dom.HTMLElement], parent)
+ else el.offsetTop + offset(el.offsetParent.asInstanceOf[html.Element], parent)
}
lazy val headers = {
val menuItems = {
@@ -57,7 +58,7 @@ class ScrollSpy(structure: Tree[String],
}
js.Array(
- menuItems.map(name => dom.document.getElementById(Controller.munge(name)).asInstanceOf[dom.HTMLElement])
+ menuItems.map(name => dom.document.getElementById(Controller.munge(name)).asInstanceOf[html.Element])
.map((el) => () => offset(el, main)):_*
)
}
@@ -79,7 +80,7 @@ class ScrollSpy(structure: Tree[String],
def setFullHeight(mn: MenuNode) = {
mn.frag
.children(1)
- .asInstanceOf[dom.HTMLElement]
+ .asInstanceOf[html.Element]
.style
.maxHeight = (mn.end - mn.start + 1) * 44 + "px"
}
@@ -88,7 +89,7 @@ class ScrollSpy(structure: Tree[String],
def apply(): Unit = {
if (!scrolling) {
scrolling = true
- scrollTop = main.scrollTop
+ scrollTop = main.scrollTop.toInt
dom.setTimeout({() =>
scrolling = false
if (scrollTop == main.scrollTop) start()
@@ -140,7 +141,7 @@ class ScrollSpy(structure: Tree[String],
} walkHide(child)
val size = walkTree(rest) + children.length
- mn.frag.children(1).asInstanceOf[dom.HTMLElement].style.maxHeight =
+ mn.frag.children(1).asInstanceOf[html.Element].style.maxHeight =
if (!open) size * 44 + "px" else "none"
size
}
@@ -151,7 +152,7 @@ class ScrollSpy(structure: Tree[String],
frag.children(0).classList.remove("pure-menu-selected")
frag.classList.add("hide")
- frag.children(1).asInstanceOf[dom.HTMLElement].style.maxHeight =
+ frag.children(1).asInstanceOf[html.Element].style.maxHeight =
if (!open) "0px" else "none"
if (tree.value.start < winItem.start) frag.classList.add("selected")
diff --git a/examples/demos/src/main/scala/webpage/HelloWorld0.scala b/examples/demos/src/main/scala/webpage/HelloWorld0.scala
index 4ec7d30..e2fabec 100644
--- a/examples/demos/src/main/scala/webpage/HelloWorld0.scala
+++ b/examples/demos/src/main/scala/webpage/HelloWorld0.scala
@@ -1,10 +1,11 @@
package webpage
import org.scalajs.dom
+import dom.html
import scalajs.js.annotation.JSExport
@JSExport
object HelloWorld0 extends{
@JSExport
- def main(target: dom.HTMLDivElement) ={
+ def main(target: html.Div) ={
val (f, d) = ("fox", "dog")
target.innerHTML = s"""
<div>
diff --git a/examples/demos/src/main/scala/webpage/HelloWorld1.scala b/examples/demos/src/main/scala/webpage/HelloWorld1.scala
index f897c98..86d75f4 100644
--- a/examples/demos/src/main/scala/webpage/HelloWorld1.scala
+++ b/examples/demos/src/main/scala/webpage/HelloWorld1.scala
@@ -1,11 +1,12 @@
package webpage
import org.scalajs.dom
+import dom.html
import scalajs.js.annotation.JSExport
import scalatags.JsDom.all._
@JSExport
object HelloWorld1 extends{
@JSExport
- def main(target: dom.HTMLDivElement) = {
+ def main(target: html.Div) = {
val (animalA, animalB) = ("fox", "dog")
target.appendChild(
div(
diff --git a/examples/demos/src/main/scala/webpage/Inputs.scala b/examples/demos/src/main/scala/webpage/Inputs.scala
index 0354d6d..fc8d37d 100644
--- a/examples/demos/src/main/scala/webpage/Inputs.scala
+++ b/examples/demos/src/main/scala/webpage/Inputs.scala
@@ -1,13 +1,14 @@
package webpage
import org.scalajs.dom
+import dom.html
import scalajs.js.annotation.JSExport
import scalatags.JsDom.all._
@JSExport
object Inputs extends{
@JSExport
- def main(target: dom.HTMLDivElement) = {
+ def main(target: html.Div) = {
val box = input(
`type`:="text",
placeholder:="Type here!"
diff --git a/examples/demos/src/main/scala/webpage/Search0.scala b/examples/demos/src/main/scala/webpage/Search0.scala
index d44dc34..89c2449 100644
--- a/examples/demos/src/main/scala/webpage/Search0.scala
+++ b/examples/demos/src/main/scala/webpage/Search0.scala
@@ -1,13 +1,14 @@
package webpage
import org.scalajs.dom
+import dom.html
import scalajs.js.annotation.JSExport
import scalatags.JsDom.all._
@JSExport
object Search0 extends{
@JSExport
- def main(target: dom.HTMLDivElement) = {
+ def main(target: html.Div) = {
val listings = Seq(
"Apple", "Apricot", "Banana", "Cherry",
"Mango", "Mangosteen", "Mandarin",
diff --git a/examples/demos/src/main/scala/webpage/Search1.scala b/examples/demos/src/main/scala/webpage/Search1.scala
index 9a37ca9..dc5ff7b 100644
--- a/examples/demos/src/main/scala/webpage/Search1.scala
+++ b/examples/demos/src/main/scala/webpage/Search1.scala
@@ -3,11 +3,11 @@ package webpage
import org.scalajs.dom
import scalajs.js.annotation.JSExport
import scalatags.JsDom.all._
-
+import dom.html
@JSExport
object Search1 extends{
@JSExport
- def main(target: dom.HTMLDivElement) = {
+ def main(target: html.Div) = {
val listings = Seq(
"Apple", "Apricot", "Banana", "Cherry",
"Mango", "Mangosteen", "Mandarin",
diff --git a/examples/demos/src/main/scala/webpage/Weather0.scala b/examples/demos/src/main/scala/webpage/Weather0.scala
index 2bf4666..a650f4e 100644
--- a/examples/demos/src/main/scala/webpage/Weather0.scala
+++ b/examples/demos/src/main/scala/webpage/Weather0.scala
@@ -5,11 +5,11 @@ import org.scalajs.dom.{Node, Element}
import scalajs.js
import scalajs.js.annotation.JSExport
import scalatags.JsDom.all._
-
+import dom.html
@JSExport
object Weather0 extends{
@JSExport
- def main(target: dom.HTMLDivElement) = {
+ def main(target: html.Div) = {
val xhr = new dom.XMLHttpRequest()
xhr.open("GET",
"http://api.openweathermap.org/" +
diff --git a/examples/demos/src/main/scala/webpage/Weather1.scala b/examples/demos/src/main/scala/webpage/Weather1.scala
index 1d61678..3b4cbb5 100644
--- a/examples/demos/src/main/scala/webpage/Weather1.scala
+++ b/examples/demos/src/main/scala/webpage/Weather1.scala
@@ -5,12 +5,12 @@ import org.scalajs.dom.{Node, Element}
import scalajs.js
import scalajs.js.annotation.JSExport
import scalatags.JsDom.all._
-
+import dom.html
@JSExport
object Weather1 extends{
@JSExport
- def main(target: dom.HTMLDivElement) = {
- import dom.extensions._
+ def main(target: html.Div) = {
+ import dom.ext._
import scala.scalajs
.concurrent
.JSExecutionContext
diff --git a/examples/demos/src/main/scala/webpage/Weather2.scala b/examples/demos/src/main/scala/webpage/Weather2.scala
index bf908e3..0396a9d 100644
--- a/examples/demos/src/main/scala/webpage/Weather2.scala
+++ b/examples/demos/src/main/scala/webpage/Weather2.scala
@@ -5,12 +5,13 @@ import org.scalajs.dom.{Node, Element}
import scalajs.js
import scalajs.js.annotation.JSExport
import scalatags.JsDom.all._
+import dom.html
@JSExport
object Weather2 extends{
@JSExport
- def main(target: dom.HTMLDivElement) = {
- import dom.extensions._
+ def main(target: html.Div) = {
+ import dom.ext._
import scala.scalajs
.concurrent
.JSExecutionContext
diff --git a/examples/demos/src/main/scala/webpage/Weather3.scala b/examples/demos/src/main/scala/webpage/Weather3.scala
index 3a7a2ac..bbe5dcc 100644
--- a/examples/demos/src/main/scala/webpage/Weather3.scala
+++ b/examples/demos/src/main/scala/webpage/Weather3.scala
@@ -5,12 +5,13 @@ import org.scalajs.dom.{Node, Element}
import scalajs.js
import scalajs.js.annotation.JSExport
import scalatags.JsDom.all._
+import dom.html
@JSExport
object Weather3 extends{
@JSExport
- def main(target: dom.HTMLDivElement) = {
- import dom.extensions._
+ def main(target: html.Div) = {
+ import dom.ext._
import scala.scalajs
.concurrent
.JSExecutionContext
diff --git a/examples/demos/src/main/scala/webpage/WeatherSearch.scala b/examples/demos/src/main/scala/webpage/WeatherSearch.scala
index de8d1e2..951fa46 100644
--- a/examples/demos/src/main/scala/webpage/WeatherSearch.scala
+++ b/examples/demos/src/main/scala/webpage/WeatherSearch.scala
@@ -1,16 +1,17 @@
package webpage
import org.scalajs.dom
-import dom.extensions._
+import dom.ext._
import scalajs.concurrent.JSExecutionContext.Implicits.runNow
import scalajs.js
import scalajs.js.annotation.JSExport
import scalatags.JsDom.all._
+import dom.html
@JSExport
object WeatherSearch extends{
@JSExport
- def main(target: dom.HTMLDivElement) = {
+ def main(target: html.Div) = {
lazy val box = input(
`type`:="text",