simplify ControlView onParamChanged listener pattern