WidgetWithBounds.java 837 B

1234567891011121314151617181920212223242526272829303132
  1. /*
  2. * Roughly Enough Items by Danielshe.
  3. * Licensed under the MIT License.
  4. */
  5. package me.shedaniel.rei.gui.widget;
  6. import me.shedaniel.math.api.Point;
  7. import me.shedaniel.math.api.Rectangle;
  8. public abstract class WidgetWithBounds extends Widget {
  9. abstract public Rectangle getBounds();
  10. public final boolean containsMouse(int mouseX, int mouseY) {
  11. return containsMouse((double) mouseX, (double) mouseY);
  12. }
  13. public final boolean containsMouse(Point point) {
  14. return containsMouse(point.x, point.y);
  15. }
  16. public boolean containsMouse(double mouseX, double mouseY) {
  17. return getBounds().contains(mouseX, mouseY);
  18. }
  19. @Override
  20. public final boolean isMouseOver(double double_1, double double_2) {
  21. return containsMouse(double_1, double_2);
  22. }
  23. }