Quoting Jeff Carneal <[EMAIL PROTECTED]>: > > On Mar 28, 2007, at 6:05 AM, Derek Atkins wrote: > >> >> And a "File -> Import" would be an "easily identifiable atomic operation". >> You did "File -> Import -> xxx" and followed a series of steps and then >> clicked "Done" or "Finish" or "Import" and gnucash did some magic. > > Except that the "magic" is what must be undone, not what you clicked, > and it is decidedly less atomic.
Not from most user's perspective. Even I, who knows quite clearly what's going on under the covers, want an "import" level atomic undo, to undo the whole import at once. Other applications do this, too. For example, take the "undo" in emacs.... If you're typing along emacs does a pretty good job of quantizing your inputs for its undo list. But if you import a large document into your current buffer, that import is a single quantum, regardless of how many characters/lines it is. >> I don't know how much more atomic you can get from a user's perspective! > > The user's perspective is that a number of things happen on import. > Presumably, lots of transactions, new accounts created, new > commodities, etc. Which one would you like for them to single out > for the purposes of atomizing it in their minds? I agree that from a DEVELOPER'S perspective a number of things happen on import. From a user's perspective it was just an import operation. Go ask your mom what she thinks about it; I can tell you how MINE would answer. The "import operation" is the appropriate quantum for importing. The "transaction" is the appropriate quantum when editing a transaction. Maybe even Splits are appropriate when editing a multi-split transaction. The point I'm trying (and clearly failing) to make is that the quanta should be tied to the actual user operation, be it creating a new account, editing a Customer, modifying a transaction, clicking "get quotes", or running a QIF Import. The Undo quanta should change based on the operation. > My point isn't that it absolutely shouldn't be done, but rather that > I doubt most users have the expectation of being able to undo a full > import. I've been involved here for a long time; I think you're wrong, but I'm willing to be convinced otherwise. I think the undo quanta needs both size and locality to the user operations. Knowing what happens under the covers muddies the waters, so look at it from "what did the user do", not "what happened when user did it". Maybe that will frame it for you? Thanks, > Jeff -derek -- Derek Atkins, SB '93 MIT EE, SM '95 MIT Media Laboratory Member, MIT Student Information Processing Board (SIPB) URL: http://web.mit.edu/warlord/ PP-ASEL-IA N1NWH [EMAIL PROTECTED] PGP key available _______________________________________________ gnucash-devel mailing list gnucash-devel@gnucash.org https://lists.gnucash.org/mailman/listinfo/gnucash-devel