many changes to the widget classes