aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/me/shedaniel/rei/gui/ContainerScreenOverlay.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/me/shedaniel/rei/gui/ContainerScreenOverlay.java')
-rw-r--r--src/main/java/me/shedaniel/rei/gui/ContainerScreenOverlay.java38
1 files changed, 14 insertions, 24 deletions
diff --git a/src/main/java/me/shedaniel/rei/gui/ContainerScreenOverlay.java b/src/main/java/me/shedaniel/rei/gui/ContainerScreenOverlay.java
index e3a71b4ae..22b3a5dba 100644
--- a/src/main/java/me/shedaniel/rei/gui/ContainerScreenOverlay.java
+++ b/src/main/java/me/shedaniel/rei/gui/ContainerScreenOverlay.java
@@ -25,8 +25,10 @@ import net.minecraft.util.math.MathHelper;
import net.minecraft.world.GameMode;
import java.awt.*;
-import java.util.*;
+import java.util.LinkedList;
import java.util.List;
+import java.util.Objects;
+import java.util.Optional;
import java.util.stream.Collectors;
public class ContainerScreenOverlay extends AbstractParentElement implements Drawable {
@@ -98,10 +100,10 @@ public class ContainerScreenOverlay extends AbstractParentElement implements Dra
return false;
}
});
-
+
if (setPage)
page = MathHelper.clamp(page, 0, getTotalPage());
-
+
widgets.add(new ButtonWidget(RoughlyEnoughItemsCore.getConfigManager().getConfig().mirrorItemPanel ? window.getScaledWidth() - 30 : 10, 10, 20, 20, "") {
@Override
public void onPressed() {
@@ -188,7 +190,7 @@ public class ContainerScreenOverlay extends AbstractParentElement implements Dra
}
});
}
- widgets.add(new ClickableLabelWidget(rectangle.x + (rectangle.width / 2), rectangle.y + 10, "") {
+ widgets.add(new ClickableLabelWidget(rectangle.x + (rectangle.width / 2), rectangle.y + 10, "", getTotalPage() > 0) {
@Override
public void render(int mouseX, int mouseY, float delta) {
page = MathHelper.clamp(page, 0, getTotalPage());
@@ -213,6 +215,7 @@ public class ContainerScreenOverlay extends AbstractParentElement implements Dra
return false;
}
});
+ buttonLeft.enabled = buttonRight.enabled = getTotalPage() > 0;
if (ScreenHelper.searchField == null)
ScreenHelper.searchField = new SearchFieldWidget(0, 0, 0, 0);
ScreenHelper.searchField.setChangedListener(s -> {
@@ -342,7 +345,7 @@ public class ContainerScreenOverlay extends AbstractParentElement implements Dra
GuiLighting.disable();
GlStateManager.disableLighting();
int int_3 = 0;
- for (String string_1 : list_1) {
+ for(String string_1 : list_1) {
int int_4 = font.getStringWidth(string_1);
if (int_4 > int_3)
int_3 = int_4;
@@ -384,21 +387,10 @@ public class ContainerScreenOverlay extends AbstractParentElement implements Dra
}
private boolean hasSameListContent(List<ItemStack> list1, List<ItemStack> list2) {
- list1.sort((itemStack, t1) ->
- ItemListOverlay.tryGetItemStackName(itemStack).compareToIgnoreCase(ItemListOverlay.tryGetItemStackName(t1))
- );
-
- list2.sort((itemStack, t1) ->
- ItemListOverlay.tryGetItemStackName(itemStack).compareToIgnoreCase(ItemListOverlay.tryGetItemStackName(t1))
- );
-
- String lastString = list1.stream().map(
- ItemListOverlay::tryGetItemStackName
- ).collect(Collectors.joining("")), currentString = list2.stream().map(
- ItemListOverlay::tryGetItemStackName
- ).collect(Collectors.joining(""));
-
- return lastString.equals(currentString);
+ list1.sort((itemStack, t1) -> ItemListOverlay.tryGetItemStackName(itemStack).compareToIgnoreCase(ItemListOverlay.tryGetItemStackName(t1)));
+ list2.sort((itemStack, t1) -> ItemListOverlay.tryGetItemStackName(itemStack).compareToIgnoreCase(ItemListOverlay.tryGetItemStackName(t1)));
+
+ return list1.stream().map(ItemListOverlay::tryGetItemStackName).collect(Collectors.joining("")).equals(list2.stream().map(ItemListOverlay::tryGetItemStackName).collect(Collectors.joining("")));
}
public void addTooltip(QueuedTooltip queuedTooltip) {
@@ -408,8 +400,7 @@ public class ContainerScreenOverlay extends AbstractParentElement implements Dra
public void renderWidgets(int int_1, int int_2, float float_1) {
if (!ScreenHelper.isOverlayVisible())
return;
- buttonLeft.enabled = itemListOverlay.children().size() > 0;
- buttonRight.enabled = itemListOverlay.children().size() > 0;
+ buttonLeft.enabled = buttonRight.enabled = getTotalPage() > 0;
widgets.forEach(widget -> {
GuiLighting.disable();
widget.render(int_1, int_2, float_1);
@@ -496,14 +487,13 @@ public class ContainerScreenOverlay extends AbstractParentElement implements Dra
public boolean mouseClicked(double double_1, double double_2, int int_1) {
if (!ScreenHelper.isOverlayVisible())
return false;
- for(Element element : widgets) {
+ for(Element element : widgets)
if (element.mouseClicked(double_1, double_2, int_1)) {
this.setFocused(element);
if (int_1 == 0)
this.setDragging(true);
return true;
}
- }
return false;
}