packages feed

keera-hails-reactive-gtk-0.5: keera-hails-reactive-gtk.cabal

-- hails.cabal auto-generated by cabal init. For additional options,
-- see
-- http://www.haskell.org/cabal/release/cabal-latest/doc/users-guide/authors.html#pkg-descr.
-- The name of the package.
Name:                keera-hails-reactive-gtk

-- The package version. See the Haskell package versioning policy
-- (http://www.haskell.org/haskellwiki/Package_versioning_policy) for
-- standards guiding when and how versions should be incremented.
Version:             0.5

-- A short (one-line) description of the package.
Synopsis:            Haskell on Gtk rails - Reactive Fields for Gtk widgets

-- A longer description of the package.
Description:
  A layer defining RVs for GTK+ fields and actions.
  .
  Reactive Values are an abstraction for reactive programming based on setters
  and getters with change-based propagation.
  .
  They enable easy communication/synchronization rules via Reactive Rules
  (RRs), which can keep two type-compatible RVs in sync directionally or
  bidirectionally.
  .
  This library provides operations to turn GTK+ object properties and
  fields into RVs, so that they can be used to create reactive user
  interfaces with minimal effort.
  .
  For details, please see the paper "Bridging the GUI Gap with Reactive Values
  and Relations", by Ivan Perez and Henrik Nilsson at Haskell Symposium 2015.

-- URL for the project homepage or repository.
Homepage:            http://www.keera.co.uk/blog/community/

-- The license under which the package is released.
License:             BSD3

-- The file containing the license text.
License-file:        LICENSE

-- The package author(s).
Author:              Ivan Perez

-- An email address to which users can send suggestions, bug reports,
-- and patches.
Maintainer:          ivan.perez@keera.co.uk

-- A copyright notice.
-- Copyright:

Category:            Development

Build-type:          Simple

-- Extra files to be distributed with the package, such as examples or
-- a README.
-- Extra-source-files:

-- Constraint on the version of Cabal needed to build this package.
cabal-version: >= 1.10

Library
  default-language: Haskell2010

  hs-source-dirs: src/

  ghc-options: -Wall -fno-warn-unused-do-bind -O2

  -- Modules exported by the library.
  Exposed-modules: Graphics.UI.Gtk.Reactive
                 , Graphics.UI.Gtk.Reactive.Gtk2
                 , Graphics.UI.Gtk.Reactive.Button
                 , Graphics.UI.Gtk.Reactive.ColorButton
                 , Graphics.UI.Gtk.Reactive.CheckMenuItem
                 , Graphics.UI.Gtk.Reactive.Entry
                 , Graphics.UI.Gtk.Reactive.Image
                 , Graphics.UI.Gtk.Reactive.Label
                 , Graphics.UI.Gtk.Reactive.MenuItem
                 , Graphics.UI.Gtk.Reactive.Property
                 , Graphics.UI.Gtk.Reactive.Scale
                 , Graphics.UI.Gtk.Reactive.SpinButton
                 , Graphics.UI.Gtk.Reactive.StatusIcon
                 , Graphics.UI.Gtk.Reactive.TextView
                 , Graphics.UI.Gtk.Reactive.ToolButton
                 -- , Graphics.UI.Gtk.Reactive.TypedComboBoxUnsafe
                 , Graphics.UI.Gtk.Reactive.ToggleButton
                 , Graphics.UI.Gtk.Reactive.TreeView
                 , Graphics.UI.Gtk.Reactive.Widget
                 , Graphics.UI.Gtk.Reactive.Window

  -- Packages needed in order to build this package.
  Build-depends: base >= 4 && < 5
               , bytestring
               , mtl
               , transformers
               , glib
               , gtk
               , gtk-helpers
               , keera-hails-reactivevalues
               , cairo

source-repository head
    type: git
    location: git://github.com/keera-studios/keera-hails
    subdir: keera-hails-reactive-gtk

-- You can disable the hlint test suite with -f-test-hlint
flag test-hlint
  default: False
  manual: True

-- You can disable the haddock coverage test suite with -f-test-doc-coverage
flag test-doc-coverage
  default: False
  manual: True

test-suite hlint
  type: exitcode-stdio-1.0
  main-is: hlint.hs
  hs-source-dirs: tests
  if !flag(test-hlint)
    buildable: False
  else
    build-depends:
      base,
      hlint >= 1.7

  default-language: Haskell2010

-- Verify that the code is thoroughly documented
test-suite haddock-coverage
  type: exitcode-stdio-1.0
  main-is: HaddockCoverage.hs
  ghc-options: -Wall
  hs-source-dirs: tests

  if !flag(test-doc-coverage)
    buildable: False
  else
    build-depends:
      base >= 4 && < 5,
      directory,
      filepath,
      process,
      regex-posix

  default-language: Haskell2010