Implement these methods for all the major ports, add them to the widgets sample and documentation. Closes #17189.