package net.shadowfacts.asmr import net.shadowfacts.kiwidsl.dsl import net.shadowfacts.shadowui.Screen import net.shadowfacts.shadowui.View import net.shadowfacts.shadowui.Window import net.shadowfacts.shadowui.util.Color class TestScreen: Screen() { init { windows.add(Window().apply { val red = addView(View().apply { backgroundColor = Color(0xff0000) }) val green = addView(View().apply { backgroundColor = Color(0x00ff00) }) val blue = addView(View().apply { backgroundColor = Color(0x0000ff) }) val purple = green.addSubview(View().apply { backgroundColor = Color(0x800080) }) solver.dsl { red.leftAnchor equalTo 0 red.widthAnchor equalTo 200 red.topAnchor equalTo 0 red.heightAnchor equalTo 100 green.leftAnchor equalTo (red.leftAnchor + red.widthAnchor + 20) green.widthAnchor equalTo red.widthAnchor green.topAnchor equalTo 0 green.heightAnchor equalTo (red.heightAnchor + 100) blue.leftAnchor equalTo green.leftAnchor blue.widthAnchor equalTo green.widthAnchor blue.topAnchor equalTo (green.topAnchor + green.heightAnchor) blue.heightAnchor equalTo 50 purple.widthAnchor equalTo 100 purple.heightAnchor equalTo 100 purple.centerXAnchor equalTo green.centerXAnchor purple.centerYAnchor equalTo green.centerYAnchor } layout() }) } }