use of mcjty.lib.gui.events.BlockRenderEvent in project RFToolsControl by McJty.
the class ItemEditor method build.
@Override
public void build(Minecraft mc, Gui gui, Panel panel, ParameterEditorCallback callback) {
Panel constantPanel = new Panel(mc, gui).setLayout(new HorizontalLayout());
Label<?> label = new Label(mc, gui).setText("Drop item:");
constantPanel.addChild(label);
blockRender = new BlockRender(mc, gui).setDesiredWidth(18 + 100).setDesiredHeight(18).setFilledRectThickness(1).setFilledBackground(0xff555555).setShowLabel(true);
constantPanel.addChild(blockRender);
blockRender.addSelectionEvent(new BlockRenderEvent() {
@Override
public void select(Widget widget) {
ItemStack holding = Minecraft.getMinecraft().player.inventory.getItemStack();
if (holding.isEmpty()) {
blockRender.setRenderItem(null);
} else {
ItemStack copy = holding.copy();
copy.setCount(1);
blockRender.setRenderItem(copy);
}
callback.valueChanged(readValue());
}
@Override
public void doubleClick(Widget widget) {
}
});
createEditorPanel(mc, gui, panel, callback, constantPanel, ParameterType.PAR_ITEM);
}
use of mcjty.lib.gui.events.BlockRenderEvent in project XNet by McJty.
the class AbstractEditorPanel method ghostSlot.
@Override
public IEditorGui ghostSlot(String tag, ItemStack stack) {
int w = 16;
fitWidth(w);
BlockRender blockRender = new BlockRender(mc, gui).setRenderItem(stack).setDesiredWidth(18).setDesiredHeight(18).setFilledRectThickness(-1).setFilledBackground(0xff888888);
blockRender.addSelectionEvent(new BlockRenderEvent() {
@Override
public void select(Widget widget) {
ItemStack holding = Minecraft.getMinecraft().player.inventory.getItemStack();
if (holding.isEmpty()) {
update(tag, holding);
blockRender.setRenderItem(null);
} else {
ItemStack copy = holding.copy();
copy.setCount(1);
blockRender.setRenderItem(copy);
update(tag, copy);
}
}
@Override
public void doubleClick(Widget widget) {
}
});
blockRender.setLayoutHint(new PositionalLayout.PositionalHint(x, y - 1, 17, 17));
data.put(tag, stack);
panel.addChild(blockRender);
components.put(tag, blockRender);
x += w;
return this;
}
Aggregations