Ledgers, Registers and Sheets Oh My!

Derek Atkins warlord@MIT.EDU
27 Nov 2001 09:24:41 -0500


Josh Sled <jsled@asynchronous.org> writes:

> Specifically, it seems like there's two very similar registers at play
> ['(SplitRegister)reg' and '(GnucashRegister)regData->reg'].
> 
> But, as it turns out...
> 
> The SplitRegister is, as mentioned, an application-specific
> Split-containing-thing editor, which interacts with the Table [a ui-agnostic
> tabular editor], which itself is an MVC-patterned thing.
> 
> The GnucashRegister is a Gnome-specific UI for that table ... it should
> probably be named GnomeTableView, but isn't.
> 
> Thus, the call above gets the vcell_loc of the blank_split from the
> application-specific SplitRegister, and feeds that to the UI-specific
> GnucashRegister [read: GnomeTableView]... thus jumping to the blank split
> as per the user's request.
> 
> In the course of this, I came up with a .dia file of the relationship
> and navigability between these things; a .png export of it is attached.
> Please forgive my mangling of UML notation.
> 
> ...jsled

I've been working on an EntryLedger (to manipulate Order Entries),
which looks a lot like the SplitRegister, but different.  I'm
wondering how much ELSE I'm going to have to change or re-implement to
get it to work.  This really sounds like I might need a LOT of
duplicated code elsewhere, which would seem to be the "wrong" thing.

It would be nice if there were one or two APIs that I could implement
that would give me what I want, instead of having to re-build
everything from the SplitRegister all the way up the the RegWindow and
beyond.

Take a look at business/business-ledger/.. for what I've done so far.

-derek

-- 
       Derek Atkins, SB '93 MIT EE, SM '95 MIT Media Laboratory
       Member, MIT Student Information Processing Board  (SIPB)
       URL: http://web.mit.edu/warlord/    PP-ASEL-IA     N1NWH
       warlord@MIT.EDU                        PGP key available