Version française
Home     About     Download     Resources     Contact us    

This site is updated infrequently. For up-to-date information, please visit the new OCaml website at

Browse thread
[Caml-list] WxWidgets?
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: 2004-09-16 (20:25)
From: Richard Jones <rich@a...>
Subject: Re: [Caml-list] WxWidgets?
On Thu, Sep 16, 2004 at 09:08:48PM +0100, chris.danx wrote:
> Hi,
> Was looking on the web for an alternative to using GTK+ on Windows (no 
> flames please) and found WxWidgets.  It looks like a quite nice GUI 
> toolkit.  There seemed to be some interest in developing a OCaml binding 
> via Swig according to the net, but I can't find any such binding.
> Has anyone made such a binding?  If not I was thinking about using swig 
> and the wxpython interfaces as the starting point for a wxwidgets 
> binding for ocaml.  Has anyone tried to do this in the past?  Any 
> thoughts on the issue?

I've looked into this in the past, but we ended up using Gtk +
Gtk-Wimp on Windows, which worked quite well.  Here are my
observations on going the WxWindows route though:

(1) WxWindows is pretty good.  (Ah, looking at their website, I see
they've renamed it to WxWidgets!).  WxWIDGETS is pretty good.  It's a
very complete way to develop cross-platform applications.  In
particular, it has platform-specific file and print dialogs, which you
won't get if you use Gtk.  In fact if you use Gtk you won't get print
dialogs at all - I had to write my own print dialog for Windows which
was no fun at all.

(2) There seem to be three decent approaches to using WxWidgets under
OCaml: Python, Perl or native.  Native is going to be the best, but is
going to take a heck of a lot of effort.

(3) Python or Perl: it's easiest just to use PyCaml or Perl4Caml to
interface with the Wx* libraries under those languages.  I don't see
why you'd want to go through SWIG for this.

(4) Native: definitely the best performance and the cleanest approach,
however it's lots of work.  (Now of course if you wanted to *hire*
Merjis to do the work, contact me off-list ... :-)


Richard Jones.
Merjis Ltd. - improving website return on investment
"One serious obstacle to the adoption of good programming languages is
the notion that everything has to be sacrificed for speed. In computer
languages as in life, speed kills." -- Mike Vanier