slider.py 1.2 KB

123456789101112131415161718192021222324252627282930
  1. from typing import Optional
  2. from ..events import Handler, ValueChangeEventArguments
  3. from .mixins.disableable_element import DisableableElement
  4. from .mixins.value_element import ValueElement
  5. class Slider(ValueElement, DisableableElement):
  6. def __init__(self, *,
  7. min: float, # pylint: disable=redefined-builtin
  8. max: float, # pylint: disable=redefined-builtin
  9. step: float = 1.0,
  10. value: Optional[float] = None,
  11. on_change: Optional[Handler[ValueChangeEventArguments]] = None,
  12. ) -> None:
  13. """Slider
  14. This element is based on Quasar's `QSlider <https://quasar.dev/vue-components/slider>`_ component.
  15. :param min: lower bound of the slider
  16. :param max: upper bound of the slider
  17. :param step: step size
  18. :param value: initial value to set position of the slider
  19. :param on_change: callback which is invoked when the user releases the slider
  20. """
  21. super().__init__(tag='q-slider', value=value, on_value_change=on_change, throttle=0.05)
  22. self._props['min'] = min
  23. self._props['max'] = max
  24. self._props['step'] = step