# Todo - The to do list for the `CBB' project.

#	Written by Curtis Olson.  Started August 19, 1994.
#
# $Id: Todo,v 1.40 1996/02/11 20:35:37 curt Exp $
# (Log is kept at end of this file)

# ----------------------------------------------------------------------------
# Things Todo
# ----------------------------------------------------------------------------

Todo Soon
=========
Nov 5, 1995 -   When exiting the "Balance" window, clear the current
		transaction.

Nov 5, 1995 -   Addition to manual:  What happens if you notice an error
		while balancing?  A: dismiss the balance window, make the
		change, and reopen the balance window.

Nov 5, 1995 -   Ask for conformation before deleting a closed transaction?

Oct 25, 1995 -  When spawning an external report/graph, give it a new
		unique temporary file name every time.

Oct 25, 1995 -  For partial reports ... start with the actual balance!!!

Sep 10, 1995 -  Managing your Money imports.

Jun 5, 1995 -	Add a preferences dialog box


Severe/Urgent
=============
Jan 5, 1995 -	Check & warn if splits sum doesn't equal entered value
		for the transaction.


Optimizations
=============


For Smoother More Robust Operation
==================================
Jan 13, 1995 -  Check for and warn of duplicate check numbers

Jan 13, 1995 -  If no category specified for a transaction, pop up a list.

Aug 14, 1995 -  If printing report from only one file, use existing
                running balance rather than recalculating based on
		limited txns.

Aug 14, 1995 -  When checking for a valid [hubbahubba] category,
		make sure the account first exists, rather than 
		reporting an unknown category.

Aug 25, 1994 -	Include check number in the key (sorting order)

Jul 17, 1995 -	If no year entered for a date in the entry area, default 
		to the current year.

Jul 17, 1995 -  the data file dir and cbb lib dir should be overridable by 
		an environment variable.

Jul 4, 1995 -   "19" replaced with a constant, so when we hit "2000" we can
		just change it in one place.

Jun 6, 1995 -   Move global setup stuff (headers/listbox/etc.) into
		procedures

Jan 16, 1994 -  Quicken import ... import categories that are used by the
		imported transactions.
		Also ... handle the memo field in the splits section.

Oct 17, 1994 -  When a command is given that requires a selected line, warn
                if no line selected.

Jan 8, 1995 -	If multiple lines selected, do operation on all lines if it
		makes sense.

Jan 16, 1995 -	Make windows resizable.

Jan 16, 1995 -	Option ... rehash memorized transactions after every entry.
		or simply insert the new entry into the hash table.

Jan 16, 1995 -	Balance window automatically updated when transactions change.
		so we don't need to close and reopen it.
		Also get rid of some of the quirky behavior.


Major Rewrite
=============
Jul 4, 1995 -	Store numbers as integers (shift by 'n' decimal places when
		displayed.)  Allow setting the number of decimal places.
		Or do a global substitution s/.2f/.3f/g

Jun 4, 1995 -   Redo logging -- save wrapper.pl commands instead of weird
		=====blah===== format.

Jan 4, 1994 -	Write a higher level account mgr which can launch multiple
		instances of cbb (and potentially other apps, and handle
		communication between them.)  -- allows multiple/concurrent 
		open accounts.

Jan 4, 1994 -	Rewrite in Perl5 w/ Tk Extensions?


Additional Features
===================
Aug 14, 1995 -	Category list window -> include an "Add ..." button

Jun 3, 1995 -	Graphs	-> Monthly/Weekly income/expenditures
			-> Running Balance

Oct 17, 1994 -	Write a 'find' function.

Oct 9, 1994 -	Switch to watch cursor icon when doing a lengthy operation.


Keep Plugging Away On
=====================
Oct 17, 1994 -	Keep working on documentation!
	        Section on advantages disadvantages of cbb
			free, Unix, extensible, open, X
		Section on writing your own reports/graphs
		Section on .cbbrc.tcl file


