package net.minecraft.client.gui;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.TreeMap;
import net.minecraft.client.renderer.Tessellator;
import net.minecraft.util.StringTranslate;
@SideOnly(Side.CLIENT)
class GuiSlotLanguage extends GuiSlot
{
private ArrayList field_77251_g;
private TreeMap field_77253_h;
final GuiLanguage languageGui;
public GuiSlotLanguage(GuiLanguage par1GuiLanguage)
{
super(par1GuiLanguage.mc, par1GuiLanguage.width, par1GuiLanguage.height, 32, par1GuiLanguage.height - 65 + 4, 18);
this.languageGui = par1GuiLanguage;
this.field_77253_h = StringTranslate.getInstance().getLanguageList();
this.field_77251_g = new ArrayList();
Iterator var2 = this.field_77253_h.keySet().iterator();
while (var2.hasNext())
{
String var3 = (String)var2.next();
this.field_77251_g.add(var3);
}
}
/**
* Gets the size of the current slot list.
*/
protected int getSize()
{
return this.field_77251_g.size();
}
/**
* the element in the slot that was clicked, boolean for wether it was double clicked or not
*/
protected void elementClicked(int par1, boolean par2)
{
StringTranslate.getInstance().setLanguage((String)this.field_77251_g.get(par1));
this.languageGui.mc.fontRenderer.setUnicodeFlag(StringTranslate.getInstance().isUnicode());
GuiLanguage.getGameSettings(this.languageGui).language = (String)this.field_77251_g.get(par1);
this.languageGui.fontRenderer.setBidiFlag(StringTranslate.isBidirectional(GuiLanguage.getGameSettings(this.languageGui).language));
GuiLanguage.getDoneButton(this.languageGui).displayString = StringTranslate.getInstance().translateKey("gui.done");
GuiLanguage.getGameSettings(this.languageGui).saveOptions();
}
/**
* returns true if the element passed in is currently selected
*/
protected boolean isSelected(int par1)
{
return ((String)this.field_77251_g.get(par1)).equals(StringTranslate.getInstance().getCurrentLanguage());
}
/**
* return the height of the content being scrolled
*/
protected int getContentHeight()
{
return this.getSize() * 18;
}
protected void drawBackground()
{
this.languageGui.drawDefaultBackground();
}
protected void drawSlot(int par1, int par2, int par3, int par4, Tessellator par5Tessellator)
{
this.languageGui.fontRenderer.setBidiFlag(true);
this.languageGui.drawCenteredString(this.languageGui.fontRenderer, (String)this.field_77253_h.get(this.field_77251_g.get(par1)), this.languageGui.width / 2, par3 + 1, 16777215);
this.languageGui.fontRenderer.setBidiFlag(StringTranslate.isBidirectional(GuiLanguage.getGameSettings(this.languageGui).language));
}
}