[Haskell] Announce: wxHaskell 0.8

Daan Leijen daan at cs.uu.nl
Tue Jul 27 14:41:53 EDT 2004

Announcement: wxHaskell version 0.8


I am pleased to announce a new release of wxHaskell. The library is
now 1 year old, and more than 4000 downloads further.

This new release has support for the powerful wxGrid control, managed
resources, and system colors. Futhermore, all object references are
now checked, raising a Haskell exception if they are not valid. The
MacOS X version is much more stable now than the previous release.

Binary installers are provided for MacOS X, Linux (RPM), and Windows.

The webpage has a screenshot of a heap profile viewer for GHC written
in wxHaskell by Wei Tan. There is also a *draft* version of an article
about the design of wxHaskell. I have to submit a final version this
Friday and any comments are very welcome.

All the best,
  Daan Leijen.

wxHaskell is a portable GUI library for Haskell. The goal of the
project is to provide an industrial strength portable GUI library, but
without the burden of developing (and maintaining) one ourselves.

wxHaskell is therefore build on top of wxWidgets -- a comprehensive
C++ library that is portable across all major GUI platforms; including
GTK, Windows, X11, and MacOS X. Furthermore, it is a mature library
(in development since 1992) that supports a wide range of widgets with
native look-and-feel, and it has a very active community (ranked among
the top 25 most active projects on sourceforge).

Since most of the interface is automatically generated from the
wxEiffel binding, the current release of wxHaskell already supports
about 75% of the wxWindows functionality -- about 2900 methods in 500
classes with 1400 constant definitions.

wxHaskell has been build with GHC 6.x on Windows, MacOS X and
Unix systems with GTK. A binary distribution is available for Windows,
Linux (RPM) and MacOS X.

And even if you don't intend to write GUI's yourself, it will be fun
to check out the screenshots at <http://wxhaskell.sourceforge.net>.

Version 0.8
Non backward compatible changes:
- Added wildcards argument to the "fileSaveDialog" function.
- Removed the call to "buttonSetDefault" in the "defaultButton"
   property since GTK seems to enlarge the button in that case.
- Removed alignment argument for text controls
- Removed sorted and labels argument for choice and combo boxes.
- Removed sorted argument for listboxes.
- Added default "stretch" to every toplevel layout, assuring that
   such layout gets at least all available space assigned.
- (un)set "maximize box" when "resizeable" is set.
- Removed default "wxTAB_TRAVERSAL" style on frames (to make the grid
   work correctly).
- Renamed "WXCore.WxcClassTypes" to "WXCore.WxcClassInfo".

Backward compatible additions:
- Added pure "bitmap" and "sound"
- Added "variable" objects (mutable variables)
- Added custom control demo.
- Made "refresh" erase the background too.
- Added "children" attribute for windows.
- Added "border" attribute for windows.
- Added "tabTraversal" attribute for windows.
- Added wxGrid events and demo (samples/wx/Grid.hs).
- Improved signatures for wxGrid.
- Added "changes.txt" file :-)
- Added "HAS_RADIO_MENU_ITEMS" to "isDefined".
- Added support for radio menu items.
- New wxHaskell+HOpenGL sample added to the contributions. Thanks
   to Shelarcy and Sean Seefried.
- Added "Align" and "Wrapped" classes to set alignment
   and wrap mode for text controls.
- Added "Sorted" class to set the sort mode of choice, combo box,
   and listbox controls.
- Added "creation time" attributes that use reflective attributes
   not compositional (and thus not so nice), but very convenient!
- Added "entry" as shorthand for "textEntry"
- Added "SystemColor" and "colorSystem" to get standard system colors.
- Defaulted background color of "Frame"s to Color3DFace (as a Panel).
- Made the definition of "Closure" in "wrappers.h" more liberal to
   support wxOCaml better.
- Added "frameCentre" method
- Huge internal changes: split up wxcClasses in three files and added
   support for managed objects like bitmaps. Also added checks for NULL

Bug fixes:
- HtmlLinkClicked events are now properly generated.
- Fixed bug that crashed wxHaskell when a tree control had the focus
   and a key was pressed. Thanks to Olivier Spier for sending a fix.
- The "item" attribute of a list control always returned the first
   item and disregarded the parameter. Thanks to Olivier Spier for
   sending a fix.

More information about the Haskell mailing list