aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/common/gui
diff options
context:
space:
mode:
authorJason Mitchell <mitchej@gmail.com>2023-01-30 10:56:42 -0800
committerJason Mitchell <mitchej@gmail.com>2023-01-30 10:56:42 -0800
commit0d9aab72aa570f13dc3e32e0d32b3f3a95f95e0a (patch)
tree1e2c649f3a6ce3f6b2babd0098a5f4819e9cd0b6 /src/main/java/gregtech/common/gui
parentf8cc82edeb9810c45cba762d733a2c909a302faa (diff)
downloadGT5-Unofficial-0d9aab72aa570f13dc3e32e0d32b3f3a95f95e0a.tar.gz
GT5-Unofficial-0d9aab72aa570f13dc3e32e0d32b3f3a95f95e0a.tar.bz2
GT5-Unofficial-0d9aab72aa570f13dc3e32e0d32b3f3a95f95e0a.zip
[ci skip] spotlessApply with the new settings
Diffstat (limited to 'src/main/java/gregtech/common/gui')
-rw-r--r--src/main/java/gregtech/common/gui/modularui/UIHelper.java80
-rw-r--r--src/main/java/gregtech/common/gui/modularui/uifactory/SelectItemUIFactory.java124
-rw-r--r--src/main/java/gregtech/common/gui/modularui/widget/AESlotWidget.java7
-rw-r--r--src/main/java/gregtech/common/gui/modularui/widget/CoverCycleButtonWidget.java28
-rw-r--r--src/main/java/gregtech/common/gui/modularui/widget/CoverDataControllerWidget.java77
-rw-r--r--src/main/java/gregtech/common/gui/modularui/widget/CoverDataFollower_CycleButtonWidget.java5
-rw-r--r--src/main/java/gregtech/common/gui/modularui/widget/CoverDataFollower_SlotWidget.java11
-rw-r--r--src/main/java/gregtech/common/gui/modularui/widget/CoverDataFollower_TextFieldWidget.java9
-rw-r--r--src/main/java/gregtech/common/gui/modularui/widget/CoverDataFollower_ToggleButtonWidget.java8
-rw-r--r--src/main/java/gregtech/common/gui/modularui/widget/DataControllerWidget.java41
-rw-r--r--src/main/java/gregtech/common/gui/modularui/widget/FluidDisplaySlotWidget.java82
-rw-r--r--src/main/java/gregtech/common/gui/modularui/widget/ItemWatcherSlotWidget.java10
12 files changed, 232 insertions, 250 deletions
diff --git a/src/main/java/gregtech/common/gui/modularui/UIHelper.java b/src/main/java/gregtech/common/gui/modularui/UIHelper.java
index 42d704bbf4..8973992c28 100644
--- a/src/main/java/gregtech/common/gui/modularui/UIHelper.java
+++ b/src/main/java/gregtech/common/gui/modularui/UIHelper.java
@@ -1,38 +1,30 @@
package gregtech.common.gui.modularui;
-import com.gtnewhorizons.modularui.api.drawable.IDrawable;
-import com.gtnewhorizons.modularui.api.math.Pos2d;
-import gregtech.api.enums.SteamVariant;
-import gregtech.api.gui.modularui.SteamTexture;
-import gregtech.api.util.GT_Recipe;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.stream.Collectors;
+
import javax.annotation.Nullable;
+import com.gtnewhorizons.modularui.api.drawable.IDrawable;
+import com.gtnewhorizons.modularui.api.math.Pos2d;
+
+import gregtech.api.enums.SteamVariant;
+import gregtech.api.gui.modularui.SteamTexture;
+import gregtech.api.util.GT_Recipe;
+
public class UIHelper {
/**
* Iterates over candidates for slot placement.
*/
- public static void forEachSlots(
- ForEachSlot forEachItemInputSlot,
- ForEachSlot forEachItemOutputSlot,
- ForEachSlot forEachSpecialSlot,
- ForEachSlot forEachFluidInputSlot,
- ForEachSlot forEachFluidOutputSlot,
- IDrawable itemSlotBackground,
- IDrawable fluidSlotBackground,
- @Nullable GT_Recipe.GT_Recipe_Map recipeMap,
- int itemInputCount,
- int itemOutputCount,
- int fluidInputCount,
- int fluidOutputCount,
- SteamVariant steamVariant,
- Pos2d offset) {
- List<Pos2d> itemInputPositions = recipeMap != null
- ? recipeMap.getItemInputPositions(itemInputCount)
+ public static void forEachSlots(ForEachSlot forEachItemInputSlot, ForEachSlot forEachItemOutputSlot,
+ ForEachSlot forEachSpecialSlot, ForEachSlot forEachFluidInputSlot, ForEachSlot forEachFluidOutputSlot,
+ IDrawable itemSlotBackground, IDrawable fluidSlotBackground, @Nullable GT_Recipe.GT_Recipe_Map recipeMap,
+ int itemInputCount, int itemOutputCount, int fluidInputCount, int fluidOutputCount,
+ SteamVariant steamVariant, Pos2d offset) {
+ List<Pos2d> itemInputPositions = recipeMap != null ? recipeMap.getItemInputPositions(itemInputCount)
: UIHelper.getItemInputPositions(itemInputCount);
itemInputPositions = itemInputPositions.stream().map(p -> p.add(offset)).collect(Collectors.toList());
for (int i = 0; i < itemInputPositions.size(); i++) {
@@ -42,11 +34,9 @@ public class UIHelper {
itemInputPositions.get(i));
}
- List<Pos2d> itemOutputPositions = recipeMap != null
- ? recipeMap.getItemOutputPositions(itemOutputCount)
+ List<Pos2d> itemOutputPositions = recipeMap != null ? recipeMap.getItemOutputPositions(itemOutputCount)
: UIHelper.getItemOutputPositions(itemOutputCount);
- itemOutputPositions =
- itemOutputPositions.stream().map(p -> p.add(offset)).collect(Collectors.toList());
+ itemOutputPositions = itemOutputPositions.stream().map(p -> p.add(offset)).collect(Collectors.toList());
for (int i = 0; i < itemOutputPositions.size(); i++) {
forEachItemOutputSlot.accept(
i,
@@ -60,11 +50,9 @@ public class UIHelper {
(recipeMap != null ? recipeMap.getSpecialItemPosition() : UIHelper.getSpecialItemPosition())
.add(offset));
- List<Pos2d> fluidInputPositions = recipeMap != null
- ? recipeMap.getFluidInputPositions(fluidInputCount)
+ List<Pos2d> fluidInputPositions = recipeMap != null ? recipeMap.getFluidInputPositions(fluidInputCount)
: UIHelper.getFluidInputPositions(fluidInputCount);
- fluidInputPositions =
- fluidInputPositions.stream().map(p -> p.add(offset)).collect(Collectors.toList());
+ fluidInputPositions = fluidInputPositions.stream().map(p -> p.add(offset)).collect(Collectors.toList());
for (int i = 0; i < fluidInputPositions.size(); i++) {
forEachFluidInputSlot.accept(
i,
@@ -72,11 +60,9 @@ public class UIHelper {
fluidInputPositions.get(i));
}
- List<Pos2d> fluidOutputPositions = recipeMap != null
- ? recipeMap.getFluidOutputPositions(fluidOutputCount)
+ List<Pos2d> fluidOutputPositions = recipeMap != null ? recipeMap.getFluidOutputPositions(fluidOutputCount)
: UIHelper.getFluidOutputPositions(fluidOutputCount);
- fluidOutputPositions =
- fluidOutputPositions.stream().map(p -> p.add(offset)).collect(Collectors.toList());
+ fluidOutputPositions = fluidOutputPositions.stream().map(p -> p.add(offset)).collect(Collectors.toList());
for (int i = 0; i < fluidOutputPositions.size(); i++) {
forEachFluidOutputSlot.accept(
i,
@@ -164,16 +150,15 @@ public class UIHelper {
return results;
}
- public static List<Pos2d> getGridPositions(
- int totalCount, int xOrigin, int yOrigin, int xDirMaxCount, int yDirMaxCount) {
+ public static List<Pos2d> getGridPositions(int totalCount, int xOrigin, int yOrigin, int xDirMaxCount,
+ int yDirMaxCount) {
// 18 pixels to get to a new grid for placing an item tile since they are 16x16 and have 1 pixel buffers
// around them.
int distance = 18;
List<Pos2d> results = new ArrayList<>();
int count = 0;
- loop:
- for (int j = 0; j < yDirMaxCount; j++) {
+ loop: for (int j = 0; j < yDirMaxCount; j++) {
for (int i = 0; i < xDirMaxCount; i++) {
if (count >= totalCount) break loop;
results.add(new Pos2d(xOrigin + i * distance, yOrigin + j * distance));
@@ -191,19 +176,13 @@ public class UIHelper {
* @deprecated Renamed to {@link #getGridPositions}
*/
@Deprecated
- public static List<Pos2d> getItemGridPositions(
- int itemCount, int xOrigin, int yOrigin, int xDirMaxCount, int yDirMaxCount) {
+ public static List<Pos2d> getItemGridPositions(int itemCount, int xOrigin, int yOrigin, int xDirMaxCount,
+ int yDirMaxCount) {
return getGridPositions(itemCount, xOrigin, yOrigin, xDirMaxCount, yDirMaxCount);
}
- private static IDrawable[] getBackgroundsForSlot(
- IDrawable base,
- GT_Recipe.GT_Recipe_Map recipeMap,
- boolean isFluid,
- boolean isOutput,
- int index,
- boolean isSpecial,
- SteamVariant steamVariant) {
+ private static IDrawable[] getBackgroundsForSlot(IDrawable base, GT_Recipe.GT_Recipe_Map recipeMap, boolean isFluid,
+ boolean isOutput, int index, boolean isSpecial, SteamVariant steamVariant) {
if (recipeMap != null) {
IDrawable overlay;
if (steamVariant != SteamVariant.NONE) {
@@ -217,14 +196,15 @@ public class UIHelper {
overlay = recipeMap.getOverlayForSlot(isFluid, isOutput, index, isSpecial);
}
if (overlay != null) {
- return new IDrawable[] {base, overlay};
+ return new IDrawable[] { base, overlay };
}
}
- return new IDrawable[] {base};
+ return new IDrawable[] { base };
}
@FunctionalInterface
public interface ForEachSlot {
+
void accept(int index, IDrawable[] backgrounds, Pos2d pos);
}
}
diff --git a/src/main/java/gregtech/common/gui/modularui/uifactory/SelectItemUIFactory.java b/src/main/java/gregtech/common/gui/modularui/uifactory/SelectItemUIFactory.java
index c3161b3f5e..00cfcf9d6d 100644
--- a/src/main/java/gregtech/common/gui/modularui/uifactory/SelectItemUIFactory.java
+++ b/src/main/java/gregtech/common/gui/modularui/uifactory/SelectItemUIFactory.java
@@ -1,5 +1,15 @@
package gregtech.common.gui.modularui.uifactory;
+import java.util.List;
+import java.util.concurrent.atomic.AtomicBoolean;
+import java.util.function.Consumer;
+import java.util.function.Supplier;
+
+import net.minecraft.client.Minecraft;
+import net.minecraft.client.gui.FontRenderer;
+import net.minecraft.item.ItemStack;
+import net.minecraft.util.StatCollector;
+
import com.gtnewhorizons.modularui.api.ModularUITextures;
import com.gtnewhorizons.modularui.api.drawable.IDrawable;
import com.gtnewhorizons.modularui.api.drawable.ItemDrawable;
@@ -11,23 +21,15 @@ import com.gtnewhorizons.modularui.common.internal.wrapper.BaseSlot;
import com.gtnewhorizons.modularui.common.widget.ButtonWidget;
import com.gtnewhorizons.modularui.common.widget.SlotWidget;
import com.gtnewhorizons.modularui.common.widget.TextWidget;
+
import gregtech.api.enums.Dyes;
import gregtech.api.gui.GT_GUIColorOverride;
import gregtech.api.gui.modularui.GT_UITextures;
import gregtech.api.util.GT_Util;
import gregtech.api.util.GT_Utility;
-import java.util.List;
-import java.util.concurrent.atomic.AtomicBoolean;
-import java.util.function.Consumer;
-import java.util.function.Supplier;
-import net.minecraft.client.Minecraft;
-import net.minecraft.client.gui.FontRenderer;
-import net.minecraft.item.ItemStack;
-import net.minecraft.util.StatCollector;
/**
- * Creates UI for selecting item from given list.
- * This is client-only UI to allow using client-preferred settings.
+ * Creates UI for selecting item from given list. This is client-only UI to allow using client-preferred settings.
*/
public class SelectItemUIFactory {
@@ -55,36 +57,31 @@ public class SelectItemUIFactory {
private final Supplier<Integer> COLOR_TITLE = () -> getTextColorOrDefault("title", 0x222222);
private final Supplier<Integer> COLOR_TEXT_GRAY = () -> getTextColorOrDefault("text_gray", 0x555555);
- public SelectItemUIFactory(
- String header, ItemStack headerItem, Consumer<ItemStack> selectedCallback, List<ItemStack> stacks) {
+ public SelectItemUIFactory(String header, ItemStack headerItem, Consumer<ItemStack> selectedCallback,
+ List<ItemStack> stacks) {
this(header, headerItem, selectedCallback, stacks, UNSELECTED);
}
- public SelectItemUIFactory(
- String header,
- ItemStack headerItem,
- Consumer<ItemStack> selectedCallback,
- List<ItemStack> stacks,
- int selected) {
+ public SelectItemUIFactory(String header, ItemStack headerItem, Consumer<ItemStack> selectedCallback,
+ List<ItemStack> stacks, int selected) {
this(header, headerItem, selectedCallback, stacks, selected, false);
}
/**
- * Constructor for a dialog to select an item from given list. Given callback may be called zero or more times depending on user action.
+ * Constructor for a dialog to select an item from given list. Given callback may be called zero or more times
+ * depending on user action.
+ *
* @param header Header text
* @param headerItem ItemStack to use as Dialog icon
* @param selectedCallback callback upon selected
* @param stacks list to choose from
- * @param selected preselected item. Use {@link #UNSELECTED} for unselected. Invalid selected will be clamped to 0 or highest index
- * @param noDeselect true if player cannot deselect, false otherwise. If this is set to true, selectedCallback is guaranteed to be called with a nonnull stack
+ * @param selected preselected item. Use {@link #UNSELECTED} for unselected. Invalid selected will be
+ * clamped to 0 or highest index
+ * @param noDeselect true if player cannot deselect, false otherwise. If this is set to true, selectedCallback
+ * is guaranteed to be called with a nonnull stack
*/
- public SelectItemUIFactory(
- String header,
- ItemStack headerItem,
- Consumer<ItemStack> selectedCallback,
- List<ItemStack> stacks,
- int selected,
- boolean noDeselect) {
+ public SelectItemUIFactory(String header, ItemStack headerItem, Consumer<ItemStack> selectedCallback,
+ List<ItemStack> stacks, int selected, boolean noDeselect) {
this.header = header;
this.headerItem = headerItem;
this.selectedCallback = selectedCallback;
@@ -96,7 +93,8 @@ public class SelectItemUIFactory {
/**
* @param anotherWindow If UI is shown on top of another window
- * @param dialogOpened Flag to store whether this UI is opened and hence it should block duplicated creation of this UI
+ * @param dialogOpened Flag to store whether this UI is opened and hence it should block duplicated creation of
+ * this UI
*/
public SelectItemUIFactory setAnotherWindow(boolean anotherWindow, AtomicBoolean dialogOpened) {
this.anotherWindow = anotherWindow;
@@ -118,8 +116,8 @@ public class SelectItemUIFactory {
}
public ModularWindow createWindow(UIBuildContext buildContext) {
- ModularWindow.Builder builder =
- ModularWindow.builder(getGUIWidth(), 53 + 18 * ((stacks.size() - 1) / cols + 1));
+ ModularWindow.Builder builder = ModularWindow
+ .builder(getGUIWidth(), 53 + 18 * ((stacks.size() - 1) / cols + 1));
builder.setBackground(ModularUITextures.VANILLA_BACKGROUND);
builder.setGuiTint(guiTint);
@@ -128,33 +126,29 @@ public class SelectItemUIFactory {
}
builder.widget(new TextWidget(header).setDefaultColor(COLOR_TITLE.get()).setPos(25, 9));
- builder.widget(
- new SlotWidget(BaseSlot.phantom(currentDisplayItemHandler, 0)) {
- @Override
- public void draw(float partialTicks) {
- if (currentGetter != null) {
- ItemStack current = currentGetter.get();
- currentDisplayItemHandler.setStackInSlot(0, current);
- selected = GT_Utility.findMatchingStackInList(stacks, current);
- }
- super.draw(partialTicks);
- }
- }.disableInteraction()
- .setBackground(GT_UITextures.SLOT_DARK_GRAY)
- .setPos(
- 9
- + getFontRenderer()
- .getStringWidth(StatCollector.translateToLocal(
- "GT5U.gui.select.current")),
- 24))
- .widget(new TextWidget(StatCollector.translateToLocal("GT5U.gui.select.current"))
- .setDefaultColor(COLOR_TEXT_GRAY.get())
- .setPos(8, 25 + (18 - getFontRenderer().FONT_HEIGHT) / 2));
+ builder.widget(new SlotWidget(BaseSlot.phantom(currentDisplayItemHandler, 0)) {
+
+ @Override
+ public void draw(float partialTicks) {
+ if (currentGetter != null) {
+ ItemStack current = currentGetter.get();
+ currentDisplayItemHandler.setStackInSlot(0, current);
+ selected = GT_Utility.findMatchingStackInList(stacks, current);
+ }
+ super.draw(partialTicks);
+ }
+ }.disableInteraction().setBackground(GT_UITextures.SLOT_DARK_GRAY).setPos(
+ 9 + getFontRenderer().getStringWidth(StatCollector.translateToLocal("GT5U.gui.select.current")),
+ 24)).widget(
+ new TextWidget(StatCollector.translateToLocal("GT5U.gui.select.current"))
+ .setDefaultColor(COLOR_TEXT_GRAY.get())
+ .setPos(8, 25 + (18 - getFontRenderer().FONT_HEIGHT) / 2));
for (int i = 0; i < stacks.size(); i++) {
final int index = i;
builder.widget(
- new SlotWidget(new BaseSlot(new ItemStackHandler(new ItemStack[] {stacks.get(index)}), 0, true)) {
+ new SlotWidget(new BaseSlot(new ItemStackHandler(new ItemStack[] { stacks.get(index) }), 0, true)) {
+
@Override
public ClickResult onClick(int buttonId, boolean doubleClick) {
if (buttonId == 0) {
@@ -171,24 +165,22 @@ public class SelectItemUIFactory {
@Override
public IDrawable[] getBackground() {
return new IDrawable[] {
- index == selected ? GT_UITextures.SLOT_DARK_GRAY : ModularUITextures.ITEM_SLOT
- };
+ index == selected ? GT_UITextures.SLOT_DARK_GRAY : ModularUITextures.ITEM_SLOT };
}
}.disableInteraction().setPos(7 + 18 * (index % cols), 43 + 18 * (index / cols)));
}
if (anotherWindow) {
dialogOpened.set(true);
- builder.widget(
- new ButtonWidget() {
- @Override
- public void onDestroy() {
- dialogOpened.set(false);
- }
- }.setOnClick((clickData, widget) -> widget.getWindow().tryClose())
- .setBackground(ModularUITextures.VANILLA_BACKGROUND, new Text("x"))
- .setPos(getGUIWidth() - 15, 3)
- .setSize(12, 12));
+ builder.widget(new ButtonWidget() {
+
+ @Override
+ public void onDestroy() {
+ dialogOpened.set(false);
+ }
+ }.setOnClick((clickData, widget) -> widget.getWindow().tryClose())
+ .setBackground(ModularUITextures.VANILLA_BACKGROUND, new Text("x")).setPos(getGUIWidth() - 15, 3)
+ .setSize(12, 12));
}
return builder.build();
diff --git a/src/main/java/gregtech/common/gui/modularui/widget/AESlotWidget.java b/src/main/java/gregtech/common/gui/modularui/widget/AESlotWidget.java
index f3620d3234..386bb7112c 100644
--- a/src/main/java/gregtech/common/gui/modularui/widget/AESlotWidget.java
+++ b/src/main/java/gregtech/common/gui/modularui/widget/AESlotWidget.java
@@ -1,15 +1,18 @@
package gregtech.common.gui.modularui.widget;
+import net.minecraft.client.renderer.entity.RenderItem;
+import net.minecraft.inventory.Slot;
+
import appeng.client.render.AppEngRenderItem;
import appeng.core.AELog;
import appeng.util.Platform;
+
import com.gtnewhorizons.modularui.common.internal.wrapper.BaseSlot;
import com.gtnewhorizons.modularui.common.internal.wrapper.ModularGui;
import com.gtnewhorizons.modularui.common.widget.SlotWidget;
+
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
-import net.minecraft.client.renderer.entity.RenderItem;
-import net.minecraft.inventory.Slot;
public class AESlotWidget extends SlotWidget {
diff --git a/src/main/java/gregtech/common/gui/modularui/widget/CoverCycleButtonWidget.java b/src/main/java/gregtech/common/gui/modularui/widget/CoverCycleButtonWidget.java
index 599ed28a5f..70978351c2 100644
--- a/src/main/java/gregtech/common/gui/modularui/widget/CoverCycleButtonWidget.java
+++ b/src/main/java/gregtech/common/gui/modularui/widget/CoverCycleButtonWidget.java
@@ -1,26 +1,28 @@
package gregtech.common.gui.modularui.widget;
+import org.lwjgl.opengl.GL11;
+
import com.gtnewhorizons.modularui.api.drawable.IDrawable;
import com.gtnewhorizons.modularui.api.drawable.UITexture;
import com.gtnewhorizons.modularui.common.widget.CycleButtonWidget;
+
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import gregtech.api.gui.modularui.GT_UITextures;
-import org.lwjgl.opengl.GL11;
/**
- * Fires click action on mouse release, not on press.
- * Draws different backgrounds depending on whether the mouse is being pressed or the widget is hovered.
+ * Fires click action on mouse release, not on press. Draws different backgrounds depending on whether the mouse is
+ * being pressed or the widget is hovered.
*/
public class CoverCycleButtonWidget extends CycleButtonWidget {
- private static final UITexture BUTTON_NORMAL_NOT_PRESSED =
- GT_UITextures.BUTTON_COVER_NORMAL.getSubArea(0, 0, 1, 0.5f);
+ private static final UITexture BUTTON_NORMAL_NOT_PRESSED = GT_UITextures.BUTTON_COVER_NORMAL
+ .getSubArea(0, 0, 1, 0.5f);
private static final UITexture BUTTON_NORMAL_PRESSED = GT_UITextures.BUTTON_COVER_NORMAL.getSubArea(0, 0.5f, 1, 1);
- private static final UITexture BUTTON_HOVERED_NOT_PRESSED =
- GT_UITextures.BUTTON_COVER_NORMAL_HOVERED.getSubArea(0, 0, 1, 0.5f);
- private static final UITexture BUTTON_HOVERED_PRESSED =
- GT_UITextures.BUTTON_COVER_NORMAL_HOVERED.getSubArea(0, 0.5f, 1, 1);
+ private static final UITexture BUTTON_HOVERED_NOT_PRESSED = GT_UITextures.BUTTON_COVER_NORMAL_HOVERED
+ .getSubArea(0, 0, 1, 0.5f);
+ private static final UITexture BUTTON_HOVERED_PRESSED = GT_UITextures.BUTTON_COVER_NORMAL_HOVERED
+ .getSubArea(0, 0.5f, 1, 1);
private boolean clickPressed;
@@ -74,15 +76,15 @@ public class CoverCycleButtonWidget extends CycleButtonWidget {
public IDrawable[] getBackground() {
if (isHovering()) {
if (clickPressed) {
- return new IDrawable[] {BUTTON_HOVERED_PRESSED};
+ return new IDrawable[] { BUTTON_HOVERED_PRESSED };
} else {
- return new IDrawable[] {BUTTON_HOVERED_NOT_PRESSED};
+ return new IDrawable[] { BUTTON_HOVERED_NOT_PRESSED };
}
} else {
if (clickPressed) {
- return new IDrawable[] {BUTTON_NORMAL_PRESSED};
+ return new IDrawable[] { BUTTON_NORMAL_PRESSED };
} else {
- return new IDrawable[] {BUTTON_NORMAL_NOT_PRESSED};
+ return new IDrawable[] { BUTTON_NORMAL_NOT_PRESSED };
}
}
}
diff --git a/src/main/java/gregtech/common/gui/modularui/widget/CoverDataControllerWidget.java b/src/main/java/gregtech/common/gui/modularui/widget/CoverDataControllerWidget.java
index d28117054a..3fa25abdbf 100644
--- a/src/main/java/gregtech/common/gui/modularui/widget/CoverDataControllerWidget.java
+++ b/src/main/java/gregtech/common/gui/modularui/widget/CoverDataControllerWidget.java
@@ -1,35 +1,38 @@
package gregtech.common.gui.modularui.widget;
-import com.gtnewhorizons.modularui.api.widget.Widget;
-import com.gtnewhorizons.modularui.common.internal.network.NetworkUtils;
-import gregtech.api.gui.modularui.IDataFollowerWidget;
-import gregtech.api.util.GT_CoverBehaviorBase;
-import gregtech.api.util.ISerializableObject;
import java.io.IOException;
import java.util.function.BiFunction;
import java.util.function.Consumer;
import java.util.function.Function;
import java.util.function.Supplier;
+
import net.minecraft.network.PacketBuffer;
+import com.gtnewhorizons.modularui.api.widget.Widget;
+import com.gtnewhorizons.modularui.common.internal.network.NetworkUtils;
+
+import gregtech.api.gui.modularui.IDataFollowerWidget;
+import gregtech.api.util.GT_CoverBehaviorBase;
+import gregtech.api.util.ISerializableObject;
+
public class CoverDataControllerWidget<T extends ISerializableObject> extends DataControllerWidget<T> {
protected final GT_CoverBehaviorBase<T> coverBehavior;
/**
- * @param dataGetter () -> cover data this widget handles
- * @param dataSetter data to set -> if setting cover data is successful
+ * @param dataGetter () -> cover data this widget handles
+ * @param dataSetter data to set -> if setting cover data is successful
* @param coverBehavior cover this widget handles data update
*/
- public CoverDataControllerWidget(
- Supplier<T> dataGetter, Function<T, Boolean> dataSetter, GT_CoverBehaviorBase<T> coverBehavior) {
+ public CoverDataControllerWidget(Supplier<T> dataGetter, Function<T, Boolean> dataSetter,
+ GT_CoverBehaviorBase<T> coverBehavior) {
super(dataGetter, dataSetter);
this.coverBehavior = coverBehavior;
}
@Override
- public <U, W extends Widget & IDataFollowerWidget<T, U>> CoverDataControllerWidget<T> addFollower(
- W widget, Function<T, U> dataToStateGetter, BiFunction<T, U, T> dataUpdater, Consumer<W> applyForWidget) {
+ public <U, W extends Widget & IDataFollowerWidget<T, U>> CoverDataControllerWidget<T> addFollower(W widget,
+ Function<T, U> dataToStateGetter, BiFunction<T, U, T> dataUpdater, Consumer<W> applyForWidget) {
super.addFollower(widget, dataToStateGetter, dataUpdater, applyForWidget);
return this;
}
@@ -58,31 +61,27 @@ public class CoverDataControllerWidget<T extends ISerializableObject> extends Da
private final BiFunction<Integer, T, T> dataUpdater;
/**
- * @param coverDataGetter () -> cover data this widget handles
- * @param coverDataSetter data to set -> if setting cover data is successful
- * @param coverBehavior cover this widget handles data update
+ * @param coverDataGetter () -> cover data this widget handles
+ * @param coverDataSetter data to set -> if setting cover data is successful
+ * @param coverBehavior cover this widget handles data update
* @param dataToStateGetter (index of button, given cover data) -> button state
- * @param dataUpdater (index of button, current cover data) -> new cover data
+ * @param dataUpdater (index of button, current cover data) -> new cover data
*/
- public CoverDataIndexedControllerWidget_ToggleButtons(
- Supplier<T> coverDataGetter,
- Function<T, Boolean> coverDataSetter,
- GT_CoverBehaviorBase<T> coverBehavior,
- BiFunction<Integer, T, Boolean> dataToStateGetter,
- BiFunction<Integer, T, T> dataUpdater) {
+ public CoverDataIndexedControllerWidget_ToggleButtons(Supplier<T> coverDataGetter,
+ Function<T, Boolean> coverDataSetter, GT_CoverBehaviorBase<T> coverBehavior,
+ BiFunction<Integer, T, Boolean> dataToStateGetter, BiFunction<Integer, T, T> dataUpdater) {
super(coverDataGetter, coverDataSetter, coverBehavior);
this.dataToStateGetter = dataToStateGetter;
this.dataUpdater = dataUpdater;
}
/**
- * @param index index of widget to add
- * @param widget widget to add
+ * @param index index of widget to add
+ * @param widget widget to add
* @param applyForWidget methods to call for widget to add
*/
- public <W extends CoverDataFollower_ToggleButtonWidget<T>>
- CoverDataIndexedControllerWidget_ToggleButtons<T> addToggleButton(
- int index, W widget, Consumer<CoverDataFollower_ToggleButtonWidget<T>> applyForWidget) {
+ public <W extends CoverDataFollower_ToggleButtonWidget<T>> CoverDataIndexedControllerWidget_ToggleButtons<T> addToggleButton(
+ int index, W widget, Consumer<CoverDataFollower_ToggleButtonWidget<T>> applyForWidget) {
addFollower(
widget,
data -> dataToStateGetter.apply(index, data),
@@ -102,31 +101,27 @@ public class CoverDataControllerWidget<T extends ISerializableObject> extends Da
private final BiFunction<Integer, T, T> dataUpdater;
/**
- * @param coverDataGetter () -> cover data this widget handles
- * @param coverDataSetter data to set -> if setting cover data is successful
- * @param coverBehavior cover this widget handles data update
+ * @param coverDataGetter () -> cover data this widget handles
+ * @param coverDataSetter data to set -> if setting cover data is successful
+ * @param coverBehavior cover this widget handles data update
* @param dataToStateGetter (index of button, given cover data) -> button state
- * @param dataUpdater (index of button, current cover data) -> new cover data
+ * @param dataUpdater (index of button, current cover data) -> new cover data
*/
- public CoverDataIndexedControllerWidget_CycleButtons(
- Supplier<T> coverDataGetter,
- Function<T, Boolean> coverDataSetter,
- GT_CoverBehaviorBase<T> coverBehavior,
- BiFunction<Integer, T, Integer> dataToStateGetter,
- BiFunction<Integer, T, T> dataUpdater) {
+ public CoverDataIndexedControllerWidget_CycleButtons(Supplier<T> coverDataGetter,
+ Function<T, Boolean> coverDataSetter, GT_CoverBehaviorBase<T> coverBehavior,
+ BiFunction<Integer, T, Integer> dataToStateGetter, BiFunction<Integer, T, T> dataUpdater) {
super(coverDataGetter, coverDataSetter, coverBehavior);
this.dataToStateGetter = dataToStateGetter;
this.dataUpdater = dataUpdater;
}
/**
- * @param index index of widget to add
- * @param widget widget to add
+ * @param index index of widget to add
+ * @param widget widget to add
* @param applyForWidget methods to call for the widget to add
*/
- public <W extends CoverDataFollower_CycleButtonWidget<T>>
- CoverDataIndexedControllerWidget_CycleButtons<T> addCycleButton(
- int index, W widget, Consumer<CoverDataFollower_CycleButtonWidget<T>> applyForWidget) {
+ public <W extends CoverDataFollower_CycleButtonWidget<T>> CoverDataIndexedControllerWidget_CycleButtons<T> addCycleButton(
+ int index, W widget, Consumer<CoverDataFollower_CycleButtonWidget<T>> applyForWidget) {
addFollower(
widget,
data -> dataToStateGetter.apply(index, data),
diff --git a/src/main/java/gregtech/common/gui/modularui/widget/CoverDataFollower_CycleButtonWidget.java b/src/main/java/gregtech/common/gui/modularui/widget/CoverDataFollower_CycleButtonWidget.java
index d07165cc6e..6e69b1ff79 100644
--- a/src/main/java/gregtech/common/gui/modularui/widget/CoverDataFollower_CycleButtonWidget.java
+++ b/src/main/java/gregtech/common/gui/modularui/widget/CoverDataFollower_CycleButtonWidget.java
@@ -1,10 +1,11 @@
package gregtech.common.gui.modularui.widget;
-import gregtech.api.gui.modularui.IDataFollowerWidget;
-import gregtech.api.util.ISerializableObject;
import java.util.function.Consumer;
import java.util.function.Function;
+import gregtech.api.gui.modularui.IDataFollowerWidget;
+import gregtech.api.util.ISerializableObject;
+
/**
* Determines button state with cover data.
*/
diff --git a/src/main/java/gregtech/common/gui/modularui/widget/CoverDataFollower_SlotWidget.java b/src/main/java/gregtech/common/gui/modularui/widget/CoverDataFollower_SlotWidget.java
index c09c5b5279..c7795efbdc 100644
--- a/src/main/java/gregtech/common/gui/modularui/widget/CoverDataFollower_SlotWidget.java
+++ b/src/main/java/gregtech/common/gui/modularui/widget/CoverDataFollower_SlotWidget.java
@@ -1,15 +1,18 @@
package gregtech.common.gui.modularui.widget;
+import java.io.IOException;
+import java.util.function.Consumer;
+import java.util.function.Function;
+
+import net.minecraft.item.ItemStack;
+
import com.gtnewhorizons.modularui.api.forge.IItemHandlerModifiable;
import com.gtnewhorizons.modularui.api.widget.Interactable;
import com.gtnewhorizons.modularui.common.internal.wrapper.BaseSlot;
import com.gtnewhorizons.modularui.common.widget.SlotWidget;
+
import gregtech.api.gui.modularui.IDataFollowerWidget;
import gregtech.api.util.ISerializableObject;
-import java.io.IOException;
-import java.util.function.Consumer;
-import java.util.function.Function;
-import net.minecraft.item.ItemStack;
public class CoverDataFollower_SlotWidget<T extends ISerializableObject> extends SlotWidget
implements IDataFollowerWidget<T, ItemStack> {
diff --git a/src/main/java/gregtech/common/gui/modularui/widget/CoverDataFollower_TextFieldWidget.java b/src/main/java/gregtech/common/gui/modularui/widget/CoverDataFollower_TextFieldWidget.java
index 9130f8e3d0..7d11656231 100644
--- a/src/main/java/gregtech/common/gui/modularui/widget/CoverDataFollower_TextFieldWidget.java
+++ b/src/main/java/gregtech/common/gui/modularui/widget/CoverDataFollower_TextFieldWidget.java
@@ -1,15 +1,18 @@
package gregtech.common.gui.modularui.widget;
+import java.util.function.Consumer;
+import java.util.function.Function;
+
+import net.minecraft.client.gui.GuiScreen;
+
import com.gtnewhorizons.modularui.api.math.Alignment;
import com.gtnewhorizons.modularui.api.math.Color;
import com.gtnewhorizons.modularui.api.math.MathExpression;
import com.gtnewhorizons.modularui.common.widget.textfield.TextFieldWidget;
+
import gregtech.api.gui.modularui.GT_UITextures;
import gregtech.api.gui.modularui.IDataFollowerWidget;
import gregtech.api.util.ISerializableObject;
-import java.util.function.Consumer;
-import java.util.function.Function;
-import net.minecraft.client.gui.GuiScreen;
public class CoverDataFollower_TextFieldWidget<T extends ISerializableObject> extends TextFieldWidget
implements IDataFollowerWidget<T, String> {
diff --git a/src/main/java/gregtech/common/gui/modularui/widget/CoverDataFollower_ToggleButtonWidget.java b/src/main/java/gregtech/common/gui/modularui/widget/CoverDataFollower_ToggleButtonWidget.java
index 8e091d7bc6..cb5fbf7994 100644
--- a/src/main/java/gregtech/common/gui/modularui/widget/CoverDataFollower_ToggleButtonWidget.java
+++ b/src/main/java/gregtech/common/gui/modularui/widget/CoverDataFollower_ToggleButtonWidget.java
@@ -1,11 +1,13 @@
package gregtech.common.gui.modularui.widget;
+import java.util.function.Consumer;
+import java.util.function.Function;
+
import com.gtnewhorizons.modularui.api.drawable.IDrawable;
+
import gregtech.api.gui.modularui.GT_UITextures;
import gregtech.api.gui.modularui.IDataFollowerWidget;
import gregtech.api.util.ISerializableObject;
-import java.util.function.Consumer;
-import java.util.function.Function;
public class CoverDataFollower_ToggleButtonWidget<T extends ISerializableObject> extends CoverCycleButtonWidget
implements IDataFollowerWidget<T, Boolean> {
@@ -77,7 +79,7 @@ public class CoverDataFollower_ToggleButtonWidget<T extends ISerializableObject>
@Override
public IDrawable[] getBackground() {
- if (!canClick()) return new IDrawable[] {GT_UITextures.BUTTON_COVER_NORMAL_DISABLED};
+ if (!canClick()) return new IDrawable[] { GT_UITextures.BUTTON_COVER_NORMAL_DISABLED };
return super.getBackground();
}
}
diff --git a/src/main/java/gregtech/common/gui/modularui/widget/DataControllerWidget.java b/src/main/java/gregtech/common/gui/modularui/widget/DataControllerWidget.java
index f29b8eeaf9..4e9ac4a245 100644
--- a/src/main/java/gregtech/common/gui/modularui/widget/DataControllerWidget.java
+++ b/src/main/java/gregtech/common/gui/modularui/widget/DataControllerWidget.java
@@ -1,26 +1,31 @@
package gregtech.common.gui.modularui.widget;
+import java.io.IOException;
+import java.util.function.BiFunction;
+import java.util.function.Consumer;
+import java.util.function.Function;
+import java.util.function.Supplier;
+
+import net.minecraft.network.PacketBuffer;
+
import com.gtnewhorizons.modularui.api.widget.ISyncedWidget;
import com.gtnewhorizons.modularui.api.widget.Widget;
import com.gtnewhorizons.modularui.common.internal.network.NetworkUtils;
import com.gtnewhorizons.modularui.common.widget.MultiChildWidget;
+
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import gregtech.api.gui.modularui.IDataFollowerWidget;
import gregtech.api.util.ISerializableObject;
-import java.io.IOException;
-import java.util.function.BiFunction;
-import java.util.function.Consumer;
-import java.util.function.Function;
-import java.util.function.Supplier;
-import net.minecraft.network.PacketBuffer;
/**
- * Controls state of child widgets with specific data, and allows centralized control of multiple widgets.
- * e.g. clicking button B will set machine mode to B, so button A, whose state is bound to the mode,
- * will be automatically deactivated by this widget.
- * <br> This widget wraps data and handles validation, e.g. tell client to close GUI when tile is broken or cover is removed.
- * <br> Data can be anything, e.g. {@link ISerializableObject} or machine recipe mode.
+ * Controls state of child widgets with specific data, and allows centralized control of multiple widgets. e.g. clicking
+ * button B will set machine mode to B, so button A, whose state is bound to the mode, will be automatically deactivated
+ * by this widget. <br>
+ * This widget wraps data and handles validation, e.g. tell client to close GUI when tile is broken or cover is removed.
+ * <br>
+ * Data can be anything, e.g. {@link ISerializableObject} or machine recipe mode.
+ *
* @param <T> Data type stored in this widget
* @see IDataFollowerWidget
*/
@@ -139,15 +144,15 @@ public abstract class DataControllerWidget<T> extends MultiChildWidget implement
}
/**
- * @param widget widget to add that implements {@link IDataFollowerWidget}
+ * @param widget widget to add that implements {@link IDataFollowerWidget}
* @param dataToStateGetter given data -> state of the widget to add
- * @param dataUpdater (current data, state of the widget to add) -> new data to set
- * @param applyForWidget methods to call for the widget to add
- * @param <U> state type stored in the widget to add
- * @param <W> widget type to add
+ * @param dataUpdater (current data, state of the widget to add) -> new data to set
+ * @param applyForWidget methods to call for the widget to add
+ * @param <U> state type stored in the widget to add
+ * @param <W> widget type to add
*/
- public <U, W extends Widget & IDataFollowerWidget<T, U>> DataControllerWidget<T> addFollower(
- W widget, Function<T, U> dataToStateGetter, BiFunction<T, U, T> dataUpdater, Consumer<W> applyForWidget) {
+ public <U, W extends Widget & IDataFollowerWidget<T, U>> DataControllerWidget<T> addFollower(W widget,
+ Function<T, U> dataToStateGetter, BiFunction<T, U, T> dataUpdater, Consumer<W> applyForWidget) {
widget.setDataToStateGetter(dataToStateGetter);
widget.setStateSetter(state -> {
T newData = dataUpdater.apply(getLastData(), state);
diff --git a/src/main/java/gregtech/common/gui/modularui/widget/FluidDisplaySlotWidget.java b/src/main/java/gregtech/common/gui/modularui/widget/FluidDisplaySlotWidget.java
index 688800e4ef..182f007b33 100644
--- a/src/main/java/gregtech/common/gui/modularui/widget/FluidDisplaySlotWidget.java
+++ b/src/main/java/gregtech/common/gui/modularui/widget/FluidDisplaySlotWidget.java
@@ -1,19 +1,12 @@
package gregtech.common.gui.modularui.widget;
-import com.gtnewhorizons.modularui.api.forge.IItemHandlerModifiable;
-import com.gtnewhorizons.modularui.common.internal.wrapper.BaseSlot;
-import com.gtnewhorizons.modularui.common.widget.SlotWidget;
-import gregtech.GT_Mod;
-import gregtech.api.interfaces.IFluidAccess;
-import gregtech.api.interfaces.IHasFluidDisplayItem;
-import gregtech.api.interfaces.metatileentity.IFluidLockable;
-import gregtech.api.util.GT_Utility;
import java.io.IOException;
import java.util.Collections;
import java.util.List;
import java.util.function.BiFunction;
import java.util.function.Predicate;
import java.util.function.Supplier;
+
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.item.ItemStack;
@@ -22,6 +15,16 @@ import net.minecraftforge.fluids.Fluid;
import net.minecraftforge.fluids.FluidStack;
import net.minecraftforge.fluids.IFluidContainerItem;
+import com.gtnewhorizons.modularui.api.forge.IItemHandlerModifiable;
+import com.gtnewhorizons.modularui.common.internal.wrapper.BaseSlot;
+import com.gtnewhorizons.modularui.common.widget.SlotWidget;
+
+import gregtech.GT_Mod;
+import gregtech.api.interfaces.IFluidAccess;
+import gregtech.api.interfaces.IHasFluidDisplayItem;
+import gregtech.api.interfaces.metatileentity.IFluidLockable;
+import gregtech.api.util.GT_Utility;
+
public class FluidDisplaySlotWidget extends SlotWidget {
private IHasFluidDisplayItem iHasFluidDisplay;
@@ -57,11 +60,10 @@ public class FluidDisplaySlotWidget extends SlotWidget {
if (interactionDisabled) return ClickResult.REJECT;
/*
- * While a logical client don't really need to process fluid cells upon click (it could have just wait
- * for server side to send the result), doing so would result in every fluid interaction having a
- * noticeable delay between clicking and changes happening even on single player.
- * I'd imagine this lag to become only more severe when playing MP over ethernet, which would have much more latency
- * than a memory connection
+ * While a logical client don't really need to process fluid cells upon click (it could have just wait for
+ * server side to send the result), doing so would result in every fluid interaction having a noticeable delay
+ * between clicking and changes happening even on single player. I'd imagine this lag to become only more severe
+ * when playing MP over ethernet, which would have much more latency than a memory connection
*/
ClickData clickData = ClickData.create(buttonId, doubleClick);
ItemStack verifyToken = executeRealClick(clickData);
@@ -126,8 +128,7 @@ public class FluidDisplaySlotWidget extends SlotWidget {
ItemStack serverVerifyToken = executeRealClick(clickData);
// similar to what NetHandlerPlayServer#processClickWindow does
if (!ItemStack.areItemStacksEqual(clientVerifyToken, serverVerifyToken)) {
- ((EntityPlayerMP) getContext().getPlayer())
- .sendContainerToPlayer(getContext().getContainer());
+ ((EntityPlayerMP) getContext().getPlayer()).sendContainerToPlayer(getContext().getContainer());
}
}
@@ -140,8 +141,8 @@ public class FluidDisplaySlotWidget extends SlotWidget {
ItemStack ret = null;
if (actionRealClick == Action.TRANSFER) {
if (fluidAccessConstructor == null) {
- GT_Mod.GT_FML_LOGGER.warn(
- "FluidDisplaySlotWidget is asked to transfer fluid, but fluidAccessConstructor is null!");
+ GT_Mod.GT_FML_LOGGER
+ .warn("FluidDisplaySlotWidget is asked to transfer fluid, but fluidAccessConstructor is null!");
return null;
}
ret = transferFluid(
@@ -158,12 +159,8 @@ public class FluidDisplaySlotWidget extends SlotWidget {
return ret;
}
- protected ItemStack transferFluid(
- IFluidAccess aFluidAccess,
- EntityPlayer aPlayer,
- boolean aProcessFullStack,
- boolean aCanDrain,
- boolean aCanFill) {
+ protected ItemStack transferFluid(IFluidAccess aFluidAccess, EntityPlayer aPlayer, boolean aProcessFullStack,
+ boolean aCanDrain, boolean aCanFill) {
ItemStack tStackHeld = aPlayer.inventory.getItemStack();
ItemStack tStackSizedOne = GT_Utility.copyAmount(1, tStackHeld);
if (tStackSizedOne == null || tStackHeld.stackSize == 0) return null;
@@ -224,12 +221,10 @@ public class FluidDisplaySlotWidget extends SlotWidget {
if (aProcessFullStack) {
int tFilledAmount = tOriginalFluidAmount - tTankStack.amount;
/*
- work out how many more items we can fill
- one cell is already used, so account for that
- the round down behavior will left over a fraction of a cell worth of fluid
- the user then get to decide what to do with it
- it will not be too fancy if it spills out partially filled cells
- */
+ * work out how many more items we can fill one cell is already used, so account for that the round down
+ * behavior will left over a fraction of a cell worth of fluid the user then get to decide what to do
+ * with it it will not be too fancy if it spills out partially filled cells
+ */
int tAdditionalParallel = Math.min(tStackHeld.stackSize - 1, tTankStack.amount / tFilledAmount);
tTankStack.amount -= tFilledAmount * tAdditionalParallel;
tFilledContainer.stackSize += tAdditionalParallel;
@@ -240,8 +235,8 @@ public class FluidDisplaySlotWidget extends SlotWidget {
return tFilledContainer;
}
- protected static ItemStack fillFluid(
- IFluidAccess aFluidAccess, EntityPlayer aPlayer, FluidStack aFluidHeld, boolean aProcessFullStack) {
+ protected static ItemStack fillFluid(IFluidAccess aFluidAccess, EntityPlayer aPlayer, FluidStack aFluidHeld,
+ boolean aProcessFullStack) {
// we are not using aMachine.fill() here any more, so we need to check for fluid type here ourselves
if (aFluidAccess.get() != null && !aFluidAccess.get().isFluidEqual(aFluidHeld)) return null;
ItemStack tStackHeld = aPlayer.inventory.getItemStack();
@@ -402,8 +397,8 @@ public class FluidDisplaySlotWidget extends SlotWidget {
}
/**
- * Add a predicate on whether a client stack will be accepted. Note this will only be called when this slot is already
- * empty. It is assumed whatever is already in the slot will pass the filter.
+ * Add a predicate on whether a client stack will be accepted. Note this will only be called when this slot is
+ * already empty. It is assumed whatever is already in the slot will pass the filter.
*/
public FluidDisplaySlotWidget setEmptyCanFillFilter(Predicate<Fluid> canFillFilter) {
this.canFillFilter = canFillFilter;
@@ -411,8 +406,7 @@ public class FluidDisplaySlotWidget extends SlotWidget {
}
/**
- * Sets action called on drag-and-drop from NEI.
- * You can't use {@link Action#TRANSFER} here.
+ * Sets action called on drag-and-drop from NEI. You can't use {@link Action#TRANSFER} here.
*/
public FluidDisplaySlotWidget setActionDragAndDrop(Action actionDragAndDrop) {
this.actionDragAndDrop = actionDragAndDrop;
@@ -421,6 +415,7 @@ public class FluidDisplaySlotWidget extends SlotWidget {
/**
* Sets function called before {@link #executeRealClick}.
+ *
* @param beforeRealClick (click data, this widget) -> if allow click
*/
public FluidDisplaySlotWidget setBeforeRealClick(
@@ -431,6 +426,7 @@ public class FluidDisplaySlotWidget extends SlotWidget {
/**
* Sets function called before {@link #executeDragAndDrop}.
+ *
* @param beforeDragAndDrop (click data, this widget) -> if allow click
*/
public FluidDisplaySlotWidget setBeforeDragAndDrop(
@@ -441,7 +437,8 @@ public class FluidDisplaySlotWidget extends SlotWidget {
/**
* Sets function called before both of {@link #executeRealClick} and {@link #executeDragAndDrop}.
- * @param beforeClick (click data, this widget) -> if allow click
+ *
+ * @param beforeClick (click data, this widget) -> if allow click
*/
public FluidDisplaySlotWidget setBeforeClick(BiFunction<ClickData, FluidDisplaySlotWidget, Boolean> beforeClick) {
setBeforeRealClick(beforeClick);
@@ -450,8 +447,8 @@ public class FluidDisplaySlotWidget extends SlotWidget {
}
/**
- * By default, this widget runs {@link IHasFluidDisplayItem#updateFluidDisplayItem} after click.
- * You can specify custom update action with this method.
+ * By default, this widget runs {@link IHasFluidDisplayItem#updateFluidDisplayItem} after click. You can specify
+ * custom update action with this method.
*/
public FluidDisplaySlotWidget setUpdateFluidDisplayItem(Runnable updateFluidDisplayItem) {
this.updateFluidDisplayItem = updateFluidDisplayItem;
@@ -464,20 +461,17 @@ public class FluidDisplaySlotWidget extends SlotWidget {
public enum Action {
/**
- * Fill/drain fluid into/from the tank.
- * Uses fluid amount, so drag-and-drop cannot use this mode.
+ * Fill/drain fluid into/from the tank. Uses fluid amount, so drag-and-drop cannot use this mode.
*/
TRANSFER,
/**
- * Lock fluid for {@link IFluidLockable}.
- * Does not use fluid amount.
+ * Lock fluid for {@link IFluidLockable}. Does not use fluid amount.
*/
LOCK,
/**
- * Set filter for the tank. (not implemented yet)
- * Does not use fluid amount.
+ * Set filter for the tank. (not implemented yet) Does not use fluid amount.
*/
FILTER,
diff --git a/src/main/java/gregtech/common/gui/modularui/widget/ItemWatcherSlotWidget.java b/src/main/java/gregtech/common/gui/modularui/widget/ItemWatcherSlotWidget.java
index 7385208874..265450d384 100644
--- a/src/main/java/gregtech/common/gui/modularui/widget/ItemWatcherSlotWidget.java
+++ b/src/main/java/gregtech/common/gui/modularui/widget/ItemWatcherSlotWidget.java
@@ -1,16 +1,18 @@
package gregtech.common.gui.modularui.widget;
+import java.util.function.Supplier;
+
+import net.minecraft.item.ItemStack;
+
import com.gtnewhorizons.modularui.api.forge.IItemHandlerModifiable;
import com.gtnewhorizons.modularui.api.forge.ItemStackHandler;
import com.gtnewhorizons.modularui.common.internal.wrapper.BaseSlot;
import com.gtnewhorizons.modularui.common.widget.SlotWidget;
import gregtech.api.util.GT_Utility;
-import java.util.function.Supplier;
-import net.minecraft.item.ItemStack;
/**
- * Watches specific ItemStack and pulls changes from it.
- * Player cannot interact with slot, other than viewing NEI recipe or adding bookmark.
+ * Watches specific ItemStack and pulls changes from it. Player cannot interact with slot, other than viewing NEI recipe
+ * or adding bookmark.
*/
public class ItemWatcherSlotWidget extends SlotWidget {