gnucash/libgnucash/doc/design/gnucash-design.texi
Geert Janssens 83d14e1c1c Restructure the src directory
It is split into
- /libgnucash (for the non-gui bits)
- /gnucash (for the gui)
- /common (misc source files used by both)
- /bindings (currently only holds python bindings)

This is the first step in restructuring the code. It will need much
more fine tuning later on.
2017-08-10 18:45:00 +02:00

240 lines
5.6 KiB
Plaintext

\input texinfo @c -*-texinfo-*-
@c %**start of header
@setfilename gnucash-design.info
@settitle GnuCash Design Document
@c %**end of header
@comment 'version.texi' is a magic filename that, when included,
@comment will be auto-generated courtesy of automake.
@include version.texi
@ifinfo
@format
@dircategory Programming
@direntry
* gnucash: (gnucash-design). Design of the GnuCash program
@end direntry
@end format
@end ifinfo
@ifinfo
This file documents the design of the GnuCash program.
Copyright 2000 Gnumatic Incorporated
This is Edition @value{EDITION}, last updated @value{UPDATED},
of the @cite{GnuCash Design Document}, version @value{VERSION}.
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.1
or any later version published by the Free Software Foundation;
with the Invariant Sections being LIST THEIR TITLES, with the
Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST.
A copy of the license is included in the section entitled "GNU
Free Documentation License".
@ignore
Permission is granted to process this file through TeX
and print the results, provided the printed document
carries a copying permission notice identical to this
one except for the removal of this paragraph (this
paragraph not being relevant to the printed manual).
@end ignore
@end ifinfo
@titlepage
@title GnuCash Design Document
@subtitle Edition @value{EDITION} for Version @value{VERSION}
@author Rob Browning
@author Bill Gribble
@author Robert Merkel
@author Dave Peticolas
@author Linas Vepstas
@page
@vskip 0pt plus 1filll
@copyright{} 2000 Gnumatic Incorporated
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.1
or any later version published by the Free Software Foundation;
with the Invariant Sections being LIST THEIR TITLES, with the
Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST.
A copy of the license is included in the section entitled "GNU
Free Documentation License".
@end titlepage
@ifnottex
@node Top, GNU Free Documentation License, (dir), (dir)
@top GnuCash Design Document
This is Edition @value{EDITION}, last updated @value{UPDATED},
of the @cite{GnuCash Design Document}, version @value{VERSION}.
@end ifnottex
@menu
* GNU Free Documentation License::
* Introduction::
* Top Level::
* Engine::
* Component Manager::
* Register::
* Reports::
* User Preferences::
* Function Index::
* Data Type Index::
* Concept Index::
@detailmenu
--- The Detailed Node Listing ---
Engine
* Engine Introduction::
* Using and Extending the Engine API::
* Globally Unique Identifiers::
* Numeric Library::
* Key-Value Pair Frames::
* Events::
* Commodities::
* Commodity Tables::
* Prices::
* Price Databases::
* Splits::
* Transactions::
* Accounts::
* Account Groups::
* GNCBooks::
* Scrub::
Globally Unique Identifiers
* When to use GUIDs::
* GUID Types::
* How to use GUIDs::
* GUIDs and GnuCash Entities::
* The GUID Generator::
Numeric Library
* Standard Numeric Arguments::
* Creating Numeric Objects::
* Basic Arithmetic Operations::
* Numeric Comparisons and Predicates::
* Numeric Denominator Conversion::
* Numeric Floating Point Conversion::
* Numeric String Conversion::
* Numeric Error Handling ::
* Numeric Example::
Key-Value Pair Frames
* Key-Value Policy::
* kvp_frame::
* KvpValue::
* kvp_list::
Events
* Event API::
Commodities
* General Commodity API::
* Commodity Getters::
* Commodity Setters::
Commodity Tables
* General Commodity Table API::
* Commodity Table Access API::
* Commodity Table Modification API::
Prices
* Price Implementation Details::
* General Price API::
* Price Getters::
* Price Setters::
Price Databases
* Price Lists::
* General Price Database API::
Splits
* General Split API::
* Split Getters::
* Split Setters::
Transactions
* General Transaction API::
* Transaction Getters::
* Transaction Setters::
Accounts
* Account Types::
* General Account API::
* Account Type API::
* Account Getters::
Account Groups
* General Account Group API::
* Account Group Account API::
GNCBooks
* GNCBook API::
Component Manager
* Component Manager Introduction::
Register
* Cells::
* Cellblocks::
* Table::
* Split Register::
Cells
* BasicCell::
Reports
* Creating a Report::
User Preferences
* Option Databases::
* Option Types::
* Option Creation::
* Option Values::
@end detailmenu
@end menu
@include fdl.texi
@include intro.texi
@include top-level.texi
@include engine.texi
@include component-manager.texi
@include register.texi
@include reports.texi
@include user-preferences.texi
@include function-index.texi
@include type-index.texi
@include concept-index.texi
@summarycontents
@contents
@bye