From ef588c0ace2c668f61deb5b14b3299fd243f2ff6 Mon Sep 17 00:00:00 2001 From: Unknown Date: Mon, 1 Jul 2019 20:06:43 +0800 Subject: Refractor HighlightableWidget --- .../shedaniel/rei/gui/widget/WidgetWithBounds.java | 31 ++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 src/main/java/me/shedaniel/rei/gui/widget/WidgetWithBounds.java (limited to 'src/main/java/me/shedaniel/rei/gui/widget/WidgetWithBounds.java') diff --git a/src/main/java/me/shedaniel/rei/gui/widget/WidgetWithBounds.java b/src/main/java/me/shedaniel/rei/gui/widget/WidgetWithBounds.java new file mode 100644 index 000000000..c1ed9fbbd --- /dev/null +++ b/src/main/java/me/shedaniel/rei/gui/widget/WidgetWithBounds.java @@ -0,0 +1,31 @@ +/* + * Roughly Enough Items by Danielshe. + * Licensed under the MIT License. + */ + +package me.shedaniel.rei.gui.widget; + +import java.awt.*; + +public abstract class WidgetWithBounds extends Widget { + + abstract public Shape getBounds(); + + public final boolean containsMouse(int mouseX, int mouseY) { + return containsMouse((double) mouseX, (double) mouseY); + } + + public final boolean containsMouse(Point point) { + return containsMouse(point.x, point.y); + } + + public boolean containsMouse(double mouseX, double mouseY) { + return getBounds().contains(mouseX, mouseY); + } + + @Override + public boolean isMouseOver(double double_1, double double_2) { + return containsMouse(double_1, double_2); + } + +} -- cgit