New Features in the Editor/GUI
------------------------------

Version 1.2a Changes
====================                
ee.ex         help is now derived from the LIBRARY.DOC file

keywords.e    rewrite. added new keywords, changed logic for building list
              of builtin and library words. should be easier to maintain.

d_help.e      larger screen space.

color.e       changed flush() to flushSeg().

makehelp.bas  allows for more name collisions.

Version 1.1 Changes
====================                
ee.ex       line 372 and 474. instead of displaying line number in status
            bar, displays "Loading File..." and "Saving File..."

subs.e      line 10. added slice routine to ensure that slice taken from
            string was valid.
            
            line 31. rewrote 'function' and 'procedure' gathering routines.
            This had blown up when parsing a file.

d_search.e  line 170. changed 5 to 6, so pressing enter selects default of
            'Replace', not 'Replace All'.

Version 0.9f Changes
====================

files.e     line 350. changed routine to return "n" (new file) if the
            directory is valid, but the file does not exist.

ee.e        line 2123. changed code to accept "n" as well as "d".

d_saveas.e  line 147. changed code to accept new file names ("n") as well
            as existing file names.

Version 0.9e Changes
====================

ee.e        line 2123. changed code to accept files found in other
            directories.


Version 0.9d Changes
====================

keys.e      line 106. CTRL_INSERT defined as 402; prior versions had the
            incorrect value of 403.

            line 99. Added F11 and F12 to the key definitions

xle.e       line 1268. Ctrl+Insert was not working for the "Copy" command.
            Changed:

                or ( keyPress = INSERT and ctrl_key_state() )

            into:

                or ( keyPress = CTRL_INSERT )

color.e     line 100. The syntax coloring would bomb if there were nulls 
            (ASCII 0) in the text. Changed:

                -- get the class
                class = char_class[c]
            
            into:
            
                -- get the class
                if c then
                    -- find value
                    class = char_class[c]
                else
                    -- null
                    class = OTHER
                end if
                
ee.ex   various changes to implement macros:

            Ctrl+F12    Starts/Stops recording of macro
            Shift+F12   Append to prior macro
            F12         Run macro    

        removed with trace() option


Version 0.9c Changes
====================

d_saveas.e  line 27. same correction as 0.9a. somehow it managed to creep
            back into the distribution code.

svgamode.e  line 207. changed 'shoe_mouse' back to 'show_mouse'.

keywords.e  added a list of library keywords to supplement the builtin 
            keyword list.

color.e     added LIBRARY_COLOR of BRIGHT_MAGENTA for library keywords.
            added logic for coloring library words.

keys.e      added code to optionally display clock in the menu bar

ee.ex       link in code to display clock in the menu bar
            changed the version number to 0.9a

Version 0.9b Changes
====================

vga.e       added missing hide_mouse(). was leaving junk on the screen.

svga.e      added missing hide_mouse(). was leaving junk on the screen.

d_set.e     changing resolution effects all of the windows, not just the 
            active one. converted the code that changes a single line into
            a loop.
            
ee.ex       in dos_call, changed:

                -- restore video mode
                result = graphics_mode( vc[VC_MODE] )
                result = text_rows( vc[VC_MODE] )                

            to 

                -- restore video mode
                result = graphics_mode( vc[VC_MODE] )
                result = text_rows( vc[VC_LINES] )                
                SCREEN_WIDE = vc[VC_COLUMNS]
                SCREEN_DEEP = vc[VC_LINES]
                
            so the proper number of lines would be restored, and the
            screen size would be correct. 


ee.ee       display of error lines that were past the right margin was
            causing errors. changed:  (The code is in PP form)

                -- move to error column
                @FIRST_CHAR = 1
                @CURSOR = err[4]
                -- scroll right, if needed
                while @FIRST_CHAR + @WIDE - 1 < @CURSOR do
                    @FIRST_CHAR =+ @WIDE
                end while
                

            to:

                -- move to error column
                @FIRST_CHAR = 1
        
                -- scroll right, if needed
                while @FIRST_CHAR + @WIDE - 1 < err[4] do
                    @FIRST_CHAR =+ @WIDE
                end while
                
                -- position cursor
                @CURSOR = err[4] - @FIRST_CHAR + 1


Version 0.9a Changes
====================

conversion log  10/26/97
    corrections made to bring .P and .E files in sync
----------------------------------------------------------------------------
control.p       line 77     added MASK attribute
                line 208    increased alloted attributes to 34
                
dialog.p        line 78     added MOUSE_HELD to tests
                line 235    added left, top as variables
                line 239    calculated values for left, top
                
d_saveas.p      line 27     sle depth is zero

d_search.p      line 15     corrected indent
                line 51     * 256 color version was missing help text
                line 314    only displays line number every 64 lines
                general     corrected indentation of whole file
                
d_subs.p        line 8      added not_blanks() function
                line 36     test for blank function name
                line 49     filter out blank procedure names

files.p         line 316    test for non-empty node before adding "\"

faster clean routine in XLE.E

Version 0.85b Changes
=====================
1.  Fixed: Borland UI Had Undefined
2.  Fixed: and_bits on mouse check
3.  Fixed: Win31 UI uses bright white
4.  Added: Norton GUI
5.  Fixed: Mac button only black on press
6.  Added: OS/2 Merlin GUI

Version 0.85 Changes
====================
1.  Added: Close Box on Dialogs in DIALOG.E, CONTROL.E
    A variable CLOSE_BOX_COL contains the position of the window's close
    box relative to the edge. A negative value places the close box on the
    right side, and a positive value on the left.

2.  Added: Plain GUI as PLAIN.E, GUI.E
    This GUI is based on the Text GUI design in the freeware package by
    Plain Designs, which inspired me to do the graphical GUI in the first
    place.

    I've also set this GUI up as the default.

3.  Fixed: Easier to Press Close Button in DIALOG.E
    Since the close button does not always lie on a text {col, row}, I
    changed the code to allow for a "near" hit of the button.

3.  Added: Close Box in GUIs:

        BORLAND.E
        COPLAND.E
        MAC.E
        MOTIF.E
        PLAIN.E
        WIN31.E
        WIN95.E

4.  Fixed: X/Y to R/C in GUIs:
    The 'x' and 'y' references were often reversed in the GUI code. Changing
    the references to the 'r' (row) and 'c' (column) should correct any
    confusion.

        BORLAND.E
        COPLAND.E
        MAC.E
        MOTIF.E
        PLAIN.E
        WIN31.E

5.  Fixed: Cosmetic Changes to Mac Interface in MAC.E
    The title bar colors have been corrected, and the window now has a
    shadow.
    
6.  Fixed: Cosmetic Changes to Motif Interface in MOTIF.E
    The Motif interface is now chunkier than ever. 

7.  Fixed: Cosmetic Changes to Windows 95 Interface in WIN95.E
    There was a (very) minor adjustment to the button drawing code.

8.  Fixed: Error Returned on Successful Binding
    The test logic was backwards.
    
9.  Added: Run Correct EX/EXW Based On Extension
    The extension is looked at to determine whether to use EX.EXE or
    EXW.EXE.
    
10. Added: Binding Looks at Extension
    The extension is looked at to determine whether to bind with BIND.EXE
    or BINDW.EXE.
    
11. Changes: Close Box in Text Mode
    I'm now using a block character instead of an 'X'.



Version 0.84a Changes
====================

1.  Fixed: Environment Variable Return Value in INI.E
    The type return by env() should have been 'object', not 'sequence'.
    This would error out if the Euphoria environment variable had not
    been set.

