Release 0.8.0 of Graphic-Forms, a Common Lisp library for Windows GUI programming, is now available. The API and feature set is still evolving, so this is still another alpha release.
New in this release:
- Added a new macro GFW:DEFMENU2 and associated function GFW:MAKE-MENU to allow applications to create reusable menu factories.
- Latest CFFI is required to take advantage of built-in support for the stdcall calling convention as well as improved interface for defining foreign types and translators.
- Integrated patch submitted by Leon van Dyk that enables dialog-only applications. The GFT::STANDALONE-DIALOG function demonstrates this feature, but NOTE that when this is invoked from SLIME, an old problem reappears where the dialog is not initially visible; however, the same demo run directly from the REPL works OK.
- Ported the library to Allegro CL 8.0.
- Upgraded to LispWorks 5.0.1 (note: 4.4.6 is no longer supported)
- Implemented GFW:STATUS-BAR which currently allow a single text field. Multi-part status bars, and nested widget support, will be added in a future release.
- Implemented GFW:PROGRESS-BAR, which provides visual progress feedback. This control can be configured for horizontal or vertical orientation, and can display a segmented or continuous indicator.
- Simplified the mechanism for specifying fixed, non-resizable windows by adding a new GFW:TOP-LEVEL style called :FIXED-SIZE and enhancing GFW:PACK to do the right thing if that style flag has been specified.
- Greatly expanded the symbols for accessing predefined colors, and now provide access to system color settings in a similar manner.
- Implemented a new graphics context function GFG:CLEAR that is a convenient way to fill a window or image with a background color.
- GFS:OBTAIN-SYSTEM-METRICS now includes version information for comctl32.dll and shell32.dll.
The README.txt file in the release zip file also has additional important information about this release.
Download the release zip file here:
The project website is:
jdunrue (at) gmail (dot) com
20 August 2007