GUI Extensions

A desire commonly expressed by A-Shell developers, especially those deploying in Windows environments, is for tools to give existing applications more of a Windows-like GUI (Graphic User Interface). This section provides a handy index to many of the currently available tools and extensions. The table below shows links to topics found elsewhere in the documentation, and following that are discussions on other relevant topics.

Description

Link

Display a File Open / Save Dialog.

MX_GETOFD

Cut-and paste operations by user, and a subroutine interface to allow applications to copy-to and paste-from the clipboard under program control.

MX_CLIPBOARD

Saving information to and retrieving it from Windows' Registry.

MX_REGISTRY

Although you can use HOSTEX.SBR to launch any native application, it is sometimes useful to be able to launch the application associated with a particular file type or URL, without knowing exactly what the application is called or where it is. For example, when you click on a URL link inside of an email message, the email application does not need to know which web browser you use or how to launch it; it simply tells Windows to launch the application that goes with this URL.

MX_SHELLEX

Play a sound file.

MX_PLAYSOUND

A-Shell 4.9 introduced the ability to dynamically create real Windows controls in A-Shell. These include dialogs, buttons, checkboxes, radio buttons, group boxes, listboxes, combo boxes, edit controls, tab controls, static text controls, tree controls, etc. Using this technique, you can use traditional A-BASIC screen drawing techniques (print commands, tab functions, and subroutines) to create Windows "forms" and dialogs that are nearly indistinguishable from Windows programs created in Visual Basic.

AUI

Display Windows printer selection

MX_WINPTR

Browse / select directories

MX_BROWSEFOLDER

Retrieve a Windows directory by its alias/ID

MX_GETSHELLPATH

Choose a color

MX_CHOOSECOLOR

Choose a font

MX_CHOOSEFONT

'3D' Tabs

MX_DEFTABXYZ

Modify A-Shell GUI Settings

MX_WINSETTINGS