aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/cc/polyfrost/oneconfig/renderer
diff options
context:
space:
mode:
authorDeDiamondPro <67508414+DeDiamondPro@users.noreply.github.com>2022-06-13 21:17:51 +0200
committerDeDiamondPro <67508414+DeDiamondPro@users.noreply.github.com>2022-06-13 21:17:51 +0200
commitd246278dfe0ad7816d5a8db6ff04c1e8501e8125 (patch)
treed1eed5eae773b3d25a44fd323c8a7f2772079a93 /src/main/java/cc/polyfrost/oneconfig/renderer
parent1500cf9ad6bdb8240f2b01c117c06944ec30651a (diff)
downloadOneConfig-d246278dfe0ad7816d5a8db6ff04c1e8501e8125.tar.gz
OneConfig-d246278dfe0ad7816d5a8db6ff04c1e8501e8125.tar.bz2
OneConfig-d246278dfe0ad7816d5a8db6ff04c1e8501e8125.zip
lots of input stuff
Diffstat (limited to 'src/main/java/cc/polyfrost/oneconfig/renderer')
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/renderer/scissor/Scissor.java4
-rw-r--r--src/main/java/cc/polyfrost/oneconfig/renderer/scissor/ScissorManager.java7
2 files changed, 10 insertions, 1 deletions
diff --git a/src/main/java/cc/polyfrost/oneconfig/renderer/scissor/Scissor.java b/src/main/java/cc/polyfrost/oneconfig/renderer/scissor/Scissor.java
index 179a260..62854ef 100644
--- a/src/main/java/cc/polyfrost/oneconfig/renderer/scissor/Scissor.java
+++ b/src/main/java/cc/polyfrost/oneconfig/renderer/scissor/Scissor.java
@@ -24,4 +24,8 @@ public class Scissor {
this.width = scissor.width;
this.height = scissor.height;
}
+
+ public boolean isInScissor(int x, int y) {
+ return x >= this.x && x <= this.x + this.width && y >= this.y && y <= this.y + this.height;
+ }
}
diff --git a/src/main/java/cc/polyfrost/oneconfig/renderer/scissor/ScissorManager.java b/src/main/java/cc/polyfrost/oneconfig/renderer/scissor/ScissorManager.java
index 1f7801b..bfafedf 100644
--- a/src/main/java/cc/polyfrost/oneconfig/renderer/scissor/ScissorManager.java
+++ b/src/main/java/cc/polyfrost/oneconfig/renderer/scissor/ScissorManager.java
@@ -54,6 +54,11 @@ public class ScissorManager {
private static void applyScissors(long vg) {
NanoVG.nvgResetScissor(vg);
if (scissors.size() <= 0) return;
+ Scissor finalScissor = getFinalScissor(scissors);
+ NanoVG.nvgScissor(vg, finalScissor.x, finalScissor.y, finalScissor.width, finalScissor.height);
+ }
+
+ public static Scissor getFinalScissor(ArrayList<Scissor> scissors) {
Scissor finalScissor = new Scissor(scissors.get(0));
for (int i = 1; i < scissors.size(); i++) {
Scissor scissor = scissors.get(i);
@@ -64,6 +69,6 @@ public class ScissorManager {
finalScissor.width = rightX - finalScissor.x;
finalScissor.height = rightY - finalScissor.y;
}
- NanoVG.nvgScissor(vg, finalScissor.x, finalScissor.y, finalScissor.width, finalScissor.height);
+ return finalScissor;
}
}