grapefruit-ui 0.1.0.4 → 0.1.0.5
raw patch · 4 files changed
+67/−41 lines, 4 filesdep ~basePVP: major bump suggested
API removals or changes: PVP suggests a major version bump
Dependency ranges changed: base
API changes (from Hackage documentation)
- Graphics.UI.Grapefruit.Backend.Basic: label :: BasicUIBackend uiBackend => Brick Widget uiBackend (X :& (Req Text ::: (SSignal Of String))) X
+ Graphics.UI.Grapefruit.Backend.Basic: label :: BasicUIBackend uiBackend => Brick Widget uiBackend (X :& (Req Text ::: (SSignal `Of` String))) X
- Graphics.UI.Grapefruit.Backend.Basic: lineEditor :: BasicUIBackend uiBackend => Brick Widget uiBackend X (X :& (Content ::: (SSignal Of String)))
+ Graphics.UI.Grapefruit.Backend.Basic: lineEditor :: BasicUIBackend uiBackend => Brick Widget uiBackend X (X :& (Content ::: (SSignal `Of` String)))
- Graphics.UI.Grapefruit.Backend.Basic: pushButton :: BasicUIBackend uiBackend => Brick Widget uiBackend (X :& (Req Text ::: (SSignal Of String))) (X :& (Push ::: (DSignal Of ())))
+ Graphics.UI.Grapefruit.Backend.Basic: pushButton :: BasicUIBackend uiBackend => Brick Widget uiBackend (X :& (Req Text ::: (SSignal `Of` String))) (X :& (Push ::: (DSignal `Of` ())))
- Graphics.UI.Grapefruit.Backend.Basic: window :: BasicUIBackend uiBackend => Box UIItem Widget Window uiBackend (X :& (Req Title ::: (SSignal Of String))) (X :& (Closure ::: (DSignal Of ())))
+ Graphics.UI.Grapefruit.Backend.Basic: window :: BasicUIBackend uiBackend => Box UIItem Widget Window uiBackend (X :& (Req Title ::: (SSignal `Of` String))) (X :& (Closure ::: (DSignal `Of` ())))
- Graphics.UI.Grapefruit.Backend.Container: listView :: ContainerUIBackend uiBackend => Brick Widget uiBackend (((X :& (Req Elements ::: (ISignal Of Seq el))) :& (Req Columns ::: (ISignal Of Seq (Column uiBackend el)))) :& (Opt HasScrollbars ::: (SSignal Of (Orientation -> Availability)))) (X :& (Selection ::: (SSignal Of Seq el)))
+ Graphics.UI.Grapefruit.Backend.Container: listView :: ContainerUIBackend uiBackend => Brick Widget uiBackend (((X :& (Req Elements ::: (ISignal `Of` Seq el))) :& (Req Columns ::: (ISignal `Of` Seq (Column uiBackend el)))) :& (Opt HasScrollbars ::: (SSignal `Of` (Orientation -> Availability)))) (X :& (Selection ::: (SSignal `Of` Seq el)))
- Graphics.UI.Grapefruit.Backend.Container: setView :: (ContainerUIBackend uiBackend, Ord el) => Brick Widget uiBackend (((X :& (Req Elements ::: (ISignal Of Set el))) :& (Req Columns ::: (ISignal Of Seq (Column uiBackend el)))) :& (Opt HasScrollbars ::: (SSignal Of (Orientation -> Availability)))) (X :& (Selection ::: (SSignal Of Set el)))
+ Graphics.UI.Grapefruit.Backend.Container: setView :: (ContainerUIBackend uiBackend, Ord el) => Brick Widget uiBackend (((X :& (Req Elements ::: (ISignal `Of` Set el))) :& (Req Columns ::: (ISignal `Of` Seq (Column uiBackend el)))) :& (Opt HasScrollbars ::: (SSignal `Of` (Orientation -> Availability)))) (X :& (Selection ::: (SSignal `Of` Set el)))
- Graphics.UI.Grapefruit.Interfacing: with :: UIComp uiComp => (nativeItem -> Placement innerItem uiBackend) -> uiComp innerItem uiBackend era innerI innerO -> Interfacing nativeItem era baseI baseO -> Interfacing nativeItem era (baseI With innerI) (baseO With innerO)
+ Graphics.UI.Grapefruit.Interfacing: with :: UIComp uiComp => (nativeItem -> Placement innerItem uiBackend) -> uiComp innerItem uiBackend era innerI innerO -> Interfacing nativeItem era baseI baseO -> Interfacing nativeItem era (baseI `With` innerI) (baseO `With` innerO)
- Graphics.UI.Grapefruit.Item: just :: (Record SignalKind extIRecord, Record SignalKind extORecord, Subrecord extIRecord (All iOptRecord Cat All (CommonInputOptRecord item)), Subrecord (Required iOptRecord Cat Required (CommonInputOptRecord item)) extIRecord, Subrecord extORecord (oRecord Cat CommonOutputRecord item), UIComp uiComp) => Brick item uiBackend iOptRecord oRecord -> uiComp item uiBackend era (SignalRecord era extIRecord) (SignalRecord era extORecord)
+ Graphics.UI.Grapefruit.Item: just :: (Record SignalKind extIRecord, Record SignalKind extORecord, Subrecord extIRecord (All iOptRecord `Cat` All (CommonInputOptRecord item)), Subrecord (Required iOptRecord `Cat` Required (CommonInputOptRecord item)) extIRecord, Subrecord extORecord (oRecord `Cat` CommonOutputRecord item), UIComp uiComp) => Brick item uiBackend iOptRecord oRecord -> uiComp item uiBackend era (SignalRecord era extIRecord) (SignalRecord era extORecord)
- Graphics.UI.Grapefruit.Item: with :: (Record SignalKind extIRecord, Record SignalKind extORecord, Subrecord extIRecord (All iOptRecord Cat All (CommonInputOptRecord item)), Subrecord (Required iOptRecord Cat Required (CommonInputOptRecord item)) extIRecord, Subrecord extORecord (oRecord Cat CommonOutputRecord item), UIComp uiComp) => Box innerUIComp innerItem item uiBackend iOptRecord oRecord -> innerUIComp innerItem uiBackend era innerI innerO -> uiComp item uiBackend era (SignalRecord era extIRecord With innerI) (SignalRecord era extORecord With innerO)
+ Graphics.UI.Grapefruit.Item: with :: (Record SignalKind extIRecord, Record SignalKind extORecord, Subrecord extIRecord (All iOptRecord `Cat` All (CommonInputOptRecord item)), Subrecord (Required iOptRecord `Cat` Required (CommonInputOptRecord item)) extIRecord, Subrecord extORecord (oRecord `Cat` CommonOutputRecord item), UIComp uiComp) => Box innerUIComp innerItem item uiBackend iOptRecord oRecord -> innerUIComp innerItem uiBackend era innerI innerO -> uiComp item uiBackend era (SignalRecord era extIRecord `With` innerI) (SignalRecord era extORecord `With` innerO)
Files
- LICENSE +21/−19
- grapefruit-ui.cabal +38/−22
- src/Internal/UICircuit.hs-boot +4/−0
- src/Internal/UIItem.hs-boot +4/−0
LICENSE view
@@ -1,26 +1,28 @@ Copyright © 2007–2009 Brandenburgische Technische Universität Cottbus-Copyright © 2011–2012 Wolfgang Jeltsch+Copyright © 2011–2014 Wolfgang Jeltsch All rights reserved. -Redistribution and use in source and binary forms, with or without modification, are permitted-provided that the following conditions are met:+Redistribution and use in source and binary forms, with or without modification,+are permitted provided that the following conditions are met: - * Redistributions of source code must retain the above copyright notice, this list of conditions- and the following disclaimer.+ • Redistributions of source code must retain the above copyright notice,+ this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright notice, this list of- conditions and the following disclaimer in the documentation and/or other materials provided- with the distribution.+ • Redistributions in binary form must reproduce the above copyright notice,+ this list of conditions and the following disclaimer in the documentation+ and/or other materials provided with the distribution. - * Neither the name of the copyright holders nor the names of the contributors may be used to- endorse or promote products derived from this software without specific prior written- permission.+ • Neither the name of the copyright holders nor the names of the+ contributors may be used to endorse or promote products derived from this+ software without specific prior written permission. -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS “AS IS” AND ANY EXPRESS OR-IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND-FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR-CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL-DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,-DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER-IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF-THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS “AS IS” AND+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE+DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE+FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL+DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR+SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER+CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR+TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF+THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
grapefruit-ui.cabal view
@@ -1,34 +1,36 @@ Name: grapefruit-ui-Version: 0.1.0.4-Cabal-Version: >= 1.6+Version: 0.1.0.5+Cabal-Version: >= 1.8 Build-Type: Simple License: BSD3 License-File: LICENSE Copyright: © 2007–2009 Brandenburgische Technische Universität Cottbus- © 2011–2013 Wolfgang Jeltsch+ © 2011–2014 Wolfgang Jeltsch Author: Wolfgang Jeltsch Maintainer: wolfgang@cs.ioc.ee Stability: provisional Homepage: http://grapefruit-project.org/-Package-URL: http://hackage.haskell.org/packages/archive/grapefruit-ui/0.1.0.4/grapefruit-ui-0.1.0.4.tar.gz+Package-URL: http://hackage.haskell.org/packages/archive/grapefruit-ui/0.1.0.5/grapefruit-ui-0.1.0.5.tar.gz Synopsis: Declarative user interface programming-Description: Grapefruit is a library for Functional Reactive Programming (FRP) with a focus on- user interfaces. FRP makes it possible to implement reactive and interactive systems- in a declarative style. To learn more about FRP, have a look at+Description: Grapefruit is a library for Functional Reactive Programming (FRP)+ with a focus on user interfaces. FRP makes it possible to+ implement reactive and interactive systems in a declarative+ style. To learn more about FRP, have a look at <http://haskell.org/haskellwiki/Functional_Reactive_Programming>. .- This package contains general user interface support. To make use of it, it has to be- complemented by a UI backend. It is possible to have different UI backends- implementing the same general interface on top of different UI toolkits. At the- moment, the only backend is one based on GTK+. This is provided by the+ This package contains general user interface support. To make use+ of it, it has to be complemented by a UI backend. It is possible+ to have different UI backends implementing the same general+ interface on top of different UI toolkits. At the moment, the+ only backend is one based on GTK+. This is provided by the grapefruit-ui-gtk package. Category: FRP, Reactivity, GUI, User Interfaces Tested-With: GHC == 7.6.3 Source-Repository this- type: darcs- location: http://darcs.grapefruit-project.org/monolithic/0.1- tag: grapefruit-0.1.0.4+ Type: darcs+ Location: http://darcs.grapefruit-project.org/monolithic/0.1+ Tag: grapefruit-0.1.0.5 Library Build-Depends: arrows >= 0.2 && < 0.5,@@ -38,14 +40,28 @@ fraction >= 0.0.1 && < 0.2, grapefruit-frp >= 0.1 && < 0.2, grapefruit-records >= 0.1 && < 0.2- Extensions: Arrows- EmptyDataDecls- FlexibleContexts- GADTs- GeneralizedNewtypeDeriving- Rank2Types- TypeFamilies- TypeOperators+ if impl(ghc >= 7.8) {+ -- Role annotations are only supported (and needed) from 7.8 onwards.+ Extensions: Arrows+ CPP+ EmptyDataDecls+ FlexibleContexts+ GADTs+ GeneralizedNewtypeDeriving+ Rank2Types+ RoleAnnotations+ TypeFamilies+ TypeOperators+ } else {+ Extensions: Arrows+ EmptyDataDecls+ FlexibleContexts+ GADTs+ GeneralizedNewtypeDeriving+ Rank2Types+ TypeFamilies+ TypeOperators+ } Exposed-Modules: Graphics.UI.Grapefruit.Circuit Graphics.UI.Grapefruit.Comp Graphics.UI.Grapefruit.Interfacing
src/Internal/UICircuit.hs-boot view
@@ -4,4 +4,8 @@ ) where +#if MIN_VERSION_base(4,7,0)+ -- GHC >= 7.8+ type role UICircuit nominal nominal phantom nominal nominal+#endif data UICircuit item uiBackend era i o
src/Internal/UIItem.hs-boot view
@@ -9,6 +9,10 @@ import {-# SOURCE #-} Internal.UICircuit as UICircuit +#if MIN_VERSION_base(4,7,0)+ -- GHC >= 7.8+ type role UIItem nominal nominal phantom nominal nominal+#endif newtype UIItem item uiBackend era i o = UIItem (UICircuit item uiBackend era i o) type family Placement item uiBackend :: *