packages feed

threepenny-gui-0.4.0.1: threepenny-gui.cabal

Name:                threepenny-gui
Version:             0.4.0.1
Synopsis:            GUI framework that uses the web browser as a display.
Description:
    Threepenny-GUI is a GUI framework that uses the web browser as a display.
    .
    It's cheap and easy to install because everyone has a web browser installed.
    .
    Internally, the library implements a small web server
    that serves a HTML/JavaScript page with the GUI elements.
    You can freely manipulate the HTML DOM and handle browser events
    from your Haskell code.
    .
    Stability forecast: This is an experimental release! Send us your feedback!
    Significant API changes are likely in future versions.
    .
    NOTE: This library contains examples, but they are not built by default.
    To build and install the example, use the @buildExamples@ flag like this
    .
    @cabal install threepenny-gui -fbuildExamples@

License:             BSD3
License-file:        LICENSE
Author:              Chris Done, Heinrich Apfelmus
Maintainer:          Heinrich Apfelmus <apfelmus at quantentunnel dot de>
Homepage:            http://www.haskell.org/haskellwiki/Threepenny-gui
bug-reports:         https://github.com/HeinrichApfelmus/threepenny-gui/issues
Category:            Web, GUI
Build-type:          Simple
Cabal-version:       >=1.8

