// This is a simple hand-edited ChangeLog noting changes/bug fixes to the code.
// This is unedited and may sometimes contain documentation relevant only to me.
// The list is kept in date order starting with the oldest.  (e.g i append
// the log to the list). The versions are newest first.
// Michael
0.3.2
  Javier Campos Morales javi_c@ctv.es:
    Modified the start dialog and added some new icons.
    Modified the startup logo code and redone some of the pictures and icons.
    Changed some of the the startup code in kmymoney2.cpp to reflect the new start dialog.
    Modifed main.cpp  to reflect new KDE 2 programming idioms.

  Michael Edwardes mte@users.sourceforge.net
    Modified the ui resource file to make the toolbar positioning better.
    Started creating some basic documentation in textual form.
      Each directory will soon have a readme-<something<.txt file containing
      basic documentation for that particular directory. It is NOT an attempt
      at user documentation!
    Made the kmymoney2.desktop file work.
    Removed the start dialog designer ui file from the project.
    Remembered to remove the localised call to createGUI in kmymoney2.cpp:initActions()
    Added the new developers names and emails where needed.
    Made the tree ready for CVS and put it in the online repository.
    Moved this file to Changelog.original so the developers can now use a real Changelog!

0.3.1
  Fixed the bank/account enabling in kmymoney2.cpp.
  Cleaned up the dialogs a little, in respect to the tab orders.
  Be aware that there are quite a few qDebug statements so expect some output whilst running.
  Cleaned up the transaction engine a bit and changed the API (so MyMoneyFile knows nothing but it's
    own banks).
  Removed the accounts view and merged it into the banks view like gnu cash et al.
  Fixed a majority of unknown bugs by making the transaction engine not use auto delete
    in its linked lists.  This may cause memory leakage but until I write my own/use STL then
    the memory leakage will have to stay !.
  Made the transaction engine comparison operators more flexible.
  Moved the create new account menu option to the bank menu.
  Changed the transaction view to use a QTable now and am getting ready to use in place editing.
  Added the ability to let the user choose whether to view the input box. (Settings menu).
  Each cell has it's own table item class with appropriate arguments/editors.
  Cleaned up the transaction view code a bit and the class no longer requests updates
    to its data, it does it itself using the supplied pointer(s).
  Now using KDE 2.1beta2 and KDevelop 1.4 and nicked some icons etc from the newly generated
    programs.
  Cleaned up the bank/account/transaction/kmymoney views.
  Each transaction really does have its own id now.  Just an unsigned long for now.
  The list views can no longer show user selected columns but they do respect the font and
    colour settings.  Small bug to be fixed in the background painting of the register view

