Don't trigger so many change events

Currently if the control does not have a value set yet, but does have a minimum and maximum, change events are fired with every mouse hover.

These do not need to be fired so frequently and are only needed if there is a specific empty value and the current value differs from it.
Fire change events only when actual value is changed and separated update logic from display logic