52 lines
1.3 KiB
Kotlin
52 lines
1.3 KiB
Kotlin
|
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()
|
||
|
})
|
||
|
}
|
||
|
|
||
|
}
|