Commit Graph
100 Commits
Author SHA1 Message Date
Chris Shoemaker cdf1e2e316 Convert the AccountType selection functions to work with GtkTreeSelections
from views using the filtered GncTreeModelAccountTypes.
   Privatize the unfiltered GncTreeModelAccountTypes - now, every accessible
     account-types TreeModel is a new GtkTreeModelFilter, and their 
     ref-counting is always the same.
   Add some tweaks to gnc-tree-model-account-types.[ch] from 
     Andreas Köhler <andi5.py@gmx.net>, plus the conversion of the Account 
     Dialog's account-types field to use the filtered GncTreeModelAccountTypes
     instead of a GtkListStore, but simplified to use the AccountType 
     selection functions.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13271 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-02-15 22:06:37 +00:00
Chris Shoemaker 9808b664a5 Remove --enable-opt-style-install configure option.
That's one less thing to test.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13267 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-02-15 14:58:34 +00:00
Chris Shoemaker 387b8eca2f Changed balance calculations in three reports from using local
copies of buggy accountlist-get-comm-balance-at-date to using a new
   gnc:accountlist-get-comm-balance-interval provided by
   report-utilities.scm.  For the affected calculations, the balances no 
   longer exclude transactions on the first day of the reporting period.  
   This fixes http://bugzilla.gnome.org/show_bug.cgi?id=331005.

   Changed calculations:
     Income Statement: Total Expenses, Total Revenues
     Balance Sheet: Retained Earnings (*)
     Equity Statement: Retained Earnings (*), Net Income

   (*) The Retained Earning calculations use a start-date of "forever-ago"
   so they are not affected, but still converted to the new function.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13266 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-02-15 01:52:15 +00:00
Chris Shoemaker 850dd5b341 Copy 'svn log -v' output from past 20 days to ChangeLog.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13247 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-02-12 23:13:06 +00:00
Chris Shoemaker bcdf245a9b Don't continue to parse the expression if we've already reached the end.
Fixes http://bugzilla.gnome.org/show_bug.cgi?id=166840.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13243 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-02-12 20:31:11 +00:00
Chris Shoemaker 465a454667 Use the price nearest to midday to get the value in the default currency.
Patch by Mike Alexander <mta.umich.edu>, closes bug #330361


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13229 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-02-12 05:21:09 +00:00
Chris Shoemaker 358f677a4b Take #2: Fixups for two botched gnc-plugin-page-report.c commits tonight.
1) Correctly handle gc protection for non-boolean 'edited_reports' field.
   2) Pass list argument instead of immediate to gfec_apply.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13228 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-02-12 04:13:29 +00:00
Chris Shoemaker 0dccf4e0cb Gracefully handle errors in report options.
This prevents the whole program from crashing when unrecognized report
   options are used.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13227 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-02-12 02:40:35 +00:00
Chris Shoemaker c1e65f6925 gc_protect SCM reports while they are in the GHashTable.
Also, use gfec to be a bit more defensive about potential errors while 
   running a report.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13223 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-02-11 21:07:32 +00:00
Chris Shoemaker 9482462ac3 Tweak the preferences labels for accounting periods.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13200 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-02-11 05:23:12 +00:00
Chris Shoemaker 71625058fa Change the reports from using a hard-coded fiscal year to using the global
accounting period set in the preferences.  Both the start date and the end
   date are used, so the user is free to choose any arbitrary period.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13199 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-02-11 05:14:21 +00:00
Chris Shoemaker 6ab484e319 Move the accounting period preference functions from window-main-summarybar
to gnc-accounting-period.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13198 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-02-11 05:00:02 +00:00
Chris Shoemaker 5f56bec772 Remove forgotten unused variable.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13167 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-02-09 05:23:51 +00:00
Chris Shoemaker 1b418bfeec Add two columns to the Accounts page: "Total (Period)" & "Balance (Period)"
These are the recursive and non-recursive, respectively, period balances,
   where the accounting period is specified in the preferences.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13165 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-02-09 04:53:43 +00:00
Chris Shoemaker c7413168ae Fix an off-by-one (day) error in the dates used by the summarybar.
Factor out and publicize functions to get the start and end of the
   accounting period in the preferences.
   Mark one comment as probably obsolete.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13158 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-02-09 04:17:27 +00:00
Chris Shoemaker 3407c31beb Factor out an "approved" method for getting the GtkCellRenderer from a
GtkTreeViewColumn that's been added to a GncTreeView with one of the 
   convenience functions.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13156 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-02-09 01:47:26 +00:00
