aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/api/gui
diff options
context:
space:
mode:
authorquerns <33518699+querns@users.noreply.github.com>2023-09-09 08:39:16 -0500
committerGitHub <noreply@github.com>2023-09-09 15:39:16 +0200
commitcac77610b54a76300227bdd2e6d576480ec7725f (patch)
treee95bd5e477ceb5976b36edf5ef4578fdec6ee9ce /src/main/java/gregtech/api/gui
parent505850f40010719ebff477fc5cac41f0786e0f41 (diff)
downloadGT5-Unofficial-cac77610b54a76300227bdd2e6d576480ec7725f.tar.gz
GT5-Unofficial-cac77610b54a76300227bdd2e6d576480ec7725f.tar.bz2
GT5-Unofficial-cac77610b54a76300227bdd2e6d576480ec7725f.zip
Request drill changes, eliminates recipe info in drill GUI (#2285)
Diffstat (limited to 'src/main/java/gregtech/api/gui')
-rw-r--r--src/main/java/gregtech/api/gui/widgets/GT_LockedWhileActiveButton.java (renamed from src/main/java/gregtech/api/gui/widgets/GT_DisabledWhileActiveButton.java)50
1 files changed, 18 insertions, 32 deletions
diff --git a/src/main/java/gregtech/api/gui/widgets/GT_DisabledWhileActiveButton.java b/src/main/java/gregtech/api/gui/widgets/GT_LockedWhileActiveButton.java
index e86589ac2a..9a93a8fadf 100644
--- a/src/main/java/gregtech/api/gui/widgets/GT_DisabledWhileActiveButton.java
+++ b/src/main/java/gregtech/api/gui/widgets/GT_LockedWhileActiveButton.java
@@ -1,9 +1,7 @@
package gregtech.api.gui.widgets;
-import java.lang.ref.WeakReference;
import java.util.Arrays;
import java.util.List;
-import java.util.Optional;
import java.util.function.BiConsumer;
import java.util.function.Supplier;
@@ -21,17 +19,17 @@ import com.gtnewhorizons.modularui.common.widget.FakeSyncWidget;
import gregtech.api.gui.modularui.GT_UITextures;
import gregtech.api.interfaces.tileentity.IMachineProgress;
-public class GT_DisabledWhileActiveButton extends ButtonWidget {
+public class GT_LockedWhileActiveButton extends ButtonWidget {
@NotNull
- private final WeakReference<IMachineProgress> machineRef;
+ private final IMachineProgress machine;
- public GT_DisabledWhileActiveButton(@NotNull IMachineProgress machine, @NotNull ModularWindow.Builder builder) {
+ public GT_LockedWhileActiveButton(@NotNull IMachineProgress machine, @NotNull ModularWindow.Builder builder) {
super();
- machineRef = new WeakReference<>(machine);
+ this.machine = machine;
super.attachSyncer(
- new FakeSyncWidget.BooleanSyncer(() -> isMachineActive().orElse(true), a -> {}),
+ new FakeSyncWidget.BooleanSyncer(machine::isActive, a -> {}),
builder,
(widget, aBoolean) -> widget.notifyTooltipChange());
@@ -41,11 +39,11 @@ public class GT_DisabledWhileActiveButton extends ButtonWidget {
@NotNull
@Override
public ButtonWidget setOnClick(@NotNull BiConsumer<ClickData, Widget> clickAction) {
- return super.setOnClick((clickData, widget) -> isMachineActive().ifPresent(isActive -> {
- if (!isActive) {
+ return super.setOnClick((clickData, widget) -> {
+ if (!machine.isActive()) {
clickAction.accept(clickData, widget);
}
- }));
+ });
}
@NotNull
@@ -73,32 +71,20 @@ public class GT_DisabledWhileActiveButton extends ButtonWidget {
}
@NotNull
- private Optional<Boolean> isMachineActive() {
- return Optional.ofNullable(machineRef.get())
- .map(IMachineProgress::isActive);
- }
-
- @NotNull
private IDrawable[] appendLockedOverlay(@NotNull IDrawable[] drawables) {
- return isMachineActive().map(isActive -> {
- if (isActive) {
- final IDrawable[] copy = Arrays.copyOf(drawables, drawables.length + 1);
- copy[drawables.length] = GT_UITextures.OVERLAY_BUTTON_LOCKED;
- return copy;
- }
- return drawables;
- })
- .orElse(drawables);
+ if (machine.isActive()) {
+ final IDrawable[] copy = Arrays.copyOf(drawables, drawables.length + 1);
+ copy[drawables.length] = GT_UITextures.OVERLAY_BUTTON_LOCKED;
+ return copy;
+ }
+ return drawables;
}
@NotNull
private List<String> generateTooltip() {
- return isMachineActive().map(isActive -> {
- if (isActive) {
- return ImmutableList.of(StatCollector.translateToLocal("GT5U.gui.button.forbidden_while_running"));
- }
- return ImmutableList.<String>of();
- })
- .orElse(ImmutableList.of());
+ if (machine.isActive()) {
+ return ImmutableList.of(StatCollector.translateToLocal("GT5U.gui.button.forbidden_while_running"));
+ }
+ return ImmutableList.of();
}
}