


In addition to the standard display handling included in ANSI-85 COBOL, ACUCOBOL-GT offers a comprehensive set of extensions for programming and managing Graphical User Interfaces (GUIs). With these extensions, an ACUCOBOL-GT developer can add a full-featured, native GUI to an existing program entirely in COBOL. The purpose of these extensions is to:
allow developers to create a fully graphical program in COBOL for use on systems such as Microsoft Windows.
allow developers to use a mix of graphical and character-based interfaces in one program. Graphical features can be added to an existing program without the need to rewrite the entire user interface.
allow programmers to develop graphical interface specifications that are portable to a variety of host systems.
support graphical features in a way that is natural for COBOL.
mimic existing COBOL screen syntax as closely as possible to simplify the task of reworking a character-based program into a graphical program.
avoid the need to do event loop programming that is common for graphical systems, but foreign to most COBOL programs.
make it easy to add new features in the future.
ACUCOBOL-GT supports the emulation of graphical controls and windows on character-based systems. This emulation allows you to more easily write a single program that will run on both character and graphical systems. ACUCOBOL-GT supports the emulation of floating windows and the following control types: label, entry field, push button, radio button, frame, check box, list box (including infinite capacity list box), and combo box.
You can also use ACUCOBOL-GT's traditional text-oriented mechanisms for creating your user interface, such as the textual forms of the ACCEPT and DISPLAY verbs, and Format 1 of the Screen Section. In addition, you can use the Screen Section extensions to define and process both character-based and graphical user interface screens.
Generally, ACUCOBOL-GT GUI supports include:
syntax extensions for creating native floating windows, toolbars, and controls
(such as buttons, entry fields, and labels)
the ability to create and manage menu bars with pull-down submenus
configuration variables for customizing windows, importing icons, and mapping
colors
many host specific features such as message boxes and context-sensitive help
Specifically, ACUCOBOL-GT's GUI programming supports include:
native floating (moveable) windows, including:
modal and modeless window types
default and custom window size and position
dynamically resizeable windows
configurable borders
programmable title bar
optional system menu
GUI controls, including:
labels
entry fields
standard and infinite capacity list boxes
combo boxes
push buttons
radio buttons
check boxes
frames
bars*
scroll bars*
tabs* (32-bit only)
bitmaps*
grids*
menu bars and submenus
display of bitmaps and bitmap buttons*
toolbars*
access to the native message box facility
access to the native file open and file save-as dialog boxes*
access to the native help facility and support for context sensitive help
specialized mouse handling
font selection and handling
custom colors
the ability to play ".WAV" audio files on MS Windows systems with sound capabilities
ACUCOBOL-GT runtime supports include:
full object code compatibility
the creation and runtime management of native floating windows and graphical
controls on Microsoft Windows 3.1, Windows 95, and Windows NT
automatic text-mode emulation of floating windows and most graphical controls,
except bars, scroll bars, tabs, animated bitmaps, bitmap buttons, and toolbars
automatic mouse support
automatic menu bar handling
extensive color mapping facilities
access to the Windows print spooler
automatic multi-tasking support
network compatibility
access to all memory available under Windows
Floating windows and graphical controls
ACUCOBOL-GT supports a class of windows named floating windows. When run under a graphical environment, floating windows correspond to the graphical windows that are native to the host environment. Floating windows pop up over their parent window and can be repositioned by the user with the mouse or system menu (if present). Floating windows are fully described in Chapter 2, "Floating Windows."
ACUCOBOL-GT also supports the creation, display, and manipulation of graphical controls. Graphical controls include push buttons, radio buttons, check boxes, entry fields, list boxes, combination boxes, frames, labels, bars, scroll bars, tabs, and bitmaps. Toolbars can also be created and attached to floating windows. A toolbar can host any type of control, but is usually populated with push buttons, check boxes, and radio buttons. To simplify the programming of graphical controls, ACUCOBOL-GT provides a consistent method for their specification and handling. For a complete description of graphical controls, see Chapter 3, "Graphical Controls."
Automatic GUI runtime support
As in past versions of ACUCOBOL-GT, certain GUI features are provided automatically by the runtime. To take advantage of these features, you don't have to change your COBOL code, and you don't have to recompile your program. You simply use the object code generated with your ACUCOBOL-GT compiler, and execute it with a Version 3.2 runtime for Windows 3.1, Windows 95, or Windows NT. When you do this your program automatically gains:
a native, moveable, main application window.
basic mouse support. Users can point and click to move the cursor, and can
highlight a string of characters and replace the string by typing a new one.
customizable colors, titles, window sizes, window placement, and program icons
(tailored with runtime configuration variables).
access to the system's print spooler, so that several files may be queued for printing.
the ability to run more than one application at the same time.