For Possible Consideration
==========================
Aug 29, 1994 -	Switch position of category and comment


Wishful Thinking :)
===================
Oct 9, 1994 -	Entry widgets as per quicken (scrolling list of entry fields)


For Others To Do If They Desire
===============================
Oct 19, 1994 -	Investment accounts.


Things Done
===========
Feb 11, 1996 -  Added a nice file select box from tkispell

Feb 11, 1996 -  Removed support for .dbm files.

Feb 10, 1996 -  Much better job of keeping a single line selected.

Feb 10, 1996 -  Keep listbox view steady when inserting/deleting/updating 
		entries.

Feb 10, 1996 -	Unselect all entries before selecting a new one when doing
		data entry (creating/updating entries)

Feb 4, 1996 -	Field text is automatically highlighted when a field is 
		tabbed to.  (Can be enabled/disabled in .cbbrc.tcl file)

Feb 4, 1996 -   Make it possible to turn off debugging output.

Jan 20, 1996 -  Fixed Meta (Alt) key sequences

Jan 18, 1996 -  Recurring transactions.

Jan 18, 1996 -  Look into cleaning up some of the debuging output.

Jan 12, 1996 -  In installation script, make clear whether the user should
		enter a path to a file or a directory.

Aug 17, 1995 -  Add support for international date format.

Aug 14, 1995 -  Directories created in install should be 755.

Jul 30, 1995 -  Help via local html files.

Jul 30, 1995 -	check # can be now be greater than 5 digits

Jul 26, 1995 -	focus problem (Works in tk4.0)

Jul 26, 1995 -	If text is highlighted in a field replace it when something
		is typed & delete it if delete is pressed.  (Works in tk4.0)

