/** * Adds the buttons (and other controls) to the screen in question. Called when the GUI is displayed and when the * window resizes, the buttonList is cleared beforehand. */ public void initGui() { this.buttonList.add(new GuiOptionButton(2, this.width / 2 - 154, this.height - 48, I18n.format("resourcePack.openFolder", new Object[0]))); this.buttonList.add(new GuiOptionButton(1, this.width / 2 + 4, this.height - 48, I18n.format("gui.done", new Object[0]))); if (!this.changed) { this.availableResourcePacks = Lists.<ResourcePackListEntry>newArrayList(); this.selectedResourcePacks = Lists.<ResourcePackListEntry>newArrayList(); ResourcePackRepository resourcepackrepository = this.mc.getResourcePackRepository(); resourcepackrepository.updateRepositoryEntriesAll(); List<ResourcePackRepository.Entry> list = Lists.newArrayList(resourcepackrepository.getRepositoryEntriesAll()); list.removeAll(resourcepackrepository.getRepositoryEntries()); for (ResourcePackRepository.Entry resourcepackrepository$entry : list) { this.availableResourcePacks.add(new ResourcePackListEntryFound(this, resourcepackrepository$entry)); } for (ResourcePackRepository.Entry resourcepackrepository$entry1 : Lists.reverse(resourcepackrepository.getRepositoryEntries())) { this.selectedResourcePacks.add(new ResourcePackListEntryFound(this, resourcepackrepository$entry1)); } this.selectedResourcePacks.add(new ResourcePackListEntryDefault(this)); } this.availableResourcePacksList = new GuiResourcePackAvailable(this.mc, 200, this.height, this.availableResourcePacks); this.availableResourcePacksList.setSlotXBoundsFromLeft(this.width / 2 - 4 - 200); this.availableResourcePacksList.registerScrollButtons(7, 8); this.selectedResourcePacksList = new GuiResourcePackSelected(this.mc, 200, this.height, this.selectedResourcePacks); this.selectedResourcePacksList.setSlotXBoundsFromLeft(this.width / 2 + 4); this.selectedResourcePacksList.registerScrollButtons(7, 8); }
public GuiResourcePackList(Minecraft mcIn, int p_i45055_2_, int p_i45055_3_, List<ResourcePackListEntry> p_i45055_4_) { super(mcIn, p_i45055_2_, p_i45055_3_, 32, p_i45055_3_ - 55 + 4, 36); this.mc = mcIn; this.field_148204_l = p_i45055_4_; this.field_148163_i = false; this.setHasListHeader(true, (int)((float)mcIn.fontRendererObj.FONT_HEIGHT * 1.5F)); }
public GuiResourcePackList(Minecraft mcIn, int p_i45055_2_, int p_i45055_3_, List<ResourcePackListEntry> p_i45055_4_) { super(mcIn, p_i45055_2_, p_i45055_3_, 32, p_i45055_3_ - 55 + 4, 36); this.mc = mcIn; this.resourcePackEntries = p_i45055_4_; this.centerListVertically = false; this.setHasListHeader(true, (int)((float)mcIn.fontRendererObj.FONT_HEIGHT * 1.5F)); }
public boolean hasResourcePackEntry(ResourcePackListEntry p_146961_1_) { return this.selectedResourcePacks.contains(p_146961_1_); }
public List<ResourcePackListEntry> getListContaining(ResourcePackListEntry p_146962_1_) { return this.hasResourcePackEntry(p_146962_1_) ? this.selectedResourcePacks : this.availableResourcePacks; }
public List<ResourcePackListEntry> getAvailableResourcePacks() { return this.availableResourcePacks; }
public List<ResourcePackListEntry> getSelectedResourcePacks() { return this.selectedResourcePacks; }
public GuiResourcePackSelected(Minecraft mcIn, int p_i45056_2_, int p_i45056_3_, List<ResourcePackListEntry> p_i45056_4_) { super(mcIn, p_i45056_2_, p_i45056_3_, p_i45056_4_); }
public GuiResourcePackAvailable(Minecraft mcIn, int p_i45054_2_, int p_i45054_3_, List<ResourcePackListEntry> p_i45054_4_) { super(mcIn, p_i45054_2_, p_i45054_3_, p_i45054_4_); }
public List<ResourcePackListEntry> getList() { return this.field_148204_l; }
/** * Gets the IGuiListEntry object for the given index */ public ResourcePackListEntry getListEntry(int index) { return (ResourcePackListEntry)this.getList().get(index); }
/** * Adds the buttons (and other controls) to the screen in question. Called when the GUI is displayed and when the * window resizes, the buttonList is cleared beforehand. */ public void initGui() { this.buttonList.add(new GuiOptionButton(2, this.width / 2 - 154, this.height - 48, I18n.format("resourcePack.openFolder", new Object[0]))); this.buttonList.add(new GuiOptionButton(1, this.width / 2 + 4, this.height - 48, I18n.format("gui.done", new Object[0]))); if (!this.changed) { this.availableResourcePacks = Lists.<ResourcePackListEntry>newArrayList(); this.selectedResourcePacks = Lists.<ResourcePackListEntry>newArrayList(); ResourcePackRepository resourcepackrepository = this.mc.getResourcePackRepository(); resourcepackrepository.updateRepositoryEntriesAll(); List<ResourcePackRepository.Entry> list = Lists.newArrayList(resourcepackrepository.getRepositoryEntriesAll()); list.removeAll(resourcepackrepository.getRepositoryEntries()); for (ResourcePackRepository.Entry resourcepackrepository$entry : list) { this.availableResourcePacks.add(new ResourcePackListEntryFound(this, resourcepackrepository$entry)); } ResourcePackRepository.Entry resourcepackrepository$entry2 = resourcepackrepository.getResourcePackEntry(); if (resourcepackrepository$entry2 != null) { this.selectedResourcePacks.add(new ResourcePackListEntryServer(this, resourcepackrepository.getResourcePackInstance())); } for (ResourcePackRepository.Entry resourcepackrepository$entry1 : Lists.reverse(resourcepackrepository.getRepositoryEntries())) { this.selectedResourcePacks.add(new ResourcePackListEntryFound(this, resourcepackrepository$entry1)); } this.selectedResourcePacks.add(new ResourcePackListEntryDefault(this)); } this.availableResourcePacksList = new GuiResourcePackAvailable(this.mc, 200, this.height, this.availableResourcePacks); this.availableResourcePacksList.setSlotXBoundsFromLeft(this.width / 2 - 4 - 200); this.availableResourcePacksList.registerScrollButtons(7, 8); this.selectedResourcePacksList = new GuiResourcePackSelected(this.mc, 200, this.height, this.selectedResourcePacks); this.selectedResourcePacksList.setSlotXBoundsFromLeft(this.width / 2 + 4); this.selectedResourcePacksList.registerScrollButtons(7, 8); }
/** * Called by the controls from the buttonList when activated. (Mouse pressed for buttons) */ protected void actionPerformed(GuiButton button) throws IOException { if (button.enabled) { if (button.id == 2) { File file1 = this.mc.getResourcePackRepository().getDirResourcepacks(); OpenGlHelper.openFile(file1); } else if (button.id == 1) { if (this.changed) { List<ResourcePackRepository.Entry> list = Lists.<ResourcePackRepository.Entry>newArrayList(); for (ResourcePackListEntry resourcepacklistentry : this.selectedResourcePacks) { if (resourcepacklistentry instanceof ResourcePackListEntryFound) { list.add(((ResourcePackListEntryFound)resourcepacklistentry).getResourcePackEntry()); } } Collections.reverse(list); this.mc.getResourcePackRepository().setRepositories(list); this.mc.gameSettings.resourcePacks.clear(); this.mc.gameSettings.incompatibleResourcePacks.clear(); for (ResourcePackRepository.Entry resourcepackrepository$entry : list) { this.mc.gameSettings.resourcePacks.add(resourcepackrepository$entry.getResourcePackName()); if (resourcepackrepository$entry.getPackFormat() != 3) { this.mc.gameSettings.incompatibleResourcePacks.add(resourcepackrepository$entry.getResourcePackName()); } } this.mc.gameSettings.saveOptions(); this.mc.refreshResources(); } this.mc.displayGuiScreen(this.parentScreen); } } }