In a Scene’s Actions you can use: Data Setter, Delay, Method Action, and Script. I think it would be great if a Scene could also use Property Setter for any UI elements. That way the UI could be reset to a known state before setting up the actual scene (ie switching from listening to music to watching a movie). This would avoid having to know exactly what elements are visible/set to make sure the UI looks the way it should.
You could call a scene that is used to reset the UI and then call another scene to set the UI appropriately for whatever you have selected.
Variables would still be necessary to know what “state” the UI was in at any time for setting up the correct devices, but being able to “reset” the UI you could then use the variables to “set” the UI for the selected devices.