I'm still rather hating the way I'm currently implementing attributes for storing live effects parameters.
<path path-effect="sample" path-effect-param1="0.0" path-effect-param2="0.0" path-effect-param3="0.0" path-effect-param4="0.0" />
My problems with this are:
1) Anytime a new effect is implemented that uses n+1 parameters, another parameter attribute needs to be added in a few code places.
2) It is not possible to layer multiple effects.
3) It is not possible to order the effects that cannot be layered.
4) The meaning of the parameters is unknown in the SVG file.
The structure used by SVG's style attribute deals with 1 and 4. The structure used by SVG's transform attribute deals with 2 and 3. We could combine them into something like:
<path path-effect="sample1(param1:0.0;param2:loopy;) sample2(paramA:45;)" />
I of course don't know how to begin doing something like this in C++. I'd like to hear what you think would be more appropriate and how it would be implemented.
Aaron Spike