CLAW is the Class Library for Ada 95 and Windows 95. It works with any
complete Ada 95 compiler for Windows 95 and/or Windows NT.
CLAW provides an object-oriented Ada interface to the Windows GUI. This
interface was designed from the ground up for use with and from Ada 95. It
makes extensive use of Ada 95 features like tagged types, finalization, general
access types, exceptions, default parameters, private and child packages, and
abstract types. This produces an Ada-friendly view of Windows programming.
- Support for property pages and sheets.
- Support for the registry.
- Support for sockets.
- Support for Windows help.
- Additional controls are supported: Tabs and Tree Views.
- New Claw Application
CLAW is a so-called "thick binding". It gives the experienced Ada programmer a
way to add the power of Windows to the existing power of her Ada style programs.
This is in contrast to a "thin binding", which is convenient for Windows
experts, coding Windows-style but using an Ada compiler. "Thin bindings"
require knowledge of the original language of the interface, since details of
that language are exposed, and complete documentation for the interface in Ada
is rarely available.
CLAW handles many of the mundane details of building a Windows application,
freeing you to concentrate on your application. In addition, since knowledge
of another language is not needed to use CLAW, you can avoid the perils of
mixed language programming.
Another goal of CLAW is
portability. The CLAW system itself can be compiled on
any Ada 95 compiler for Windows 95/NT with a minimum of
changes. The code you write (using CLAW) can be
completely portable from one Ada 95 compiler to another.
This means that programs using CLAW aren't locked into a
single compiler vendor, decreasing project risk.
We even include the full Ada 95 source for Claw in its distribution packages.
New in version 1.2 is the Claw GUI Application Builder. The Builder lets
the user create applications by the
manipulation of graphic objects, such as windows, dialogs, controls, menus, and
graphics (icons and bitmaps). The builder's WYSIWYG (What You
See Is What You Get) interface eliminates
surprises. Connections between objects can
be defined in the builder (for instance, a
button or menu item can open a dialog).
The builder includes an extensive simulation
capability, so that the application can be
tested without waiting for the compile-link-
run cycle. For instance, pressing the OK
button of a dialog causes it to close.
Once the application is finished, the builder
generates clean, correct, commented code
using the Claw bindings to implement the
CLAW version 1.2 interface includes more than 125
packages containing over 120 reusable object types, with more than 2000 user-accessible subprograms. These include
advanced Windows features such as the registry, sockets, tooltips, help
files, and tree views. Future versions of CLAW will contain even
more packages, types, and subprograms to support additional Windows features.
A demonstration version of Claw is available. A
demonstration version of the
Claw builder is also available here. The demonstration versions provide a
subset of the functionality of the full version of Claw.