CHANGELOG
=========

(most recent first)

*** Released 0.8 - 2005-11-01 ***

- When adding a new choice to a choice category after just a few have rows
  have already been set, the new choice was not available in the existing rows.
  This has been fixed.

- Fix problem with tag names for fields not being read in.

- Fixed default choices in fields.Field
  (After loading a file, all choice values are present in ever fields choice
  selector.)

- fixed wql reader plugin, broken in previous release

- fixed union_update to work with Python 2.4

*** Released 0.7 - 2005-10-19 ***

- Added some more help.

- Add timeout for plain flashcard mode after which answer auto-shown.

- Disable spinboxes when corresponding style not selected.

- When entering shortcut palette don't end editing mode.

- Save size of shortcut palette.

- Sped up MVL reader (for handling large files) by using sax.
  (3x speedup and 6x memory reduction for large files.)

- Handle external links in help browser by launching default web browser.

- Fixed 'Show with answer' attribute mode (broke it in the last release).

- Fixed item counter in quiz mode (for single item quizzes and initial value).

- Made the 'Start Quiz' toolbar icon more obvious, less confusable with help.
  (Thanks to Kate Wegener for suggesting this.)

- Deactivate the Shortcut Palette action if it was closed via the close button.

- Prevent crash when a shortcut is activated when the focus is on a choice.

- Automatically start quiz on 'View->Quiz View' when quiz not in progress.
  (Thanks to Kate Wegener for suggesting this.)

- Add metadata editor dialog.

- Confirm when overwriting file using 'Save As'.
  (Thanks to Karl Lauterbach for suggesting this.)

- Stop 'undo' undoing the initial row insertion.

- Clear dirty bit when upon opening a file from the recent file list.

- Made a legacy plugin for the old MML format, so that it can be easily
  converted.

- Got rid of the _readwrite_xml.py module. 
  (Brought the code into each plugin, since they are diverging now.)

- Changed Madabar datafile format to Madabar Vocab List (MVL) (.mvl, .xml)
  since it is more appropriate and doesn't clash with MathML (.mml).
  .xml is supported as an exension to easy allow it to be read with a browser.
  The new format links to a css stylesheet for that purpose.
  The format has been improved slightly.
  (Experimenting with XML+CSS shaped some of the decisions.)
  Now has metadata and data main sections.
  Root tag is madabar_vocab.
  The list of entry elements is enclosed in an entries element.
  Enumerated type values for content and alignment now are encoded with 
  strings, for a more readable file format, and easier debugging.

*** Released 0.6 - 2005-09-18 ***

- Added prevention of duplicate multiple choice answers appearing.

- Fixed problem with dirty bit not getting set.

- Fixed problem with adding new rows to a new table (due to uninitialised flag)

- Changed item progressbar to be items completed.

- Fixed Shortcuts Add dialog when config is empty.
  (Thanks to Karl Lauterbach for alerting me to this bug.)

- Fixed bug reading in WQL files with spaces in a value.
  (Thanks to Kate Wegener for alerting me to this bug.)

- Added the beginnings of a test suite.

- Added check for lack of config argument in shorctuts.ShortcutsListDialog.

*** Released 0.5 - 2005-09-13 ***

- Added python23_support to all modules that use True/False for supporting
  Python 2.2.

- Fix/workaround Python 2.2 unicode sys.path issue in datafile.py.

- Do another TableItem args backward compatibility fix for Qt 3.1

- Fix vestigial reference to Category in sort_dialog.ui/.py code.

*** Released 0.4 - 2005-09-10 ***

- Add WordQuiz Language (WQL) datafile reader plugin.
  (Thanks to Karl Lauterbach for suggesting this.)

- Replace QSizePolicy SizeType enumeration values (from pyuic output) with 
  the attributes. (for PyQt >= 3.14 support)
  (Thanks to James Tauber for reporting this problem.)

- Backport Qt.WState_Polished if not available. (for Qt 3.1 support)

- Make TableItem args backwardly compatible with Qt 3.1.

- Attempt fix for Python 2.2 unicode sys.path issue in datafile.py.

- Improve support for Python >= 2.2.1 by using python23_support.py to
  provide enumerate and co if they are not available.

- Add website URL to the about text.

*** Released 0.3 - 2005-09-05 ***

- Make default file format name be MML (rather than XML).

- Make file reader/writer plugin interface.

- Make a .backup before writing file when saving.

- Handle unhandled exceptions gracefully (bug report dialog).

- Change config domain and product to updated values.

- Fix crash when opening a file with more rows than the previous file.

- Raise error on lack of fields section in MML file.

- Renamed Category as Field.

*** Released 0.2 - 2005-08-22 ***

- Show name of next undoable action with the Undo menu action.

