Files
ReplayModCinematic/src/main/java/eu/crushedpixel/replaymod/gui/elements/GuiAdvancedTextField.java
johni0702 be4ee42dcb Add GuiTextArea
Reorder and add description to GuiUpload
2015-06-14 14:13:03 +02:00

87 lines
2.3 KiB
Java

package eu.crushedpixel.replaymod.gui.elements;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.FontRenderer;
import net.minecraft.client.gui.GuiTextField;
import java.awt.*;
public class GuiAdvancedTextField extends GuiTextField implements GuiElement {
public String hint;
public int hintTextColor = Color.DARK_GRAY.getRGB();
private boolean isEnabled = true;
private int disabledTextColor;
public GuiAdvancedTextField(FontRenderer fontRenderer, int x, int y, int width, int height) {
super(0, fontRenderer, x, y, width, height);
}
@Override
public void setEnabled(boolean isEnabled) {
this.isEnabled = isEnabled;
super.setEnabled(isEnabled);
}
@Override
public void setDisabledTextColour(int disabledTextColor) {
this.disabledTextColor = disabledTextColor;
super.setDisabledTextColour(disabledTextColor);
}
@Override
public void draw(Minecraft mc, int mouseX, int mouseY) {
if (text.isEmpty() && !isFocused()) {
super.setEnabled(false);
super.setDisabledTextColour(hintTextColor);
text = hint;
drawTextBox();
text = "";
super.setDisabledTextColour(disabledTextColor);
super.setEnabled(isEnabled);
} else {
drawTextBox();
}
}
@Override
public void drawOverlay(Minecraft mc, int mouseX, int mouseY) {
}
@Override
public boolean isHovering(int mouseX, int mouseY) {
return mouseX >= xPosition
&& mouseY >= yPosition
&& mouseX < xPosition + width
&& mouseY < yPosition + height;
}
@Override
public void mouseClick(Minecraft mc, int mouseX, int mouseY, int button) {
mouseClicked(mouseX, mouseY, button);
}
@Override
public void mouseDrag(Minecraft mc, int mouseX, int mouseY, int button) {
}
@Override
public void mouseRelease(Minecraft mc, int mouseX, int mouseY, int button) {
}
@Override
public void buttonPressed(Minecraft mc, int mouseX, int mouseY, char key, int keyCode) {
textboxKeyTyped(key, keyCode);
}
@Override
public void tick(Minecraft mc) {
updateCursorCounter();
}
}