mirror of
https://github.com/Shiewk/Widgets.git
synced 2026-04-28 11:34:17 +02:00
(2.1.0) Sort widgets on the overview screen alphabetically
This commit is contained in:
@@ -20,6 +20,7 @@ import org.joml.Vector2i;
|
||||
|
||||
import java.awt.*;
|
||||
import java.util.List;
|
||||
import java.util.Locale;
|
||||
import java.util.function.Consumer;
|
||||
|
||||
public class EditWidgetPositionsScreen extends AnimatedScreen {
|
||||
@@ -279,7 +280,7 @@ public class EditWidgetPositionsScreen extends AnimatedScreen {
|
||||
List<ContextMenuScreen.Option> options = new ObjectArrayList<>(Anchor.values().length);
|
||||
for (Anchor anchor : Anchor.values()) {
|
||||
options.add(new ContextMenuScreen.Option(
|
||||
Text.translatable("widgets.ui.anchor." + anchor.name().toLowerCase()),
|
||||
Text.translatable("widgets.ui.anchor." + anchor.name().toLowerCase(Locale.ROOT)),
|
||||
hovered.getSettings().anchor == anchor,
|
||||
() -> {
|
||||
hovered.setPos(
|
||||
|
||||
@@ -18,7 +18,9 @@ import net.minecraft.text.Text;
|
||||
import org.joml.Matrix3x2fStack;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Comparator;
|
||||
import java.util.List;
|
||||
import java.util.Locale;
|
||||
import java.util.function.Consumer;
|
||||
|
||||
public class WidgetListWidget extends ScrollableWidget {
|
||||
@@ -31,6 +33,7 @@ public class WidgetListWidget extends ScrollableWidget {
|
||||
private final Consumer<ModWidget> onEdit;
|
||||
|
||||
public static boolean searchQueryMatches(String search, ModWidget widget) {
|
||||
if (search == null) return true;
|
||||
return widget.getName().getString().contains(search) || widget.getDescription().getString().contains(search) || widget.getId().toString().contains(search);
|
||||
}
|
||||
|
||||
@@ -44,11 +47,11 @@ public class WidgetListWidget extends ScrollableWidget {
|
||||
}
|
||||
|
||||
private List<ModWidget> loadWidgets(String search) {
|
||||
if (search == null) {
|
||||
return WidgetManager.getAllWidgets();
|
||||
} else {
|
||||
return WidgetManager.getAllWidgets().stream().filter(w -> searchQueryMatches(search, w)).toList();
|
||||
}
|
||||
return WidgetManager.getAllWidgets()
|
||||
.stream()
|
||||
.filter(w -> searchQueryMatches(search, w))
|
||||
.sorted(Comparator.comparing(w -> w.getName().getString().toLowerCase(Locale.ROOT)))
|
||||
.toList();
|
||||
}
|
||||
|
||||
private void init(){
|
||||
|
||||
@@ -16,6 +16,7 @@ import net.minecraft.text.Text;
|
||||
import net.minecraft.util.Identifier;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Locale;
|
||||
|
||||
import static net.minecraft.text.Text.translatable;
|
||||
|
||||
@@ -41,7 +42,7 @@ public class ArmorHudWidget extends ResizableWidget {
|
||||
PERCENT;
|
||||
|
||||
public Text getDisplayName() {
|
||||
return translatable("widgets.widgets.armorHud.durabilityStyle." + name().toLowerCase());
|
||||
return translatable("widgets.widgets.armorHud.durabilityStyle." + name().toLowerCase(Locale.ROOT));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -16,6 +16,7 @@ import net.minecraft.text.Text;
|
||||
import net.minecraft.util.Identifier;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Locale;
|
||||
|
||||
import static net.minecraft.text.Text.translatable;
|
||||
|
||||
@@ -42,7 +43,7 @@ public class InventoryWidget extends ResizableWidget {
|
||||
}
|
||||
|
||||
public Text display() {
|
||||
return translatable("widgets.widgets.inventory.mode." + name().toLowerCase());
|
||||
return translatable("widgets.widgets.inventory.mode." + name().toLowerCase(Locale.ROOT));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user