DEV Community

Cover image for Doodle 0.4.2 released
Nicholas Eddy
Nicholas Eddy

Posted on • Updated on

Doodle 0.4.2 released

Doodle is a pure Kotlin UI framework for the Web, that lets you create rich applications without relying on Javascript, HTML or CSS. Check out the documentation and tutorials to learn more.

Features

val ring   : Path = ring       (center, innerRadius, outerRadius)
val section: Path = ringSection(center, innerRadius, outerRadius, startAngle, endAngle)
Enter fullscreen mode Exit fullscreen mode
object: ProgressIndicator() {
    init {
        size     = Size(200, 100)
        progress = 0.25
        behavior = PathProgressIndicatorBehavior(
            pathMetrics,          // injected
            path                = path("M10 80 C 40 10, 65 10, 95 80 S 150 150, 180 80")!!,
            foreground          = LinearGradientPaint(Black, Blue, Origin, Point(width, 0.0)),
            foregroundThickness = 5.0,
            background          = Lightgray.paint,
            backgroundThickness = 5.0
        )
    }
}
Enter fullscreen mode Exit fullscreen mode
canvas.rect(rectangle = bounds.atOrigin.inset(10.0),
            radius = 10.0,
            stroke = Stroke(fill = LinearGradientPaint(Red, Green, Origin, Point(width, height)), thickness = 20.0))
Enter fullscreen mode Exit fullscreen mode

APIs

  • Deprecated CircularProgressBehavior (replaced by BasicCircularProgressBehavior)
  • Stroke dashes changed to DoubleArray
  • PathMetrics can now measure the bounds of a Path (in addition to size)
  • Fill renamed to Paint and old usages deprecated

Bug Fixes / Improvements

Docs

  • Added examples of Circular and Path ProgressIndicator behaviors to docs

See the full release notes for more details.

Top comments (0)