From a9ded2bc1da7c235319f12a5a5d451a8fa769b24 Mon Sep 17 00:00:00 2001 From: johni0702 Date: Sun, 12 Jul 2015 19:27:44 +0200 Subject: [PATCH] Clickable and Draggable now also return booleans for whether they handled the event --- .../johni0702/minecraft/gui/element/AbstractGuiClickable.java | 4 +++- .../johni0702/minecraft/gui/element/AbstractGuiTextField.java | 3 ++- .../minecraft/gui/element/advanced/AbstractGuiTextArea.java | 3 ++- .../java/de/johni0702/minecraft/gui/function/Clickable.java | 2 +- .../java/de/johni0702/minecraft/gui/function/Draggable.java | 4 ++-- 5 files changed, 10 insertions(+), 6 deletions(-) diff --git a/src/main/java/de/johni0702/minecraft/gui/element/AbstractGuiClickable.java b/src/main/java/de/johni0702/minecraft/gui/element/AbstractGuiClickable.java index 92b8e09d..2fd4fa49 100644 --- a/src/main/java/de/johni0702/minecraft/gui/element/AbstractGuiClickable.java +++ b/src/main/java/de/johni0702/minecraft/gui/element/AbstractGuiClickable.java @@ -42,7 +42,7 @@ public abstract class AbstractGuiClickable> ex } @Override - public void mouseClick(ReadablePoint position, int button) { + public boolean mouseClick(ReadablePoint position, int button) { Point pos = new Point(position); if (getContainer() != null) { getContainer().convertFor(this, pos); @@ -50,7 +50,9 @@ public abstract class AbstractGuiClickable> ex if (isMouseHovering(pos) && isEnabled()) { onClick(); + return true; } + return false; } protected boolean isMouseHovering(ReadablePoint pos) { diff --git a/src/main/java/de/johni0702/minecraft/gui/element/AbstractGuiTextField.java b/src/main/java/de/johni0702/minecraft/gui/element/AbstractGuiTextField.java index c3940f79..aa4e103f 100644 --- a/src/main/java/de/johni0702/minecraft/gui/element/AbstractGuiTextField.java +++ b/src/main/java/de/johni0702/minecraft/gui/element/AbstractGuiTextField.java @@ -92,8 +92,9 @@ public abstract class AbstractGuiTextField> } @Override - public void mouseClick(ReadablePoint position, int button) { + public boolean mouseClick(ReadablePoint position, int button) { wrapped.mouseClicked(position.getX(), position.getY(), button); + return false; } @Override diff --git a/src/main/java/de/johni0702/minecraft/gui/element/advanced/AbstractGuiTextArea.java b/src/main/java/de/johni0702/minecraft/gui/element/advanced/AbstractGuiTextArea.java index 8d071cd4..b34f6f26 100644 --- a/src/main/java/de/johni0702/minecraft/gui/element/advanced/AbstractGuiTextArea.java +++ b/src/main/java/de/johni0702/minecraft/gui/element/advanced/AbstractGuiTextArea.java @@ -394,7 +394,7 @@ public abstract class AbstractGuiTextArea> } @Override - public void mouseClick(ReadablePoint position, int button) { + public boolean mouseClick(ReadablePoint position, int button) { if (getContainer() != null) { getContainer().convertFor(this, (Point) (position = new Point(position))); } @@ -414,6 +414,7 @@ public abstract class AbstractGuiTextArea> } setFocused(hovering); + return hovering; } protected boolean isMouseHovering(ReadablePoint pos) { diff --git a/src/main/java/de/johni0702/minecraft/gui/function/Clickable.java b/src/main/java/de/johni0702/minecraft/gui/function/Clickable.java index 0b8acaf6..01fe01de 100644 --- a/src/main/java/de/johni0702/minecraft/gui/function/Clickable.java +++ b/src/main/java/de/johni0702/minecraft/gui/function/Clickable.java @@ -25,5 +25,5 @@ package de.johni0702.minecraft.gui.function; import org.lwjgl.util.ReadablePoint; public interface Clickable { - void mouseClick(ReadablePoint position, int button); + boolean mouseClick(ReadablePoint position, int button); } diff --git a/src/main/java/de/johni0702/minecraft/gui/function/Draggable.java b/src/main/java/de/johni0702/minecraft/gui/function/Draggable.java index 759d7692..43c432a3 100644 --- a/src/main/java/de/johni0702/minecraft/gui/function/Draggable.java +++ b/src/main/java/de/johni0702/minecraft/gui/function/Draggable.java @@ -25,6 +25,6 @@ package de.johni0702.minecraft.gui.function; import org.lwjgl.util.ReadablePoint; public interface Draggable extends Clickable { - void mouseDrag(ReadablePoint position, int button, long timeSinceLastCall); - void mouseRelease(ReadablePoint position, int button); + boolean mouseDrag(ReadablePoint position, int button, long timeSinceLastCall); + boolean mouseRelease(ReadablePoint position, int button); }