package advancedsystemsmanager.flow.menus; import advancedsystemsmanager.flow.FlowComponent; import advancedsystemsmanager.flow.elements.RadioButton; import advancedsystemsmanager.flow.elements.RadioButtonList; import advancedsystemsmanager.client.gui.GuiManager; import advancedsystemsmanager.reference.Names; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import net.minecraft.nbt.NBTTagCompound; public class MenuCraftingPriority extends Menu { public static final int RADIO_X = 5; public static final int RADIO_Y = 5; public static final int RADIO_MARGIN = 13; public static final String NBT_SELECTED = "SelectedOption"; public RadioButtonList radioButtons; public MenuCraftingPriority(FlowComponent parent) { super(parent); radioButtons = new RadioButtonList(getParent()); radioButtons.add(new RadioButton(RADIO_X, RADIO_Y, Names.PRIORITY_MOVE_FIRST)); radioButtons.add(new RadioButton(RADIO_X, RADIO_Y + RADIO_MARGIN, Names.PRIORITY_CRAFT_FIRST)); } @Override public String getName() { return "Priority"; } @SideOnly(Side.CLIENT) @Override public void draw(GuiManager gui, int mX, int mY) { radioButtons.draw(gui, mX, mY); } @SideOnly(Side.CLIENT) @Override public void onClick(int mX, int mY, int button) { radioButtons.onClick(mX, mY, button); } @Override public void copyFrom(Menu menu) { radioButtons.setSelectedOption(((MenuCraftingPriority)menu).radioButtons.getSelectedOption()); } @Override public void readFromNBT(NBTTagCompound nbtTagCompound, boolean pickup) { radioButtons.setSelectedOption(nbtTagCompound.getByte(NBT_SELECTED)); } @Override public void writeToNBT(NBTTagCompound nbtTagCompound, boolean pickup) { nbtTagCompound.setByte(NBT_SELECTED, (byte)radioButtons.getSelectedOption()); } public boolean shouldPrioritizeCrafting() { return radioButtons.getSelectedOption() == 1; } public void setPrioritizeCrafting(boolean val) { radioButtons.setSelectedOption(val ? 1 : 0); } }