Extend IContent by IGuiEventListener and implement method hooks
This commit is contained in:
@@ -15,12 +15,18 @@ import net.minecraftforge.api.distmarker.OnlyIn;
|
||||
@OnlyIn(Dist.CLIENT)
|
||||
public abstract class Container extends Screen implements IContainer
|
||||
{
|
||||
protected final List<IMenu> menus = new ArrayList<IMenu>();
|
||||
|
||||
protected Container(ITextComponent title)
|
||||
{
|
||||
super(title);
|
||||
}
|
||||
|
||||
protected final List<IMenu> menus = new ArrayList<IMenu>();
|
||||
@Override
|
||||
public void init()
|
||||
{
|
||||
super.init();
|
||||
}
|
||||
|
||||
@Override
|
||||
public <T extends Widget> T add(T button)
|
||||
@@ -34,12 +40,6 @@ public abstract class Container extends Screen implements IContainer
|
||||
return textfield;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void init()
|
||||
{
|
||||
super.init();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void add(Menu menu)
|
||||
{
|
||||
|
||||
@@ -535,14 +535,9 @@ public class GuiWorldHandler extends Container
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean charTyped(char charTyped, int keyCode)
|
||||
public void mouseMoved(double xPos, double mouseY)
|
||||
{
|
||||
if(this.nameField.isFocused())
|
||||
{
|
||||
this.nameField.setCursorPositionEnd();
|
||||
}
|
||||
|
||||
return super.charTyped(charTyped, keyCode);
|
||||
this.content.mouseMoved(xPos, mouseY);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -553,9 +548,47 @@ public class GuiWorldHandler extends Container
|
||||
this.nameField.setCursorPositionEnd();
|
||||
}
|
||||
|
||||
if(this.content.mouseClicked(mouseX, mouseY, keyCode))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
return super.mouseClicked(mouseX, mouseY, keyCode);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean mouseReleased(double mouseX, double mouseY, int keyCode)
|
||||
{
|
||||
if(this.content.mouseReleased(mouseX, mouseY, keyCode))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
return super.mouseReleased(mouseX, mouseY, keyCode);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean mouseDragged(double mouseX, double mouseY, int keyCode, double deltaX, double deltaY)
|
||||
{
|
||||
if(this.content.mouseDragged(mouseX, mouseY, keyCode, deltaX, deltaY))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
return super.mouseDragged(mouseX, mouseY, keyCode, deltaX, deltaY);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean mouseScrolled(double mouseX, double mouseY, double distance)
|
||||
{
|
||||
if(this.content.mouseScrolled(mouseX, mouseY, distance))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
return super.mouseScrolled(mouseX, mouseY, distance);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean keyPressed(int keyCode, int scanCode, int modifiers)
|
||||
{
|
||||
@@ -572,9 +605,63 @@ public class GuiWorldHandler extends Container
|
||||
return true;
|
||||
}
|
||||
|
||||
if(this.content.keyPressed(keyCode, scanCode, modifiers))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
return super.keyPressed(keyCode, scanCode, modifiers);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean keyReleased(int keyCode, int scanCode, int modifiers)
|
||||
{
|
||||
if(this.content.keyReleased(keyCode, scanCode, modifiers))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
return super.keyReleased(keyCode, scanCode, modifiers);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean charTyped(char charTyped, int keyCode)
|
||||
{
|
||||
if(this.nameField.isFocused())
|
||||
{
|
||||
this.nameField.setCursorPositionEnd();
|
||||
}
|
||||
|
||||
if(this.content.charTyped(charTyped, keyCode))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
return super.charTyped(charTyped, keyCode);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean changeFocus(boolean focus)
|
||||
{
|
||||
if(this.content.changeFocus(focus))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
return super.changeFocus(focus);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isMouseOver(double mouseX, double mouseY)
|
||||
{
|
||||
if(this.content.isMouseOver(mouseX, mouseY))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
return super.isMouseOver(mouseX, mouseY);
|
||||
}
|
||||
|
||||
private void defaultColor()
|
||||
{
|
||||
this.defaultColor(1.0F);
|
||||
|
||||
@@ -6,11 +6,12 @@ import javax.annotation.Nullable;
|
||||
import exopandora.worldhandler.builder.ICommandBuilder;
|
||||
import exopandora.worldhandler.gui.category.Category;
|
||||
import exopandora.worldhandler.gui.container.Container;
|
||||
import net.minecraft.client.gui.IGuiEventListener;
|
||||
import net.minecraftforge.api.distmarker.Dist;
|
||||
import net.minecraftforge.api.distmarker.OnlyIn;
|
||||
|
||||
@OnlyIn(Dist.CLIENT)
|
||||
public interface IContent
|
||||
public interface IContent extends IGuiEventListener
|
||||
{
|
||||
default void init(Container container)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user