There is a problem inherited from the previous patch: copy-constructor and assignment operator do not copy the values for the precision. Therefore undo/redo will not work properly. Please add copying to ToolTransformArgs::init() function.
I think the idea of the general requirements for config saving/reusing should look like that:
- The current precision values are stored in ToolTransformArgs. The args also track history of changes of this value (undo points are shared with the current undo point).
- The default precision values are saved in config (not implemented yet, postponed till later)
- Default values (until point2), just 8 and 16) should be loaded into the initial transform args object on tool activation (when the action is not "continued").
- Create cage
- Move some points without finishing it
- Change precision values
- Press Ctrl+Z, both steps 2) and 3) should be undone
- Move some points, change precision of the final composition, press Enter
// the image will become transformed
- Press on the canvas with the transform tool
- All the points and the precision value selected on step 5) should be recovered.