layering a custom selection model on a custom example account model.
The code is a lot simpler and has additional sorting capability. Do
some rework on the druid layout.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12238 57a11ea4-9604-0410-9ed3-97b8803252fd
* src/gnome-utils/gnc-tree-view-account.c:
* src/gnome/gnc-plugin-page-budget.c:
need to #include gkeyfile.h if we don't have glib26.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12236 57a11ea4-9604-0410-9ed3-97b8803252fd
* Regularization of 'trans' as variable name.
* Whitespace and linewraps
* lots of control-flow simplification
* factor one chunk out into get_any_account()
* Comment some things that are bogus or need improvement
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12231 57a11ea4-9604-0410-9ed3-97b8803252fd
Doesn't seem to work quite yet. It does save the settings in the user's
gconf directory, but the tree view doesn't remember things like sort order,
which the account-tree page's account treeview does remember. There must be
something else needed...
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12224 57a11ea4-9604-0410-9ed3-97b8803252fd
Most of the work is delegated to GncTreeViewAccount, just as for
GncPluginPageAccountTree. One difference is that the Budget page has to
also remember which Budget it was showing. For that, we encode the GUID to
a string in the keyfile.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12221 57a11ea4-9604-0410-9ed3-97b8803252fd
The reason GncPluginPageBudget keeps wanting to use functions in
GncPluginPageAccountTree is that they both use GncTreeViewAccount.
So, we're moving those functions (the account view filter functions
and the account view save/restore functions) into
gnc-tree-view-account. Along the way, we're also narrowing the
argument types from GtkTreeView to GncTreeViewAccount to avoid
unnecessary down-casting.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12219 57a11ea4-9604-0410-9ed3-97b8803252fd
export the account-tree's account filter function
populate the account-tree's account filter struct with the right tree-view.
And finally... reuse all this generalized functionality in
the budget plugin page. Nice!
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12214 57a11ea4-9604-0410-9ed3-97b8803252fd
Fixup comments forgotten in step 3.
Factor out and export most of the account filter dialog creation.
Eventually this function should live somewhere else.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12213 57a11ea4-9604-0410-9ed3-97b8803252fd
Narrow all the account filter dialog callbacks to use only the
AccountFilterDialog struct. Now they're multi-purpose.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12212 57a11ea4-9604-0410-9ed3-97b8803252fd
Narrow the account filter function to use only the AccountFilterDialog.
Now it's multi-purpose.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12211 57a11ea4-9604-0410-9ed3-97b8803252fd
new option to filter out accounts with zero total balances. Remember
the current filter state across invocations of GnuCash.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12205 57a11ea4-9604-0410-9ed3-97b8803252fd
they will always appear in the same place in the menus. Hide them so
they don't actually appear until a page provides them.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12204 57a11ea4-9604-0410-9ed3-97b8803252fd
* add some arrays of realistic string values for various
Account and Transaction fields
* use the arrays to generate slightly more human-readable
random books
* pull some hardcoded constants out into static knobs
* wrap Transaction creation in begin/commit
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12202 57a11ea4-9604-0410-9ed3-97b8803252fd
Including necessary related changes to functions passed accounts
from the account functions.
Interestingly, the only g-wrap function that complained about the
new const function arguments was xaccAccountOrder(), the only one
using const Account ** types. It seems very uncommon to express
const-ness in g-wrap for any types other than gw:mchar. Actually
I couldn't find any other examples, anywhere, so I had to guess
at the syntax, but it works.
Oh, and one or two minor tweaks like my last commit snuck in, too.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12201 57a11ea4-9604-0410-9ed3-97b8803252fd
* standardize on 'acc' as variable name for Account.
* removed 'acc->inst.dirty = TRUE' when preceeded by mark_account.
* slightly more consistent whitespace.
* short-circuit no-op in many cases where we thought we were changing state but we really weren't. Don't dirty Accounts in these cases.
* fix a couple cases where we dirtied the account without dirtying the parent
* fix one BUG where we just blew away the account's Lots for no reason.
* comment possible bug where we don't dirty a split.
* comment two possible buglets where we generate double CM events.
* comment on possible bugs related to conditional sorting of the Split list.
* heavy conversion from lower-level to higher-level KVP api.
* plug mem leak of entire GList of splits.
* document minor change to corner-case behavior of xaccAccountHasAncestor().
* several control flow simplifications.
* fixed one case where we were changing the Account without dirtying it. (Can't find this one now. Maybe I imagined it.)
Please note where I've marked 'BUG'. I think there are still (at
least) 2 medium and 2 minor bugs remaining in this file. I'll have
another look some other day.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12199 57a11ea4-9604-0410-9ed3-97b8803252fd
buttons where they were missing. Pack option widgets into GtkEventBox
so that tooltips are really shown. Fix various string i18n bugs.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12193 57a11ea4-9604-0410-9ed3-97b8803252fd