Jul 21, 1995 -	Transfers broke :(

Jul 21, 1995 -  Date range on printing broke.

Jul 19, 1995 - 	preformat transaction list entries, so tcl doesn't have to 
	   	waste time doing it.

Jun 18, 1995 -	External menu -> launch calculator ...

Jul 18, 1995 -  Reports and Graphs allow reporting to fold together multiple 
		input files.

Jul 18, 1995 -  Reports & Graphs change structure a bit so that configuration
		dialog box is launched by sub program if needed.

Jul 16, 1995 -	Add comment field to splits

Jul 7, 1995 -   X selection can now be pasted into a field.

Jul 7, 1995 -	Put version number in data file.

Jul 7, 1995 -	Use <Tab> as field separator.

Jul 7, 1995 -	Ask confirmation before including the default categories

Jul 6, 1995 -	Provide an upgrade path for dbm users to cbb format as well
		as new dbm format

Jul 4, 1995 -	Verify transaction is complete before trying to enter it ...
		not just warn.

Jul 4, 1995 -	Reports	-- own menu, defined in reports.conf

Jun 7, 1995 -	Finished report printing.

Jun 6, 1995 -   Put font definitions in .cbbrc file.

Jun 5, 1995 -	Yes/No/Cancel dialog added when trying to obliterate your
		current changes.

Jun 4, 1995 -	Auto save feature!

Jun 4, 1995 -	Redo .cbbrc file handling.

Jun 4, 1995 -   Transfers between accounts is broke ... :(

Jun 4, 1995 -	Detect and handle multiple data file types.

Feb 22, 1995 -	Remove tclX dependencies ... perl can do the date stuff.
		Now we only require the standard tcl/tk.

Jan 22, 1994 -	Added psuedo-globbing to the install script.

Jan 16, 1994 -	Fixed a logging bug where the day was one too high.

Jan 8, 1994 -	Fixed a quicken export bug ... my fault ... from move to
		four digit dates.

Jan 5, 1994 -	Reports balance bug.

Jan 5, 1994 -	Splits "Difference" -> "Sum".

Nov 29, 1994 - 	Install utility - mark executable *sources* as 644 after 
		installing.

Nov 29, 1994 - 	Install utility attempts to find binaries first.

Nov 9, 1994 -   Bring up a list of categories

Nov 10, 1994 -  Interactive category list editing

Nov 7, 1994 -	.cbbrc file

Nov 7, 1994 -   Help ... function (cross between a hack and very cool)

Nov 7, 1994 -	Fix balance bug.

Nov 4, 1994 -	Transfers between accounts.

Nov 4, 1994 -	Don't attempt to load the account specified in ~/.cbbrc when 
		it doesn't exist.

Nov 3, 1994 - 	Make year into a four digit value.

Nov 1, 1994 -	Create a transaction log file to log every change to the file

Nov 1, 1994 -	Use a dbm file instead of associative array in engine.pl

Nov 1, 1994 -	Pull Xamount out of .bal file for statement starting balance.

Nov 1, 1994 -	engine.pl:make_acct(), only put base account name in category
		file.

Oct 28, 1994 -  A text based front end -- THANKS Christopher Browne

Oct 18, 1994 -  Export to quicken ".qif" files -- THANKS Christopher Browne
		<aa454@freenet.carleton.ca>

Oct 16, 1994 -  Tab from category field immediately updates.

Sep 20, 1994 -  Memorized Transactions

Oct 11, 1994 -  More entry/widget bindings - should be pretty good now

Oct 2, 1994 -	Complete category file handling ... auto saving a specific
		file with the .cbb file.

Oct 2, 1994 -	*.dat -> *.cbb

Oct 1, 1994 -	Undo

Oct 1, 1994 -	Category list ... type the first few chars and the rest will
		be filled in ... but not in splits window now fixed.

Sep 29, 1994 -  Category list ... type the first few chars and the rest will
		be filled in.

Sep 24, 1994 -  Tabbing through splits window now works
	     -	Tabbing through balance window now works

Sep 24, 1994 -  <CR> in file dialog boxes now works

Sep 24, 1994 -	Save As

Sep 21, 1994 -  Sanity check/Verify/Canonize dates
	     -  Sanity check on cleared field


# ----------------------------------------------------------------------------
# $Log: Todo,v $
# Revision 1.40  1996/02/11  20:35:37  curt
# Bringing these files in line with cbb-0.62a.
#
# Revision 1.39  1996/01/21  01:06:16  curt
# More to do!
#
# Revision 1.38  1996/01/12  13:20:49  curt
# Modified Files:  Announce Bugs FAQ History Makefile People README Todo Version
#   Miscellaneous updates for version 0.62
#
# Revision 1.37  1995/08/03  22:53:51  curt
# Changes for version 0.61
#
# Revision 1.36  1995/07/21  03:38:33  curt
# .
#
# Revision 1.35  1995/07/20  11:18:46  curt
# Spelling fixes ...
#
# Revision 1.34  1995/07/20  03:21:14  curt
# Preformat transaction list entries, so tcl doesn't have to waste time
# doing it.
#
# Revision 1.33  1995/07/20  02:44:06  curt
# Updates to bring up to date with 0.60a
#
# Revision 1.32  1995/07/14  11:45:59  curt
# work, work, work ...
#
# Revision 1.31  1995/07/09  04:02:14  curt
# Bringing this file up to date with respect to version 0.60a
#
# Revision 1.30  1995/07/08  01:41:37  curt
# Changes, etc.
#
# Revision 1.29  1995/07/05  01:28:31  curt
# Updated this file
#
# Revision 1.28  1995/07/04  22:42:06  curt
# Lots todo!
#
# Revision 1.27  1995/06/07  02:46:03  curt
# Modified Files:  Todo categories.tk cbb file.tk reports.tk
#   Redo font handling.  Default fonts can now be overridden in ~/.cbbrc file
#
# Revision 1.26  1995/06/06  01:31:05  curt
# updates, updates ...
#
# Revision 1.25  1995/06/05  11:41:34  curt
# Modified Files:  Todo cbb engine.pl file.tk log.pl wrapper.pl
#   Fixed transfers between files.
#   Reworked transaction logging.
#   Added an auto-save feature.
#   Reworked .cbbrc saving and loading
#   Use '.dir' now instead of '.pag'
#
# Revision 1.24  1995/06/03  19:37:11  curt
# ...
#
# Revision 1.23  1995/04/24  02:02:40  curt
# More stuff todo!
#
# Revision 1.22  1995/02/23  04:35:28  curt
# Updated to reflect recent changes
#
# Revision 1.21  1995/02/18  17:06:42  curt
# Lots of rework
#
# Revision 1.20  1994/12/05  17:12:33  clolson
# Final tunups for 0.51a release.
#
# Revision 1.19  1994/11/29  19:04:15  curt
# .
#
# Revision 1.18  1994/11/10  20:09:21  clolson
# Finished category handling for now.
#
# Revision 1.17  1994/11/07  23:24:06  clolson
# ...
#
# Revision 1.16  1994/11/07  19:17:23  clolson
# Minor changes.
#
# Revision 1.15  1994/11/04  23:54:37  curt
# minor changes
#
# Revision 1.14  1994/11/04  19:32:48  clolson
# Added Transfers between Accounts.
#
# Revision 1.13  1994/11/02  12:53:50  curt
# ...
#
# Revision 1.12  1994/11/02  12:49:53  curt
# Changes to reflect work completed.
#
# Revision 1.11  1994/11/01  22:43:07  clolson
# Misc changes
#
# Revision 1.10  1994/11/01  15:30:54  curt
# small changes.
#
# Revision 1.9  1994/10/31  21:19:19  clolson
# urgent ...
#
# Revision 1.8  1994/10/22  19:50:37  clolson
# Misc changes :)
#
# Revision 1.7  1994/10/21  18:59:32  curt
# Changes wrt suggestions
#
# Revision 1.6  1994/10/19  13:29:06  curt
# updates ...
#
# Revision 1.5  1994/10/18  12:19:03  curt
# Minor changes.
#
# Revision 1.4  1994/10/17  13:21:31  curt
# Minor changes
#
# Revision 1.3  1994/10/13  23:30:30  curt
# Finished memorized transactions ...
#
# Revision 1.2  1994/10/12  18:55:37  clolson
# Restructured
#
# Revision 1.1  1994/10/11  15:04:58  curt
# Official name is now cbb (for now)
#
# Revision 1.17  1994/10/10  12:10:30  curt
# Misc stuff
#
# Revision 1.16  1994/10/03  03:24:26  curt
# more work
#
# Revision 1.15  1994/10/03  02:54:40  curt
# Work, work, work!
#
# Revision 1.14  1994/10/02  01:33:06  curt
# splits/categories
#
# Revision 1.13  1994/10/01  05:15:50  curt
# been woi'kin'
#
# Revision 1.12  1994/09/25  03:48:12  curt
# /
#
# Revision 1.11  1994/09/23  03:16:00  curt
# work work work
#
# Revision 1.10  1994/09/21  12:19:14  curt
# Recalculate after delete
#
# Revision 1.9  1994/09/19  02:44:16  curt
# add ...
#
# Revision 1.8  1994/09/14  23:28:28  curt
# Finish splits and menubar
#
# Revision 1.7  1994/09/08  04:01:07  curt
# Handle change date correctly
# added import/load functions
#
# Revision 1.6  1994/09/02  03:32:38  curt
# Added entry 9/1/94
#
# Revision 1.5  1994/08/30  02:42:55  curt
# added 8/29/94
#
# Revision 1.4  1994/08/26  13:18:52  curt
# Experimenting with interface ...
#
# Revision 1.3  1994/08/25  18:47:32  clolson
# Added a init_trans command.
#
# Revision 1.2  1994/08/25  02:08:56  clolson
# More work on .qif imports
#
# Revision 1.1  1994/08/21  15:31:43  curt
# Initial entry for the Todo list -- lets see if DCVS still works!
#
