aboutsummaryrefslogtreecommitdiff
path: root/src/main/kotlin/gui/ImageComponent.kt
blob: bba7dee2af9f588f7cb10b2229cff61df2bc7d8a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
package moe.nea.firmament.gui

import io.github.notenoughupdates.moulconfig.common.MyResourceLocation
import io.github.notenoughupdates.moulconfig.gui.GuiComponent
import io.github.notenoughupdates.moulconfig.gui.GuiImmediateContext
import java.util.function.Supplier

class ImageComponent(
    private val width: Int,
    private val height: Int,
    val resourceLocation: Supplier<MyResourceLocation>,
    val u1: Float,
    val u2: Float,
    val v1: Float,
    val v2: Float,
) : GuiComponent() {
    override fun getWidth(): Int {
        return width
    }

    override fun getHeight(): Int {
        return height
    }

    override fun render(context: GuiImmediateContext) {
        context.renderContext.bindTexture(resourceLocation.get())
        context.renderContext.drawTexturedRect(
            0f, 0f,
            context.width.toFloat(), context.height.toFloat(),
            u1, v1, u2, v2
        )
    }
}