static Rect boundsInParent(final Component _c, final Class parentType) { if (_c == null) null; ret swing(func -> Rect { Rect r = toRect(_c.getBounds()); Component c = _c; while true { c = c.getParent(); if (c == null) null; if (isInstance(parentType, c)) ret r; r = translateRect(r, c.getX(), c.getY()); } }); }