They should track selection, I added the listener code to toolbar, they update when you select a shape with different properties (try creating a bunch of different stars, the spins should update as you select different ones. should also track handle changes.) i also put the event handlers to do esc and stuff in.
Ah, yes, sorry, I didn't notice your patch did not apply completely - for some reason it had bad line counts in two places and my patcher ignored the rest of it. Now I applied it in full - works really well, thanks!
Notes:
1 You copied rect's tooltips to some of the new spinbuttons, write appropriate new ones instead.
2
toolbox.cpp: In function `void sp_star_toolbox_selection_changed(SPSelection*, GtkObject*)': toolbox.cpp:582: warning: `SPRepr*repr' might be used uninitialized in this function toolbox.cpp: In function `void sp_rect_toolbox_selection_changed(SPSelection*, GtkObject*)': toolbox.cpp:844: warning: `SPRepr*repr' might be used uninitialized in this function toolbox.cpp: In function `void sp_spiral_toolbox_selection_changed(SPSelection*, GtkObject*)': toolbox.cpp:1042: warning: `SPRepr*repr' might be used uninitialized in this function
Do not assume that variables are automatically NULL, assign NULL explicitly when you declare them.
3 In the star, I can drag any of the handles closer or farther from center than the other. However the Sharpness spinbutton has its own idea of which handle must be "inner" and which "outer", so it shows the incorrect value of 1.0 when I drag the inner one away. It should be smarter and check the ratio of the handles first, before it calculates the sharpness.
4 Please try to remove the arbitrary limits like 32 star rays or 20 max revolution in spiral.
5 I think the defaults (0) are only useful for rect, as they allow to quickly get a not-rounded rect. In other tools, the defaults are pretty arbitrary and therefore useless. So I propose to remove those "defaults" buttons from spiral and star.
6 In addition to cx/cy spinbuttons, you may add start/end angle spinbuttons and an chord/segment toggle for the ellipse. Eventually it might be worthwhile to add more handles to some shapes too, for example a lower-right-corner handle for a rect so that the selected rect could be easily resized by the rect tool (in addition to adjusting its rounding radii).
7 When I click "not rounded" on rect, it resets radii to 0, but when I then draw a rect, it sometimes gets some small radius values (0.01 or 0.02). Looks like a rounding error somewhere.
I will look into the "invalid cast from `GtkCheckButton' to `GtkSpinButton'" problem tomorrow.
_________________________________________________________________ Free yourself from those irritating pop-up ads with MSn Premium. Get 2months FREE* http://join.msn.com/?pgmarket=en-ca&page=byoa/prem&xAPID=1994&DI...