aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/api/gui/widgets/GT_GuiFakeItemButton.java
diff options
context:
space:
mode:
authorMartin Robertz <dream-master@gmx.net>2020-05-10 16:06:29 +0200
committerGitHub <noreply@github.com>2020-05-10 16:06:29 +0200
commit87321491668b5b07801eaafb22390051c97fd9d8 (patch)
tree95107a6dac84a67dfea6aa49254efaa0f6d978d9 /src/main/java/gregtech/api/gui/widgets/GT_GuiFakeItemButton.java
parent92662137b00d39424b910846f63094a4c07e6589 (diff)
parentea1bf1b9b362f64b3c6d82c269ce9f66c82ee559 (diff)
downloadGT5-Unofficial-87321491668b5b07801eaafb22390051c97fd9d8.tar.gz
GT5-Unofficial-87321491668b5b07801eaafb22390051c97fd9d8.tar.bz2
GT5-Unofficial-87321491668b5b07801eaafb22390051c97fd9d8.zip
Merge pull request #281 from moller21/coverguis2
Cover GUI's take 2
Diffstat (limited to 'src/main/java/gregtech/api/gui/widgets/GT_GuiFakeItemButton.java')
-rw-r--r--src/main/java/gregtech/api/gui/widgets/GT_GuiFakeItemButton.java64
1 files changed, 64 insertions, 0 deletions
diff --git a/src/main/java/gregtech/api/gui/widgets/GT_GuiFakeItemButton.java b/src/main/java/gregtech/api/gui/widgets/GT_GuiFakeItemButton.java
new file mode 100644
index 0000000000..db7029d60f
--- /dev/null
+++ b/src/main/java/gregtech/api/gui/widgets/GT_GuiFakeItemButton.java
@@ -0,0 +1,64 @@
+package gregtech.api.gui.widgets;
+
+import gregtech.api.interfaces.IGuiScreen;
+import net.minecraft.client.Minecraft;
+import net.minecraft.item.ItemStack;
+import org.lwjgl.opengl.GL11;
+
+import java.awt.*;
+
+public class GT_GuiFakeItemButton implements IGuiScreen.IGuiElement {
+
+ private final GT_GuiIcon bgIcon;
+ private ItemStack item;
+ private IGuiScreen gui;
+ private int x0, y0, xPosition, yPosition;
+ private int width, height;
+
+ public GT_GuiFakeItemButton(IGuiScreen gui, int x, int y, GT_GuiIcon bgIcon) {
+ this.gui = gui;
+ this.x0 = x;
+ this.y0 = y;
+ this.bgIcon = bgIcon;
+ item = null;
+ width = 18;
+ height = 18;
+ gui.addElement(this);
+ }
+
+ public GT_GuiFakeItemButton setItem(ItemStack i) {
+ item = i;
+ return this;
+ }
+
+ public ItemStack getItem(){
+ return item;
+ }
+
+ @Override
+ public void onInit() {
+ xPosition = x0 + gui.getGuiLeft();
+ yPosition = y0 + gui.getGuiTop();
+ }
+
+ @Override
+ public void draw(int mouseX, int mouseY, float parTicks) {
+ GL11.glColor4f(1, 1, 1, 1);
+ GL11.glPushAttrib(GL11.GL_ENABLE_BIT);
+ GL11.glEnable(GL11.GL_BLEND);
+ GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA);
+
+ if (bgIcon != null){
+ GT_GuiIcon.render(bgIcon, xPosition-1, yPosition-1, 18, 18,0,true);
+ }
+
+ if (item != null)
+ gui.getItemRenderer().renderItemAndEffectIntoGUI(gui.getFontRenderer(), Minecraft.getMinecraft().getTextureManager(), item, xPosition, yPosition);
+
+ GL11.glPopAttrib();
+ }
+
+ public Rectangle getBounds() {
+ return new Rectangle(x0, y0, width, height);
+ }
+}