

     *******  *******      ******      **************    *********
      *****    *****     **********     *****   *****  *****   *****
      *****    *****    *****  *****    *****         *****     *****
       *****  *****    *****    *****   *****   ***   ******
         ********      **************   ***********     ***********
       *****  *****    *****    *****   *****   ***            ******
      *****    *****   *****    *****   *****         *****     *****
      *****    *****   *****    *****   *****   *****  *****   *****
     *******  ******* *******  ******* **************    ********* 

                       X A E S   B A C K G R O U N D

                          XAES Background  (LTMF-2)
                          -------------------------

                     (Updated versions  of Let 'em Fly)

                               Version 0.99A
                                 May  1994

           (c) 1991-94 Freaky Deaky Software and Bitgate Software

  Written in C and Assembly by Oliver Scheel, Ken Hollis and Darryl Piper

                              (it's  Shareware)


                                 Introduction
                               ================

Major news:  Let 'em Fly has been taken over by Bitgate Software.  The main
reason being because Oliver Scheel has left the Atari scene, and allowed
Darryl and I to update the program.  You will see more updates here and
there, probably every two months.  For new additions that will be added,
please see the end of this document.

Other news, Let 'em Fly is now known as XAES.  What does this mean?  It's
to stop all of the confusion of the versions of Let 'em Fly that are
already roaming around out there.  Since Let 'em Fly has changed to XAES,
the next major release that is done will be XAES 1.00 (version number) so
it will stop confusion.  The next version looks very promising.


                           About XAES Background
                         =========================

With XAES Background in your AUTO-Folder, many normal GEM dialogs learn to
fly like Julian Reschke's FlyDials (e.g. in Gemini).  Furthermore, these
dialogs can be handled by using the shortcuts XAES Background offers.  There
are many more features!  The most important are:

- flying dials
    As already described, many GEM dialogs learn to fly.  This means you 
    can drag them around by using the mouse (ie. moving them by clicking a
	non-selectable spot in the dialog or clicking outside of the dialog).
	This requires that programs use the right AES calls to handle
	dialogs.

- key dials
    Many dialogs can be operated by using shortcuts.  XAES Background scans 
    the dialog for possible keys.  For example, the button 'Cancel' may 
    be activated by pressing [UNDO] and/or [ALT]+[C].  Also, if there are
	any dialog boxes that are displayed, and they don't contain any
	editable text items (ie. FTEXT type) you can activate a key dial by
	simply pressing the corresponding key without [ALT].

- new edit functions within editable fields
    This includes clipboard support, a history and a special character box 
    to enter 'ugly' chars.  You can also reposition the cursor within the
	dialog box by using the mouse, and clicking a space within the editable
	item.

- new alert boxes with new icons
    The alert boxes have also been reimplemented.  They look more 'right 
    sized' and allow to load new icons.

- grow and shrink boxes can be switched off
    To speed up building the screen, XAES Background allows you to switch
	off the grow and shrink boxes.

- no pilot's licence needed
    You got it!  For using XAES Background, you don't need to absolve
	flying lessons.  Basic experiences in using the mouse should be
	known, though...


XAES Background works on Atari ST/STe/TT/Falcon computers under all 
resolutions, including true color.  The new MultiTOS is supported, too,
sort of...

XAES Background comes with no warranty.  This means that the authors will
not be liable for any damage which may caused by using or not using Let
'em Fly II.

XAES Background is Shareware.  This means that this program may be freely
used and distributed for non-commercial use.  All rights are reserved by
the authors!

The XAES Background distribution package:

     - XAES_BG .PRG           the program itself

     - GEM1ICON.RSC           the original Atari icons
     - GEM2ICON.RSC           the GEM/2 icons
     - LTMFICON.RSC           the XAES Background icons

     - XAES_BG .TXT           this manual


                                Installation
                              ================

It's very easy to install XAES Background.  Copy the program LETEMFLY.PRG
into your AUTO-Folder and restart your computer.  To configure Let 'em Fly
II you can use the accessory LET_CONF.ACC or the CPX LET_CONF.CPX.  The
ACC also runs as a program by renaming it into LET_CONF.APP or .PRG. The
switches are described later on.


                                   Usage
                                 =========

XAES Background requires that programs use the right AES calls to handle 
dialogs.  Otherwise XAES Background can't act as wanted.  These calls are
mainly form_do, form_button and form_keybd calls.  Any calls that handle
their own dialogs will bypass XAES Background's AES calls completely.


Flying Dials
------------

Within a GEM dialog there are selectable and non-selectable objects.  If
you click a non selectable object the mouse arrow changes into a flat hand 
and you can drag the dialog around by moving the mouse.  By holding the 
[SHIFT] key or the right mouse button, the dialog gets transparent and 
you can look 'through' it if it's hiding some important information
behind it.

If you don't like where the dialog box is positioned, simply double-click
on the root object (the dialog box itself, or a non-selectable object) and
it will automatically re-center itself.


Key Dials
---------

XAES Background scans the current dialog for possible shortcuts and marks 
them by drawing a line under the corresponding letter or highlighting it.
You can activate the button by holding the [ALT] key and pressing the
letter (or number).  If there is no editable field you don't need to press
the [ALT] key.  The functions keys [UNDO] and [HELP] are supported, too.
XAES Background scans the following strings to define these function keys:

[UNDO]: 'abbruch', 'abbrechen', 'verlassen', 'ende', 'nein', 'quit', 
        'cancel', 'abort', 'no', 'exit', 'forget', 'bypass', 'exclude'

[HELP]: 'help', 'hilfe', 'info', 'more', 'next'

(Remember, the original version of Let 'em Fly was in German, so expect
 these to stay the same!)

The UNDO button and the default button can be normally activated via the 
first letter (e.g. 'Cancel' via [ALT]+[C]).  Furthermore, it's possible to 
'move' the default button around by pressing [ALT]+[Tab] or [ALT]+[SHIFT]+
[Tab] (backwards).  [SHIFT]+[Help] displays a copyright information
including the current version number.


Extended Editor
---------------

Within editable fields, there are more functions when using XAES Background. 
GEM supports the following functions:

[Cursor Up]         one field back
[Cursor Down]       one field forward
[Cursor Left]       one character left
[Cursor Right]      one character right
[TAB]               one field forward
[RETURN]            terminate (apply) the dialog

(How boring GEM makes object editing!)

But XAES Background gives you many many more functions ...

[RETURN]            if there is no default button, it jumps to the next 
                    editable field
[SHIFT]+[RETURN]    jumps to the next editable field, even if there is a 
                    default button
[SHIFT]+[TAB]       one field back
[SHIFT]+[Csr Left]  jumps to the beginning of the field
[SHIFT]+[Csr Right] jumps to the end of the field
[CTRL]+[Csr Left]   jumps one word left
[CTRL]+[Csr Right]  jumps one word right
[Home]              jumps to the first editable field
[SHIFT]+[Home]      jumps to the last editable field
[CTRL]+[Delete]     deletes all charaters in right of the cursor

Furthermore the keys [Csr Up] and [Csr Down] include a wrap-around 
feature.  This means, if you are within the first field an press [Csr Up] 
the cursor jumps to the last field and the other way around.  At least you 
can place the cursor directly using the mouse.


Legal filename letters
----------------------

When an editable field uses a template for filename characters, normally 
you can enter characters which are not allowed in filenames.  Let 'em Fly
II fixes this bug, now.


Special characters
------------------

There are some characters which are difficult to enter.  If you press 
[SHIFT]+[Insert] within an editable field a character box appears where 
you can click the character you want.  This function is only available, 
when the template allows every character.


GEM-clipboard
-------------

XAES Background supports the GEM-clipboard with the premise that the 
environment variable CLIPBRD is set correctly (e.g. with SETCLIPB.CPX). 
The following functions are supported now within editable fields:

[CTRL]-[X]     Copies the current line into the clipboard and deletes the 
               field.  If you press the [SHIFT]-key, too, the line will be 
               appended to the content of the clipboard.
[CTRL]-[C]     Copies the current line into the clipboard but doesn't 
               delete the field.  The [SHIFT]-key will react as described 
               above.
[CTRL]-[V]     Insert the first line of the clipboard into the current 
               field.  The previous content of the field will be deleted, 
               but you can suppress this by pressing the [SHIFT]-key.


History (will teach us nothing...?)
-----------------------------------

Like in a command-line shell, XAES Background supports a small history (20 
entries with each 40 characters) of the strings you typed before.  Double 
entries are suppressed automatically. With [CTRL]+[Csr Up/Down] you can 
scan the history and get back the previous typed strings.  If you press 
[SHIFT]+[Csr Up/Down] the content of the field represents (the beginning 
of) a string XAES Background searches the history for.


You didn't understand anything? Well, make your own experiences by 
'playing' with these functions.


New Alert Boxes
---------------

Using XAES Background the alert boxes will look a little bit differently
from the originals.  The size of the box is 'best-fitted' and there are
new icons. The three buttons can be activated by pressing [F1]-[F3], too.
To use another set of icons or a different color shape, you can edit one
of the icon resources (LTMFICON.RSC or GEM[1/2]ICON.RSC) with a RCS and
copy it as LET_ICON.RSC into the AUTO folder.

If XAES Background finds any of these files in either the AUTO folder or
the root folder, it will load them in automatically, and will inform you
that they were loaded.


Have a nice time with Niceline
------------------------------

When it began, Niceline was a stand alone program.  It replaces the 
'---' strings in the menu by a 'niceline'.  But I must add that this is a 
small hack and doesn't work correctly with all programs (e.g. GFA basic). 
If there are any problems concerning menus, turn this feature off and try 
it again.

You may recognize the niceline as a solid hatched line in the menu bars,
and inside any popup menus.  This niceline is a standard look that is
supported in Enhanced GEM, XAES, WinLIB PRO, WindClass, and many other
GEM Enhancement programs.  It has just been put in there to make things
look a whole lot better.


Viewing the internal title screen
---------------------------------

To see more information about the version of XAES that is currently running
in the background, simply press [SHIFT-HELP] at any time when a dialog
is displayed on the screen.


"I don't like the default object"
---------------------------------

That's easily changed by using [ALT-TAB] to swap default objects.  When you
hit [ALT-TAB], XAES Background looks for the next selectable-and-exit object
that it encounters.  If it finds one, it will change that object to a
default object, so it can be selected by pressing [RETURN].

This function automatically wraps around and defaults the first object if
the last object is already defaulted.


                         The Configuration Program
                       =============================

         < The configuration program is currently not available >


                            Well known problems
                          =======================

- UIS III should be started behind XAES Background within the AUTO folder.

- The Little Green Selector 'gambles' a bit with the AES keycodes, so that 
  XAES Background gets a bit confused.  LGS will also have some flight 
  problems.  This is yet to be fixed.

- If you confirm a dialog in NEODESK by pressing [RETURN], the dialog 
  won't vanish.

- XAES Background is a little incompatible with MultiTOS.  Unfortunately,
  I did not have the time nor the patience to fool around with MultiTOS's
  skewed AES calls, so I've given up on MultiTOS coding all together.


                               Some internals
                             ==================

XAES Background latches into the AES trap #2 (AES/VDI) and trap #13 (BIOS) 
and uses the XBRA-ID 'XAES'.  XAES Background also installs a cookie with
the same ID.  (Yes, that's right, we're modern...  WE USE XBRA!)


                          Additions (to  be added)
                        ============================

- Fix of form_dial(FMD_START) and form_dial(FMD_FINISH) to correspond with
  the correct input assignments (when you call them with coordinates)
- Hotkeys like InterFace's object fix (ie. left bracket in front of
  activation character)
- Non-modal dialogs (windowed)
- Add a critical-event handler for MultiTOS and MiNT (if ever)
- Configurable jumping dialogs with Extended Object Types
- Re-centerable dialog boxes with right mouse button
- Recursive niceline check and modifications
- Redraw with shortcuts using clipping and the new graphics routines (NVDI)
- Alert strings with 0 characters and unlimited length (auto text wrap)
- Linked edit fields (like InterFace RCS)
- Scrollable text edit fields (like WindClass)
- New clipboard mode (read/write from/to history)
- Cut/Copy/Paste on entire dialog
- View history table with a popup
- Priviledged keys ('Ok', 'Yes', 'Ja')
- CTRL-X/C/V overridable
- CTRL-Y deletes all editable objects
- CTRL-Del deletes to left of cursor, SHIFT-Del deletes to right of cursor
- Custom 3D Drawing routines with five 3D styles (all changable)
- Keyboard equivalent setup keys (using CTRL-ALT and the key)
- Custom menu bar routine with submenus (for those of us not using TOS 4.0)
- Sliders can be fixed and enabled using an AES call instead of having to
  do it internally (within your program)
- Custom windows (if ever)
- RC_INTERSECT and RC_INSIDE routines are all AES functions (VERY helpful)
- Custom AES routines (our own; if I can ever figure out INDIRECT stuff!)

- Recognition for what we've done to Let 'em Fly (IF EVER (!!) :)


                              Contact addresses
                            =====================

[ Original coder ]
Oliver Scheel
Mundenheimer Strasse 254
D-67061 Ludwigshafen
Germany
( email: Oliver_Scheel@lu.maus.de )

[ Primary coder ]
Ken Hollis
c/o Bitgate Software
PO Box 580448
Houston, TX 77258-0448
USA
( email: khollis@bitsink.gbdata.com )

[ Secondary coder/Assembly optimizer ]
Darryl Piper
( email: drpiper@cix.compulink.co.uk )


                                Source code
                              ===============

But what if I want to see the source code to this great piece of art?
Tough noogies!  We own the rights to the source code.  If you want to
become a part of the XAES Background programming team, you can receive
source code then, but we will not release source code to the general
public; Oliver Scheel has not given us the permission to do so.  After all,
Oliver Scheel wrote the original, didn't he?

Source code is only available on a purchasing basis.  The source code will
be sold, but you must contact Ken Hollis in the USA to find out specifics
on its availability, and how much it will cost you.


                                Registration
                              ================

XAES Background is Shareware!  This means that for a small fee, you can
own the XAES Background programmers' documentation, and all the information
on how to call the AES calls that XAES Background provides, including its
special 3D routines which can be fully utilized by the programmer at will.

All of the documentation is included in an E-Mail only distribution package
and is registered to YOU, and not to anyone else.  All documentation comes
as a C Header file (".H") and all documentation is available in both
English, and German (once it's translated).

Anyone interested in taking advantage of XAES Background right now can buy
the rights for $10 (US) or equivalent in your country.  XAES Background's
developers' documentation is sent through E-Mail for $10 (US).  It can be
shipped on disk via air-mail for $5 (US) more, or with international reply
coupons.

To order the XAES Background, please send $10 (US) plus your InterNET,
CIX, BIX, GEnie, MausNET, MCIMail, or equivalent address (that can be
reached through InterNET) to:

Ken Hollis
c/o Bitgate Software
PO Box 580448
Houston, TX 77258-0448
USA

Anyone who has questions on how to code with XAES Background can feel free
to write to the primary author at khollis@bitsink.gbdata.com on the Inter-
NET.  All technical questions will be answered ONLY if you are a registered
developer able to use XAES Background.

When new developments arise for XAES Background, all who are registered
with Bitgate Software will receive free updates on InterNET through E-Mail
via UUEncoded files, or those who have registered for mail-only will
receive a flier.

It's a small price to pay for a great program, so register now!