[Haskell-cafe] Study GUI and FRP sequentially or concurrently? Superimposing graphics and text.

Oliver Charles ollie at ocharles.org.uk
Wed Jan 7 10:32:46 UTC 2015

Jeffrey Brown <jeffbrown.the at gmail.com> writes:

> Hi!
> I want to write a mindmapping app, like Freeplane, which involves drawing
> rectangles containing text and arrows connecting them. For that purpose,
> today I installed reactive-banana, wxWidgets, wxHaskell and
> reactive-banana-wx. (It's the first complex install for which I didn't have
> to write the list for help!)
> Am I correct that the question of whether graphics can be superimposed over
> text depends only on wxHaskell, and not reactive-banana? Would you
> recommend first writing code that uses only wxHaskell, to become familiar
> with the library, or jumping right in by using reactive-banana at the same
> time?

Hi Jeffrey,

You might be interested in the work I'm doing on a 2D level editor for a
game I'm building. The game is "hadoom", and it's a clone of Doom
(inventive name, eh?). The level editor is top-down cartography
software, and you can see fairly recent screenshots here:


There is also an old video here

Anyway, the reason I say this might be interesting, is this is built
using reactive-banana, GTK, and the "diagrams" library. I've found this
a really nice way of building an interactive GUI such as this - GTK
gives me the basic framework of the application, and I use a
GtkDrawingArea for the main canvas. I then model all interaction through
reactive-banana, and finally output a Diagram at the end. I use the
diagrams-cairo backend to render this directly into the GtkDrawingArea.

The source code for this is at 


though I should warn you it's somewhat in a state of rapid development,
so things may change wildly. However, the basic approach of using GTK,
reactive-banana & diagrams will not change.

Hope this helps!

-- ocharles
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 472 bytes
Desc: not available
URL: <http://www.haskell.org/pipermail/haskell-cafe/attachments/20150107/b5e02f82/attachment.sig>

More information about the Haskell-Cafe mailing list