1. Non-transitory computer-readable medium comprising computer-readable instructions that, when executed by a computer, adapt the computer to: provide a voice user interface controller (VUIcontroller) for automatically speech enabling a graphical user interface (GUI) at run time of the GUI; configure a user interface of the computer to receive first input from a GUI designer that identifies and includes the VUIcontroller in the GUI while designing the GUI so that the VUIcontroller will execute at run time of the GUI; configure the user interface of the computer to receive second input from the GUI designer that identifies and assigns, at design time of the GUI, at least one voice-enabling property to a first GUI control of the GUI; configure the user interface of the computer to receive third input from the GUI designer that identifies and disables, at design time of the GUI, voice control of a second GUI control of the GUI, wherein the VUIcontroller comprises instructions that are automatically executed at run time of the GUI to automatically: analyze the GUI from within a process that executes the GUI; generate a voice-enabled GUI based on the analysis; generate, from the analysis, a voice command set corresponding to voice-enabled controls of the GUI; and make the generated voice command set available to a speech-recognition engine.
6. The non-transitory computer-readable medium of claim 1 , wherein the computer-readable instructions for the VUIcontroller, when executed, further adapt the computer to automatically analyze the GUI by constructing a data structure representing the controls of the GUI.