@Override public boolean handleMouseClicked(int x, int y, int mouseButton) { x += parent.getGuiLeft(); y += parent.getGuiTop(); for (int i = 0; i < 5; i++) { if (scrollAmount + i >= dial.glyphList.size()) break; int entryOffset = i * entryHeight; boolean mouseOverEntry = y >= posY + offsetY + entryOffset && y <= posY + offsetY + entryOffset + 20, mouseOverMain = mouseOverEntry && x >= posX + offsetX && x < posX + offsetX + sizeMButton, mouseOverSmall = mouseOverEntry && x >= posX + offsetX + sizeMButton + buttonSpacing && x < posX + offsetX + sizeMButton + buttonSpacing + sizeSButton; if (mouseOverMain) { ((GuiDialingDevice) parent).onEntrySelected(scrollAmount + i); break; } else if (mouseOverSmall) { if (GuiScreen.isShiftKeyDown()) { ((GuiDialingDevice) parent).onEntryDeleted(scrollAmount + i); break; } ((GuiDialingDevice) parent).onEntryEdited(scrollAmount + i); break; } } return true; }
public ElementScrollDiallingDevice(GuiDialingDevice gui, TileDialingDevice d, int x, int y) { super(gui, x, y, gui.getSizeX() - 14, gui.getSizeY() - 57); dial = d; texture = gui.getTexture(); }