gnucash/HACKING
Dave Peticolas cd6070bb00 * src/scm/report/income-expense-graph.scm: work on display
* src/scm/html-utilities.scm (gnc:account-anchor-text): new func

	* src/gnome/gnc-html.c: check for null args

	* src/scm/report/income-or-expense-pie.scm: work on display

	* src/scm/html-utilities.scm: add function for assigning colors

	* src/gnome/gnc-html-guppi.c: fix callback pointer

	* src/engine/Transaction.c (xaccSplitGetCorrAccountName): i18n
	(xaccSplitGetCorrAccountCode): i18n

	* src/guile/gnucash.c.in (gnucash_lowlev_app_init): update
	last stable version

	* src/scm/report.scm: more work on display

	* src/scm/report/register.scm: add api for printing a
	register report. more work on display

	* src/gnome/window-report.c (gnc_print_report): add api
	for printing reports

	* src/gnome/gnc-html.c: check for no urltype callback

	* src/scm/report/stylesheet-plain.scm: add some more space
	between table cells

	* src/gnome/window-register.c: add support for printing reports

	* src/guile/gnc.gwp: add print report api

	* src/gnome/gnc-html.c: use PWARN, not printf


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@3806 57a11ea4-9604-0410-9ed3-97b8803252fd
2001-03-20 11:27:14 +00:00

69 lines
1.8 KiB
Plaintext

Hacking Guidelines
==================
This document is an introduction to hacking on GnuCash.
Related Documents
-----------------
In addition to this file, you should read the README file, which
explains the details of getting the CVS source, building GnuCash,
and creating patches for submission.
The src/doc/design directory contains a preliminary design document
which you should read as well. You should also feel free to hack on
the design document.
Coding Style Conventions
------------------------
General:
* When modifying a file, the style convention in that file should be
followed.
* When creating a new file, the style of existing files should be
followed.
* When creating lots of new files in a new directory, you may use
your own coding standards, but please try to stick as closely as
possible to the GNU coding standards.
* Do not submit patches that consist of (gratuitous) stylistic changes.
C:
* Use ISO C.
* Use glib memory routines where possible. This means you should be
using g_malloc(), g_new(), g_free(), etc., instead of malloc(),
free(), etc. Do not mix glib memory calls with libc calls!
* Where possible, use glib data abstractions instead of rolling your
own. Glib linked lists and pointer arrays are very convenient and
have been extensively used and tested.
* All gnucash functions and global variables are prefixed with gnc_
* Use static functions whenever possible
* Use const whenever possible
Scheme:
* All gnucash functions and global variables are prefixed with gnc:
* All global variables are enclosed in ** (i.e. gnc:*load-path*)
* All private functions are enclosed in __ (i.e. gnc:_do-not-call_)
* All C functions wrapped with g-wrap have dashes in place of underscores.
(xaccSplitGetBalance --> gnc:split-get-balance).
Dave Peticolas <dave@krondo.com>
August 22, 2000