package mods.eln.sixnode.electricalsource;
import mods.eln.gui.GuiHelper;
import mods.eln.gui.GuiScreenEln;
import mods.eln.gui.GuiTextFieldEln;
import java.io.ByteArrayOutputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.text.NumberFormat;
import java.text.ParseException;
import static mods.eln.i18n.I18N.tr;
public class ElectricalSourceGui extends GuiScreenEln {
GuiTextFieldEln voltage;
ElectricalSourceRender render;
public ElectricalSourceGui(ElectricalSourceRender render) {
this.render = render;
}
@Override
protected GuiHelper newHelper() {
return new GuiHelper(this, 50 + 12, 12 + 12);
}
@Override
public void initGui() {
super.initGui();
voltage = newGuiTextField(6, 6, 50);
voltage.setText((float) render.voltage);
voltage.setObserver(this);
voltage.setComment(new String[]{tr("Output voltage")});
}
@Override
public void textFieldNewValue(GuiTextFieldEln textField, String value) {
float newVoltage;
try {
newVoltage = NumberFormat.getInstance().parse(voltage.getText()).floatValue();
} catch (ParseException e) {
return;
}
try {
ByteArrayOutputStream bos = new ByteArrayOutputStream();
DataOutputStream stream = new DataOutputStream(bos);
render.preparePacketForServer(stream);
stream.writeByte(ElectricalSourceElement.setVoltageId);
stream.writeFloat(newVoltage);
render.sendPacketToServer(bos);
} catch (IOException e) {
e.printStackTrace();
}
}
}