Thanks Ian MacArthur. Gonzalo Garramuño helped me get to a solution, similar to your suggestions.
I have a suggestion for FLTK maintainers like Ian MacArthur I guess. Why don't we have something like this implemented (like Constraint Layout in Android):
CoordinateManager().set(addrSubject)
.leftTo (DIRECTION d, void* addrBenefactor, bool stretch = false)
.rightTo (DIRECTION d, void* addrBenefactor, bool stretch = false)
.topTo (DIRECTION d, void* addrBenefactor, bool stretch = false)
.bottomTo (DIRECTION d, void* addrBenefactor, bool stretch = false)
.centerTo (void* addrBenefactor)
.centerTo (int x, int y, int x2 = 0, int y2 = 0)
.leftTo (int x, bool stretch = false)
.rightTo (int x, bool stretch = false)
.topTo (int y, bool stretch = false)
.bottomTo (int y, bool stretch = false)
.set(addrBenefactor)
.leftBy (int n, bool stretch = false)
.rightBy (int n, bool stretch = false)
.topBy (int n, bool stretch = false)
.bottomBy (int n, bool stretch = false)
.render();
Just x, y, w, h manipulations.