add button, scroll, and list widgets