Commit Graph

196 Commits

Author SHA1 Message Date
Dave Peticolas
11b3630d99 Bill Gribble's reporting patch.
* src/gnome/gnc-html-history.{h,c}: add destroy callback. part of
	report memory management cleanup

	* src/gnome/window-report.c: set report dirty flag when options
	apply or reload is clicked.  Store report object in window
	struct while it's visible.

	* src/scm/qif-import/qif-file.scm: expand detection of opening
	balance transactions.

	* src/scm/qif-import/qif-parse.scm: fix regexp bug in miscincx and
	miscexpx category parsing (thanks carol!)

	* src/scm/qif-import/qif-to-gnc.scm: use correct amount for
	non-stock investment transactions (dividends etc).  Use fuzzy
	equality predicate for inexact numbers.

	* src/scm/report.scm: Add dirty flag and 'children' (other reports
	created by this report... nobody uses it yet) to report struct.
	Add function to clean up report when it's erased from the window
	history.  Add some debugging timing bits to the report-run
	function.  Display cached HTML if not dirty.

	* src/scm/report.scm: WARNING! Change prototype of report
	rendering functions... they take a <report> object as argument
	instead of an options object.  This is necessary for memory
	management stuff when reports create other reports.

	* src/scm/report/account-summary.scm: fix to use new renderer
	signature

	* src/scm/report/average-balance.scm: fix to use new renderer
	signature

	* src/scm/report/hello-world.scm: fix to use new renderer
	signature


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@3571 57a11ea4-9604-0410-9ed3-97b8803252fd
2001-02-02 02:14:48 +00:00
Dave Peticolas
690584073e Bill Gribble's patch.
* src/scm/report/stylesheet-{plain,fancy}.scm: add a new boolean
	option to disable hyperlinks in reports.  This will make it nicer
	to have a "printing" style sheet that disables links when you want
	to print.  (if you change a report's style sheet, click "Reload"
	to see it take effect.  this needs to be fixed)

	* src/gnome/gnc-html-embedded.c: add support for URLsa attached to
	double clicks of pie slices, bar chart bars, and legend entries of
	guppi graphs.  Still need to do this for scatter chart.

	* src/scm/html-{piechart,barchart}.scm: add API for callbacks.
	Not totally finished with barchart yet.

	* src/scm/qif-import/qif-to-gnc.scm: check for currency and type
	mismatches between QIF-imported and existing GNC accounts.  If
	there's a name conflict, rename the new account with a unique name
	and a description indicating there was a conflict.  This should
	fix several reports of crashes for multi-currency users.

	* src/scm/report-utilities.scm: back out my previous breakage of
	gnc:amount->string

	* src/scm/report.scm: Thanks to the guile mailing list for
	pointing my at this odd bit of code needed to print backtraces on
	guile exceptions while still running.  You need to run with
	--debug to get the trace.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@3559 57a11ea4-9604-0410-9ed3-97b8803252fd
2001-01-30 23:56:33 +00:00
Dave Peticolas
9d73bd0b9e Bill Gribble's patch-of-many-things.
* src/gnome/gnc-gpg.{c,h}: if Linas can add useless prototype
        code, so can I :) Gnucash now supports display of GPG-encrypted
        HTML pages via another special <object> block.

        * src/gnome/gnc-html.c: Add support for GPG stuff.  Fix error
        reporting to display errors from GHTTP if available.

        * src/gnome/window-help.c: Add an Open button to open an arbitrary
        URL.  The network IS the computer!

        * src/scm/html-document.scm: Change interface to additional
        attributes on html-document-markup-start.

        * src/scm/html-table.scm: Fix rendering of <html-table-cell> to do
        rowspan/colspan correctly.  Add new constructors to build <th>
        <html-table-cells> in addition to <td>

        * src/scm/report-utilities.scm: Rename misnamed d-gnc:foo
        functions to gnc:foo.  d-gnc: is only for preexisting engine
        interface functions that had signature changes.  there's nothing
        inherently deprecated about using doubles in reports.

        * src/scm/report.scm: Start trying to print backtraces on
        exceptions in reports.  Only partially successful at this point;
        the error gets printed but the backtrace won't.  Stay tuned.  You
        need to run with --debug to see the error information.

        * src/scm/report/account-summary.scm: Modify to use new
        table-cell ctors where appropriate.  Set justification for
        cells correctly.

        * src/scm/report/average-balance.scm: Add title.

        * src/scm/report/stylesheet-plain.scm: Render title in plain
        stylesheet.  Set default table border to 0.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@3533 57a11ea4-9604-0410-9ed3-97b8803252fd
