Hello, Thanks for the list of issues. I started but did not finish the code cleaning of the spray tool. I will come back to it ASAP (but I'm not an Inkscape code guru, thus may have some difficulties with undo). Anyone is welcome to work on this too. Just commit often to avoid dulicated work.
Thanks again for the comments. Steren
2010/1/7 Krzysztof Kosiński <tweenk.pl@...400...>
Hello
Here are some remarks about the spray tool that are not related to its UI.
Major issues:
- The tool is very slow in single path mode - it updates XML after
adding each object. XML should be updated only when the mouse is released, like in the node tool. 2. Single path mode uses sp_selected_path_union, which spams the undo stack with union operations and destroys selection. Ideally, 2Geom or livarot functions should be used directly, and if that's not possible, sp_selected_path_union_skip_undo. 3. Undo doesn't work correctly for single path mode - Ctrl+Z undoes only one sprayed copy.
Less important issues: 4. Clones are created by creating XML nodes directly. Shouldn't the SP layer be used instead? 5. Cryptic pref names like "doo", "doh". 6. sp_spray_recursive has lots of parameters. 7. spray-context.cpp:554 is a crucial formula that is unreadable and undocumented. 8. Indentation in sp_spray_context_root_handler is, mildly put, unorthodox. 9. get_dilate_radius, get_path_force, get_path_mean, etc. - I don't like this. 10. random_position - data passed by non-const reference to a function that doesn't modify it.
Regards, Krzysztof
This SF.Net email is sponsored by the Verizon Developer Community Take advantage of Verizon's best-in-class app development support A streamlined, 14 day to market process makes app distribution fast and easy Join now and get one step closer to millions of Verizon customers http://p.sf.net/sfu/verizon-dev2dev _______________________________________________ Inkscape-devel mailing list Inkscape-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/inkscape-devel