Extra-Source-Files:  CHANGELOG.md
                    ,src/Graphics/UI/*.html
                    ,src/Graphics/UI/*.js
                    ,src/Graphics/UI/*.css

Data-dir:            .
Data-files:          wwwroot/css/*.css
                    ,wwwroot/css/*.png
                    ,wwwroot/*.html
                    ,wwwroot/*.txt
                    ,wwwroot/*.wav


flag buildExamples
    description: Build example executables.
    default:     False

flag rebug
    description: The library uses some techniques that are highly
                 non-deterministic, for example garbage collection and concurrency.
                 Bugs in these subsystems are harder to find.
                 Activating this flag will expose more of them.
    default:     False

Source-repository head
    type:               git
    location:           git://github.com/HeinrichApfelmus/threepenny-gui.git


Library
  hs-source-dirs:    src
  exposed-modules:
                     Graphics.UI.Threepenny
                    ,Graphics.UI.Threepenny.Attributes
                    ,Graphics.UI.Threepenny.Core
                    ,Graphics.UI.Threepenny.Canvas
                    ,Graphics.UI.Threepenny.DragNDrop
                    ,Graphics.UI.Threepenny.Elements
                    ,Graphics.UI.Threepenny.Events
                    ,Graphics.UI.Threepenny.JQuery
                    ,Graphics.UI.Threepenny.Timer
                    ,Graphics.UI.Threepenny.Widgets
                    ,Reactive.Threepenny
                    ,Foreign.Coupon
  other-modules:
                     Control.Concurrent.Chan.Extra
                    ,Control.Concurrent.Delay
                    ,Graphics.UI.Threepenny.Internal.Driver
                    ,Graphics.UI.Threepenny.Internal.FFI
                    ,Graphics.UI.Threepenny.Internal.Include
                    ,Graphics.UI.Threepenny.Internal.Resources
                    ,Graphics.UI.Threepenny.Internal.Types
                    ,Reactive.Threepenny.Memo
                    ,Reactive.Threepenny.Monads
                    ,Reactive.Threepenny.PulseLatch
                    ,Reactive.Threepenny.Types
                    ,Paths_threepenny_gui
  extensions:        CPP
  cpp-options:      -DCABAL
  if flag(rebug)
      cpp-options:  -DREBUG
      ghc-options:  -O2   
  build-depends:     base                   >= 4     && < 5
                    ,attoparsec-enumerator  == 0.3.*
                    ,bytestring             >= 0.9.2 && < 0.11
                    ,containers             >= 0.4.2 && < 0.6
                    ,data-default           == 0.5.*
                    ,deepseq                == 1.3.*
                    ,filepath               == 1.3.*
                    ,hashable               >= 1.1.0  && < 1.3
                    ,json                   >= 0.4.4  && < 0.8
                    ,MonadCatchIO-transformers == 0.3.*
                    ,network                >= 2.3.0  && < 2.5
                    ,safe                   == 0.3.*
                    ,snap-server            == 0.9.*
                    ,snap-core              == 0.9.*
                    ,stm                    >= 2.3    && < 2.5
                    ,template-haskell       >= 2.7.0  && < 2.9
                    ,text                   == 0.11.*
                    ,time                   == 1.4.*
                    ,transformers           == 0.3.*
                    ,unordered-containers   == 0.2.*
                    ,utf8-string            == 0.3.*
                    ,websockets             == 0.8.*
                    ,websockets-snap        == 0.8.*
                    ,vault                  == 0.3.*
                    
Executable threepenny-examples-bartab
    if flag(buildExamples)
        cpp-options:       -DCABAL
        build-depends:     base                      >= 4     && < 5
                          ,threepenny-gui
                          ,filepath
    else
        buildable: False
    main-is:           BarTab.hs
    other-modules:     Paths_threepenny_gui, Paths
    hs-source-dirs:    samples

Executable threepenny-examples-buttons
    if flag(buildExamples)
        cpp-options:       -DCABAL
        build-depends:     base                      >= 4     && < 5
                          ,threepenny-gui
                          ,filepath
    else
        buildable: False
    main-is:           Buttons.hs
    other-modules:     Paths_threepenny_gui, Paths
    hs-source-dirs:    samples

Executable threepenny-examples-chat
    if flag(buildExamples)
        cpp-options:       -DCABAL
        build-depends:     base                      >= 4     && < 5
                          ,threepenny-gui
                          ,transformers
                          ,filepath
                          ,time
    else
        buildable: False
    main-is:           Chat.hs
    other-modules:     Paths_threepenny_gui, Paths, Data.List.Extra
    hs-source-dirs:    samples

Executable threepenny-examples-crud
    if flag(buildExamples)
        cpp-options:       -DCABAL
        build-depends:     base                      >= 4     && < 5
                          ,containers
                          ,threepenny-gui
    else
        buildable: False
    main-is:           CRUD.hs
    other-modules:     Tidings
    hs-source-dirs:    samples

Executable threepenny-examples-currencyconverter
    if flag(buildExamples)
        cpp-options:       -DCABAL
        build-depends:     base                      >= 4     && < 5
                          ,threepenny-gui
                          ,safe
    else
        buildable: False
    main-is:           CurrencyConverter.hs
    hs-source-dirs:    samples

Executable threepenny-examples-dragndropexample
    if flag(buildExamples)
        cpp-options:       -DCABAL
        build-depends:     base                      >= 4     && < 5
                          ,threepenny-gui
                          ,filepath
    else
        buildable: False
    main-is:           DragNDropExample.hs
    other-modules:     Paths_threepenny_gui, Paths
    hs-source-dirs:    samples

Executable threepenny-examples-drummachine
    if flag(buildExamples)
        cpp-options:       -DCABAL
        build-depends:     base                      >= 4     && < 5
                          ,threepenny-gui
                          ,filepath
    else
        buildable: False
    main-is:           DrumMachine.hs
    other-modules:     Paths_threepenny_gui, Paths
    hs-source-dirs:    samples

Executable threepenny-examples-missing-dollars
    if flag(buildExamples)
        cpp-options:       -DCABAL
        build-depends:     base                      >= 4     && < 5
                          ,filepath
                          ,threepenny-gui
                          ,safe
    else
        buildable: False
    main-is:           MissingDollars.hs
    other-modules:     Paths_threepenny_gui, Paths
    hs-source-dirs:    samples

Executable threepenny-examples-use-words
    if flag(buildExamples)
        cpp-options:       -DCABAL
        build-depends:     base                      >= 4     && < 5
                          ,threepenny-gui
                          ,filepath
                          ,parsec
    else
        buildable: False
    main-is:           UseWords.hs
    other-modules:     Paths_threepenny_gui, Paths
    hs-source-dirs:    samples