This stuff is done automatically by Opus when it can work it out for certain commands, but that's about it.
You you disable or reverse the "pushed-in button" effect that some commands get but there's no way to make a button that is visually disabled unless certain conditions are met (unless it's a command that Opus knows how to do that for automatically).