- Stop 'Undid None' message occurring when undoing the last item on the undo
  stack (should be output the message for that item).

- Fix bug where undoing changes to inactive rows causes segfault, or instant
  exit.

- Fix choice categories when adding a new choice category.

- Fix handling of changing category order via category editor.
  (Old values were getting blown away.)

- Fix behaviour when adding a choice to an existing choice category.
  (All the choice values for that category were being reset.)

- Automatically create default tag name in category properties dialog.

- Fix updating of preview button in Shortcut Properties.

- Allow shortcuts in quiz view.

- Display attributes in same order as in editor view.

- Choose better default attributes.

- Fix layout being added to QuizWidget when it already has a layout,
  when doing 'check attributes'.

- Rebuild question/answer map if data modified during a quiz.

- Make pressing space in a text entry widget cause it to go into edit mode.

- Make pressing enter when choice widget active cause it to finalise choice
  before making new row.

- Show Unicode code point in Shortcut Properties

- Add support for comma separated synonyms.

- Put timeout on statusbar messages.

- Fix bug in editor.Table.clearSelectedItems.

- Make shortcuts palette horizontal, with max number of columns, and 
  maximum size policy.


*** Released 0.1 - 2005-08-15 ***

- Add toolbar buttons for cut, copy, paste, undo, start quiz.

- Have alternate toolbar when in quiz view.

- Fix flash cards in show_with_answer mode for attributes (they are not 
  being shown at the moment)

- Fix marking when showing attributes with question and there are 
  multiple identical answers.
  Also broken when showing attributes with answer if the attribute info
  is not gleanable from the question.

- Make application icon.

- Add license text file (and add to help).

- Add print to help browser.

- Add find, about, helpcontents to help browser.

- Add help browser.

- Add error messageboxes for opening missing recent files..

- Add statusbar messages. (e.g. file saved successfully)

- Fix bug where categories are not being updated for the quiz,
  after a new file is opened.
  (problem was scheme getting out of sync)

- Show attributes in write answer mode.

- Pass and Show buttons for flash card mode.

- Fix write answer mode. (always marks answers wrong)

- Add undo support.

- Add Clear (Edit menu item)

- Add sort.

- Add cut/copy/paste support when in line editing mode.

- Improve KVTML import. (e.g. category headings)

- Support 'start quiz on selection'.

- Add refreshing if the word list is changed while in the middle of a quiz.

- Mark answer as right or wrong (tick/cross)

- Support multi-choice selection via keyboard.

- Fix marking when the same word is presented as a choice with different 
  genders in show attribute mode.

- Add option to show attributes during quiz (mutex with testing on attrs).

- Support display of attributes next to multi choice answers

- When opening a new file when in quiz mode, reset the quiz view.

- Fix handling of synonyms in multi-choice.
  (do a reverse check.)

- Update score before signalling end of quiz.

- Check attributes for answers.

- Clear radio selection for each question.

- Fix finish of plain flash card quiz.

- Give application proper name (Madabar?)

- Vertically align the answer widget.

- Make answer multiple choices expand to fill entire answer box.

- Hide attributes box when not being used.

- Reset quiz display at the end of the quiz.

- Delete contents of GroupBox properly.
  (For multi-choice mode.)

- Fix handling of blanks in multi-choice.

- Fix starting quiz when there is only one row.

- Fix segfault when restarting quiz for the third or forth time.
  (For multi-choice mode.)

- Fix closing of app when quiz has been started. (X Error Bad Window)
  (This is due to some problem in radio_choice.py)

- Make quiz view and editor view be mutex menu items (ActionGroup).

- Prompt for save when using top-right close button.

- Fix behaviour of insert row (i.e. where cursor ends up).

- Fix insert rows when no row is selected. (Should insert one row.)

- Set dirty bit when categories are modified.

- Disable save toolbar button when file is clean.

- Fix erratic behaviour with choice widgets in the table when changing value.

- Support fonts properly in Shortcuts properties dialog.

- Put filename in titlebar.

- Set unicode selector to appropriate settings when editing shortcut 
  properties.

- Unbind old bindings when bindings are changed.

- Display shortcut text and accelerator as well in shortcut list.

- Change ListDialog list widget to ListView to allow multiple columns.

- Add some way to program shortcuts for special characters (e.g. vowel points)

- Delete/insert multiple rows based on selection.

- Add cut/copy/paste support.

- Fix item progress bar when not doing subset.

- Add dirty bit and prompt to save on exit.

- Implement fileExit.

- Fix handling of large editor fonts.

- Add action to swap question and answer fonts.

- Add answer font setting.

- Support plain flash card mode.

- Change font of Last Question display to match question font, 
  but perhaps smaller?

- Support direct entry of answers.

- Add repeat mistakes button to end of quiz message box.

