implement a custom slider.