Changes
=======

4.12 (17.06.00)

   - Bumped version to 4.12
   - Started work on the JavaScript interpreter, the standard we're working
     from is ECMA-262
   - The script lexer supports all operators, syntax, and statements
   - Fixed image placements
   - Fixed text placings around images
   - Links are back and working, now supports ALINK, and VLINK from the
     BODY tag, the link destination is displayed (temporarily on the
     console), and once I manage the hard task of drawing a pointer to
     be displayed when it hovers over a link that'll be done too

4.11 (23.04.00)

   - Bumped version to 4.11
   - Dry Ice now supports 62 HTML 4.0 features
   - Fixed lots of text related bugs
   - Fixed text wrapping
   - Unordered lists now use a fixed size image
   - NOSHADE boolean attribute supported for HR

4.10 (19.04.00)

   - Bumped version to 4.10
   - Fixed a preferences bug
   - Scrolling is now a little better (it'll only scroll down tho)
   - Sorted out some alignment issues
   - Fixed text wrapping so it's only slightly less messed up :P

4.9 (11.04.00)

   - Bumped version to 4.9
   - Dry Ice is now re-entrant!  This has broken some things however
   - Fixed some of the broken things
   - Multiple browser windows supported - a "New browser" menu item
   - If Dry Ice is loaded more than once then it will simply open a new
     browser window rather than loading the entire program again
   - Fixed another lexer bug
   - Public screen support
      * Screen preferences, can select screen font and gadget fonts
      * Can select any public screen to open on
      * Can move all of its windows (very fast) to another public
        screen while running

4.8 (04.04.00)

   - Bumped version to 4.8
   - Fixed a colour bug
   - Finished the HTML Font Preferences system, can configure HTML fonts
     H1-H6, the 7 sizes in the FONT tag, and the default font
   - Links are now displayed in a different colour (...each time :( )
   - The LINK attribute for the BODY tag is now supported
   - Fixed some bugs

4.7 (26.03.00)

   - Bumped version to 4.7
   - Now a lot more stable
   - Scrolling works, although it's a little quirky and the arrow buttons
     don't work
   - For viewing pages that are larger than the SCREEN height you need
     to refresh the page to see it properly (grrrrrr)
   - Fixed <TITLE>
   - The title would disappear when you return to a page, fixed
   - <Hn> now (rightly) starts on a new line
   - <BASEFONT> added - supports the FACE, SIZE and COLOR attributes
   - <FONT> added - supports the SIZE attribute
   - Re-introduced the polymorphic scope system
   - The whole font system was getting a little messy - cleaned it up
   - Added the COLOR and FACE attributes to the FONT tag
   - The code for <SUP> and <SUB> is incompatible with the new font system
     and has been removed
   - The ASL requester and the string gadget in the open-file window now
     remember the last file
   - Did some more work on tables

4.6 (26.03.00)

   - Bumped version to 4.6
   - Set up a few things for images support
   - Changed the process name of the layouter to something less
     sensible :P
   - URL parser now handles IP numbers
   - Relative URL's in links now work
   - Unix pathname syntax supported - this is useful if you're viewing
     a page on your hard disk which has the "dot dot" unix syntax,
     or developing multi-directory webpages on your computer
   - Implemented a Refresh document function
   - Fixed a bug which caused Dry Ice to hang whenever it encountered
     a '&' character in a document
   - Case insensitive colour names supported
   - Fixed the palette bug which would cause Dry Ice to steal
     and change others' pens

4.5 (22.03.00)

   - Bumped version to 4.5
   - Complete overhaul of the GUI
   - Arrow buttons that actually work
   - Public screen support, Dry Ice can open on any public screen, or create
     its own public screen that other applications can open on
   - New "About" window - now shows free memory, net connection status, and
     public screen name
   - Back/Forward menu items - pages are currently memory cached for that
     session
   - Improved redraw speed when window is resized

4.4 (17.03.00)

   - Bumped version to 4.4
   - Broke scrolling completely :(
   - Added link support (the <A> tag, HREF attribute)

4.3 (11.03.00)

   - Bumped version to 4.3
   - Read a paper about a technique known as anonymous lexing, been having
     a play with and it looks promising
   - Committed the new lexing code
   - Fixed a big bug which caused Dry Ice to guru on 90% of webpages
   - Increased tolerance of bad HTML
   - Support for case-insensitive tag and attribute names at last (sorry!)
   - Window titlebar displays the page's URL if the TITLE tag is not
     present
   - Improved file handling

4.2 (10.03.00)

   - Bumped version to 4.2
   - Added support for superscript text <SUP>
   - Added support for subscript text <SUB>
   - Added support for <VAR>
   - Wrote a semi-working bubble-help system, of the kind which I've not
     seen on non-MUI systems
   - Re-started table support (this is honestly the hardest thing I've
     ever programmed!) the parser recognises TABLE, TR, TD, and will set
     up a table representation in memory which all seems to work correctly,
     even for odd tables
   - Implemented the horizontal rule tag (<HR>) - supports the attributes
     WIDTH (accepts absolute and percentage values), HEIGHT, ALIGN (accepts
     center, left, or right)
   - Implemented HTML colour support, also recognises the preset colours
     black, silver, gray, white, maroon, red, purple, fuchsia, green, lime
     olive, yellow, navy, blue, teal and aqua
   - Added support for the <BODY> tag - supports the attributes BGCOLOR
     (with values as hex colour-codes or a preset), TEXT (with values as
     hex colour-codes or a preset), and the attributes LEFTMARGIN,
     RIGHTMARGIN, TOPMARGIN, BOTTOMMARGIN
   - Removed the malfunctioning webstream and socketstream classes - access
     to the web will come later

4.1 (01.03.00)

   - Bumped version to 4.1
   - Major re-write, still has problems but it's more stable,
     does pages better, quicker
   - Fixed a small bug in the area sub-system
   - Busy pointer appears when the application is stuffed
   - Upgraded the internal message passing system to handle the
     new icecubes
   - Fixed the ordered lists alphabetical numbering - what comes
     after Z?  Dry Ice knows :)
   - Fixed the ordered lists roman numbering system too
   - Fixed the handling of when lists need refreshing
   - Completely re-wrote the handling of definition lists
   - Generates bullet sumbols dynamicaly instead of using saved
     ones
   - Fixed the VALUE attribute for the LI element
   - Fixed a bug which caused lines of text to over-run the
     the width of the window in some cases
   - HTML 4.0 IMG tag, supports WIDTH and HEIGHT attributes (absolute
     values only at this time), the ALIGN attribute, recognises the
     values BOTTOM, MIDDLE, TOP, LEFT, RIGHT - sets aside space for
     images and correctly handles text wrapping with all of the
     align settings

3.16 (17.02.00)

   - Bumped version to 3.16
   - Now possible to change the size of the window
   - Will redraw (very quickly) the page if the window is resized
   - Problems!  The way I had planned to do part of the layouter appears
     to be OS illegal and will cause problems on future versions (should
     there be any - hopefully my pessimism won't be in vain!).  But anyway,
     it means a serious re-write of certain things is going to be in order.

3.15 (10.02.00)

   - Bumped version to 3.15
   - Fixed a bug with in the open-window
   - Fixed the spacing bug
   - Re-wrote the layouter (hopefully for the last time), the new layout
     class is smaller and faster
   - Knocked up a GUI Settings window - harded coded to topaz 8 for MUI
     fans :P
   - Fixed the slowdown bug from the parser

3.14 (05.02.00)

   - Bumped version to 3.14
   - Added a DMPS to cope with links in a better fashion
   - HTML 4.0 <TITLE> element
   - Layouter can display  left, right, centred (sorry, "centered" :P )
     and justified text (this is required by several attributes)
   - Links are now semi-working
   - Fixed the menu numbering
   - Added the Project/Open menu item, brings up a window which asks
     for an URL or filename, it is intelligent enough to know if what
     you're after is an URL or a filename, and you don't even have to type
     the "file://localhost/" or "http://" parts

3.13 (03.02.00)

   - Bumped version to 3.13
   - Added a cool new mechanism to the layouter
   - Optimized handling of all of the list tags
   - Introduced a hoarde of strange new bugs with the above 'improvements'

3.12 (01.02.00)

   - Bumped version to 3.12
   - Completely re-wrote the HTML lexer
   - Optimized the layouter
   - Fixed a minor parsing bug
   - Fixed a minor spacing bug
   - Fixed a bug which caused a space to be printed at the start of a
     new line
   - Fixed a font positioning bug that caused the baselines of different
     sized fonts to be mis-aligned

3.11 (31.01.00)

   - Bumped version to 3.11
   - New Layouter underway
   - "Improved" the HTML lexer, which just FUBAR'd that too, man I think
     I'll call it a day :/

3.10 (29.01.00)

   - Bumped version to 3.10
   - Layouter: uses a stored image of the bullet points for HTML lists
     rather than a dynamically generated one - this opens up the possibilty
     of the user being able to customize their bullets (on the todo list)
   - Cleaned up some of the 500+ syntax and semantical errors that have
     creeped in recently
   - Overhauled the lexer; now 25% smaller, and handles numbers and dashes
     in attribute names

3.9 (27.01.00)

   - Bumped version to 3.9
   - Will recognise when to change the mouse pointer (i.e. when the pointer
     is over a link)
   - Fixed a bug that caused Dry Ice to lose the next word after any of
     the list tags
   - The table system is rubbish - starting again

3.8 (26.01.00)

   - Bumped version to 3.8
   - Defined some preliminary structures to deal with tables (this is
     complex)
   - Defined more structures for table support
   - Preliminary support for incrementally rendered tables
   - Added a dryice directory in my ENVARC:
   - Added HTML 4.0 Heading elements (<H1>, <H2>, <H3>, <H4>, <H5>, <H6>)
   - Created an alternative pointer image for when the mouse is over a
     link

3.7 (23.01.00)

   - Bumped version to 3.7
   - Fixed a few things about wrapping text
   - Updated the layouter ready for future HTML table support
   - Added all the below tag names into the new vocabulary
   - Dry Ice is now almost 3,000 lines of C++ - tiny!

3.6 (05.01.00)

   - Bumped version to 3.6
   - Added a new generic message passing system which should reduce memory
     usage
   - Full HTML 4.0 Lists
      + Unordered list (<UL>).  Supports the attributes:
         * TYPE: support for the values SQUARE, DISC and CIRCLE
      + Ordered list (<OL>).  Supports the attributes:
         * TYPE: support for integer, lower-alphabetic,
           upper-alphabetic, lower-roman, upper-roman numbering systems
         * START
      + List Items (<LI>).  Supports the attributes:
         * VALUE
         * COMPACT (Dry Ice ignores this attribute)
      + Definition Lists (<DL>, <DT>, <DD>)
   - Optimised layout code to handle lists better
   - HTML 4.0 Emphasis element (<EM>)
   - HTML 4.0 Strong emphasis element (<STRONG>)

3.5 (03.01.00)

   - Bumped version to 3.5
   - Re-fixed that damn concurrency engine(!)
   - Tidied up the exit code
   - Added menu shortcuts
   - Improved layout routines
   - Some (very) simple scrolling for HTML pages larger than the window,
     will re-write properly SOT
   - Recognises clicked points in bitmaps larger than the window

3.4 (30.12.99)

   - Bumped version to 3.4
   - Fixed a few bugs
   - Fixed one of the concurrency engines

3.3 (29.12.99)

   - Bumped version to 3.3
   - Improved URL parser

