The current implementation goes like this * default to a 0-1 range * you can set `is_bidirectional` to get a -1/1 range * if the slider is bidirectional the overshoot goes both ways, otherwise only on the positive side The issue is that it is not possible to have a 0-1 range but overshoot both ways. This is useful for example on the "Blend to Default" operator, where 0 means current position and 1 default. But overshoot also makes sense for this operator since the other way just scales away from default. So this patch: * removes `is_bidirectional` * adds `float range[2]` to `tSlider` and a setter for it * rewrite some logic to handle arbitrary ranges * split the `allow_overshoot` flag into one flag for either side Pull Request: blender/blender#107406