0.3.1-281200
  MyMoneyMoney updated to be represented as a double.
  New file format to save and read new MyMoneyMoney object.
  Made the toString method add thousand and decimal separators.
  BUG: MyMoneyMoney::toString returns garbage when showSign is true ???
  The list views have been changed so that the user can't resize them.
  Added extra arguments to MyMoneyMoney::toString (formatted: true if thousand separators
    are to be included in the returned string.)
  We now display dates and money according to the current locale.  To change these settings
    use the apprpriate KDE 2 dialog. (KMenu -> Preferences -> Personalisation -> Country & Language.)
  Added a dialog to let the user choose the columns to be displayed, and to choose the fonts/colours.
  Updated the list view code to read from the user variables.  A couple of bugs exist.
  The settings are now saved in the application config file. (KMainWnd::read/saveOptions).
  Added a find dialog and added menu and toolbar items.
  The find dialog now opens a new results window to display in, and now support
    regular expressions in the description & number fields.
  Cleaned up some of the reconciliation code and fixed a bug. It has also been fixed in
    the stable 0.2 tree.
  Added another program to the source tree and hand edited some Makefile.am's.
  The new program is an applet that will dock on the task bar and monitor your
    bills and deposits (when they are done !).
  Tried to modify the configure stuff to support uic.  Not trusted to work at this time, I cut and
    pasted most of the stuff from kdelibs-1.94.
  Converted the KNewBillWizard dialog to designer and all seems well.  Will create all new
    dialogs with designer now.  The older, already implemented dialogs, will be converted
    at some point in the future.
  Added hacked versions of sizePolicy and sizeHint to kMyMoneyDateInput but they don't
    really work properly.
  Completely hand edited the kdevelop project file to compile the new code and to accomodate
    the new admin directory.  God knows if it will work on other machines, but it does
    work on mine!  PLEASE DO NOT USE KDEVELOP ON THIS PROJECT AS IT WILL PROBABLY OVERWRITE
    ALL THE HAND EDITED FILES (KDEVELOP DOESN'T ON MINE BUT I CAN'T GUARANTEE IT FOR OTHER
    MACHINES).  -- I DON'T REALLY UNDERSTAND AUTOCONF ETC!!!
  Added a caption to let the user know where they are at any time.  Thanks to ...
  Moved the list views over to KListView and am now using better ordering of the items.
  Changed the API in the engine to be more robust and to disengage itself from external number ordering.
  Added an index field to MyMoneyTransaction and removed MyMoneyTransactionE from KReconcileDlg.
  KReconcileDlg is now implemented using designer, and the code has been modified to reflect this
    and the code has been simplified.
  Added == operators to the 'engine' classes.
  Removed QdbtTabular completely from the source code.  All lists now use the
    KListView class.
  Moved over to KDevelop 1.3 and am now using the new templates and admin directory.
  Made all kdevelop dialogs into designer dialogs and they now look better and the tabs behave as expected.
  Removed the dock applet from the source, I will release it once kmymoney2 becomes stable again.  (most of
    it isn't implemented anyway!).
  If the build process fails try running the mk-ui.sh script in the kmymoney2 source directory first.  (There
    are some dependency problems on my machine ?).
  Use the compile.sh script to build kmymoney2 from now on.
  Completely removed all the kdevelop dialogs and turned them into designer dialogs.
  Removed the Quick Start wizard and am thinking of a new interface to wizards/templates, maybe using some
    kind of scripting so the user can add more if they want to.
  More streamlining of the engine code to stop using QListIterators.  All that needs to be done to
    remove QT dependence from the transaction engine is to use something other than QString's and
    QLists internally.  Work will begin on a gnome interface once I have the KDE code working as expected...
  This list is getting QUITE BIG so I have called this 0.3.1-281200 and have bundled it as a distribution.
    Not too sure yet whether I'll stick it on the web, (depends if i can scp into sourceforge i suppose).

0.2pre3 - 0.2 FINAL !
  Added i18n where appropriate.  Made some of the list view code more readable.
  Tried to sort out the tab orders but KDevelop is awful in that respect.  Most dialogs
    work as expected but a couple have their quirks.
  Added some toolbar buttons and enabled them in the code.
  Added a picture to the start dialog.
	Made the tabbed dialog use less screen estate.  (The widgets are only 20
		pixels high now instead of the default 30.  This MAY make it slightly
		harder to see.  Mail me if you want the widgets returned to their
		proper heights).

0.2pre2 - 0.2pre3
  This release fixes the 'bug' where I forgot to include the file opening/
  saving code that uses KFileDialog::getOpenFileName instead of the hard link
  to a file in my home directory.

  When I try using the KFileDialog under KDE 1.1.2 it complains that dcopserver
  isn't running and then load the server.  When the program is finished I have
  to manually kill dcopserver (and kdeinit) so I can get control back to
  KDevelop.

  By having the hard link to /home/mte/kmymoney2.kmy I can circumnavigate the
  KFileDialog code rather than having to kill dcopserver every time I run the
  program.  (I tried running dcopserver from a startup script but it didn't
  work.).

  If anyone can help me on using KFileDialog within KDE 1.1.2 please email me
  at mte@users.sourceforge.net.

  (I use KDE 1.1.2 because I use KDevelop 1.2)

  Any Help appreciated...
  Michael.

0.2pre1 - 0.2pre2
  Fixed the KStartupLogo class to actually find the picture to display on startup.
  Stopped using the DateInput class from calendar-0.13 and am now using my own widget, with
    some code temporarily used from KDatePicker until that widget gets updated in KDE (if it
    ever does, Iv'e mailed the maintainer requesting a change to the widgets code (16/08/00) ).
  Made the register view show two different background colours depending upon position.
    The colours will be user degined in a future version.
  Made the register view list refreshment a little bit quicker.  This will be looked at again
    in a future version.
  Removed all the labels from the *View dialogs and am now using QdbtTabulars to provide
    column alignment for numbers etc.
  Removed the *View dialogs and changed a little code in their previous files to reflect the
    changes.
  Made sure that ALL widgets resize properly.
  When adding a transaction and refreshing the transaction list the last transaction is shown
    at the bottom so the user does not have to scroll.
  Changed the Reconciliation dialog to show the new colours and bordering.
  Fixed bug in reconciliation dialog where the current date was written where it should have
    been the ending date.
  Cleaned up the reconciliation code and it now works ! (hopefully).

// Below is from an 'attic' type directory I kept whilst developing KMyMoney2.  They are not always
useful and sometimes errenous, but I have decided to integrate them purely for completeness.

0.2pre1
  Removed QdbtTabular from the source tree and we are now using
    a shared library.
  Added a KPayeeDlg class & dialog.
  Added a KReconcileDlg class & dialog.
  Added a KEndingBalanceDlg class & dialog.
  Removed kdbMoneyEdit from the source tree and am now using my own class (kMyMoneyEdit).
  Extensive API changes to MyMoneyMoney.
  Copy constructors and assignment operators added to all the mymoney classes.
  Quite a few changes to the mymoney classes actually, (added consts, &'s, removed a few methods etc).
  Switched to KDE2 Beta3 and QT2.2.0 beta0 (qt-copy-1.92).
  Changed the main window from KTMainWindow to KMainWindow and changed some affected code.
  Added income/expense support to categories and changed dialog and list view code to reflect these changes.
  Added a KNewCategoryDlg to edit the categories from KCategoriesDlg.
  Added code to load standard categories when a new file is created.  The data is loaded from
    $KDEDIR/share/apps/kmymoney2/default_categories.dat and the original is located in the source
    tree (./kmymoney2/default_categories.dat).
  We now prompt for the user to edit the categories when they are input into the editor.
    (This will be optional soon).
  The number field of MyMoneyTransaction has been changed to a string and all affected code has been modified.
  Removed (most of) the signed/unsigned comparison warnings.
  Almost reached a usable version with reconciliation now working.
  Made this release available on the web as almost 0.2 (stable).

180700
  Added a KQuickStartWizard class and an appropriate menu.
  Made KQuickStartWizard class work.
  Added a KStartDlg as a first contact for the user.
  Added an xpm for KStartDlg that represents the above mentioned wizard.
  Added a dialog to edit categories and sub categories. (KCategoriesDlg class).
  Added a new KCategoryListItem to support KCategoriesDlg.
  Made the tabbed input box 'remember' the major and minor categories.
  I have hidden the split button until I think I need it or someone e-mails
    asking to implement split transactions.
  Completed the KCategoryDlg editor class - apart from some interface issues.
  Fixed a long standing bug in MyMoneyMoney.
  Added a start balance to new account - should have been there a long time ago !
  Updated file format to include password and encryption fields (not used
yet).
  Added a payToList to the file format.

050700
  Release for the web.
  Started to make the interface work better.
  Fixed loads of bugs.
  Updated the web page.
  Added new screen shots section to the web page.

230600
  When the user selects an atm bank the description field is automatically updated for them.
  The banks list is now user specified and can be added by typing the new name in the appropriate
  combo box.
  Changed editFrame to a tabbed input box to resemble MS-MONEY.
  Added first steps to create account balancing.
  Changed from for to category and changed all relevant code.
  Started to make the tabbed input box work.
  File format is well fucked up.
  Tried to get the file format working again.
  Removed the option to set the sort type and removed all respective code.
  Added calendar-0.12 into the source tree rather than create my own DateValidator.
  Changed code to use this new widget.
    See kmymoney2/calendar/README for more information.
  Removed QSplitter stuff and moved the three lists into their own widgets.
  Added a main widget to control the list view widgets.
  Added some more controls to the lists view widgets.
  Added the tabbed input box to the transaction widget.
  Removed some extranous code.
  Fixed up KGeneric transaction to display data in labels when not editing like ms-money.
  Started making the interface look like it will do in version 1.  (Most of it prints
    a message saying that it isn't working yet !).
  Removed calendar-0.12 from the source tree.  You now need to install this prior to compiling.
  Added a new tabbed widget to control the different aspects of KMyMoney2.  The Main widget ((KMainView)
    is now one of the tabs (Accounts).
  Cleaned up KMainWnd (the class inherited from KTMainWindow) and it is now lean and clean.

  NOTHING WORKS AT THE MOMENT.

080600
  Changed the order and number of fields shown in transactionList.
  First attempt at fixing bugs in the list selection code.
  Fixed a couple of bugs in MyMoneyTransaction to fix the money represented as strings.
  Added ability to view balance at any time in the transactionList.
  Fixed up some code in the list viewing code.
  Made KDevelop 1.2 recognise some dialogs by hand editing the kmymoney2.kdevprj file.
  Cleaned up some of the dialogs.
  Added new variables to MyMoneyAccount and MyMoneyBank - FILE FORMAT IS NOW BROKEN.
  Updated dialogs to edit the new variables added above.
  File format now includes the new variables.  Old versions can't be read anymore.
  Added ability to right click on the transaction box to create a new transaction.
  Added ATM type to methods of transactions.  Updated file format again.


040600
  Added a settings dialog but it doesn't do much at the moment.

  I considered this stable enough so I entered all my past transactions
  and found about a million different bugs/wishlists, so I am now
  going to implement them all for the next release.  (A list can be found
  in TODO in the distribution.)

  NOT been released on web page.

020600
  Removed automatic list view updating and replaced with right click option
  'view contents'.
  Added ability to track access/modify dates.
  Updated file format to reflect new variables.

  NOT been released on web page.

010600
  Removed second toolbar, focus stuff, operation stuff.
  Added ability to right click on the list views.
  List views hide/show themselves appropriately.
  Removed toolbar pixmaps; edit, new, delete and the small logo.

  NOT been released on web page.

220500
  Some more bugs fixed and introduced !.  This is a file release for the
  web.

170500
  Fixed a few bugs in the file reading/opening code.

  Removed the KQuickViewDlg class and all the bank selection code.

  This is just another interim release before major structural changes
  made to the code - again.

160500
  Reimplemented the file opening/saving code using QDataStream's and fixed
  a few bugs.

140500
  Moved the MyMoney* classes to it's own sub-dir and now uses a library.

130500
  Finished converting MyMoney*.

090500
  First steps in making MyMoney* ready for a shared library.  This
  version WON'T compile due to undefined methods and KMainWnd
  not using the new methods.

060500
  Just added the MyMoneyBank class and added rudimentary support for
  it in the code.  Added a BankListView class as well to show the
  banks.

// No history before this point (Thanks to a lovely disk crash).
