1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
|
package binnie.craftgui.minecraft.control;
import binnie.core.BinnieCore;
import binnie.core.proxy.BinnieProxy;
import binnie.craftgui.controls.core.Control;
import binnie.craftgui.core.Attribute;
import binnie.craftgui.core.CraftGUI;
import binnie.craftgui.core.ITooltip;
import binnie.craftgui.core.ITopLevelWidget;
import binnie.craftgui.core.IWidget;
import binnie.craftgui.core.Tooltip;
import binnie.craftgui.core.geometry.IPoint;
import binnie.craftgui.core.renderer.Renderer;
import binnie.craftgui.minecraft.Window;
import net.minecraft.client.Minecraft;
import net.minecraft.item.ItemStack;
import org.lwjgl.opengl.GL11;
public class ControlItemDisplay
extends Control
implements ITooltip
{
private ItemStack itemStack = null;
public boolean hastooltip = false;
public void setTooltip()
{
this.hastooltip = true;
addAttribute(Attribute.MouseOver);
}
public ControlItemDisplay(IWidget parent, float x, float y)
{
this(parent, x, y, 16.0F);
}
public ControlItemDisplay(IWidget parent, float f, float y, ItemStack stack, boolean tooltip)
{
this(parent, f, y, 16.0F);
setItemStack(stack);
if (tooltip) {
setTooltip();
}
}
public ControlItemDisplay(IWidget parent, float x, float y, float size)
{
super(parent, x, y, size, size);
}
public void onRenderBackground()
{
IPoint relativeToWindow = getAbsolutePosition().sub(getSuperParent().getPosition());
if ((relativeToWindow.x() > Window.get(this).getSize().x() + 100.0F) || (relativeToWindow.y() > Window.get(this).getSize().y() + 100.0F)) {
return;
}
if (this.itemStack != null) {
if (getSize().x() != 16.0F)
{
GL11.glPushMatrix();
float scale = getSize().x() / 16.0F;
GL11.glScalef(scale, scale, 1.0F);
BinnieCore.proxy.getMinecraftInstance();float phase = (float)Minecraft.getSystemTime() / 20.0F;
CraftGUI.Render.item(IPoint.ZERO, this.itemStack, this.rotating);
GL11.glPopMatrix();
}
else
{
CraftGUI.Render.item(IPoint.ZERO, this.itemStack, this.rotating);
}
}
}
public void setItemStack(ItemStack itemStack)
{
this.itemStack = itemStack;
}
public ItemStack getItemStack()
{
return this.itemStack;
}
public void getTooltip(Tooltip tooltip)
{
if ((this.hastooltip) && (this.itemStack != null)) {
tooltip.add(this.itemStack.getTooltip(((Window)getSuperParent()).getPlayer(), false));
}
super.getTooltip(tooltip);
}
private boolean rotating = false;
public void setRotating()
{
this.rotating = true;
}
}
|