Now there are two pairs of inset/outset commands: one creates the SPOffset object and the other simply offsets a path, leaving it as a path. Which pair is linked to the menu commands can currently be changed by commenting/uncommenting within sp_selected_path_offset() and sp_selected_path_inset() in splivarot.cpp.
I propose the following UI:
- "Inset path" and "Outset path" commands act depending on the type of the selected object(s). For SPOffset objects, they increment/decrement radius by options.insetdistance (to be added to the preferences, no more relying on stroke width please!). For all other objects, they do one-time offset leaving objects as paths (or converting them to paths if necessary) also by options.insetdistance. If there are several objects selected, each one is treated according to its type.
- The third command, "Dynamic inset/outset", creates an SPOffset with zero radius. It also flashes to the statusbar, "Use node editor to inset/outset the path interactively."
If there are no objections, Fred, could you please implement these three commands and I will put them into the menu and in shortcuts. See this page on how to create/access a preferences value:
http://www.inkscape.org/cgi-bin/wiki.pl?HandlingPreferences
More issues:
- The splotches bug is fixed, but now interactive offsetting has become much slower. With a text string, I need to wait at least a second after dragging the control before it regenerates the path. Is this inevitable, or can it be optimized somehow?
- The quality of offset in SPOffset object is very good, however the sp_selected_path_do_offset() function creates ugly artefacts (e.g. try it on a text string) even when applied _only once_. Why the difference?
- Please use statusbar API to report errors, instead of g_warning:
http://www.inkscape.org/cgi-bin/wiki.pl?StatusBar
Whenever a command cannot perform its action, it must provide a reason for it in the statusbar. Also please don't forget to enclose all text strings shown to the user into _("...") so they can be translated.
_________________________________________________________________ Protect your PC - get McAfee.com VirusScan Online http://clinic.mcafee.com/clinic/ibuy/campaign.asp?cid=3963