Chris Shoemaker 9f0643fa6e Move window-main-summarybar.[ch] from gnome/ to gnome-utils/.
It doesn't depend on anything in gnome/.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13155 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-02-09 01:24:47 +00:00
Chris Shoemaker 5e5084037b Change name of SplitRegister variable name to 'reg' for consistency.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13154 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-02-08 15:05:28 +00:00
Chris Shoemaker 91c112f432 A little error checking for report titles.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13153 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-02-08 15:00:24 +00:00
Chris Shoemaker 943532c8cd Don't allow the event handler list to shrink while we're traversing it.
This change isn't ideal in the sense that the handler list is now a 
   monotonically increasing resource, but it's better than crashing when the
   handler in node N+1 happens to be deleted while servicing the handler in
   node N.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13152 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-02-08 06:04:51 +00:00
Chris Shoemaker c2196a9b50 Convert GncTreeModel from a GtkObject to a GObject.
Replace gtk_object_sink calls on the models with g_object_unref calls.
   Correctly increase the refcount of "remembered" models when we return them.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13150 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-02-08 05:55:04 +00:00
Chris Shoemaker 3cb9687799 Convert GncTreeModelPrice and GncTreeModelCommodity to use GObject dispose
path instead of GtkObject destroy path.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13149 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-02-08 02:23:59 +00:00
Chris Shoemaker 22d0463a3d Convert GncTreeModelAccount to use the GObject dispose path instead of
the GtkObject destroy path.  Also, remove the gconf callback during dispose.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13148 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-02-08 01:55:07 +00:00
Chris Shoemaker 89c9f6821e Recompute argc after argv may have changed.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13140 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-02-07 19:52:29 +00:00
Chris Shoemaker 3908088b52 Fix two places where we were letting the split values become incoherent
with account balances.
   Comment two possible bugs related to capgains and dirtying (or not) Splits.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13134 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-02-06 20:41:40 +00:00
Chris Shoemaker 720dd91074 Fix breakage from missed case in Split QofEntity->QofInstance conversion.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13133 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-02-06 18:31:49 +00:00
Chris Shoemaker 359013e2a5 Keep QOF aware of the dirty-state of Transactions.
Also, dirty transactions upon changing due date and read-only status, 
   which didn't used to happen.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13132 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-02-06 17:57:45 +00:00
Chris Shoemaker c1ef3fd6db Convert Split from QofEntity to QofInstance.
Let QofInstance manage the book pointer and kvp frame instead of Split 
   managing its own.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13131 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-02-06 17:12:39 +00:00
Chris Shoemaker fccb17ff12 Replace check_open() in setter API with internal qof_{begin,commit}_edit().
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13130 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-02-06 16:18:52 +00:00
Chris Shoemaker 69dc61aac4 Remove check_open() calls from Transaction setters.
These calls were probably a copied idiom from the Split setters in this
   same file, but Split and Transaction use completely different mechanisms
   for managing dirty state.  Transactions inherit from QofInstance and so
   use the .dirty field.  Splits inherit from QofEntity, so their
   check_open(split->parent) calls are their way of letting someone know
   they've changed.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13128 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-02-06 04:50:02 +00:00
Chris Shoemaker 9291a1a514 Hook-up the new budget value estimation dialog.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13096 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-02-04 16:34:57 +00:00
Chris Shoemaker 186c3c0f50 New dialog for estimating budget values from past transactions.
Minor string and glade tweaks.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13095 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-02-04 16:32:30 +00:00
Chris Shoemaker 17927cdfe8 gnc_date_edit_set_gdate(): A GDate setter for GNCDateEdit is useful, too.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13094 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-02-04 16:29:00 +00:00
Chris Shoemaker 0219a9d23e Add getter gnc_date_edit_get_gdate() for getting the value of a GNCDateEdit
widget as a GDate.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13093 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-02-04 15:17:51 +00:00
Chris Shoemaker edb52e4d32 Factor out some code from gnc-budget into Recurrence so that the budget
estimation code can use stand-alone recurrences to estimate budget values.
  Also, tweak the initial budget so that it begins at the beginning of the 
  current month.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13092 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-02-04 15:12:09 +00:00
Chris Shoemaker bbb8d1be33 Teach PrintAmountInternal() to correctly handle a reciprocal denominator.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13091 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-02-04 15:06:19 +00:00
Chris Shoemaker 85a99a1987 Add some test-cases for gnc_numerics using the reciprocal denominator.
Even though we don't explicitly ask for this representation, certain
   calculations (e.g. those involving GNC_HOW_DENOM_SIGFIGS in the loan    
   druid and soon in budgets) will return numbers using this representation.

   Unfortunately, these numbers aren't handled correctly by most of the
   gnc_numeric functions, like the ones for comparison, equality testing,
   arithmetic and conversion.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13090 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-02-04 05:37:50 +00:00
