1. A method for automatically adjusting a layout of widgets in a canvas comprising: detecting a widget adjustment event for a widget that is part of a model that is presented on a canvas of a user interface, wherein the widget adjustment event affects a layout positioning of the widget on the canvas; adjusting on-canvas objects, which include other widgets, proximate to the widget, wherein adjustments of the on-canvas objects are performed relative to a layout position of the widget after the widget adjustment event has occurred; and adjusting additional on-canvas objects further from the widget than the adjusted on-canvas objects, wherein adjustments of the additional on-canvas objects are performed relative to layout positions of the adjusted on-canvas objects after the adjustments for their positioning relative to the widget have occurred, wherein the adjustments occur automatically responsive to detecting of the widget adjustment event.