2001-01-26 21:36:21 +00:00
Dave Peticolas
556a293d49 Bill Gribble's qif import updates.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@3474 57a11ea4-9604-0410-9ed3-97b8803252fd
2001-01-15 22:38:13 +00:00
Dave Peticolas
e29fc65b3e Rob Browning's patch to make gnucash work with g-wrap 1.1.5.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@3473 57a11ea4-9604-0410-9ed3-97b8803252fd
2001-01-15 22:13:26 +00:00
Dave Peticolas
1682dc3817 Bill Gribble's big patch.
* doc/html/C/account-tree-demo.html: add a simple demo of
        embedding a gnucash main window widget in HTML

        * src/gnome/dialog-options.c: add a 'pixmap' option type to
        the GNC options

        * src/gnome-dialog-style-sheet.{c,h}: new dialog for creating
        and editing HTML style sheets

        * src/gnome/druid-qif-import.c: add support for false-if-exception
        error handling within QIF import process

        * src/gnome/gnc-html-embedded.c: add backslash escaping for
        converting string arrays to and from single HTML strings

        * src/gnome/gnc-html-embedded.c: error handling in creating guppi
        plots, and add new embedded object type for embedding a gnucash
        mainwindow-account-tree in HTML (preliminary).  Add x axis
        label rotation as an option to the barchart.

        * src/gnome/gnc-html.c: fixes for renaming of report objects and
        handling false-if-exception returns from report runs.  Use async
        mode for ghttp requests and add a gtk_timeout callback to check on
        their status.  Add a gnc_html_cancel() which gets rid of pending
        ghttp requests (called by the stop buttons in help, report
        windows)

        * src/gnome/window-help.c: bug fixes for search results printing.
        Don't expand help topics nodes on creation.  Add stop and reload
        buttons to the toolbar.

        * src/gnome/window-report.c: Add stop and reload buttons to the
        toolbar.

        * src/guile/gnc-helpers.c: fix helpers for recordization of
        <gnc-numeric> on Scheme side

        * src/scm/engine-utilities.scm: rewrite transaction map functions
        to eliminate ith-transaction calls

        * src/scm/gnc-numeric.scm: make gnc-numeric into a first class
        type on the scheme side (<gnc-numeric>)

        * src/scm/html-*.scm (7 files): new architecture for generating
        HTML within reports.  See src/scm/report-html.txt for an overview.

        * src/scm/options.scm: support for pixmap options

        * src/scm/qif-import/: add false-if-exception error catching in
        QIF import entry points.

        * src/scm/report-utilities.scm: add functions to get immediate
        subaccounts; rewrite get-balance-at-date.

        * src/scm/report.scm: rename report objects; now the thing that
        gets created by define-report is a <report-template> and the thing
        that has a window and a set of parameters is a <report>.  Add a
        "style sheet" option automatcally to EVERY report, and a "General"
        section to put it in; report with only 1 page of options should
        use "General".  Add false-if-exception error catching to report
        run.

        * src/scm/report/account-summary.scm, src/scm/report/hello-world.scm,
        src/scm/report/average-balance.scm: rewrite some reports using the
        new HTML generation infrastructure.  Old reports won't work until
        they are rewritten.

        * src/scm/report/stylesheet-*.scm (2 files): create some sample
        stylesheet templates.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@3452 57a11ea4-9604-0410-9ed3-97b8803252fd
