Search in sources :

Example 11 with Gui

use of net.minecraft.client.gui.Gui in project BuildCraft by BuildCraft.

the class GuiUtil method drawTexturedModalRect.

public static void drawTexturedModalRect(double posX, double posY, double textureX, double textureY, double width, double height) {
    int x = MathHelper.floor(posX);
    int y = MathHelper.floor(posY);
    int u = MathHelper.floor(textureX);
    int v = MathHelper.floor(textureY);
    int w = MathHelper.floor(width);
    int h = MathHelper.floor(height);
    Gui gui = Minecraft.getMinecraft().currentScreen;
    gui.drawTexturedModalRect(x, y, u, v, w, h);
}
Also used : Gui(net.minecraft.client.gui.Gui)

Example 12 with Gui

use of net.minecraft.client.gui.Gui in project RFTools by McJty.

the class MachineInformationClientScreenModule method createGui.

@Override
public void createGui(IModuleGuiBuilder guiBuilder) {
    // @todo Hacky, solve this better
    ScreenModuleGuiBuilder screenModuleGuiBuilder = (ScreenModuleGuiBuilder) guiBuilder;
    Minecraft mc = Minecraft.getMinecraft();
    Gui gui = screenModuleGuiBuilder.getGui();
    NBTTagCompound currentData = screenModuleGuiBuilder.getCurrentData();
    IModuleGuiChanged moduleGuiChanged = screenModuleGuiBuilder.getModuleGuiChanged();
    Panel panel = new Panel(mc, gui).setLayout(new VerticalLayout());
    TextField textField = new TextField(mc, gui).setDesiredHeight(16).setTooltips("Text to use as label").addTextEvent((parent, newText) -> {
        currentData.setString("text", newText);
        moduleGuiChanged.updateData();
    });
    panel.addChild(textField);
    addColorPanel(mc, gui, currentData, moduleGuiChanged, panel);
    addOptionPanel(mc, gui, currentData, moduleGuiChanged, panel);
    addMonitorPanel(mc, gui, currentData, panel);
    if (currentData != null) {
        textField.setText(currentData.getString("text"));
    }
    screenModuleGuiBuilder.overridePanel(panel);
}
Also used : ScreenModuleGuiBuilder(mcjty.rftools.blocks.screens.modulesclient.helper.ScreenModuleGuiBuilder) IModuleGuiChanged(mcjty.rftools.blocks.screens.IModuleGuiChanged) NBTTagCompound(net.minecraft.nbt.NBTTagCompound) VerticalLayout(mcjty.lib.gui.layout.VerticalLayout) Gui(net.minecraft.client.gui.Gui) Minecraft(net.minecraft.client.Minecraft)

Example 13 with Gui

use of net.minecraft.client.gui.Gui in project RFToolsControl by McJty.

the class GuiTools method askSomething.

public static void askSomething(Minecraft mc, Gui gui, WindowManager windowManager, int x, int y, String title, String initialValue, Consumer<String> callback) {
    Panel ask = new Panel(mc, gui).setLayout(new VerticalLayout()).setFilledBackground(0xff666666, 0xffaaaaaa).setFilledRectThickness(1);
    ask.setBounds(new Rectangle(x, y, 100, 60));
    Window askWindow = windowManager.createModalWindow(ask);
    ask.addChild(new Label(mc, gui).setText(title));
    TextField input = new mcjty.lib.gui.widgets.TextField(mc, gui).addTextEnterEvent(((parent, newText) -> {
        windowManager.closeWindow(askWindow);
        callback.accept(newText);
    }));
    input.setText(initialValue);
    ask.addChild(input);
    Panel buttons = new Panel(mc, gui).setLayout(new HorizontalLayout()).setDesiredWidth(100).setDesiredHeight(18);
    buttons.addChild(new Button(mc, gui).setText("Ok").addButtonEvent((parent -> {
        windowManager.closeWindow(askWindow);
        callback.accept(input.getText());
    })));
    buttons.addChild(new Button(mc, gui).setText("Cancel").addButtonEvent((parent -> {
        windowManager.closeWindow(askWindow);
    })));
    ask.addChild(buttons);
}
Also used : Window(mcjty.lib.gui.Window) Window(mcjty.lib.gui.Window) java.awt(java.awt) Consumer(java.util.function.Consumer) HorizontalLayout(mcjty.lib.gui.layout.HorizontalLayout) TextField(mcjty.lib.gui.widgets.TextField) Gui(net.minecraft.client.gui.Gui) Panel(mcjty.lib.gui.widgets.Panel) Minecraft(net.minecraft.client.Minecraft) Button(mcjty.lib.gui.widgets.Button) VerticalLayout(mcjty.lib.gui.layout.VerticalLayout) Label(mcjty.lib.gui.widgets.Label) WindowManager(mcjty.lib.gui.WindowManager) Panel(mcjty.lib.gui.widgets.Panel) TextField(mcjty.lib.gui.widgets.TextField) Button(mcjty.lib.gui.widgets.Button) Label(mcjty.lib.gui.widgets.Label) VerticalLayout(mcjty.lib.gui.layout.VerticalLayout) TextField(mcjty.lib.gui.widgets.TextField) HorizontalLayout(mcjty.lib.gui.layout.HorizontalLayout)

Example 14 with Gui

