Personal tools

Reactive-banana/Examples

From HaskellWiki

< Reactive-banana(Difference between revisions)
Jump to: navigation, search
(GUI Examples)
Line 8: Line 8:
 
: Demonstrates how to set up an event network with your own event loop and how to pause or resume it.
 
: Demonstrates how to set up an event network with your own event loop and how to pause or resume it.
   
== GUI Examples ==
+
== GUI Examples - Very simple ==
   
 
; [https://github.com/HeinrichApfelmus/Haskell-BlackBoard/blob/master/reactive-banana-wx/src/Counter.hs Counter.hs]
 
; [https://github.com/HeinrichApfelmus/Haskell-BlackBoard/blob/master/reactive-banana-wx/src/Counter.hs Counter.hs]
Line 17: Line 17:
 
: Simple currency converter. Reads a value from a text entry widget and multiplies it with a constant. (Does wxHaskell offer a way to make this real-time?)
 
: Simple currency converter. Reads a value from a text entry widget and multiplies it with a constant. (Does wxHaskell offer a way to make this real-time?)
 
[[Image:Reactive-banana-CurrencyConverter.png]]
 
[[Image:Reactive-banana-CurrencyConverter.png]]
  +
  +
; [https://github.com/HeinrichApfelmus/Haskell-BlackBoard/blob/master/reactive-banana-wx/src/NetMonitor.hs NetMonitor.hs]
  +
: Minimalistic application that displays network statistics in real time.
  +
[[Image:Reactive-banana-NetMonitor.png]]
   
 
; [https://github.com/HeinrichApfelmus/Haskell-BlackBoard/blob/master/reactive-banana-wx/src/TwoCounters.hs TwoCounters.hs]
 
; [https://github.com/HeinrichApfelmus/Haskell-BlackBoard/blob/master/reactive-banana-wx/src/TwoCounters.hs TwoCounters.hs]
 
: Two simple counters. There is only one pair of buttons "Up" or "Down", the button "Switch Counters" allows you to specify which counter should be affected.
 
: Two simple counters. There is only one pair of buttons "Up" or "Down", the button "Switch Counters" allows you to specify which counter should be affected.
 
[[Image:Reactive-banana-TwoCounters.png]]
 
[[Image:Reactive-banana-TwoCounters.png]]
  +
  +
== GUI Examples - More elaborate ==
   
 
; [https://github.com/HeinrichApfelmus/Haskell-BlackBoard/blob/master/reactive-banana-wx/src/Asteroids.hs Asteroids.hs]
 
; [https://github.com/HeinrichApfelmus/Haskell-BlackBoard/blob/master/reactive-banana-wx/src/Asteroids.hs Asteroids.hs]

Revision as of 19:24, 10 July 2011

Examples for the reactive-banana library.

1 Core Examples

SlotMachine.hs
Mainly demonstrates how to set up an event network with your own event loop. Also demonstrates the FRP functionality.
RunPause.hs
Demonstrates how to set up an event network with your own event loop and how to pause or resume it.

2 GUI Examples - Very simple

Counter.hs
A simple counter that can be manipulated with two buttons "Up" or "Down".

Reactive-banana-Counter.png

CurrencyConverter.hs
Simple currency converter. Reads a value from a text entry widget and multiplies it with a constant. (Does wxHaskell offer a way to make this real-time?)

Reactive-banana-CurrencyConverter.png

NetMonitor.hs
Minimalistic application that displays network statistics in real time.

Reactive-banana-NetMonitor.png

TwoCounters.hs
Two simple counters. There is only one pair of buttons "Up" or "Down", the button "Switch Counters" allows you to specify which counter should be affected.

Reactive-banana-TwoCounters.png

3 GUI Examples - More elaborate

Asteroids.hs
Port of the wxAsteroids example.

Reactive-banana-wxAsteroids.png

Wave.hs
A wave-like pattern. Not the most beautiful code, but it demonstrates that you can generated timed events.

Reactive-banana-Wave.png