I have couple of questions and comments regarding saving user
options and session management.  This is motivated by a
patch I had sent to Dave that saves the state of the account
tree in the main window so that when gnucash is restarted, the
accounts are expanded in the same way as they were on the
previous exit.

If I'm not mistaken, currently there are no options being saved
from one session to the next, but that a lot of the framework
for saving is already in place;  for the gnome version, it seems
like option-util.[ch] is the primary entry point to the guile
code that does the work.  Correct?

However, there are two possible issues here as far as what and how to
save.  First, there are the "user preferences," things that the user
actually modifies directly, such as what columns to show in the
account tree, colors/fonts/spacing/date ranges in the register, and
all that.  Second, there is the "session management" stuff, which may
be gnome/motif dependent, such as which accounts in the account tree
are currently expanded, which register windows are currently open, and
so forth.  There may also be a kind of "transient user preferences"
for things that get changed fairly often, but still need to be saved
across different sessions; date ranges in the register might be such a
thing.

To get the discussion started, I'll propose the following: use the
guile options code to keep track of "user preferences", but use the
gnome-config API to track "session management" stuff.  The advantage
to this would be that the different GUIs use different mechanisms for
GUI things, and we can leverage the session management properties of
Gnome in particular this way, but still use the more powerful and
customizable guile code for the more complicated user options.  The
disadvantage is that this way we would have at least two separate
configuration files, and there may be options that could go either
into "user preferences" or "session management" (can't think of
anything just yet, though).

So, to sum things up, my questions are:  What saving mechanism
seems best?  What kinds of things should we save?

Off topic, it's been _great_ to see all of the very informative
discussion here lately.

Best Regards,
Heath Martin


--
Gnucash Developer's List 
To unsubscribe send empty email to: [EMAIL PROTECTED]

Reply via email to