Commit 4d64630e authored by Nikolay Igotti's avatar Nikolay Igotti

Small cleanup.

parent 29a6d57d
...@@ -15,11 +15,15 @@ repositories { ...@@ -15,11 +15,15 @@ repositories {
} }
def os = System.getProperty("os.name") def os = System.getProperty("os.name")
def target = "linux" def target = ""
if (os == "Mac OS X") { if (os == "Mac OS X") {
target = "macos" target = "macos"
} else if (os.startsWith("Win")) { } else if (os.startsWith("Win")) {
target = "windows" target = "windows"
} else if (os.startsWith("Linux")) {
target = "linux"
} else {
throw Error("Unsupported OS: $target")
} }
def version = "0.1-SNAPSHOT" def version = "0.1-SNAPSHOT"
......
...@@ -31,18 +31,19 @@ interface SkiaRenderer { ...@@ -31,18 +31,19 @@ interface SkiaRenderer {
fun onDispose() fun onDispose()
} }
class SkiaLayer() : HardwareLayer() { open class SkiaLayer : HardwareLayer() {
var renderer: SkiaRenderer? = null var renderer: SkiaRenderer? = null
private val skijaState = SkijaState() private val skijaState = SkijaState()
var init: Boolean = false var init: Boolean = false
public override fun draw() { override fun draw() {
if (!init) { if (!init) {
if (skijaState.context == null) { if (skijaState.context == null) {
skijaState.context = Context.makeGL() skijaState.context = Context.makeGL()
} }
initSkija() initSkija()
renderer?.onInit()
init = true init = true
} }
...@@ -51,8 +52,8 @@ class SkiaLayer() : HardwareLayer() { ...@@ -51,8 +52,8 @@ class SkiaLayer() : HardwareLayer() {
gl.glClearColor(1.0f, 1.0f, 1.0f, 1.0f) gl.glClearColor(1.0f, 1.0f, 1.0f, 1.0f)
gl.glClear(gl.GL_COLOR_BUFFER_BIT) gl.glClear(gl.GL_COLOR_BUFFER_BIT)
canvas!!.clear(0xFFFFFFF) canvas!!.clear(-1)
renderer!!.onRender(canvas!!, width, height) renderer?.onRender(canvas!!, width, height)
context!!.flush() context!!.flush()
gl.glFinish() gl.glFinish()
...@@ -84,22 +85,21 @@ class SkiaLayer() : HardwareLayer() { ...@@ -84,22 +85,21 @@ class SkiaLayer() : HardwareLayer() {
} }
} }
class SkiaWindow() : JFrame() { open class SkiaWindow : JFrame() {
companion object { companion object {
init { init {
Library.load("/", "skiko") Library.load("/", "skiko")
} }
} }
val layer: SkiaLayer val layer: SkiaLayer = SkiaLayer()
init { init {
layer = SkiaLayer() setLayout(null)
setLayout(null);
add(layer) add(layer)
addComponentListener(object : ComponentAdapter() { addComponentListener(object : ComponentAdapter() {
public override fun componentResized(e: ComponentEvent) { override fun componentResized(e: ComponentEvent) {
layer.init = false layer.init = false
layer.setSize(width, height) layer.setSize(width, height)
Engine.get().render(layer) Engine.get().render(layer)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment