Data should be protected instead of private.
Added a Relocate method to the widgets.