2013/7/5 Arshdeep Singh <moduli16@...1857...00...>
Hi Martin,

Thankyou for your reply. This was precisely I wanted to discuss the case with experienced developers.

The recolor tool is intended to enable more than one solid color editing for selected objects on canvas.
A few events that will occur :
1.) When objects are selected on the canvas, the wheel will be 'refreshed' and will show a number of white draggable nodes on the wheel according to the color of the objects on canvas they pertain to. ( adobe.kuler.com )
2.) When I select a node on the wheel, I should be able to actively edit its color. Switching to a new node, should shift the focus to that objects.

I studied the code, and the paint-selector class handles just one active selection. If we don't find a work around, we will have to change the inner workings of the coloring mechanism for our needs.

The 'coloring mechanism', e.g. the paint selector in the bottom left corner and the underlying code, is not designed to work with multiple objects, and should not be. As I understand, MODE_RECOLOR would be an awful hack and trying to push a square peg through a round hole. You need to work with the Inkscape::Selection object directly. You can access this object through SPDesktop. If you need some helper functions from the paint selector, refactor them so that they're not bound to the paint selector object.

To update the dialog when the color of objects in the selection changes, you can use XML observers. (Admittedly, the lack of any notification mechanism on the SP tree level is a major design shortcoming.)

Regards, Krzysztof