I think now this could use `Enum('off', 'on', 'onfocus')` for better value checking.