public void handleMouseClicked(EventArgs e) { { for (int i = 0; i < widgets.size(); i++) { Widget w = widgets.get(i); w.handleMouseClicked(e); } if (checkCollision(e.getPosition().getX(), e.getPosition().getY())) { for (MouseEventHandler hl : listeners) { // call callback hl.OnClick(this, e); } } } }