Sort hotkey buttons alphabetically

This commit is contained in:
johni0702
2016-09-03 14:11:25 +02:00
parent 5aed53a31d
commit f0a91f2511

View File

@@ -14,7 +14,7 @@ import de.johni0702.minecraft.gui.layout.CustomLayout;
import de.johni0702.minecraft.gui.layout.GridLayout; import de.johni0702.minecraft.gui.layout.GridLayout;
import de.johni0702.minecraft.gui.layout.HorizontalLayout; import de.johni0702.minecraft.gui.layout.HorizontalLayout;
import de.johni0702.minecraft.gui.layout.LayoutData; import de.johni0702.minecraft.gui.layout.LayoutData;
import net.minecraft.client.settings.KeyBinding; import net.minecraft.client.resources.I18n;
import net.minecraftforge.fml.common.FMLCommonHandler; import net.minecraftforge.fml.common.FMLCommonHandler;
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
import org.lwjgl.input.Keyboard; import org.lwjgl.input.Keyboard;
@@ -23,6 +23,7 @@ import org.lwjgl.util.ReadableDimension;
import java.util.Collection; import java.util.Collection;
import java.util.Collections; import java.util.Collections;
import java.util.Comparator;
import java.util.Map; import java.util.Map;
public class HotkeyButtons implements Extra { public class HotkeyButtons implements Extra {
@@ -71,7 +72,9 @@ public class HotkeyButtons implements Extra {
}.setLayout(panelLayout = new GridLayout().setSpacingX(5).setSpacingY(5).setColumns(1)); }.setLayout(panelLayout = new GridLayout().setSpacingX(5).setSpacingY(5).setColumns(1));
final KeyBindingRegistry keyBindingRegistry = mod.getKeyBindingRegistry(); final KeyBindingRegistry keyBindingRegistry = mod.getKeyBindingRegistry();
for (final KeyBinding keyBinding : keyBindingRegistry.getKeyBindings().values()) { keyBindingRegistry.getKeyBindings().values().stream()
.sorted(Comparator.comparing(it -> I18n.format(it.getKeyDescription())))
.forEachOrdered(keyBinding -> {
String keyName = "???"; String keyName = "???";
try { try {
keyName = Keyboard.getKeyName(keyBinding.getKeyCode()); keyName = Keyboard.getKeyName(keyBinding.getKeyCode());
@@ -97,7 +100,7 @@ public class HotkeyButtons implements Extra {
}).addElements(null, button), }).addElements(null, button),
new GuiLabel().setI18nText(keyBinding.getKeyDescription()) new GuiLabel().setI18nText(keyBinding.getKeyDescription())
)); ));
} });
overlay.setLayout(new CustomLayout<GuiReplayOverlay>(overlay.getLayout()) { overlay.setLayout(new CustomLayout<GuiReplayOverlay>(overlay.getLayout()) {
@Override @Override