2001-01-12 23:07:14 +00:00
Dave Peticolas
7eb2066592 Rob Browning's patch to add a 'type' api for Splits.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@3381 57a11ea4-9604-0410-9ed3-97b8803252fd
2001-01-03 23:33:08 +00:00
Dave Peticolas
155391c80c Bill Gribble's patch to add guppi support, improve the report & help
windows, and sundry other things.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@3329 57a11ea4-9604-0410-9ed3-97b8803252fd
2000-12-21 00:35:47 +00:00
Dave Peticolas
ee3c0b4864 Improve register support for multi-byte character sets.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@3319 57a11ea4-9604-0410-9ed3-97b8803252fd
2000-12-19 01:47:22 +00:00
Dave Peticolas
5371242eb3 Robert Graham Merkel's patch to the g-wrap build command.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@3314 57a11ea4-9604-0410-9ed3-97b8803252fd
2000-12-14 11:33:09 +00:00
Dave Peticolas
e3d1185f36 Robert Graham Merkel's patch to add the income-expense association api.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@3309 57a11ea4-9604-0410-9ed3-97b8803252fd
2000-12-14 07:11:01 +00:00
Dave Peticolas
ace1a275cc Rob Browning's update for the new g-wrap.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@3307 57a11ea4-9604-0410-9ed3-97b8803252fd
2000-12-14 01:49:10 +00:00
Dave Peticolas
a50ed7498a James LewisMoss's build system patch.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@3283 57a11ea4-9604-0410-9ed3-97b8803252fd
2000-12-11 21:26:58 +00:00
Dave Peticolas
946e216db3 Various fixes & improvements in date handling.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@3270 57a11ea4-9604-0410-9ed3-97b8803252fd
2000-12-08 11:14:33 +00:00
Dave Peticolas
e38062ba65 Robert Graham Merkel's widgetization of the main window account tree.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@3234 57a11ea4-9604-0410-9ed3-97b8803252fd
2000-12-04 23:23:35 +00:00
Dave Peticolas
761806205a James LewisMoss's design docs patch.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@3158 57a11ea4-9604-0410-9ed3-97b8803252fd
2000-11-18 02:27:08 +00:00
Dave Peticolas
f48fd3f934 Bill Gribble's gnc_numeric and qif import patch.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@3144 57a11ea4-9604-0410-9ed3-97b8803252fd
2000-11-09 21:52:16 +00:00
Dave Peticolas
a30ed47100 Bill Gribble's patch to g-wrap the numerics.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@3137 57a11ea4-9604-0410-9ed3-97b8803252fd
2000-11-09 00:32:09 +00:00
Dave Peticolas
b366a841fa Rob Browning's patch to sort the commodities in the XML output.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@3122 57a11ea4-9604-0410-9ed3-97b8803252fd
2000-11-06 22:48:54 +00:00
Dave Peticolas
b12e1d6675 Convert parser to use gnc_numerics.
Fix bug in gnc_numeric_reduce.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@3093 57a11ea4-9604-0410-9ed3-97b8803252fd
2000-10-30 10:46:46 +00:00
Dave Peticolas
f2346f57e5 Fix for locales that use (num) as -num.
Create a gnc-commodity-edit widget for editing commodities and use it
in the account dialog.

A few bug fixes.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@3083 57a11ea4-9604-0410-9ed3-97b8803252fd
2000-10-27 20:30:30 +00:00
Dave Peticolas
e4e1453257 Rob Browning's XML I/O Code.
Bill Gribble's commodity and numerics code and new qif importer druid.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@3065 57a11ea4-9604-0410-9ed3-97b8803252fd
2000-10-23 09:41:51 +00:00
Dave Peticolas
5ef2d46f48 Use GTable in gnome table implementation.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@2868 57a11ea4-9604-0410-9ed3-97b8803252fd
2000-09-16 11:07:45 +00:00
Dave Peticolas
289e374965 Remove some extra generated files.
SplitLedger.c: don't automatically copy the memo and action fields
               to the 'other' split.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@2843 57a11ea4-9604-0410-9ed3-97b8803252fd
2000-09-13 23:28:28 +00:00
Dave Peticolas
1e9d2ff8b0 Fix Gtk warnings.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@2834 57a11ea4-9604-0410-9ed3-97b8803252fd
2000-09-12 09:56:06 +00:00
Dave Peticolas
7260fc741a Make xaccInitTransaction private. Clean up headers.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@2833 57a11ea4-9604-0410-9ed3-97b8803252fd
2000-09-12 09:50:00 +00:00
Dave Peticolas
daa3292b48 Update.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@2826 57a11ea4-9604-0410-9ed3-97b8803252fd
2000-09-11 21:02:40 +00:00
Dave Peticolas
a0213aa92e Robert Graham Merkel's README and date-utility patch.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@2777 57a11ea4-9604-0410-9ed3-97b8803252fd
2000-09-05 21:33:25 +00:00
Dave Peticolas
a11ffa70df Robert Graham Merkel's report updates for relative dates.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@2733 57a11ea4-9604-0410-9ed3-97b8803252fd
2000-08-31 04:44:42 +00:00
Dave Peticolas
23ffb366f2 Robert Graham Merkel's relative date option patch.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@2729 57a11ea4-9604-0410-9ed3-97b8803252fd
2000-08-30 07:46:19 +00:00
Dave Peticolas
da24cfc14c More cleanup. Remove obsolete engine procedures.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@2720 57a11ea4-9604-0410-9ed3-97b8803252fd
2000-08-27 10:05:31 +00:00
Dave Peticolas
a514faf4d6 Clean up code. Simply some code with glib lists and remove obsolete
function calls.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@2716 57a11ea4-9604-0410-9ed3-97b8803252fd
2000-08-26 20:03:48 +00:00
Dave Peticolas
3ef323381b *** empty log message ***
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@2701 57a11ea4-9604-0410-9ed3-97b8803252fd
2000-08-24 04:34:34 +00:00
Dave Peticolas
a6668eaf54 Update HACKING file.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@2695 57a11ea4-9604-0410-9ed3-97b8803252fd
2000-08-23 08:23:15 +00:00
Dave Peticolas
34746c6ebf Fix a rebalancing bug.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@2690 57a11ea4-9604-0410-9ed3-97b8803252fd
2000-08-22 08:26:32 +00:00
Dave Peticolas
1b33c45794 Fix a refresh bug.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@2688 57a11ea4-9604-0410-9ed3-97b8803252fd
2000-08-22 07:55:38 +00:00
Dave Peticolas
af7ac6c3a1 Clean up date code. Move Transaction date string routines to
Transaction.c from date.c. Move Timespec definition from Transaction.h
to date.h.