Chris Shoemaker 5631500dda Use the string cache for budget name and description.
Dirty the book when the budget changes.
   Remove some obsolete budget code.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13089 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-02-03 21:29:06 +00:00
Chris Shoemaker 9b20cbd6d2 Allow make-gnucash-potfiles to run from directories other than srcdir.
Better documentation of exactly what m-g-potfiles excludes, and a general
   clean-up of the script.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13079 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-02-02 18:47:34 +00:00
Chris Shoemaker c95bd2c9cc Check for any accidentally-distributed files not marked for translation.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13072 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-02-02 00:07:58 +00:00
Chris Shoemaker 48a51e7492 Add POTFILES.skip to EXTRA_DIST.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13070 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-02-01 22:38:41 +00:00
Chris Shoemaker c4dd32e179 Don't translate obsolete files.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13067 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-02-01 20:33:36 +00:00
Chris Shoemaker d814359990 When generating POTFILES.in, don't include files we don't want to translate.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13066 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-02-01 20:32:11 +00:00
Chris Shoemaker 53b5dc8ef7 Fail 'make distcheck' if POTFILES.in contains undistributed files.
The failure will also helpfully explain which files are the problem.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13065 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-02-01 20:30:14 +00:00
Chris Shoemaker abbc6b6197 Don't add markup to tax report titles.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13056 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-31 03:41:01 +00:00
Chris Shoemaker c947a7778e New function: gnc_tree_view_add_combo_column().
This function is only compiled when HAVE_GTK26 because it uses 
   GtkCellRendererCombo.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13047 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-30 03:53:09 +00:00
Chris Shoemaker 7620b1918d Add some convenience functions for getting values from various combinations
of Accounts, Transactions, and Splits.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13045 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-30 02:59:43 +00:00
Chris Shoemaker 295c475ea4 Convert account types filter dialog to use checkboxes for selection.
Patch by Eskil Bylund <eskil.bylund@gmail.com>


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13040 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-30 00:59:25 +00:00
Chris Shoemaker 117e62a917 Automatically close registers whose accounts are deleted.
We use the component manager to watch for the destruction of the account.
   Previously, having an account's register open while deleting it would
   just crash.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@13010 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-28 20:30:23 +00:00
Chris Shoemaker f46c5dadb9 Re-enable logging for GnuCash modules that haven't explicitly set their
own levels.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12999 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-28 17:17:49 +00:00
Chris Shoemaker af574ecfa6 Remove obsolete code to handle account-types filtering for budgets.
Really remove treeviewcolumns when we're done with them.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12997 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-28 06:05:54 +00:00
Chris Shoemaker 3e3280f97e Better default account selection when opening the budget report.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12995 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-28 04:14:56 +00:00
Chris Shoemaker ac727fce70 Remove traces of old gnucash-run-script from gnucash.m4.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12994 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-28 02:23:38 +00:00
Chris Shoemaker ef7c5f5b1e Move generation of report serial ids from guile to C.
Try to gracefully handle more errors during report loading.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12993 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-27 23:03:23 +00:00
Chris Shoemaker 6f5ef9f974 Check for invalid options tables when loading reports.
Also, plug memory leak in my last commit.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12989 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-27 06:15:31 +00:00
Chris Shoemaker 2bc6934c31 Avoid showing any invalid reports.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12988 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-27 05:27:08 +00:00
Chris Shoemaker 579ee13ac5 Avoid saving invalid pages.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12985 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-27 04:38:47 +00:00
Chris Shoemaker 64432b5521 Move the global report hash-table from guile to C.
Move the book-open/close hooks from guile to C.

   There are several places where we do report-management from C already.
   Those places no longer use libguile to access the hash-table of reports -
   they can just call C functions.

   For now, there's still some report-management happening in guile so guile
   can access the global state through g-wrapped functions.  Eventually, 
   all report-management should be in C and guile can just provide single
   reports one-at-a-time.
   


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12984 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-27 02:12:41 +00:00
Chris Shoemaker 897ee738cd Register book open/close callbacks during gui init.
Split handling of persistent application state into book-level data 
   and window-level data.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12982 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-26 17:38:26 +00:00
