001package net.minecraft.client.gui;
002
003import cpw.mods.fml.relauncher.Side;
004import cpw.mods.fml.relauncher.SideOnly;
005import net.minecraft.util.StringTranslate;
006
007@SideOnly(Side.CLIENT)
008public 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}