Use 'const char *' for date routines where appropriate.
Fix a memory leak in reconcile-list.c.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@2685 57a11ea4-9604-0410-9ed3-97b8803252fd
2000-08-22 01:35:47 +00:00
Dave Peticolas
808ff64f10 Fix a quickfill bug.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@2684 57a11ea4-9604-0410-9ed3-97b8803252fd
2000-08-21 20:23:07 +00:00
Dave Peticolas
0256e9db4a Remove gncBoolean typedef and constants. Replace all uses of them
with the glib equivalents.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@2682 57a11ea4-9604-0410-9ed3-97b8803252fd
2000-08-21 10:26:57 +00:00
Dave Peticolas
532707034f Fix a bug in rebalancing.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@2668 57a11ea4-9604-0410-9ed3-97b8803252fd
2000-08-13 00:57:48 +00:00
Dave Peticolas
c83b4eeacd Register bug fix.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@2659 57a11ea4-9604-0410-9ed3-97b8803252fd
2000-08-10 19:21:57 +00:00
Dave Peticolas
8c5b0a3391 Reimplement the account add and account edit dialogs using glade.
Consolidate the gui-driving code into dialog-account.[ch].
The old implementations in dialog-edit.[ch] and dialog-add.[ch]
are obsolete.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@2656 57a11ea4-9604-0410-9ed3-97b8803252fd
2000-08-10 05:28:28 +00:00
Dave Peticolas
228014608f Rob Browning's ChangeLog update.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@2648 57a11ea4-9604-0410-9ed3-97b8803252fd
2000-08-08 17:03:22 +00:00
Dave Peticolas
474877730d Use glib memory routines. Fix some memory leaks.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@2647 57a11ea4-9604-0410-9ed3-97b8803252fd
2000-08-08 04:05:38 +00:00
Dave Peticolas
4f7aca77fd Reimplement the register Table object using glib's dynamic arrays.
Clean up the code and standardize the function naming convention.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@2644 57a11ea4-9604-0410-9ed3-97b8803252fd
2000-08-07 18:11:01 +00:00
Dave Peticolas
1bcca0b5d5 * src/gnome/window-reconcile.c: After reconciliation, if the
account is a credit card account, automatically pop up a transfer
  window with the appropriate amount and accounts.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@2608 57a11ea4-9604-0410-9ed3-97b8803252fd
2000-07-23 00:04:48 +00:00
Dave Peticolas
c1ce3c8236 src/calculation: some cleanup and renaming of functions to be longer
and more descriptive.

src/gnome/dialog-transfer: add the Num field and APIs for changing
                           some of the values

src/gnome/dialog-fincalc.c: use new function names for calculator


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@2606 57a11ea4-9604-0410-9ed3-97b8803252fd
2000-07-21 20:16:35 +00:00
Dave Peticolas
118e2ad610 Make transfer dialog modeless.
account-tree.[ch]: change 'category' to 'income_expense'

AccWindow.h: remove notes window functions, this was only a separate
             window in Motif
Destroy.c: remove notes window functions
dialog-add.c: remove notes window functions


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@2603 57a11ea4-9604-0410-9ed3-97b8803252fd
2000-07-20 09:23:18 +00:00
Dave Peticolas
1bb767c927 Fix bug in split auto-completion.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@2568 57a11ea4-9604-0410-9ed3-97b8803252fd
2000-07-12 08:54:21 +00:00
Dave Peticolas
94cf525150 Fix scm searching.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@2566 57a11ea4-9604-0410-9ed3-97b8803252fd
2000-07-12 07:14:13 +00:00