Canvas

doodle.svg.effect.Canvas
See theCanvas companion object
final case class Canvas(target: Node, frame: Frame, redrawTopic: Topic[IO, Int], mouseClickTopic: Topic[IO, Point], mouseMoveTopic: Topic[IO, Point])

Attributes

Companion
object
Source
Canvas.scala
Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Members list

Value members

Concrete methods

def render[A](picture: Picture[A]): IO[A]

Attributes

Source
Canvas.scala
def renderChild(svgRoot: Node, nodes: Node): Unit

Attributes

Source
Canvas.scala
def svgRoot(bb: BoundingBox): Node

Get the root node, creating one if needed. Set mouseMoveStream and mouseClickStream as a side-effect.

Get the root node, creating one if needed. Set mouseMoveStream and mouseClickStream as a side-effect.

Attributes

Source
Canvas.scala
def textBoundingBox(text: String, font: Font): (BoundingBox, Rect)

Attributes

Source
Canvas.scala

Inherited methods

def productElementNames: Iterator[String]

Attributes

Inherited from:
Product
def productIterator: Iterator[Any]

Attributes

Inherited from:
Product

Concrete fields

Attributes

Source
Canvas.scala

Attributes

Source
Canvas.scala

Attributes

Source
Canvas.scala
val nullCallback: (Either[Throwable, Unit]) => Unit

Attributes

Source
Canvas.scala
val redraw: Stream[IO, Int]

Attributes

Source
Canvas.scala
val stream: Stream[IO, Nothing]

The stream that runs everything the Canvas' internals need to work. You must make sure this is executed if you create a Canvas by hand.

The stream that runs everything the Canvas' internals need to work. You must make sure this is executed if you create a Canvas by hand.

Attributes

Source
Canvas.scala