use of net.minecraft.client.gui.Gui in project RFToolsControl by McJty.

the class LongEditor method build.

@Override
public void build(Minecraft mc, Gui gui, Panel panel, ParameterEditorCallback callback) {
    Panel constantPanel = new Panel(mc, gui).setLayout(new HorizontalLayout());
    field = new TextField(mc, gui).addTextEvent((parent, newText) -> callback.valueChanged(readValue())).addTextEnterEvent((parent, newText) -> closeWindow());
    constantPanel.addChild(field);
    hexMode = new ToggleButton(mc, gui).addButtonEvent(widget -> updateHex()).setCheckMarker(true).setText("Hex");
    constantPanel.addChild(hexMode);
    createEditorPanel(mc, gui, panel, callback, constantPanel, ParameterType.PAR_LONG);
}
Also used : Window(mcjty.lib.gui.Window) ParameterType(mcjty.rftoolscontrol.api.parameters.ParameterType) HorizontalLayout(mcjty.lib.gui.layout.HorizontalLayout) TextField(mcjty.lib.gui.widgets.TextField) Gui(net.minecraft.client.gui.Gui) Panel(mcjty.lib.gui.widgets.Panel) ParameterValue(mcjty.rftoolscontrol.api.parameters.ParameterValue) Minecraft(net.minecraft.client.Minecraft) ToggleButton(mcjty.lib.gui.widgets.ToggleButton) Panel(mcjty.lib.gui.widgets.Panel) ToggleButton(mcjty.lib.gui.widgets.ToggleButton) TextField(mcjty.lib.gui.widgets.TextField) HorizontalLayout(mcjty.lib.gui.layout.HorizontalLayout)

Example 15 with Gui

use of net.minecraft.client.gui.Gui in project RFToolsControl by McJty.

the class SideEditor method build.

@Override
public void build(Minecraft mc, Gui gui, Panel panel, ParameterEditorCallback callback) {
    Panel constantPanel = new Panel(mc, gui).setLayout(new VerticalLayout());
    nameLabel = new TextField(mc, gui).addTextEvent((o, text) -> callback.valueChanged(readValue())).addTextEnterEvent((parent, newText) -> closeWindow()).setDesiredWidth(50).setDesiredHeight(14);
    constantPanel.addChild(createLabeledPanel(mc, gui, "Node name:", nameLabel, "Optional name of a node in the network"));
    label = new ChoiceLabel(mc, gui).addChoices("*", "Down", "Up", "North", "South", "West", "East").addChoiceEvent((parent, newChoice) -> callback.valueChanged(readValue())).setDesiredWidth(60);
    constantPanel.addChild(createLabeledPanel(mc, gui, "Side:", label, "Side relative to processor or node", "for the desired block"));
    createEditorPanel(mc, gui, panel, callback, constantPanel, ParameterType.PAR_SIDE);
}
Also used : Window(mcjty.lib.gui.Window) ParameterType(mcjty.rftoolscontrol.api.parameters.ParameterType) TextField(mcjty.lib.gui.widgets.TextField) Gui(net.minecraft.client.gui.Gui) Panel(mcjty.lib.gui.widgets.Panel) ParameterValue(mcjty.rftoolscontrol.api.parameters.ParameterValue) Minecraft(net.minecraft.client.Minecraft) BlockSide(mcjty.rftoolscontrol.api.parameters.BlockSide) EnumFacing(net.minecraft.util.EnumFacing) ChoiceLabel(mcjty.lib.gui.widgets.ChoiceLabel) VerticalLayout(mcjty.lib.gui.layout.VerticalLayout) StringUtils(org.apache.commons.lang3.StringUtils) Panel(mcjty.lib.gui.widgets.Panel) ChoiceLabel(mcjty.lib.gui.widgets.ChoiceLabel) VerticalLayout(mcjty.lib.gui.layout.VerticalLayout) TextField(mcjty.lib.gui.widgets.TextField)

Aggregations

Gui (net.minecraft.client.gui.Gui)18 Minecraft (net.minecraft.client.Minecraft)12 Window (mcjty.lib.gui.Window)11 Panel (mcjty.lib.gui.widgets.Panel)9 TextField (mcjty.lib.gui.widgets.TextField)9 ParameterType (mcjty.rftoolscontrol.api.parameters.ParameterType)9 ParameterValue (mcjty.rftoolscontrol.api.parameters.ParameterValue)9 HorizontalLayout (mcjty.lib.gui.layout.HorizontalLayout)7 VerticalLayout (mcjty.lib.gui.layout.VerticalLayout)5 ChoiceLabel (mcjty.lib.gui.widgets.ChoiceLabel)3 HorizontalAlignment (mcjty.lib.gui.layout.HorizontalAlignment)2 PositionalLayout (mcjty.lib.gui.layout.PositionalLayout)2 mcjty.lib.gui.widgets (mcjty.lib.gui.widgets)2 ToggleButton (mcjty.lib.gui.widgets.ToggleButton)2 GuiTextField (net.minecraft.client.gui.GuiTextField)2 ItemStack (net.minecraft.item.ItemStack)2 EnumFacing (net.minecraft.util.EnumFacing)2 ResourceLocation (net.minecraft.util.ResourceLocation)2 java.awt (java.awt)1 Rectangle (java.awt.Rectangle)1