001 package net.minecraft.client.gui;
002
003 import cpw.mods.fml.relauncher.Side;
004 import cpw.mods.fml.relauncher.SideOnly;
005 import net.minecraft.util.StringTranslate;
006
007 @SideOnly(Side.CLIENT)
008 public class GuiYesNo extends GuiScreen
009 {
010 /**
011 * A reference to the screen object that created this. Used for navigating between screens.
012 */
013 protected GuiScreen parentScreen;
014
015 /** First line of text. */
016 private String message1;
017
018 /** Second line of text. */
019 private String message2;
020
021 /** The text shown for the first button in GuiYesNo */
022 protected String buttonText1;
023
024 /** The text shown for the second button in GuiYesNo */
025 protected String buttonText2;
026
027 /** World number to be deleted. */
028 protected int worldNumber;
029
030 public GuiYesNo(GuiScreen par1GuiScreen, String par2Str, String par3Str, int par4)
031 {
032 this.parentScreen = par1GuiScreen;
033 this.message1 = par2Str;
034 this.message2 = par3Str;
035 this.worldNumber = par4;
036 StringTranslate var5 = StringTranslate.getInstance();
037 this.buttonText1 = var5.translateKey("gui.yes");
038 this.buttonText2 = var5.translateKey("gui.no");
039 }
040
041 public GuiYesNo(GuiScreen par1GuiScreen, String par2Str, String par3Str, String par4Str, String par5Str, int par6)
042 {
043 this.parentScreen = par1GuiScreen;
044 this.message1 = par2Str;
045 this.message2 = par3Str;
046 this.buttonText1 = par4Str;
047 this.buttonText2 = par5Str;
048 this.worldNumber = par6;
049 }
050
051 /**
052 * Adds the buttons (and other controls) to the screen in question.
053 */
054 public void initGui()
055 {
056 this.controlList.add(new GuiSmallButton(0, this.width / 2 - 155, this.height / 6 + 96, this.buttonText1));
057 this.controlList.add(new GuiSmallButton(1, this.width / 2 - 155 + 160, this.height / 6 + 96, this.buttonText2));
058 }
059
060 /**
061 * Fired when a control is clicked. This is the equivalent of ActionListener.actionPerformed(ActionEvent e).
062 */
063 protected void actionPerformed(GuiButton par1GuiButton)
064 {
065 this.parentScreen.confirmClicked(par1GuiButton.id == 0, this.worldNumber);
066 }
067
068 /**
069 * Draws the screen and all the components in it.
070 */
071 public void drawScreen(int par1, int par2, float par3)
072 {
073 this.drawDefaultBackground();
074 this.drawCenteredString(this.fontRenderer, this.message1, this.width / 2, 70, 16777215);
075 this.drawCenteredString(this.fontRenderer, this.message2, this.width / 2, 90, 16777215);
076 super.drawScreen(par1, par2, par3);
077 }
078 }