summaryrefslogtreecommitdiff
path: root/src/main/java/darkknight/jewelrycraft/client/gui/GuiRectangle.java
blob: d5e2451f780ae43911edd4257abd17b4b8ccc7f7 (plain)
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
package darkknight.jewelrycraft.client.gui;

import java.util.Arrays;

import net.minecraft.item.ItemStack;

public class GuiRectangle {
	private int	x;
	private int	y;
	private int	w;
	private int	h;

	/**
	 * @param x
	 * @param y
	 * @param w
	 * @param h
	 */
	public GuiRectangle(int x, int y, int w, int h) {
		this.x = x;
		this.y = y;
		this.w = w;
		this.h = h;
	}

	/**
	 * @param gui
	 * @param mouseX
	 * @param mouseY
	 * @return
	 */
	public boolean inRect(GuiGuide gui, int mouseX, int mouseY) {
		mouseX -= gui.getLeft();
		mouseY -= gui.getTop();
		return x <= mouseX && mouseX <= x + w && y <= mouseY
				&& mouseY <= y + h;
	}

	/**
	 * @param x
	 */
	public void setX(int x) {
		this.x = x;
	}

	/**
	 * @param y
	 */
	public void setY(int y) {
		this.y = y;
	}

	/**
	 * @param gui
	 * @param srcX
	 * @param srcY
	 */
	public void draw(GuiGuide gui, int srcX, int srcY) {
		gui.drawTexturedModalRect(gui.getLeft() + x,
				gui.getTop() + y, srcX, srcY, w, h);
	}

	/**
	 * @param gui
	 * @param srcX
	 * @param srcY
	 * @param width
	 * @param height
	 */
	public void draw(GuiGuide gui, int srcX, int srcY, int width,
			int height) {
		gui.drawTexturedModalRect(gui.getLeft() + x,
				gui.getTop() + y, srcX, srcY, width,
				height);
	}

	/**
	 * @param gui
	 * @param mouseX
	 * @param mouseY
	 * @param str
	 */
	public void drawString(GuiGuide gui, int mouseX, int mouseY,
			String str) {
		if (inRect(gui, mouseX, mouseY))
			gui.drawHoverString(Arrays.asList(str.split("\n")),
					mouseX - gui.getLeft(),
					mouseY - gui.getTop());
	}

	/**
	 * @return
	 */
	public ItemStack getIcon() {
		return null;
	}
}