mirror of
https://github.com/Gnucash/gnucash.git
synced 2024-12-02 05:29:20 -06:00
0f08ff10aa
* src/gnome/dialog-sxsincelast.c: Use GNCSplitReg over GNCRegWidget. * src/gnome/dialog-scheduledxaction.c (schedXact_editor_create_ledger): Use GNCSplitReg over GNCRegWidget. * src/gnome/glade/register.glade: Moved a bunch of the previously-shared widget definitions into seperate places to be accessed by window-register.c and gnc-split-reg.c. * src/gnome/window-register.c: Massive code-sucking into gnc-split-reg.c; this file now only handles the details of being the register window: dealing with dates and the extended menus and whatnot. * src/gnome/gnc-split-reg.c: Added; a better implementation of gnc-regWidget. All the "common" register-editing code has been moved here from window-register.c. * src/register/ledger-core/gnc-regwidget.c: Removed; replaced with src/gnome/gnc-split-reg.c. * src/register/register-gnome/gnucash-date-picker.c (gnc_date_picker_new): Call gtk_widget_show_all rather than gtk_widget_realize in order to setup the calendar to a state sufficient for subsequent calls. * HACKING: Added description of how to start GnuCash in GDB. git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@7437 57a11ea4-9604-0410-9ed3-97b8803252fd
77 lines
2.1 KiB
Plaintext
77 lines
2.1 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
|
|
|
|
--------------------------------------------------
|
|
|
|
Starting GnuCash in GDB -- Oct 2002
|
|
|
|
% gnucash-env gdb /path/to/guile
|
|
[gdb output]
|
|
% gdb> run -e main -s /path/to/devel-gnucash/libexec/overrides/gnucash --g-fatal-warnings
|