2013-08-27 00:49:32 +02:00
|
|
|
package mekanism.client.gui;
|
2013-08-26 02:54:34 +02:00
|
|
|
|
2014-01-10 23:42:53 +01:00
|
|
|
import java.util.List;
|
2013-08-26 02:54:34 +02:00
|
|
|
|
2014-01-11 05:26:48 +01:00
|
|
|
import mekanism.common.ObfuscatedNames;
|
|
|
|
import mekanism.common.util.MekanismUtils;
|
2013-08-26 02:54:34 +02:00
|
|
|
import net.minecraft.client.Minecraft;
|
|
|
|
import net.minecraft.client.gui.FontRenderer;
|
2014-01-11 05:26:48 +01:00
|
|
|
import net.minecraft.client.gui.inventory.GuiContainer;
|
2013-08-26 02:54:34 +02:00
|
|
|
import net.minecraft.tileentity.TileEntity;
|
|
|
|
import net.minecraft.util.ResourceLocation;
|
|
|
|
|
|
|
|
public abstract class GuiElement
|
|
|
|
{
|
|
|
|
protected static Minecraft mc = Minecraft.getMinecraft();
|
|
|
|
|
|
|
|
protected ResourceLocation RESOURCE;
|
|
|
|
|
2014-01-05 04:43:54 +01:00
|
|
|
public GuiMekanism guiObj;
|
2013-08-26 02:54:34 +02:00
|
|
|
|
|
|
|
public TileEntity tileEntity;
|
|
|
|
|
|
|
|
public ResourceLocation defaultLocation;
|
|
|
|
|
2014-01-05 04:43:54 +01:00
|
|
|
public GuiElement(ResourceLocation resource, GuiMekanism gui, TileEntity tile, ResourceLocation def)
|
2013-08-26 02:54:34 +02:00
|
|
|
{
|
|
|
|
RESOURCE = resource;
|
2013-10-26 06:02:57 +02:00
|
|
|
guiObj = gui;
|
2013-08-26 02:54:34 +02:00
|
|
|
tileEntity = tile;
|
|
|
|
defaultLocation = def;
|
|
|
|
}
|
|
|
|
|
|
|
|
protected void displayTooltip(String s, int xAxis, int yAxis)
|
|
|
|
{
|
2014-01-05 04:43:54 +01:00
|
|
|
guiObj.drawCreativeTabHoveringText(s, xAxis, yAxis);
|
2013-08-26 02:54:34 +02:00
|
|
|
}
|
|
|
|
|
2014-01-10 23:42:53 +01:00
|
|
|
protected void displayTooltips(List<String> list, int xAxis, int yAxis)
|
|
|
|
{
|
|
|
|
guiObj.func_102021_a(list, xAxis, yAxis);
|
|
|
|
}
|
|
|
|
|
2013-08-26 02:54:34 +02:00
|
|
|
protected void offsetX(int xSize)
|
|
|
|
{
|
2014-01-11 05:26:48 +01:00
|
|
|
if(guiObj instanceof GuiContainer)
|
|
|
|
{
|
|
|
|
try {
|
|
|
|
int size = (Integer)MekanismUtils.getPrivateValue(guiObj, GuiContainer.class, ObfuscatedNames.GuiContainer_xSize);
|
|
|
|
MekanismUtils.setPrivateValue(guiObj, size + xSize, GuiContainer.class, ObfuscatedNames.GuiContainer_xSize);
|
|
|
|
} catch(Exception e) {}
|
|
|
|
}
|
2013-08-26 02:54:34 +02:00
|
|
|
}
|
2014-01-11 05:26:48 +01:00
|
|
|
|
2013-08-26 02:54:34 +02:00
|
|
|
protected void offsetY(int ySize)
|
|
|
|
{
|
2014-01-11 05:26:48 +01:00
|
|
|
if(guiObj instanceof GuiContainer)
|
|
|
|
{
|
|
|
|
try {
|
|
|
|
int size = (Integer)MekanismUtils.getPrivateValue(guiObj, GuiContainer.class, ObfuscatedNames.GuiContainer_ySize);
|
|
|
|
MekanismUtils.setPrivateValue(guiObj, size + ySize, GuiContainer.class, ObfuscatedNames.GuiContainer_ySize);
|
|
|
|
} catch(Exception e) {}
|
|
|
|
}
|
2013-08-26 02:54:34 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
protected FontRenderer getFontRenderer()
|
|
|
|
{
|
2014-01-11 03:50:02 +01:00
|
|
|
return guiObj.getFontRenderer();
|
2013-08-26 02:54:34 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
public abstract void renderBackground(int xAxis, int yAxis, int guiWidth, int guiHeight);
|
|
|
|
|
|
|
|
public abstract void renderForeground(int xAxis, int yAxis);
|
|
|
|
|
2013-08-27 00:28:55 +02:00
|
|
|
public abstract void preMouseClicked(int xAxis, int yAxis, int button);
|
|
|
|
|
|
|
|
public abstract void mouseClicked(int xAxis, int yAxis, int button);
|
2013-08-26 02:54:34 +02:00
|
|
|
}
|