    001    package net.minecraft.client.gui;
    002
    003    import cpw.mods.fml.common.Side;
    004    import cpw.mods.fml.common.asm.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        private 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    }