On Mi, 2004-09-29 at 01:52 +0100, Alan Horkan wrote:
"the principle of least astonishment"
if a users deletes something it is not unreasonable to expect it to be gone. if you delete a recatangle with a gradient in it why would a normal users expect the gradient to still be contained in the current document? [1]
exactly!
have you seen anything like this (unused definitions left lying around) in another application, of any kind not just vector drawing applictions? (the closest thing i can think of is styles definitions in a word processing document but the differnce is that there is a clear interface to it that ordinary users can learn.)
Yeah, but that are explicit definitions, not ones used gradients
SVG files can have items that are "hidden" (i think it is a style property of groups, <g style="visibility:hidden">) and if users want to have items hanging around in the file but not shown then they should explicitly hide them.
This makes me wonder... when I circle through my objects on the canvas with tabs, I notice that I have many black objects, that just aren't there. I can delete them, but once I save and reopen the document, they are back there... I think I should file a bug, but I don't think it's hidden objects, though.
perhaps this would make sense to me if the defs list was shown in a way that users could easily access and clearly shown to the user as the library/palette that conveyed that these were an abstract set of resuble symbols, gradients, and patterns, associated with this document. (editing the source xml is a great workaround to any problem including this one but not a user friendly solution and is only useful if you are already aware of the defs).
still not what you expect. Even though I don't like spacial Nautilus, in this case I think it's about what you expect in the real world to happen. The worst part is, that right now you can't differentiate between gradients to keep and gradients to through away. If you had to manually select the ones you want to keep, you expect the others to be thrown away. It's also a pitty that i can't have swatches for colors and strokes (but yes, we know that :)
But why should you? its in the defs, its none visible, If you dont tell inkscape to delete it, then you should be able to expect inkscape not to. What your suggesting is that a user should know that he should keep
you and i both understand how the SVG file format works we both understand there is a <defs> block where things are stored and that can be used multiple times within a document.
It's not about how SVG works. I know how it works, but I still expect fills and stroke to be bound to an object, unless I want them not to be. And even though they are not visible: they bloat the file and make the gradient list unusable.
normal users wont understand how the file format is implemented. unless there is some kind of interface is added to represent these scraps that are associated with a document it wont make sense to artist and ordinary users.
Do you get what I mean? Am I making some sense yet?
not really.
sorry I have been unable to explain this better, I hope I'm getting closer to being clearer. (i have had at least one response from some one who understands what I'm trying to say)
a swatch of a pattern or whatever using the def he created to stop the program automatically wiping away his hard work when he saves. The only way most users will learn that is from the bad experience of having something they wanted keeping deleted. Plus, keeping swatches off the page is a sloppy solution.
I think i can sort of see your point of view but just not within the current limitations of Inkscape. like i said there needs to be a clear representation for users where these <defs> actually are.
being able to manually add <defs> to be stored some where (some sort of palette/swatch would be necessary too but not very convenient.
[1] Inkscape should remember the gradients created but it would be great there was an option for inkscape to automatically collect gradients/patterns/etc from documents you have opened, similar to the way Mozilla can be set to automatically collect email address from messages you recieve (and respond to).
Inkscape should remember the gradients used and the gradients saved as swatches... not all the ones created. There should not be an "collect gradients from open documents" function but an "Import Gradients" (from documents or seperate swatch files or from gimp gradients) function for the swatches palette. Usually the user wants one specific gradient, color, or stroke style (further down the road we can also go for text styles) and not a whole bunch of them that he doesn't need, but confuses him in the gradient list (esp. as long as we have these meaningless names and no ui (xml editor is not ui) to change them).
preference implies a choice about default mode of operation to me, this is a one off action you perform on the current file, hence it living in the file menu.
if Inkscape had a 'Format' menu, that would seem like a better place to put it. would it make more sense to have "Clean up defs" under 'Object' (objects are what defs apply to) rather than File?
"Clean up defs" has to be a temporary solution! Let's not discuss on where to put it, it's not important, really.
Get my point? Essentially what I'm asking for is something like InDesign does, I think. Just a little better :)
Take care!
David