mirror of
https://github.com/GTNewHorizons/JustEnoughCalculation.git
synced 2026-11-14 01:04:06 +00:00
feat: little improvements
This commit is contained in:
1 parent
08de334d98
commit
aba34b6acd
33 files changed
+134
-12
No files matched your search
@@ -1,15 +1,20 @@
|
||||
package me.towdium.jecalculation.client.gui;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import me.towdium.jecalculation.client.gui.drawables.WContainer;
|
||||
import me.towdium.jecalculation.core.labels.ILabel;
|
||||
import me.towdium.jecalculation.utils.wrappers.Single;
|
||||
|
||||
import javax.annotation.ParametersAreNonnullByDefault;
|
||||
import java.util.function.Consumer;
|
||||
|
||||
/**
|
||||
* Author: towdium
|
||||
* Date: 17-9-28.
|
||||
*/
|
||||
@ParametersAreNonnullByDefault
|
||||
@SideOnly(Side.CLIENT)
|
||||
public interface IWPicker extends IWidget {
|
||||
IWPicker setCallback(Consumer<ILabel> callback);
|
||||
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
package me.towdium.jecalculation.client.gui;
|
||||
|
||||
import cpw.mods.fml.client.config.GuiUtils;
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import me.towdium.jecalculation.JustEnoughCalculation;
|
||||
import me.towdium.jecalculation.core.labels.ILabel;
|
||||
import me.towdium.jecalculation.nei.NEIPlugin;
|
||||
@@ -37,6 +39,7 @@ import java.util.function.Function;
|
||||
* Date: 8/12/17.
|
||||
*/
|
||||
@ParametersAreNonnullByDefault
|
||||
@SideOnly(Side.CLIENT)
|
||||
public class JecGui extends GuiContainer {
|
||||
public static final int COLOR_GUI_GREY = 0xFFA1A1A1;
|
||||
public static final int COLOR_TEXT_RED = 0xFF0000;
|
||||
|
||||
@@ -1,12 +1,18 @@
|
||||
package me.towdium.jecalculation.client.gui;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import me.towdium.jecalculation.JustEnoughCalculation;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
|
||||
import javax.annotation.ParametersAreNonnullByDefault;
|
||||
|
||||
/**
|
||||
* Author: towdium
|
||||
* Date: 17-8-17.
|
||||
*/
|
||||
@ParametersAreNonnullByDefault
|
||||
@SideOnly(Side.CLIENT)
|
||||
public class Resource {
|
||||
public static final ResourceLocation location = new ResourceLocation(
|
||||
JustEnoughCalculation.Reference.MODID, "textures/gui/resources.png");
|
||||
@@ -20,16 +26,16 @@ public class Resource {
|
||||
public static final Resource BTN_SAVE_F = new Resource(42, 0, 14, 14);
|
||||
public static final Resource BTN_COPY_N = new Resource(56, 14, 14, 14);
|
||||
public static final Resource BTN_COPY_F = new Resource(56, 0, 14, 14);
|
||||
public static final Resource BTN_COPY_D = new Resource(242, 14, 14, 14);
|
||||
public static final Resource BTN_DEL_N = new Resource(70, 14, 14, 14);
|
||||
public static final Resource BTN_DEL_F = new Resource(70, 0, 14, 14);
|
||||
public static final Resource BTN_YES_N = new Resource(84, 14, 14, 14);
|
||||
public static final Resource BTN_YES_F = new Resource(84, 0, 14, 14);
|
||||
public static final Resource BTN_NO_N = new Resource(98, 14, 14, 14);
|
||||
public static final Resource BTN_NO_F = new Resource(98, 0, 14, 14);
|
||||
public static final Resource BTN_DISAMB_D = new Resource(242, 0, 14, 14);
|
||||
public static final Resource BTN_COPY_D = new Resource(242, 14, 14, 14);
|
||||
public static final Resource BTN_DISAMB_N = new Resource(112, 14, 14, 14);
|
||||
public static final Resource BTN_DISAMB_F = new Resource(112, 0, 14, 14);
|
||||
public static final Resource BTN_DISAMB_D = new Resource(242, 0, 14, 14);
|
||||
public static final Resource WGT_BUTTON_N = new Resource(40, 232, 20, 20);
|
||||
public static final Resource WGT_BUTTON_F = new Resource(60, 232, 20, 20);
|
||||
public static final Resource WGT_BUTTON_D = new Resource(80, 232, 20, 20);
|
||||
@@ -60,11 +66,14 @@ public class Resource {
|
||||
public static final Resource ICN_LABEL_F = new Resource(70, 28, 14, 14);
|
||||
public static final Resource ICN_HELP_N = new Resource(84, 42, 14, 14);
|
||||
public static final Resource ICN_HELP_F = new Resource(84, 28, 14, 14);
|
||||
public static final Resource ICN_STACK_N = new Resource(98, 42, 14, 14);
|
||||
public static final Resource ICN_STACK_F = new Resource(98, 28, 14, 14);
|
||||
public static final Resource ICN_TEXT_N = new Resource(112, 42, 14, 14);
|
||||
public static final Resource ICN_TEXT_F = new Resource(112, 28, 14, 14);
|
||||
public static final Resource LBL_ORE_DICT = new Resource(0, 56, 16, 16);
|
||||
public static final Resource LBL_FLUID = new Resource(16, 56, 16, 16);
|
||||
public static final Resource LBL_UNIV_B = new Resource(32, 56, 16, 16);
|
||||
public static final Resource LBL_UNIV_F = new Resource(48, 56, 16, 16);
|
||||
|
||||
protected int xPos, yPos, xSize, ySize;
|
||||
protected ResourceLocation rl;
|
||||
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
package me.towdium.jecalculation.client.gui.drawables;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import me.towdium.jecalculation.client.gui.JecGui;
|
||||
import me.towdium.jecalculation.client.gui.Resource;
|
||||
import me.towdium.jecalculation.utils.ClientUtils;
|
||||
@@ -13,6 +15,7 @@ import javax.annotation.ParametersAreNonnullByDefault;
|
||||
* Date: 17-8-17.
|
||||
*/
|
||||
@ParametersAreNonnullByDefault
|
||||
@SideOnly(Side.CLIENT)
|
||||
public abstract class WButton extends WTooltip {
|
||||
protected int xPos, yPos, xSize, ySize;
|
||||
protected Runnable lsnrLeft, lsnrRight;
|
||||
@@ -47,7 +50,7 @@ public abstract class WButton extends WTooltip {
|
||||
|
||||
@Override
|
||||
public boolean onClicked(JecGui gui, int xMouse, int yMouse, int button) {
|
||||
if (JecGui.mouseIn(xPos + 1, yPos + 1, xSize - 2, ySize - 2, xMouse, yMouse)) {
|
||||
if (!disabled && JecGui.mouseIn(xPos + 1, yPos + 1, xSize - 2, ySize - 2, xMouse, yMouse)) {
|
||||
if (button == 0 && lsnrLeft != null) {
|
||||
lsnrLeft.run();
|
||||
ClientUtils.playClickSound(1.0F);
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
package me.towdium.jecalculation.client.gui.drawables;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import me.towdium.jecalculation.client.gui.JecGui;
|
||||
import me.towdium.jecalculation.client.gui.Resource;
|
||||
|
||||
@@ -14,6 +16,7 @@ import java.util.List;
|
||||
* Date: 17-9-16.
|
||||
*/
|
||||
@ParametersAreNonnullByDefault
|
||||
@SideOnly(Side.CLIENT)
|
||||
public class WButtonIcon extends WButton {
|
||||
protected Resource rNormal, rFocused, rDisabled;
|
||||
|
||||
@@ -25,6 +28,10 @@ public class WButtonIcon extends WButton {
|
||||
this(xPos, yPos, xSize, ySize, normal, focused, null, name);
|
||||
}
|
||||
|
||||
public WButtonIcon(int xPos, int yPos, int xSize, int ySize, Resource normal, Resource focused, Resource disabled) {
|
||||
this(xPos, yPos, xSize, ySize, normal, focused, disabled, null);
|
||||
}
|
||||
|
||||
public WButtonIcon(int xPos, int yPos, int xSize, int ySize, Resource normal, Resource focused,
|
||||
@Nullable Resource disabled, @Nullable String name) {
|
||||
super(xPos, yPos, xSize, ySize, name);
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
package me.towdium.jecalculation.client.gui.drawables;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import me.towdium.jecalculation.client.gui.JecGui;
|
||||
import me.towdium.jecalculation.utils.Utilities;
|
||||
|
||||
@@ -10,6 +12,7 @@ import javax.annotation.ParametersAreNonnullByDefault;
|
||||
* Date: 17-9-16.
|
||||
*/
|
||||
@ParametersAreNonnullByDefault
|
||||
@SideOnly(Side.CLIENT)
|
||||
public class WButtonText extends WButton {
|
||||
public WButtonText(int xPos, int yPos, int xSize, int ySize, String name) {
|
||||
super(xPos, yPos, xSize, ySize, name);
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
package me.towdium.jecalculation.client.gui.drawables;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import me.towdium.jecalculation.client.gui.JecGui;
|
||||
import me.towdium.jecalculation.client.gui.IWidget;
|
||||
|
||||
@@ -12,6 +14,7 @@ import java.util.List;
|
||||
* Date: 17-9-14.
|
||||
*/
|
||||
@ParametersAreNonnullByDefault
|
||||
@SideOnly(Side.CLIENT)
|
||||
public class WContainer implements IWidget {
|
||||
protected List<IWidget> widgets = new ArrayList<>();
|
||||
protected JecGui gui;
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
package me.towdium.jecalculation.client.gui.drawables;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import me.towdium.jecalculation.client.gui.JecGui;
|
||||
import me.towdium.jecalculation.client.gui.Resource;
|
||||
|
||||
@@ -12,6 +14,7 @@ import javax.annotation.ParametersAreNonnullByDefault;
|
||||
* Date: 17-8-18.
|
||||
*/
|
||||
@ParametersAreNonnullByDefault
|
||||
@SideOnly(Side.CLIENT)
|
||||
public class WIcon extends WTooltip {
|
||||
public int xPos, yPos, xSize, ySize;
|
||||
public Resource normal, focused;
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
package me.towdium.jecalculation.client.gui.drawables;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import me.towdium.jecalculation.client.gui.IWidget;
|
||||
import me.towdium.jecalculation.client.gui.JecGui;
|
||||
import me.towdium.jecalculation.client.gui.Resource;
|
||||
@@ -16,6 +18,7 @@ import java.util.stream.IntStream;
|
||||
* Date: 17-8-17.
|
||||
*/
|
||||
@ParametersAreNonnullByDefault
|
||||
@SideOnly(Side.CLIENT)
|
||||
public class WLabel implements IWidget {
|
||||
static JecGui.Font font;
|
||||
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
package me.towdium.jecalculation.client.gui.drawables;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import me.towdium.jecalculation.client.gui.IWidget;
|
||||
import me.towdium.jecalculation.client.gui.JecGui;
|
||||
import me.towdium.jecalculation.core.labels.ILabel;
|
||||
@@ -16,6 +18,7 @@ import java.util.stream.IntStream;
|
||||
* Date: 17-8-17.
|
||||
*/
|
||||
@ParametersAreNonnullByDefault
|
||||
@SideOnly(Side.CLIENT)
|
||||
public class WLabelGroup extends WContainer {
|
||||
ArrayList<WLabel> labels = new ArrayList<>();
|
||||
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
package me.towdium.jecalculation.client.gui.drawables;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import me.towdium.jecalculation.client.gui.JecGui;
|
||||
import me.towdium.jecalculation.core.labels.ILabel;
|
||||
import me.towdium.jecalculation.utils.Utilities;
|
||||
@@ -14,6 +16,7 @@ import java.util.stream.Collectors;
|
||||
* Date: 17-9-17.
|
||||
*/
|
||||
@ParametersAreNonnullByDefault
|
||||
@SideOnly(Side.CLIENT)
|
||||
public class WLabelScroll extends WContainer {
|
||||
protected List<ILabel> labels = new ArrayList<>();
|
||||
protected List<ILabel> filtered = new ArrayList<>();
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
package me.towdium.jecalculation.client.gui.drawables;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import me.towdium.jecalculation.client.gui.IWidget;
|
||||
import me.towdium.jecalculation.client.gui.JecGui;
|
||||
import me.towdium.jecalculation.client.gui.Resource;
|
||||
@@ -11,6 +13,7 @@ import javax.annotation.ParametersAreNonnullByDefault;
|
||||
* Date: 17-8-18.
|
||||
*/
|
||||
@ParametersAreNonnullByDefault
|
||||
@SideOnly(Side.CLIENT)
|
||||
public class WLine implements IWidget {
|
||||
public int y;
|
||||
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
package me.towdium.jecalculation.client.gui.drawables;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import me.towdium.jecalculation.client.gui.IWidget;
|
||||
import me.towdium.jecalculation.client.gui.JecGui;
|
||||
import me.towdium.jecalculation.client.gui.Resource;
|
||||
@@ -13,6 +15,7 @@ import javax.annotation.ParametersAreNonnullByDefault;
|
||||
* Date: 17-9-16.
|
||||
*/
|
||||
@ParametersAreNonnullByDefault
|
||||
@SideOnly(Side.CLIENT)
|
||||
public class WPage implements IWidget {
|
||||
|
||||
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
package me.towdium.jecalculation.client.gui.drawables;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import me.towdium.jecalculation.client.gui.IWidget;
|
||||
import me.towdium.jecalculation.client.gui.JecGui;
|
||||
import me.towdium.jecalculation.client.gui.Resource;
|
||||
@@ -11,6 +13,7 @@ import javax.annotation.ParametersAreNonnullByDefault;
|
||||
* Date: 17-9-15.
|
||||
*/
|
||||
@ParametersAreNonnullByDefault
|
||||
@SideOnly(Side.CLIENT)
|
||||
public class WPanel implements IWidget {
|
||||
@Override
|
||||
public void onDraw(JecGui gui, int xMouse, int yMouse) {
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
package me.towdium.jecalculation.client.gui.drawables;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import me.towdium.jecalculation.client.gui.IWidget;
|
||||
import me.towdium.jecalculation.client.gui.JecGui;
|
||||
|
||||
@@ -10,6 +12,7 @@ import javax.annotation.ParametersAreNonnullByDefault;
|
||||
* Date: 17-8-22.
|
||||
*/
|
||||
@ParametersAreNonnullByDefault
|
||||
@SideOnly(Side.CLIENT)
|
||||
public class WRectangle implements IWidget {
|
||||
public int xPos, yPos, xSize, ySize, color;
|
||||
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
package me.towdium.jecalculation.client.gui.drawables;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import me.towdium.jecalculation.client.gui.IWidget;
|
||||
import me.towdium.jecalculation.client.gui.JecGui;
|
||||
import me.towdium.jecalculation.client.gui.Resource;
|
||||
@@ -13,6 +15,7 @@ import java.util.function.Consumer;
|
||||
* Date: 17-8-19.
|
||||
*/
|
||||
@ParametersAreNonnullByDefault
|
||||
@SideOnly(Side.CLIENT)
|
||||
public class WScroll implements IWidget {
|
||||
public int xPos, yPos, ySize, current;
|
||||
public Consumer<Float> lsnrScroll;
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
package me.towdium.jecalculation.client.gui.drawables;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import me.towdium.jecalculation.client.gui.JecGui;
|
||||
import me.towdium.jecalculation.core.labels.ILabel;
|
||||
|
||||
@@ -13,6 +15,7 @@ import java.util.function.Consumer;
|
||||
* Date: 17-9-28.
|
||||
*/
|
||||
@ParametersAreNonnullByDefault
|
||||
@SideOnly(Side.CLIENT)
|
||||
public class WSearch extends WContainer {
|
||||
WTextField tf;
|
||||
List<WLabelScroll> lss;
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
package me.towdium.jecalculation.client.gui.drawables;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import me.towdium.jecalculation.client.gui.IWidget;
|
||||
import me.towdium.jecalculation.client.gui.JecGui;
|
||||
import me.towdium.jecalculation.client.gui.Resource;
|
||||
@@ -17,6 +19,7 @@ import java.util.stream.Stream;
|
||||
* Date: 17-8-19.
|
||||
*/
|
||||
@ParametersAreNonnullByDefault
|
||||
@SideOnly(Side.CLIENT)
|
||||
public class WSwitcher implements IWidget {
|
||||
public static final int SIZE = 13;
|
||||
|
||||
@@ -38,14 +41,18 @@ public class WSwitcher implements IWidget {
|
||||
this.xSize = xSize;
|
||||
this.yPos = yPos;
|
||||
this.keys = keys;
|
||||
left = new WButtonIcon(xPos, yPos, SIZE, SIZE, Resource.WGT_ARR_L_N, Resource.WGT_ARR_L_F)
|
||||
.setListenerLeft(() -> move(true));
|
||||
right = new WButtonIcon(xPos + xSize - SIZE, yPos, SIZE, SIZE, Resource.WGT_ARR_R_N, Resource.WGT_ARR_R_F)
|
||||
.setListenerLeft(() -> move(false));
|
||||
left = new WButtonIcon(xPos, yPos, SIZE, SIZE, Resource.WGT_ARR_L_N, Resource.WGT_ARR_L_F,
|
||||
Resource.WGT_ARR_L_D).setListenerLeft(() -> move(true));
|
||||
right = new WButtonIcon(xPos + xSize - SIZE, yPos, SIZE, SIZE, Resource.WGT_ARR_R_N, Resource.WGT_ARR_R_F,
|
||||
Resource.WGT_ARR_R_D).setListenerLeft(() -> move(false));
|
||||
wRect = new WRectangle(xPos + SIZE, yPos, xSize - 2 * SIZE, SIZE, JecGui.COLOR_GUI_GREY);
|
||||
wText = new WText(xPos + SIZE, yPos, xSize - 2 * SIZE, SIZE, JecGui.Font.DEFAULT_SHADOW,
|
||||
() -> keys.get(index.index()));
|
||||
index = new Circulator(keys.size());
|
||||
if (keys.size() == 1) {
|
||||
left.setDisabled(true);
|
||||
right.setDisabled(true);
|
||||
}
|
||||
}
|
||||
|
||||
protected void move(boolean forward) {
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
package me.towdium.jecalculation.client.gui.drawables;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import me.towdium.jecalculation.client.gui.IWidget;
|
||||
import me.towdium.jecalculation.client.gui.JecGui;
|
||||
|
||||
@@ -11,6 +13,7 @@ import java.util.function.Supplier;
|
||||
* Date: 17-8-21.
|
||||
*/
|
||||
@ParametersAreNonnullByDefault
|
||||
@SideOnly(Side.CLIENT)
|
||||
public class WText implements IWidget {
|
||||
public static final int UNDEFINED = Integer.MAX_VALUE;
|
||||
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
package me.towdium.jecalculation.client.gui.drawables;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import me.towdium.jecalculation.client.gui.JecGui;
|
||||
import me.towdium.jecalculation.client.gui.IWidget;
|
||||
import net.minecraft.client.Minecraft;
|
||||
@@ -13,6 +15,7 @@ import java.util.function.Consumer;
|
||||
* Date: 17-8-18.
|
||||
*/
|
||||
@ParametersAreNonnullByDefault
|
||||
@SideOnly(Side.CLIENT)
|
||||
public class WTextField implements IWidget {
|
||||
protected int xPos, yPos, xSize;
|
||||
GuiTextField textField;
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
package me.towdium.jecalculation.client.gui.drawables;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import me.towdium.jecalculation.client.gui.IWidget;
|
||||
import me.towdium.jecalculation.client.gui.JecGui;
|
||||
import me.towdium.jecalculation.utils.Utilities;
|
||||
@@ -15,6 +17,7 @@ import java.util.List;
|
||||
* Date: 17-9-16.
|
||||
*/
|
||||
@ParametersAreNonnullByDefault
|
||||
@SideOnly(Side.CLIENT)
|
||||
public abstract class WTooltip implements IWidget {
|
||||
@Nullable
|
||||
public String name;
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
package me.towdium.jecalculation.client.gui.guis;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import me.towdium.jecalculation.client.gui.JecGui;
|
||||
import me.towdium.jecalculation.client.gui.Resource;
|
||||
import me.towdium.jecalculation.client.gui.drawables.*;
|
||||
@@ -13,6 +15,7 @@ import static me.towdium.jecalculation.client.gui.drawables.WLabel.enumMode.*;
|
||||
* Date: 8/14/17.
|
||||
*/
|
||||
@ParametersAreNonnullByDefault
|
||||
@SideOnly(Side.CLIENT)
|
||||
public class GuiCalculator extends WContainer {
|
||||
public GuiCalculator() {
|
||||
add(new WPanel());
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
package me.towdium.jecalculation.client.gui.guis;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import me.towdium.jecalculation.client.gui.IWPicker;
|
||||
import me.towdium.jecalculation.client.gui.Resource;
|
||||
import me.towdium.jecalculation.client.gui.drawables.*;
|
||||
@@ -7,6 +9,7 @@ import me.towdium.jecalculation.core.labels.ILabel;
|
||||
import me.towdium.jecalculation.core.labels.labels.LabelOreDict;
|
||||
import net.minecraft.item.ItemStack;
|
||||
|
||||
import javax.annotation.ParametersAreNonnullByDefault;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
@@ -16,6 +19,8 @@ import java.util.stream.IntStream;
|
||||
* Author: towdium
|
||||
* Date: 17-9-16.
|
||||
*/
|
||||
@ParametersAreNonnullByDefault
|
||||
@SideOnly(Side.CLIENT)
|
||||
public class GuiDisambiguation extends IWPicker.Simple {
|
||||
protected WLabelScroll lsUp;
|
||||
protected WLabelScroll lsDown;
|
||||
|
||||
@@ -4,6 +4,8 @@ import com.google.common.cache.CacheBuilder;
|
||||
import com.google.common.cache.CacheLoader;
|
||||
import com.google.common.cache.LoadingCache;
|
||||
import com.google.common.cache.Weigher;
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import me.towdium.jecalculation.client.gui.IWidget;
|
||||
import me.towdium.jecalculation.client.gui.drawables.WContainer;
|
||||
import me.towdium.jecalculation.client.gui.drawables.WPage;
|
||||
@@ -19,6 +21,7 @@ import java.util.function.Consumer;
|
||||
* Date: 17-9-14.
|
||||
*/
|
||||
@ParametersAreNonnullByDefault
|
||||
@SideOnly(Side.CLIENT)
|
||||
public class GuiLabel extends WContainer {
|
||||
WContainer container = new WContainer();
|
||||
Consumer<ILabel> callback;
|
||||
|
||||
@@ -24,7 +24,11 @@ public class GuiRecipe extends WContainer {
|
||||
WButton buttonCopy = new WButtonIcon(83, 33, 20, 20, Resource.BTN_COPY_N, Resource.BTN_COPY_F, Resource.BTN_COPY_D,
|
||||
"recipe.copy").setDisabled(true);
|
||||
WButton buttonDel = new WButtonIcon(64, 33, 20, 20, Resource.BTN_DEL_N, Resource.BTN_DEL_F, "recipe.clear");
|
||||
WButton buttonLabel = new WButtonIcon(45, 33, 20, 20, Resource.BTN_LABEL_N, Resource.BTN_LABEL_F, "recipe.label");
|
||||
WButton buttonLabel = new WButtonIcon(45, 33, 20, 20, Resource.BTN_LABEL_N, Resource.BTN_LABEL_F, "recipe.label")
|
||||
.setListenerLeft(() -> JecGui.displayGui(new GuiLabel((l) -> {
|
||||
JecGui.displayParent();
|
||||
JecGui.getCurrent().hand = l;
|
||||
})));
|
||||
WButton buttonDisamb = new WButtonIcon(102, 33, 20, 20, Resource.BTN_DISAMB_N,
|
||||
Resource.BTN_DISAMB_F, Resource.BTN_DISAMB_D, "recipe.disamb").setDisabled(true).setListenerLeft(() -> {
|
||||
if (disambiguation != null) JecGui.displayGui(new GuiDisambiguation(disambiguation).setCallback(l -> {
|
||||
@@ -43,7 +47,7 @@ public class GuiRecipe extends WContainer {
|
||||
|
||||
public GuiRecipe() {
|
||||
add(new WPanel());
|
||||
add(new WSwitcher(7, 7, 162, 2));
|
||||
add(new WSwitcher(7, 7, 162, 1));
|
||||
add(new WIcon(7, 63, 21, 20, Resource.ICN_OUTPUT_N, Resource.ICN_OUTPUT_F, "recipe.output"));
|
||||
add(new WIcon(7, 87, 21, 20, Resource.ICN_CATALYST_N, Resource.ICN_CATALYST_F, "recipe.catalyst"));
|
||||
add(new WIcon(7, 111, 21, 40, Resource.ICN_INPUT_N, Resource.ICN_INPUT_F, "recipe.input"));
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
package me.towdium.jecalculation.client.gui.guis.pickers;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import me.towdium.jecalculation.client.gui.IWPicker;
|
||||
import me.towdium.jecalculation.client.gui.Resource;
|
||||
import me.towdium.jecalculation.client.gui.drawables.*;
|
||||
@@ -9,6 +11,7 @@ import me.towdium.jecalculation.core.labels.labels.LabelOreDict;
|
||||
import net.minecraftforge.fluids.FluidRegistry;
|
||||
import net.minecraftforge.oredict.OreDictionary;
|
||||
|
||||
import javax.annotation.ParametersAreNonnullByDefault;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
@@ -17,6 +20,8 @@ import java.util.stream.Collectors;
|
||||
* Author: towdium
|
||||
* Date: 17-9-28.
|
||||
*/
|
||||
@ParametersAreNonnullByDefault
|
||||
@SideOnly(Side.CLIENT)
|
||||
public class PickerSimple extends IWPicker.Simple {
|
||||
/**
|
||||
* @param labels labels to be displayed for selection
|
||||
@@ -28,6 +33,7 @@ public class PickerSimple extends IWPicker.Simple {
|
||||
WTextField tf = new WTextField(25, 7, 90);
|
||||
add(new WSearch(l -> callback.value.accept(l), tf, ls));
|
||||
add(new WIcon(149, 7, 20, 20, Resource.ICN_HELP_N, Resource.ICN_HELP_F, l18nKey + ".help"));
|
||||
add(new WIcon(7, 7, 20, 20, Resource.ICN_TEXT_N, Resource.ICN_TEXT_F, l18nKey + ".text"));
|
||||
}
|
||||
|
||||
public static class FluidStack extends PickerSimple {
|
||||
|
||||
@@ -1,17 +1,22 @@
|
||||
package me.towdium.jecalculation.client.gui.guis.pickers;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import me.towdium.jecalculation.client.gui.IWPicker;
|
||||
import me.towdium.jecalculation.client.gui.JecGui;
|
||||
import me.towdium.jecalculation.client.gui.Resource;
|
||||
import me.towdium.jecalculation.client.gui.drawables.*;
|
||||
import me.towdium.jecalculation.core.labels.labels.LabelUniversal;
|
||||
|
||||
import javax.annotation.ParametersAreNonnullByDefault;
|
||||
import java.util.ArrayList;
|
||||
|
||||
/**
|
||||
* Author: towdium
|
||||
* Date: 17-9-29.
|
||||
*/
|
||||
@ParametersAreNonnullByDefault
|
||||
@SideOnly(Side.CLIENT)
|
||||
public class PickerUniversal extends IWPicker.Simple {
|
||||
public PickerUniversal() {
|
||||
WLabelScroll scroll = new WLabelScroll(7, 69, 8, 5, WLabel.enumMode.PICKER, true).setLabels(new ArrayList<>());
|
||||
@@ -21,6 +26,8 @@ public class PickerUniversal extends IWPicker.Simple {
|
||||
add(new WSearch(l -> callback.value.accept(l), search, scroll));
|
||||
add(new WIcon(149, 45, 20, 20, Resource.ICN_HELP_N, Resource.ICN_HELP_F, "picker_universal.help_search"));
|
||||
add(new WIcon(149, 7, 20, 20, Resource.ICN_HELP_N, Resource.ICN_HELP_F, "picker_universal.help_create"));
|
||||
add(new WIcon(7, 45, 20, 20, Resource.ICN_TEXT_N, Resource.ICN_TEXT_F, "picker_universal.text_search"));
|
||||
add(new WIcon(7, 7, 20, 20, Resource.ICN_TEXT_N, Resource.ICN_TEXT_F, "picker_universal.text_create"));
|
||||
add(new WLine(36));
|
||||
add(new WButtonIcon(95, 7, 20, 20, Resource.BTN_YES_N, Resource.BTN_YES_F).setListenerLeft(() -> {
|
||||
if (!create.getText().equals("")) callback.value.accept(new LabelUniversal(create.getText(), 1));
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
package me.towdium.jecalculation.core.labels;
|
||||
|
||||
import com.google.common.base.CaseFormat;
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import me.towdium.jecalculation.client.gui.IWPicker;
|
||||
import me.towdium.jecalculation.client.gui.JecGui;
|
||||
import me.towdium.jecalculation.client.gui.guis.pickers.PickerSimple;
|
||||
@@ -67,6 +69,7 @@ public interface ILabel {
|
||||
|
||||
NBTTagCompound toNBTTagCompound();
|
||||
|
||||
@SideOnly(Side.CLIENT)
|
||||
default void drawLabel(JecGui gui, int xPos, int yPos, boolean center) {
|
||||
GlStateManager.pushMatrix();
|
||||
GlStateManager.translate(center ? xPos - 8 : xPos, center ? yPos - 8 : yPos, 0);
|
||||
@@ -81,8 +84,7 @@ public interface ILabel {
|
||||
* implement on both side. So this class is created for merging
|
||||
* {@link ILabel label(s)}.
|
||||
* It uses singleton mode. First registerGuess merge functions, then use
|
||||
* {@link #test(ILabel, ILabel)} and {@link #merge(ILabel, ILabel, boolean)}
|
||||
* to operate the {@link ILabel}.
|
||||
* {@link #merge(ILabel, ILabel, boolean)} to operate the {@link ILabel}.
|
||||
* For registering, see {@link RegistryDeserializer}.
|
||||
*/
|
||||
class RegistryMerger {
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
package me.towdium.jecalculation.core.labels.labels;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import me.towdium.jecalculation.client.gui.JecGui;
|
||||
import me.towdium.jecalculation.client.gui.Resource;
|
||||
import me.towdium.jecalculation.core.labels.ILabel;
|
||||
@@ -87,6 +89,7 @@ public class LabelFluidStack implements ILabel {
|
||||
}
|
||||
|
||||
@Override
|
||||
@SideOnly(Side.CLIENT)
|
||||
public void drawLabel(JecGui gui) {
|
||||
gui.drawResource(Resource.LBL_FLUID, 0, 0);
|
||||
gui.drawFluid(fluid.getFluid(), 2, 2, 12, 12);
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
package me.towdium.jecalculation.core.labels.labels;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import me.towdium.jecalculation.client.gui.JecGui;
|
||||
import me.towdium.jecalculation.core.labels.ILabel;
|
||||
import me.towdium.jecalculation.utils.Utilities;
|
||||
@@ -67,6 +69,7 @@ public class LabelItemStack extends LabelSimpleAmount {
|
||||
}
|
||||
|
||||
@Override
|
||||
@SideOnly(Side.CLIENT)
|
||||
public void drawLabel(JecGui gui) {
|
||||
gui.drawItemStack(0, 0, itemStack, false);
|
||||
}
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
package me.towdium.jecalculation.core.labels.labels;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import me.towdium.jecalculation.JustEnoughCalculation;
|
||||
import me.towdium.jecalculation.client.gui.JecGui;
|
||||
import me.towdium.jecalculation.client.gui.Resource;
|
||||
@@ -70,6 +72,7 @@ public class LabelOreDict extends LabelSimpleAmount {
|
||||
}
|
||||
|
||||
@Override
|
||||
@SideOnly(Side.CLIENT)
|
||||
public void drawLabel(JecGui gui) {
|
||||
NonNullList<ItemStack> list = NonNullList.create();
|
||||
OreDictionary.getOres(name).forEach(is -> {
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
package me.towdium.jecalculation.core.labels.labels;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import me.towdium.jecalculation.client.gui.JecGui;
|
||||
import me.towdium.jecalculation.client.gui.Resource;
|
||||
import me.towdium.jecalculation.core.labels.ILabel;
|
||||
@@ -46,6 +48,7 @@ public class LabelUniversal extends LabelSimpleAmount {
|
||||
}
|
||||
|
||||
@Override
|
||||
@SideOnly(Side.CLIENT)
|
||||
public void drawLabel(JecGui gui) {
|
||||
gui.drawResource(Resource.LBL_UNIV_B, 0, 0);
|
||||
gui.drawResource(Resource.LBL_UNIV_F, 0, 0, (name.hashCode() * 0x131723) & 0xFFFFFF);
|
||||
|
||||
Reference in new issue
Block a user