Populate widgets recursively