diff options
| author | Martin Robertz <dream-master@gmx.net> | 2022-11-25 17:56:03 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-11-25 17:56:03 +0100 |
| commit | 2865cbb73dac3d75ef113d995c893c303dc337e8 (patch) | |
| tree | 8b6c39a42cfb7004e917cc4f6c0ca7e4ab1d8819 /src/main/java | |
| parent | 4464b25d87f922e44e011dab7572dfff715f3aa9 (diff) | |
| parent | 3259a923050ddaaf55471db4eb4ba8654ce88a20 (diff) | |
| download | GT5-Unofficial-2865cbb73dac3d75ef113d995c893c303dc337e8.tar.gz GT5-Unofficial-2865cbb73dac3d75ef113d995c893c303dc337e8.tar.bz2 GT5-Unofficial-2865cbb73dac3d75ef113d995c893c303dc337e8.zip | |
Merge pull request #114 from GTNewHorizons/feature/modular-ui
Rewrite GUIs with ModularUI
Diffstat (limited to 'src/main/java')
57 files changed, 1893 insertions, 3848 deletions
diff --git a/src/main/java/com/github/technus/tectech/loader/NetworkDispatcher.java b/src/main/java/com/github/technus/tectech/loader/NetworkDispatcher.java index 4b57c09ab8..738d7bfc45 100644 --- a/src/main/java/com/github/technus/tectech/loader/NetworkDispatcher.java +++ b/src/main/java/com/github/technus/tectech/loader/NetworkDispatcher.java @@ -7,7 +7,6 @@ import com.github.technus.tectech.mechanics.data.PlayerDataMessage; import com.github.technus.tectech.mechanics.enderStorage.EnderLinkCoverMessage; import com.github.technus.tectech.mechanics.pipe.PipeActivityMessage; import com.github.technus.tectech.mechanics.spark.RendererMessage; -import com.github.technus.tectech.thing.metaTileEntity.hatch.TextParametersMessage; public class NetworkDispatcher extends eu.usrv.yamcore.network.PacketDispatcher { public static NetworkDispatcher INSTANCE; @@ -35,10 +34,5 @@ public class NetworkDispatcher extends eu.usrv.yamcore.network.PacketDispatcher registerMessage( EnderLinkCoverMessage.ServerUpdateHandler.class, EnderLinkCoverMessage.EnderLinkCoverUpdate.class); registerMessage(EnderLinkCoverMessage.ClientHandler.class, EnderLinkCoverMessage.EnderLinkCoverData.class); - - registerMessage(TextParametersMessage.ServerHandler.class, TextParametersMessage.ParametersTextQuery.class); - registerMessage( - TextParametersMessage.ServerUpdateHandler.class, TextParametersMessage.ParametersTextUpdate.class); - registerMessage(TextParametersMessage.ClientHandler.class, TextParametersMessage.ParametersTextData.class); } } diff --git a/src/main/java/com/github/technus/tectech/loader/recipe/BaseRecipeLoader.java b/src/main/java/com/github/technus/tectech/loader/recipe/BaseRecipeLoader.java index bdd2dc1136..a2d3edfa5e 100644 --- a/src/main/java/com/github/technus/tectech/loader/recipe/BaseRecipeLoader.java +++ b/src/main/java/com/github/technus/tectech/loader/recipe/BaseRecipeLoader.java @@ -120,26 +120,6 @@ public class BaseRecipeLoader { OrePrefixes.gem.get(Materials.EnderPearl) }); - // Data reader - GT_ModHandler.addCraftingRecipe( - CustomItemList.Machine_DataReader.get(1), - GT_ModHandler.RecipeBits.BUFFERED | GT_ModHandler.RecipeBits.NOT_REMOVABLE, - new Object[] { - "BdB", - "GES", - "PwP", - 'B', - OrePrefixes.screw.get(Materials.Iridium), - 'P', - OrePrefixes.plate.get(Materials.Iridium), - 'G', - ItemList.Cover_Screen, - 'S', - OrePrefixes.circuit.get(Materials.Elite), - 'E', - ItemList.Hull_IV - }); - // Data Bank RA.addAssemblylineRecipe( ItemList.Hatch_DataAccess_EV.get(1), diff --git a/src/main/java/com/github/technus/tectech/loader/thing/MachineLoader.java b/src/main/java/com/github/technus/tectech/loader/thing/MachineLoader.java index 53a16d2648..436c806da2 100644 --- a/src/main/java/com/github/technus/tectech/loader/thing/MachineLoader.java +++ b/src/main/java/com/github/technus/tectech/loader/thing/MachineLoader.java @@ -1042,8 +1042,6 @@ public class MachineLoader implements Runnable { GT_MetaTileEntity_Hatch_Rack.run(); - GT_MetaTileEntity_DataReader.run(); - GT_MetaTileEntity_Hatch_Capacitor.run(); if (!Loader.isModLoaded(Reference.DREAMCRAFT)) { diff --git a/src/main/java/com/github/technus/tectech/nei/TT_NEI_ResearchHandler.java b/src/main/java/com/github/technus/tectech/nei/TT_NEI_ResearchHandler.java index b6d01cb01a..572b3b2c47 100644 --- a/src/main/java/com/github/technus/tectech/nei/TT_NEI_ResearchHandler.java +++ b/src/main/java/com/github/technus/tectech/nei/TT_NEI_ResearchHandler.java @@ -6,8 +6,6 @@ import static gregtech.api.enums.ItemList.Display_Fluid; import codechicken.lib.gui.GuiDraw; import codechicken.nei.ItemList; import codechicken.nei.PositionedStack; -import codechicken.nei.guihook.IContainerInputHandler; -import codechicken.nei.guihook.IContainerTooltipHandler; import codechicken.nei.recipe.*; import com.github.technus.tectech.Reference; import com.github.technus.tectech.TecTech; @@ -25,7 +23,6 @@ import java.util.Collections; import java.util.Iterator; import java.util.List; import net.minecraft.client.Minecraft; -import net.minecraft.client.gui.inventory.GuiContainer; import net.minecraft.init.Blocks; import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.FluidContainerRegistry; @@ -260,64 +257,6 @@ public class TT_NEI_ResearchHandler extends TemplateRecipeHandler { } } - @Deprecated // Unnecessary copy of a class base GT5U uses to manage NEI transfer rects - public static class GT_RectHandler implements IContainerInputHandler, IContainerTooltipHandler { - @Override - public boolean mouseClicked(GuiContainer gui, int mousex, int mousey, int button) { - return false; - } - - @Override - public boolean lastKeyTyped(GuiContainer gui, char keyChar, int keyCode) { - return false; - } - - public boolean canHandle(GuiContainer gui) { - return false; - } - - @Override - public List<String> handleTooltip(GuiContainer gui, int mousex, int mousey, List<String> currenttip) { - return currenttip; - } - - @Override - public List<String> handleItemDisplayName(GuiContainer gui, ItemStack itemstack, List<String> currenttip) { - return currenttip; - } - - @Override - public List<String> handleItemTooltip( - GuiContainer gui, ItemStack itemstack, int mousex, int mousey, List<String> currenttip) { - return currenttip; - } - - @Override - public boolean keyTyped(GuiContainer gui, char keyChar, int keyCode) { - return false; - } - - @Override - public void onKeyTyped(GuiContainer gui, char keyChar, int keyID) {} - - @Override - public void onMouseClicked(GuiContainer gui, int mousex, int mousey, int button) {} - - @Override - public void onMouseUp(GuiContainer gui, int mousex, int mousey, int button) {} - - @Override - public boolean mouseScrolled(GuiContainer gui, int mousex, int mousey, int scrolled) { - return false; - } - - @Override - public void onMouseScrolled(GuiContainer gui, int mousex, int mousey, int scrolled) {} - - @Override - public void onMouseDragged(GuiContainer gui, int mousex, int mousey, int button, long heldTime) {} - } - public static class FixedPositionedStack extends PositionedStack { public final int mChance; public boolean permutated = false; diff --git a/src/main/java/com/github/technus/tectech/nei/TT_NEI_ScannerHandler.java b/src/main/java/com/github/technus/tectech/nei/TT_NEI_ScannerHandler.java index 12e6f0d823..15887f0e35 100644 --- a/src/main/java/com/github/technus/tectech/nei/TT_NEI_ScannerHandler.java +++ b/src/main/java/com/github/technus/tectech/nei/TT_NEI_ScannerHandler.java @@ -6,8 +6,6 @@ import static gregtech.api.enums.ItemList.Display_Fluid; import codechicken.lib.gui.GuiDraw; import codechicken.nei.ItemList; import codechicken.nei.PositionedStack; -import codechicken.nei.guihook.IContainerInputHandler; -import codechicken.nei.guihook.IContainerTooltipHandler; import codechicken.nei.recipe.*; import com.github.technus.tectech.Reference; import com.github.technus.tectech.TecTech; @@ -25,7 +23,6 @@ import java.util.Collections; import java.util.Iterator; import java.util.List; import net.minecraft.client.Minecraft; -import net.minecraft.client.gui.inventory.GuiContainer; import net.minecraft.init.Blocks; import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.FluidContainerRegistry; @@ -259,64 +256,6 @@ public class TT_NEI_ScannerHandler extends TemplateRecipeHandler { } } - @Deprecated // Unnecessary copy of a class base GT5U uses to manage NEI transfer rects - public static class GT_RectHandler implements IContainerInputHandler, IContainerTooltipHandler { - @Override - public boolean mouseClicked(GuiContainer gui, int mousex, int mousey, int button) { - return false; - } - - @Override - public boolean lastKeyTyped(GuiContainer gui, char keyChar, int keyCode) { - return false; - } - - public boolean canHandle(GuiContainer gui) { - return false; - } - - @Override - public List<String> handleTooltip(GuiContainer gui, int mousex, int mousey, List<String> currenttip) { - return currenttip; - } - - @Override - public List<String> handleItemDisplayName(GuiContainer gui, ItemStack itemstack, List<String> currenttip) { - return currenttip; - } - - @Override - public List<String> handleItemTooltip( - GuiContainer gui, ItemStack itemstack, int mousex, int mousey, List<String> currenttip) { - return currenttip; - } - - @Override - public boolean keyTyped(GuiContainer gui, char keyChar, int keyCode) { - return false; - } - - @Override - public void onKeyTyped(GuiContainer gui, char keyChar, int keyID) {} - - @Override - public void onMouseClicked(GuiContainer gui, int mousex, int mousey, int button) {} - - @Override - public void onMouseUp(GuiContainer gui, int mousex, int mousey, int button) {} - - @Override - public boolean mouseScrolled(GuiContainer gui, int mousex, int mousey, int scrolled) { - return false; - } - - @Override - public void onMouseScrolled(GuiContainer gui, int mousex, int mousey, int scrolled) {} - - @Override - public void onMouseDragged(GuiContainer gui, int mousex, int mousey, int button, long heldTime) {} - } - public static class FixedPositionedStack extends PositionedStack { public final int mChance; public boolean permutated = false; diff --git a/src/main/java/com/github/technus/tectech/thing/cover/GT_Cover_TM_EnderFluidLink.java b/src/main/java/com/github/technus/tectech/thing/cover/GT_Cover_TM_EnderFluidLink.java index ad6bb87c19..e977126595 100644 --- a/src/main/java/com/github/technus/tectech/thing/cover/GT_Cover_TM_EnderFluidLink.java +++ b/src/main/java/com/github/technus/tectech/thing/cover/GT_Cover_TM_EnderFluidLink.java @@ -2,24 +2,25 @@ package com.github.technus.tectech.thing.cover; import static com.github.technus.tectech.mechanics.enderStorage.EnderWorldSavedData.getEnderFluidContainer; import static com.github.technus.tectech.mechanics.enderStorage.EnderWorldSavedData.getEnderLinkTag; -import static gregtech.GT_Mod.gregtechproxy; import com.github.technus.tectech.loader.NetworkDispatcher; import com.github.technus.tectech.mechanics.enderStorage.EnderLinkCoverMessage; import com.github.technus.tectech.mechanics.enderStorage.EnderLinkTag; +import com.gtnewhorizons.modularui.api.math.Alignment; +import com.gtnewhorizons.modularui.api.math.Color; +import com.gtnewhorizons.modularui.api.screen.ModularWindow; +import com.gtnewhorizons.modularui.common.widget.TextWidget; +import com.gtnewhorizons.modularui.common.widget.textfield.TextFieldWidget; import eu.usrv.yamcore.auxiliary.PlayerChatHelper; -import gregtech.api.enums.GT_Values; -import gregtech.api.gui.GT_GUICover; -import gregtech.api.gui.widgets.GT_GuiIcon; -import gregtech.api.gui.widgets.GT_GuiIconButton; -import gregtech.api.gui.widgets.GT_GuiIntegerTextBox; -import gregtech.api.interfaces.IGuiScreen; +import gregtech.api.gui.modularui.GT_CoverUIBuildContext; +import gregtech.api.gui.modularui.GT_UITextures; import gregtech.api.interfaces.tileentity.ICoverable; -import gregtech.api.net.GT_Packet_TileEntityCover; import gregtech.api.util.GT_CoverBehavior; import gregtech.api.util.GT_Utility; +import gregtech.api.util.ISerializableObject; +import gregtech.common.gui.modularui.widget.CoverDataControllerWidget; +import gregtech.common.gui.modularui.widget.CoverDataFollower_ToggleButtonWidget; import java.util.UUID; -import net.minecraft.client.gui.GuiButton; import net.minecraft.entity.player.EntityPlayer; import net.minecraftforge.common.util.ForgeDirection; import net.minecraftforge.fluids.Fluid; @@ -38,7 +39,7 @@ public class GT_Cover_TM_EnderFluidLink extends GT_CoverBehavior { if (inputTag != null) { tag = inputTag; // Hacky Way to update the gui - GUI_INSTANCE.resetColorField(); + GUI_INSTANCE.resetTextField(); } } @@ -117,131 +118,118 @@ public class GT_Cover_TM_EnderFluidLink extends GT_CoverBehavior { } // region GUI + + private static EnderFluidLinkUIFactory GUI_INSTANCE; + @Override public boolean hasCoverGUI() { return true; } @Override - public Object getClientGUI(byte aSide, int aCoverID, int coverData, ICoverable aTileEntity) { + public boolean useModularUI() { + return true; + } + + @Override + public ModularWindow createWindow(GT_CoverUIBuildContext buildContext) { // Only open gui if we're placed on a fluid tank - Object gui = null; - if (aTileEntity instanceof IFluidHandler) { - gui = new TM_EnderFluidLinkCover(aSide, aCoverID, coverData, aTileEntity); + if (buildContext.getTile() instanceof IFluidHandler) { + return new EnderFluidLinkUIFactory(buildContext).createWindow(); } - return gui; + return null; } - private static TM_EnderFluidLinkCover GUI_INSTANCE; - - private class TM_EnderFluidLinkCover extends GT_GUICover { - private final byte side; - private final int coverID; - private int coverVariable; - private GT_GuiTextBox colorField; + private class EnderFluidLinkUIFactory extends UIFactory { private static final int START_X = 10; private static final int START_Y = 25; private static final int SPACE_X = 18; private static final int SPACE_Y = 18; + private static final int PUBLIC_BUTTON_ID = 0; + private static final int PRIVATE_BUTTON_ID = 1; + private static final int IMPORT_BUTTON_ID = 2; + private static final int EXPORT_BUTTON_ID = 3; - private static final int SIZE_X = 176; - private static final int SIZE_Y = 107; - - private static final int BOX_SIZE_X = 34; - private static final int BOX_SIZE_Y = 34; - - private static final int TEXT_FIELD_SIZE_X = SPACE_X * 5 - 8; - private static final int TEXT_FIELD_SIZE_Y = 12; - private static final int TEXT_STRING_LENGTH = 9; - - private static final int FONT_COLOR = 0xFF555555; - private static final int BOX_BORDER_COLOR = 0xFF000000; - - private static final int COLOR_FIELD_ID = 0; - private static final int PUBLIC_BUTTON_ID = 1; - private static final int PRIVATE_BUTTON_ID = 2; - private static final int IMPORT_BUTTON_ID = 3; - private static final int EXPORT_BUTTON_ID = 4; - - private GT_GuiIconButton newButtonWithSpacing(int id, int x, int y, GT_GuiIcon icon) { - return new GT_GuiIconButton(th |
