******* ******* ****** ************** ********* ***** ***** ********** ***** ***** ***** ***** ***** ***** ***** ***** ***** ***** ***** ***** ***** ***** ***** ***** *** ****** ******** ************** *********** *********** ***** ***** ***** ***** ***** *** ****** ***** ***** ***** ***** ***** ***** ***** ***** ***** ***** ***** ***** ***** ***** ***** ******* ******* ******* ******* ************** ********* 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!