In momentary mode the button acts while it is pressed and stops as soon as it is released, regardless of where the pointer moved. In hold mode a ring fills while the button is held and empties if it is released early, so a short press does not start the action. In confirm mode the first press arms the button and the second press acts. An interlocked button stays readable, shows the reason and raises the blocked event when pressed. The button reports the operator action; the lamp shows the state reported by the plant.
The selector determines who controls the pump. In Hand the start, stop and jog buttons are active. In Auto they are interlocked because the sequence controls the pump, and in Off the pump cannot be started. Changing the selector position is a request that the simulated plant confirms after a moment. Hold Start for one second, and press Stop twice.
Keyboard: Tab to a button, then hold Space or Enter for the momentary and hold modes, or press twice for the confirm mode. The selector is a radio group where the arrow keys move between positions and Enter requests one.
The same button in each mode, with the events it raises. A momentary button raises press and release with the time held. A hold button raises activate once the ring has filled, or release with early set when it is let go before that. A confirm button raises arm on the first press, activate on the second, and disarm if the second press does not come within confirmTimeout.