If in user interface there is an element with a symbol or a text, which for example says “On“, does that mean the machine currently is in the state indicated, i.e. is it on already, now?
Or will it be in that state only after you operate that element, i.e. will it be on only when you tap that element? Is it off now?
How can you find out without operating it? Worse case, what if trying out has undesirable effects?
Maybe this is worse now with flat buttons and menus making it difficult to tell apart information output from labeling of operable elements.
I am not aware there is a universal standard for this. If there is, it isn’t recognizable or known to me.
Maybe there should be a standard: Don’t make stuff like that.
One solution is better and consistent use of language:
Write “Start” and “Stop” instead of “On” and “Off”. As verbs, “start” and “stop” indicate tapping that element will start or stop
Or, write “Running” and “Stopped” instead of “On” and “Off”. Progressive participle “running” and past participle “stopped” indicate current state.
If there is enough room one could:
- If “off” then display “Start” and “Stopped”, of which only “Start” is operable while “Stopped” is merely informative, and
- if “on” then display “Running” and “Stop”, of which “Running” is merely informative while only “Stop” is operable.
Then, use of color is another choice to be made: Color the operable element, the informative element, both, or neither? And, is red the color of the “on” state, or is red the color of the stopped “off” state, or is red the color for a “Stop” button?
Only some software UI is clear. Many others are not.
Instead of complaining, yours truly is off to making good stuff.