ͻ
 A Euphoria Text-Based Graphical User Interface Toolkit              v1.2b 
  * Includes an IDE for Euphoria written using the toolkit                 
  * Also includes graphic mode support with various user interfaces        
     (c) David Cuny                                                        
     January 28, 2000                                                      
     Internet:  dcuny@lanset.com                                           
ͼ

    This release fixes a name collision, and builds help topics on the fly.

ͻ
 What Is This?                                                             
ͼ

   This is a text-based GUI toolkit, written entirely in Euphoria. The toolkit 
   provides you with many of the controls that people have come to expect in 
   applications:

        - Drop-down menus
        - Dialog boxes
        - Multi-line edits
        - Lists
        - Single-line edits
        - Command buttons
        - Radio buttons
        - Check boxes    

   Since these are pre-built and tested, you can concentrate on the 
   interesting part of your application. For more detailed information, refer 
   to the file TEXT_GUI.TXT.


ͻ
 The Euphoria Editor                                                       
ͼ

   The Euphoria Editor was intially written to demo of the GUI Toolkit, but 
   has turned into a full IDE for Euphoria. To run the editor, type:

        EX EE {filename}

   where {filename} is an optional parameter of a file to edit.

   The editor has the "look and feel" of the DOS Editor found in Windows 95, 
   with a number of features taken from the editor that comes with Euphoria 
   (ed.ex), as well as QBASIC. 

   I've been using the editor for a while, and it's stable - but I'm
   sure there are bugs just waiting to be discovered. So save on a regular
   basis - it's just good policy.

   Finally, if you plan on using the editor on a regular basis, you will 
   probably want to bind it into an executable - it seems to speed the load 
   time. I place my executable version in \EUPHORIA\BIN.

   Note: Because it EE uses routine_id, if you are using Euphoria 2.0 beta or
         later, you will have to bind it with the options:

            BIND -clear_routines ee.ex

   The editor has context-sensitive help on the built-in functions in
   Euphoria. To access those functions, place the cursor on the word you 
   want, and press the F1 key.

   The editor expects the file LIBRARY.DOC to be located in the Euphoria
   directory, in:

    \EUPHORIA\DOC

   The editor also creates an INI file with your preferences (set in the
   Options menu). This file is called EE.INI, and is placed in the BIN
   directory.

ͻ
 What's New With Version 1.2b                                              
ͼ

    INI file is placed in BIN
    
    Since the EDITOR directory (which used to hold the INI file) is no longer 
    needed, I decided to place the INI file in \EUPHORIA\BIN instead


ͻ
 What's New With Version 1.2                                               
ͼ

    Fixed Keyword Collision
    
    flush() is now a Euphoria keyword, so there was a naming conflict with
    my own code.

    Context Sensitive Help Built from LIBRARY.DOC
    
    The context-sensitive keywords are now build from the LIBRARY.DOC file.
    This means the file will remain current with new Euphoria releases.


ͻ
 What's New With Version 1.1                                               
ͼ

    Bug Fix In View|Subs
    
    The code was not always parsing the name of the routine correctly, and
    in some cases caused the program to abort. This has been corrected.
    

    Bug Fix In Search|Replace
    
    Pressing Enter in the Search|Replace dialog now selects 'Replace'
    instead of 'Replace All'.


    Faster Loading/Saving
    
    The Load and Save options no longer display the line numbers as the
    run, and the speed is much better.
    


ͻ
 What's New With Version 1.0c                                              
ͼ

    Code Auto Completion
    
    Similar to ED, EE now will auto complete code as you type it. There are
    several differences, based on my (no doubt quirky) preferences:

        1. EE only partially auto completes the FOR clause. I've always
           found ED's insertion of the whole clause just gets in my way.
           I virtually never use the 'by' option, and it's faster to type
           in the words than it is to move past them in ED.

        2. EE does not add automatically add the parenthesis on functions,
           procedures and types. Again, I find it faster to type these than
           to use the arrow key to pass by them.

        3. Pressing enter on a line that is being auto completed moves
           you to the end of the next line without breaking the line in
           half. I find this easier than pressing the Down Arrow key.


    Bind Uses -clear_routine
    
    Almost all my code uses routine_id() somewhere in it, so I've made this
    the default bind option.
                           
                           
    Cleaned up XLE.E Source
    
    The indent code in XLE.E got trashed some time back when EE clashed with
    ED over how to handle indentation. I've cleaned the code up so it is
    again readable and sensibly indented.
    

    Check For EOL
    
    EE now checks for EOL characters, rather than blindly stripping off the
    last character of each line and assuming that it was an EOL. I had
    removed this option to increase speed, but some people had been having
    trouble with this.


    Check For File Size
    
    EE would crash if you tried to load a file of size zero. This is now
    trapped and gracefully handled.


