On 27/05/2020 11.09, Giuseppe D'Angelo via Development wrote:
Sure, augmenting the docs would help. But <devil's advocate> the whole point of the API is for its usage to be straightforward. If you do

QTransform t;
t.translate();
t.rotate();
t.scale();
auto result = t.map(foo);

the "obvious" meaning should be that foo is getting first translated, then rotated, then scaled; not the other way around.

While that may be true, changing it now is going to break *every* user that uses these methods to generate compound transformations... and it'll be a silent break. I would be *very* surprised if that doesn't generate more bug reports.

I think the *absolute best* we could do would be to add an optional parameter specifying in what order to apply the change, defaulted to the old value, with a macro to instead default it to the new value. Maybe we can then, eventually, make defaulting to the old behavior deprecated (either opt-in to the new, or explicitly specify), and eventually remove it and make the new behavior default. But we're probably talking 2-3 release cycles.

Is it really worth it?

--
Matthew
_______________________________________________
Development mailing list
Development@qt-project.org
https://lists.qt-project.org/listinfo/development

Reply via email to