diff options
author | Glease <4586901+Glease@users.noreply.github.com> | 2024-09-09 03:28:04 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-09-08 19:28:04 +0000 |
commit | e9e7d6ccae0b125839a95829043d9f8a20ede89b (patch) | |
tree | fb088b20d70e41c6ab8e117688d356a7516ee5e2 /src/main/java | |
parent | b7850f71ff5f9d31fa756893a98d36888d4057de (diff) | |
download | GT5-Unofficial-e9e7d6ccae0b125839a95829043d9f8a20ede89b.tar.gz GT5-Unofficial-e9e7d6ccae0b125839a95829043d9f8a20ede89b.tar.bz2 GT5-Unofficial-e9e7d6ccae0b125839a95829043d9f8a20ede89b.zip |
scrollable multiblock status display (#3089)
Co-authored-by: Martin Robertz <dream-master@gmx.net>
Diffstat (limited to 'src/main/java')
6 files changed, 41 insertions, 8 deletions
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/MTEMultiBlockBase.java b/src/main/java/gregtech/api/metatileentity/implementations/MTEMultiBlockBase.java index ab70cf25ae..bba64cbd8c 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/MTEMultiBlockBase.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/MTEMultiBlockBase.java @@ -54,6 +54,7 @@ import com.gtnewhorizons.modularui.common.internal.network.NetworkUtils; import com.gtnewhorizons.modularui.common.widget.DrawableWidget; import com.gtnewhorizons.modularui.common.widget.DynamicPositionedColumn; import com.gtnewhorizons.modularui.common.widget.FakeSyncWidget; +import com.gtnewhorizons.modularui.common.widget.Scrollable; import com.gtnewhorizons.modularui.common.widget.SlotWidget; import com.gtnewhorizons.modularui.common.widget.TextWidget; @@ -2448,7 +2449,11 @@ public abstract class MTEMultiBlockBase extends MetaTileEntity final DynamicPositionedColumn screenElements = new DynamicPositionedColumn(); drawTexts(screenElements, inventorySlot); - builder.widget(screenElements); + builder.widget( + new Scrollable().setVerticalScroll() + .widget(screenElements.setPos(10, 0)) + .setPos(0, 7) + .setSize(190, 79)); setMachineModeIcons(); builder.widget(createPowerSwitchButton(builder)) diff --git a/src/main/java/kubatech/api/implementations/KubaTechGTMultiBlockBase.java b/src/main/java/kubatech/api/implementations/KubaTechGTMultiBlockBase.java index d8f12126c1..a6305b2f5f 100644 --- a/src/main/java/kubatech/api/implementations/KubaTechGTMultiBlockBase.java +++ b/src/main/java/kubatech/api/implementations/KubaTechGTMultiBlockBase.java @@ -53,6 +53,7 @@ import com.gtnewhorizons.modularui.common.widget.Column; import com.gtnewhorizons.modularui.common.widget.DrawableWidget; import com.gtnewhorizons.modularui.common.widget.DynamicPositionedColumn; import com.gtnewhorizons.modularui.common.widget.DynamicPositionedRow; +import com.gtnewhorizons.modularui.common.widget.Scrollable; import com.gtnewhorizons.modularui.common.widget.SlotWidget; import gregtech.api.enums.GTValues; @@ -311,7 +312,11 @@ public abstract class KubaTechGTMultiBlockBase<T extends MTEExtendedPowerMultiBl final DynamicPositionedColumn screenElements = new DynamicPositionedColumn(); drawTexts(screenElements, slotWidgets.size() > 0 ? slotWidgets.get(0) : null); - builder.widget(screenElements); + builder.widget( + new Scrollable().setVerticalScroll() + .widget(screenElements.setPos(10, 0)) + .setPos(0, 7) + .setSize(190, 79)); builder.widget(createPowerSwitchButton(builder)) .widget(createVoidExcessButton(builder)) diff --git a/src/main/java/kubatech/tileentity/gregtech/multiblock/MTEExtremeIndustrialGreenhouse.java b/src/main/java/kubatech/tileentity/gregtech/multiblock/MTEExtremeIndustrialGreenhouse.java index 03ddadd269..8716a1a3bb 100644 --- a/src/main/java/kubatech/tileentity/gregtech/multiblock/MTEExtremeIndustrialGreenhouse.java +++ b/src/main/java/kubatech/tileentity/gregtech/multiblock/MTEExtremeIndustrialGreenhouse.java @@ -87,6 +87,7 @@ import com.gtnewhorizons.modularui.common.widget.DrawableWidget; import com.gtnewhorizons.modularui.common.widget.DynamicPositionedColumn; import com.gtnewhorizons.modularui.common.widget.DynamicPositionedRow; import com.gtnewhorizons.modularui.common.widget.FakeSyncWidget; +import com.gtnewhorizons.modularui.common.widget.Scrollable; import com.gtnewhorizons.modularui.common.widget.SlotWidget; import com.gtnewhorizons.modularui.common.widget.TextWidget; @@ -1017,12 +1018,17 @@ public class MTEExtremeIndustrialGreenhouse extends KubaTechGTMultiBlockBase<MTE new CycleButtonWidget().setToggle(() -> isInInventory, i -> isInInventory = i) .setTextureGetter(i -> i == 0 ? new Text("Inventory") : new Text("Status")) .setBackground(GTUITextures.BUTTON_STANDARD) - .setPos(140, 4) + .setPos(140, 91) .setSize(55, 16)); final DynamicPositionedColumn screenElements = new DynamicPositionedColumn(); drawTexts(screenElements, null); - builder.widget(screenElements.setEnabled(w -> !isInInventory)); + builder.widget( + new Scrollable().setVerticalScroll() + .widget(screenElements.setPos(10, 0)) + .setPos(0, 7) + .setSize(190, 79) + .setEnabled(w -> !isInInventory)); builder.widget(createPowerSwitchButton(builder)) .widget(createVoidExcessButton(builder)) diff --git a/src/main/java/kubatech/tileentity/gregtech/multiblock/MTEMegaIndustrialApiary.java b/src/main/java/kubatech/tileentity/gregtech/multiblock/MTEMegaIndustrialApiary.java index 6a8f34e2da..b6c1d845c8 100644 --- a/src/main/java/kubatech/tileentity/gregtech/multiblock/MTEMegaIndustrialApiary.java +++ b/src/main/java/kubatech/tileentity/gregtech/multiblock/MTEMegaIndustrialApiary.java @@ -90,6 +90,7 @@ import com.gtnewhorizons.modularui.common.widget.DrawableWidget; import com.gtnewhorizons.modularui.common.widget.DynamicPositionedColumn; import com.gtnewhorizons.modularui.common.widget.DynamicPositionedRow; import com.gtnewhorizons.modularui.common.widget.FakeSyncWidget; +import com.gtnewhorizons.modularui.common.widget.Scrollable; import com.gtnewhorizons.modularui.common.widget.SlotWidget; import com.gtnewhorizons.modularui.common.widget.TextWidget; @@ -737,16 +738,22 @@ public class MTEMegaIndustrialApiary extends KubaTechGTMultiBlockBase<MTEMegaInd .setPos(10, 16) .setBackground(new Rectangle().setColor(Color.rgb(163, 163, 198))) .setEnabled(w -> isInInventory)); + builder.widget( new CycleButtonWidget().setToggle(() -> isInInventory, i -> isInInventory = i) .setTextureGetter(i -> i == 0 ? new Text("Inventory") : new Text("Status")) .setBackground(GTUITextures.BUTTON_STANDARD) - .setPos(140, 4) + .setPos(140, 91) .setSize(55, 16)); final DynamicPositionedColumn screenElements = new DynamicPositionedColumn(); drawTexts(screenElements, null); - builder.widget(screenElements.setEnabled(w -> !isInInventory)); + builder.widget( + new Scrollable().setVerticalScroll() + .widget(screenElements.setPos(10, 0)) + .setPos(0, 7) + .setSize(190, 79) + .setEnabled(w -> !isInInventory)); builder.widget(createPowerSwitchButton(builder)) .widget(createVoidExcessButton(builder)) diff --git a/src/main/java/tectech/thing/metaTileEntity/multi/base/TTMultiblockBase.java b/src/main/java/tectech/thing/metaTileEntity/multi/base/TTMultiblockBase.java index 22a2d38c0a..dab072e0a9 100644 --- a/src/main/java/tectech/thing/metaTileEntity/multi/base/TTMultiblockBase.java +++ b/src/main/java/tectech/thing/metaTileEntity/multi/base/TTMultiblockBase.java @@ -54,6 +54,7 @@ import com.gtnewhorizons.modularui.common.widget.ButtonWidget; import com.gtnewhorizons.modularui.common.widget.DrawableWidget; import com.gtnewhorizons.modularui.common.widget.DynamicPositionedColumn; import com.gtnewhorizons.modularui.common.widget.FakeSyncWidget; +import com.gtnewhorizons.modularui.common.widget.Scrollable; import com.gtnewhorizons.modularui.common.widget.SlotWidget; import com.gtnewhorizons.modularui.common.widget.TextWidget; import com.gtnewhorizons.modularui.common.widget.textfield.NumericWidget; @@ -2402,7 +2403,11 @@ public abstract class TTMultiblockBase extends MTEExtendedPowerMultiBlockBase<TT final DynamicPositionedColumn screenElements = new DynamicPositionedColumn(); drawTexts(screenElements, inventorySlot); - builder.widget(screenElements.setPos(7, 8)); + builder.widget( + new Scrollable().setVerticalScroll() + .widget(screenElements) + .setPos(0, 7) + .setSize(190, doesBindPlayerInventory() ? 79 : 165)); Widget powerPassButton = createPowerPassButton(); builder.widget(powerPassButton) diff --git a/src/main/java/tectech/thing/metaTileEntity/multi/godforge_modules/MTEBaseModule.java b/src/main/java/tectech/thing/metaTileEntity/multi/godforge_modules/MTEBaseModule.java index b403dba74f..67561466ab 100644 --- a/src/main/java/tectech/thing/metaTileEntity/multi/godforge_modules/MTEBaseModule.java +++ b/src/main/java/tectech/thing/metaTileEntity/multi/godforge_modules/MTEBaseModule.java @@ -36,6 +36,7 @@ import com.gtnewhorizons.modularui.common.widget.ButtonWidget; import com.gtnewhorizons.modularui.common.widget.DrawableWidget; import com.gtnewhorizons.modularui.common.widget.DynamicPositionedColumn; import com.gtnewhorizons.modularui.common.widget.FakeSyncWidget; +import com.gtnewhorizons.modularui.common.widget.Scrollable; import com.gtnewhorizons.modularui.common.widget.SlotWidget; import com.gtnewhorizons.modularui.common.widget.TextWidget; import com.gtnewhorizons.modularui.common.widget.textfield.NumericWidget; @@ -288,7 +289,11 @@ public class MTEBaseModule extends TTMultiblockBase { final DynamicPositionedColumn screenElements = new DynamicPositionedColumn(); drawTexts(screenElements, inventorySlot); - builder.widget(screenElements); + builder.widget( + new Scrollable().setVerticalScroll() + .widget(screenElements.setPos(10, 0)) + .setPos(0, 7) + .setSize(190, 79)); buildContext.addSyncedWindow(VOLTAGE_WINDOW_ID, this::createVoltageWindow); |