ͻ
 What's New With Version 0.9f                                              
ͼ

    Save As File Error
    
    The corrections of 0.9e were not complete, and would not allow saving
    a file under a new file name. This release corrects that, and hopefully
    another intermittant bug in Save As.

ͻ
 What's New With Version 0.9e                                              
ͼ

    Load File Error
    
    When loading a file that was not in the current directory, such as:
    
       EX EE C:\AUTOEXEC.BAT
       
    the title of the file would be displayed, but the file was not loaded
    because EE was only looking in the current directory. This has been
    corrected.
      
    Documentation Error in full_path
    
    The full_path() routine in FILES.E had incorrectly stated that the return 
    parameters were:
    
       { FileType, FullyQualifiedFileName, PathName, FileName }
       
    when in fact the returned values were:
    
       { PathName, FileName, FileType }       
           

ͻ
 What's New With Version 0.9d - Christopher Hickman Edition                
ͼ
    
    Virtually all the changes in this version came about because of a
    bug report (with fixes!) from Christopher Hickman. Additionally, he
    suggested a keystroke macro which I've added.    

    Keystroke Macro
    
    You can now record a series of keystrokes, and play them back. The
    following keys are used:

        F12         Play a recorded macro back
        Ctrl+F12    Begin recording the macro
        Shift+F12   Append to an existing macro

    An "MR" will appear in the bottom right of the status bar to indicate
    that a macro is being recorded. It will become an "M" once a macro is
    recorded to indicate there is a macro that can be played back.

    Mouse events are NOT recorded as part of the macro.


    Bugs Fixed
    
    Ctrl+Insert were not working as "Copy" command
    Nulls in text file would cause program to abort

    Refer to CHANGES.TXT for more information.


ͻ
 Known GUI Bugs                                                            
ͼ

    1. Clicking an SLE in graphic mode selects the wrong character position -
       it's off by 1 character.

    2. Mouse support is missing in the MASK edit tools.

    3. The documentation is not always accurate.


ͻ
 Known Editor Bugs                                                         
ͼ

    1. If you try to read or write to a floppy drive and the disk is not
       ready, you will get a DOS level error that I don't gracefully recover
       from (it may cause a crash).

    2. You can save a graphics mode video screen, but if you try to display
       it, you will see junk. This is because the screen save routine is not
       correctly detecting the video mode.

       It appears that Euphoria *cannot* correctly detect the video mode if
       a different program has run, because it's state flags get out of sync.
       I may not be able to support this feature.


ͻ
 Using Graphic Mode Support                                                
ͼ
        
    The Graphics Mode allows you to use the GUI to generate programs with a
    look and feel similar to Windows or Mac programs.
    
    The Graphics Mode is designed to be 100% compatible with text mode. This    
    means that if you design a screen in text mode, you will not have to 
    make any changes to the screen to get it to display in graphics mode.

    Graphics Mode is obviously slower than text mode. I would *not* recommend
    using the editor in Graphics Mode. This is because the text display is
    slow, and syntax coloring makes it worse.

    There is only one bug that I know of remaining in Graphic mode: printing
    a character in the lower right hand corner caused the screen to scroll.
    I've got a patch to take care of it, but a side effect of the patch is
    that only the color, and not the text, will be printed in that one
    position.

    Selecting Graphics Mode
    

    To select graphic mode, change the constant RESOLUTION in SCREEN.E from:

        RESOLUTION = 0  -- text mode GUI

    to:

        RESOLUTION = 1  -- graphic mode 18 GUI

    Selecting a User Interface
    
    There are several files provided that will give you a different look and
    feel:

        WIN31.E         Windows 3.1
        WIN95.E         Windows 95
        BORLAND.E       Windows 95 with Borland's radio buttons & check boxes
        MAC.E           "Classic" monochrome Macintosh
        COPLAND.E       Macintosh Copland experience
        MOTIF.E         X-Windows, "Motif" look

    The file is loaded in the last line of GUI.E. Just comment out the
    old interface, and un-comment the one that you want.

