protected ElementBase getElementAtPosition(int mX, int mY) { for (int i = elements.size(); i-- > 0; ) { ElementBase element = elements.get(i); if (element.intersectsWith(mX, mY)) { return element; } } return null; }
protected ElementBase getElementAtPosition(int mX, int mY) { for (int i = elements.size(); i-- > 0; ) { ElementBase element = elements.get(i); if (element.intersectsWith(mX, mY)) { return element; } } return null; }
@Override public void addTooltip(List<String> list) { for (int i = 0; i < this.elements.size(); i++) { ElementBase c = elements.get(i); if (!c.isVisible() || !c.isEnabled() || !c.intersectsWith(gui.getMouseX(), gui.getMouseY())) { continue; } c.addTooltip(list); } }
/** * @return Whether the tab should stay open or not. */ @Override public boolean onMousePressed(int mouseX, int mouseY, int mouseButton) throws IOException { mouseX -= this.posX(); mouseY -= this.posY; boolean shouldStayOpen = false; for (int i = 0; i < this.elements.size(); i++) { ElementBase c = elements.get(i); if (!c.isVisible() || !c.isEnabled() || !c.intersectsWith(mouseX, mouseY)) { continue; } shouldStayOpen = true; if (c.onMousePressed(mouseX, mouseY, mouseButton)) { return true; } } return shouldStayOpen; }
@Override public boolean onMouseWheel(int mouseX, int mouseY, int movement) { int wheelMovement = Mouse.getEventDWheel(); mouseX -= this.posX(); mouseY -= this.posY; if (wheelMovement != 0) { for (int i = elements.size(); i-- > 0; ) { ElementBase c = elements.get(i); if (!c.isVisible() || !c.isEnabled() || !c.intersectsWith(mouseX, mouseY)) { continue; } if (c.onMouseWheel(mouseX, mouseY, wheelMovement)) { return true; } } } return true; }
if (!c.isVisible() || !c.isEnabled() || !c.intersectsWith(mX, mY)) { continue;
@Override public void handleMouseInput() throws IOException { int x = Mouse.getEventX() * width / mc.displayWidth; int y = height - Mouse.getEventY() * height / mc.displayHeight - 1; mouseX = x - guiLeft; mouseY = y - guiTop; int wheelMovement = Mouse.getEventDWheel(); if (wheelMovement != 0) { for (int i = elements.size(); i-- > 0; ) { ElementBase c = elements.get(i); if (!c.isVisible() || !c.isEnabled() || !c.intersectsWith(mouseX, mouseY)) { continue; } if (c.onMouseWheel(mouseX, mouseY, wheelMovement)) { return; } } TabBase tab = getTabAtPosition(mouseX, mouseY); if (tab != null && tab.onMouseWheel(mouseX, mouseY, wheelMovement)) { return; } if (onMouseWheel(mouseX, mouseY, wheelMovement)) { return; } } super.handleMouseInput(); }