preferences.py 371 B

12345678910
  1. class UserPreference:
  2. """
  3. Represents a configurable user preference.
  4. """
  5. def __init__(self, label, choices, default=None, description='', coerce=lambda x: x):
  6. self.label = label
  7. self.choices = choices
  8. self.default = default if default is not None else choices[0]
  9. self.description = description
  10. self.coerce = coerce