Chris Shoemaker 4a8a8d65c6 Remove the obsolete gnucash-run-script and its test.
Also, the (gnucash main) module no longer depends on (gnucash price-quotes).


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12980 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-26 04:02:47 +00:00
Chris Shoemaker f84d6e2d81 Move dialog-totd from gnome to gnome-utils.
Do low-level application initialization even before booting guile.
   This means the splash and totd come up almost instantly. 


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12979 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-26 03:07:03 +00:00
Chris Shoemaker e9135b6e67 Install price quote sources without calling main.scm.
This makes the startup sequence a little clearer.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12978 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-25 04:54:12 +00:00
Chris Shoemaker 486a9e7831 Re-enable report menu setup.
The report menu setup is pretty fragile - it has to be done in a pretty
   specific order, so I pulled it out of (gnc:main) and call it independently.
   Also, move more bits of gnc:main into the modules where the bits are used.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12977 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-25 04:32:56 +00:00
Chris Shoemaker f3bbfd9f12 Export debugging state from C to guile.
Remove obsolete guile command line options.
   Remove guile setting of add-extension hooks that were apparently
   obsoleted by C code a while ago.
   Remove guile's access to application lifecycle function hooks.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12976 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-25 02:06:08 +00:00
Chris Shoemaker ebd305b9ff Consolidate application lifecycle functions into src/gnome-utils,
leaving only the highest level of gui initialization in /gnome/top-level.c
   Process --loglevel command-line option from C.
   Move the running of the startup hook from guile to C.
   Distrubute bits of scheme from main.scm to the modules they're used in.
   Remove more obsoleted scheme.



