On 05/18/2014 05:49 PM, Tobias Doerffel wrote: >> 2. Make the step size only affect the knobs, and possibly the automation >> grid, but allow the actual values of the model to also go between steps. >> Maybe make this behaviour configurable per-model, add a flag or >> something that determines how step size is used. A boolean member could >> be named "strictStepSize" or something, and it determines whether the >> step size applies only on the knob or will it be "strictly" applied to >> the values of the model. > That sounds reasonable especially in conjunction with the > yet-to-be-implemented fitter class. ATM I can't think of situations > where continuous values on the model/algorithm side could harm or > break existing functionality (maybe some specific floating point > issues?) - correct me if I'm wrong.
Well... there are potentially some LADSPA plugins that may assume values to be in certain step sizes, and the in-between values may cause undefined behaviour. I think it's pretty unlikely, but the possibility is there. The effect front panel's decay knob also moves in steps of 100, and it's untested how the between values would work. Probably they wouldn't cause issues, and that knob isn't really meant as automatable anyway. Intmodels, comboboxes and such shouldn't be a problem, as their values should get casted to ints anyway, so an in-between value wouldn't matter. Anyway, just to be on the safe side, we could have this flag there, make it false by default, and if any problems appear, we can then set the flag to true to easily correct them. > The fitter class then even could be implemented on the view-side > instead (AutomatableModelViewFitterBase, > AutomatableModelViewStepFitter etc.) -> widgets don't retrieve values > via model()->value() but fitter()->value() (the same for setting > values of course which is important for things like the > power-of-2-spinboxes). The fitter class would be responsible for > providing the best user experience while internally the models always > would be completely accurate. That's an interesting idea. I'm just thinking, if we do run into something where the model internal value would have to be fit into steps, can the fitter still be applied to the model even if it exists in the modelview? The power-of-2-spinbox is actually a good example of a thing where the value would have to be applied to the underlying model value too - otherwise, automating it could make the value go through non-power-of-2 values... ------------------------------------------------------------------------------ "Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE Instantly run your Selenium tests across 300+ browser/OS combos. Get unparalleled scalability from the best Selenium testing platform available Simple to use. Nothing to install. Get started now for free." http://p.sf.net/sfu/SauceLabs _______________________________________________ LMMS-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/lmms-devel