git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12975 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-25 01:36:28 +00:00
Chris Shoemaker 96cbfeab11 Process --debug command-line option from C instead of guile.
This re-enables the debugging "extensions" menu.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12974 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-25 01:21:28 +00:00
Chris Shoemaker 2ec3482f47 ChangeLog entries copied from 'svn log -v'
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12967 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-23 21:25:13 +00:00
Chris Shoemaker a38ae3abf7 Avoid GUI initialization durring --add-price-quotes, fixes #327670
BTW, it turns out that we don't need to call gtk_init().  It's called 
  during the LIBGNOMEUI_MODULE initializtion from gnome_program_init().


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12964 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-23 19:29:57 +00:00
Chris Shoemaker a521262717 Major step in extraction of application startup from guile.
Details:
    Remove the last bits of libguile from top-level.[ch].
    Change the gui initialization funtions so they can be called from C.
    Drop some gwrappers for gui initialization functions.
    Process the --nofile and filename command-line options from C.
    Drastic simpilification of main.scm.
    Initialize the gui and enter the gtk event-loop from C.

  Even though there's some more clean-up to do, this patch does mark
  a certain milestone:  A developer seeking to understand and/or modify 
  GnuCash's startup process can now essentially ignore the guile portion.
  Most parts of our startup now look pretty typical for a gnome-2 app.
  The parts that remain firmly in guile are initialization of the report
  menus and the installation of price-quote sources.

  Caveat: We have multiple mechanisms for handling the filename
  argument string -- some in guile and some in C.  The C-side mechanisms
  (in engine/gnc-filepath-utils.c) seem a little nicer than the guile
  ones (in main.scm).  They have slightly different behavior (e.g. which
  paths they'll search for data files.)  They both handle URIs and
  making absolute paths out of relative ones.  This patch switches from
  using the guile functions to the C function.  I've tested that the common
  cases are handled the same way, but it wouldn't surprise me if some 
  corner-cases are not.



git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12956 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-23 17:38:13 +00:00
Chris Shoemaker ed3432108c Remove "batch-mode" processing from main.scm. It's no longer needed.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12948 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-23 03:56:10 +00:00
Chris Shoemaker 47707f1e26 Remove --devel option, which aparently doesn't do anything.
Also remove now unused guile portion of --add-price-quote option.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12947 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-23 03:43:55 +00:00
Chris Shoemaker 4796f631b2 Process the --add-price-quotes command-line option from C.
This is done by booting guile with a custom inner_main.
  Much of the work is still handled by price-quotes.scm, which
  is now a true stand-alone guile module without the circular dependency
  on the (gnucash main) module.

  One caveat:  Since the initialization of guile-side debugging variables 
  is in main.scm, and since main.scm is no longer executed when running
  --add-price-quotes, the guile code that runs during --add-price-quote
  isn't affected by the --debug option.  A work-around is to use the 
  GNC_DEBUG environment variable: 
    $ GNC_DEBUG=yes gnucash --add-price-quote myfile

  In the longer term, we'll either move the debugging aids to a common place
  where it can be used by both main.scm and price-quotes.scm, or we'll get
  the debugging state from the C-side via gwrap.
 


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12946 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-23 03:26:01 +00:00
Chris Shoemaker 109f82f964 Introduced gwrapped gnc_gnome_locate_data_file().=
This was supposed to go with r12942.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12945 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-23 03:12:27 +00:00
Chris Shoemaker ed3b1e3ab9 Process gnome command-line arguments after our own,
so we can provide our own AUTOHELP.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12944 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-23 00:47:45 +00:00
Chris Shoemaker 89252d8677 Remove processing of share-path from guile.
This is now handled by Gnome's gnome_program_locate_file() function.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12943 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-23 00:46:22 +00:00
Chris Shoemaker dc3bcabbb8 Initialize Gnome libraries before booting guile.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12942 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-22 23:12:15 +00:00
Chris Shoemaker 108aeb4707 Guile-side clean-up for --namespace option.
Also one bit of uncommitted code from gwrap change.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12912 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-21 03:59:22 +00:00
Chris Shoemaker 555652140f Process the --namespace command-line option from C, not guile.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12911 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-21 03:50:25 +00:00
Chris Shoemaker e50a31f89c Fix linking for src/gnome-utils/test/
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12910 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-20 14:52:57 +00:00
Chris Shoemaker 954dacfd50 Move the loading of user and system config files from guile to C.
Remove the "load config" command line options, since they weren't doing 
  anything different than the default. 


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12909 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-20 05:19:15 +00:00
Chris Shoemaker 60bd0b97a4 Remove "reverse_balance" fucntions from top-level.h.
Add another #include for gnucash-bin.c


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12902 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-19 18:43:59 +00:00
Chris Shoemaker 01940cadb9 Filter out deprecated account types from the account types treemodel.
Patch by Eskil Bylund <eskil.bylund@gmail.com>


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12900 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-19 18:02:18 +00:00
Chris Shoemaker 540cca4e7a Add hooks just once in app_utils module init.
Also don't try to load imaginary module.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12899 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-19 17:58:02 +00:00
Chris Shoemaker 4580431997 add missing #include
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12886 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-19 14:16:58 +00:00
Chris Shoemaker 58a67a439f Exit gnucash from C, not guile.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12882 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-19 05:54:16 +00:00
Chris Shoemaker 96276b269d move some app-util function hooks from guile to C
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12881 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-19 05:18:27 +00:00
Chris Shoemaker 5de7b22021 Move "unstable development version" message from guile to C.
Remove crufty guile command-line options.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12879 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-19 04:29:07 +00:00
Chris Shoemaker 18a90eaf39 dlopen() modules from C, instead of from guile
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12874 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-19 02:34:23 +00:00
Chris Shoemaker 40a341c49d The Parenthesis! My favorite punctuation.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12873 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-19 02:00:25 +00:00
Chris Shoemaker 0484ba995b Minor scheme cleanup.
Move one function from path.scm to command-line.scm.
  Remove processing of arguments now handled in C.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12872 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-19 01:33:16 +00:00
Chris Shoemaker 2943f81d59 Use popt to automatically generate pretty --usage and --help.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12868 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-19 01:26:21 +00:00
Chris Shoemaker 77ce54effc Catch --version argument before booting Guile.
Also show svn revision info if binary was built from svn.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12838 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-18 03:46:53 +00:00
Chris Shoemaker 4ededf8a36 sane indenting
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12817 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-17 02:28:13 +00:00
Chris Shoemaker f347e07c65 Pull the C inner_main into the environment of the guile (gnucash main) module.
Strangely, symbols that are resolved during a dlopen() *before* calling 
scm_set_current_module() are not resolvable from guile code that is inside 
a module. 

In order for code in a guile module to see symbols from dlopen'ed libraries,
they must be dlopen'ed *while* that guile module is current.  I imagine this
is because the process of changing the current guile module purposely hides 
all symbols in the current symbol table - to create an illusion of an empty
table.  Kinda interesting... kinda scary...


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12816 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-17 02:26:16 +00:00
Chris Shoemaker bc941165c5 Don't distribute non-existant 'gnucash'
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12815 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-17 01:42:46 +00:00
Chris Shoemaker a2a0bfc1b1 update budget-related status
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12372 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-16 20:30:00 +00:00
Chris Shoemaker 2bf2277660 Slight contraction of gnc-module API.
Privatize structures that aren't used externally.  Remove unused functions. 



git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12368 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-16 16:30:12 +00:00
Chris Shoemaker 85c5bcd51c Register business objects before testing them.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12367 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-16 14:42:43 +00:00
Chris Shoemaker 15533c3a3d Allow a libgsf test to pass even with glib 2.4.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12366 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-16 14:24:57 +00:00
Chris Shoemaker 9ef9db1e44 Remove unneeded testing environments.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@12365 57a11ea4-9604-0410-9ed3-97b8803252fd
2006-01-16 05:30:34 +00:00