nanovg 0.3.0.0 → 0.4.0.0
raw patch · 9 files changed
+65/−39 lines, 9 filesdep −linearPVP ok
version bump matches the API change (PVP)
Dependencies removed: linear
API changes (from Hackage documentation)
+ NanoVG: V2 :: !a -> !a -> V2 a
+ NanoVG: V3 :: !a -> !a -> !a -> V3 a
+ NanoVG: V4 :: !a -> !a -> !a -> !a -> V4 a
+ NanoVG: data V2 a
+ NanoVG: data V3 a
+ NanoVG: data V4 a
+ NanoVG: type M23 a = V2 (V3 a)
+ NanoVG.Internal: V2 :: !a -> !a -> V2 a
+ NanoVG.Internal: V3 :: !a -> !a -> !a -> V3 a
+ NanoVG.Internal: V4 :: !a -> !a -> !a -> !a -> V4 a
+ NanoVG.Internal: data V2 a
+ NanoVG.Internal: data V3 a
+ NanoVG.Internal: data V4 a
+ NanoVG.Internal: type M23 a = V2 (V3 a)
+ NanoVG.Internal.FixedVector: V2 :: !a -> !a -> V2 a
+ NanoVG.Internal.FixedVector: V3 :: !a -> !a -> !a -> V3 a
+ NanoVG.Internal.FixedVector: V4 :: !a -> !a -> !a -> !a -> V4 a
+ NanoVG.Internal.FixedVector: data V2 a
+ NanoVG.Internal.FixedVector: data V3 a
+ NanoVG.Internal.FixedVector: data V4 a
+ NanoVG.Internal.FixedVector: instance Data.Foldable.Foldable NanoVG.Internal.FixedVector.V2
+ NanoVG.Internal.FixedVector: instance Data.Foldable.Foldable NanoVG.Internal.FixedVector.V3
+ NanoVG.Internal.FixedVector: instance Data.Foldable.Foldable NanoVG.Internal.FixedVector.V4
+ NanoVG.Internal.FixedVector: instance Data.Traversable.Traversable NanoVG.Internal.FixedVector.V2
+ NanoVG.Internal.FixedVector: instance Data.Traversable.Traversable NanoVG.Internal.FixedVector.V3
+ NanoVG.Internal.FixedVector: instance Data.Traversable.Traversable NanoVG.Internal.FixedVector.V4
+ NanoVG.Internal.FixedVector: instance GHC.Base.Functor NanoVG.Internal.FixedVector.V2
+ NanoVG.Internal.FixedVector: instance GHC.Base.Functor NanoVG.Internal.FixedVector.V3
+ NanoVG.Internal.FixedVector: instance GHC.Base.Functor NanoVG.Internal.FixedVector.V4
+ NanoVG.Internal.FixedVector: instance GHC.Classes.Eq a => GHC.Classes.Eq (NanoVG.Internal.FixedVector.V2 a)
+ NanoVG.Internal.FixedVector: instance GHC.Classes.Eq a => GHC.Classes.Eq (NanoVG.Internal.FixedVector.V3 a)
+ NanoVG.Internal.FixedVector: instance GHC.Classes.Eq a => GHC.Classes.Eq (NanoVG.Internal.FixedVector.V4 a)
+ NanoVG.Internal.FixedVector: instance GHC.Classes.Ord a => GHC.Classes.Ord (NanoVG.Internal.FixedVector.V2 a)
+ NanoVG.Internal.FixedVector: instance GHC.Classes.Ord a => GHC.Classes.Ord (NanoVG.Internal.FixedVector.V3 a)
+ NanoVG.Internal.FixedVector: instance GHC.Classes.Ord a => GHC.Classes.Ord (NanoVG.Internal.FixedVector.V4 a)
+ NanoVG.Internal.FixedVector: instance GHC.Read.Read a => GHC.Read.Read (NanoVG.Internal.FixedVector.V2 a)
+ NanoVG.Internal.FixedVector: instance GHC.Read.Read a => GHC.Read.Read (NanoVG.Internal.FixedVector.V3 a)
+ NanoVG.Internal.FixedVector: instance GHC.Read.Read a => GHC.Read.Read (NanoVG.Internal.FixedVector.V4 a)
+ NanoVG.Internal.FixedVector: instance GHC.Show.Show a => GHC.Show.Show (NanoVG.Internal.FixedVector.V2 a)
+ NanoVG.Internal.FixedVector: instance GHC.Show.Show a => GHC.Show.Show (NanoVG.Internal.FixedVector.V3 a)
+ NanoVG.Internal.FixedVector: instance GHC.Show.Show a => GHC.Show.Show (NanoVG.Internal.FixedVector.V4 a)
+ NanoVG.Internal.FixedVector: type M23 a = V2 (V3 a)
Files
- example/Example.hs +0/−1
- nanovg.cabal +10/−12
- src/NanoVG.hs +5/−0
- src/NanoVG/Internal.chs +17/−11
- src/NanoVG/Internal/FixedVector.hs +26/−0
- src/NanoVG/Internal/Paint.chs +2/−3
- src/NanoVG/Internal/Text.chs +4/−5
- src/NanoVG/Internal/Transformation.chs +1/−4
- test/NanoVGSpec.hs +0/−3
example/Example.hs view
@@ -14,7 +14,6 @@ import qualified Data.Vector as V import Graphics.GL.Core32 import Graphics.UI.GLFW-import Linear.V4 import NanoVG as NVG import NanoVG.Internal.Text as Internal import Prelude hiding (init)
nanovg.cabal view
@@ -1,5 +1,5 @@ name: nanovg-version: 0.3.0.0+version: 0.4.0.0 synopsis: Haskell bindings for nanovg description: Raw bindings to the OpenGL vector graphics library NanoVG homepage: https://github.com/cocreature/nanovg-hs@@ -24,23 +24,23 @@ library exposed-modules: NanoVG NanoVG.Internal+ NanoVG.Internal.Color NanoVG.Internal.Context NanoVG.Internal.FFIHelpers- NanoVG.Internal.Text- NanoVG.Internal.Types- NanoVG.Internal.Color- NanoVG.Internal.State- NanoVG.Internal.Style+ NanoVG.Internal.FixedVector+ NanoVG.Internal.GL3+ NanoVG.Internal.Image NanoVG.Internal.Paint- NanoVG.Internal.Transformation NanoVG.Internal.Path NanoVG.Internal.Scissor- NanoVG.Internal.Image- NanoVG.Internal.GL3+ NanoVG.Internal.State+ NanoVG.Internal.Style+ NanoVG.Internal.Text+ NanoVG.Internal.Transformation+ NanoVG.Internal.Types build-depends: base >=4.8 && <5.0 , bytestring >= 0.10 && < 0.11 , containers >= 0.5 && < 0.6- , linear >= 1.20 && < 1.21 , text >= 1.2 && < 1.3 , vector >= 0.11 && < 0.12 hs-source-dirs: src@@ -66,7 +66,6 @@ , containers , gl , GLFW-b- , linear , monad-loops , nanovg , text@@ -87,7 +86,6 @@ , containers , hspec , inline-c- , linear , nanovg , QuickCheck default-language: Haskell2010
src/NanoVG.hs view
@@ -120,6 +120,11 @@ , deleteGL3 , createImageFromHandleGL3 , imageHandleGL3+ -- * Vector types+ , V2(..)+ , V3(..)+ , V4(..)+ , M23 ) where import Control.Monad
src/NanoVG/Internal.chs view
@@ -89,20 +89,26 @@ , circle , fill , stroke+ -- * Vector types+ , V2(..)+ , V3(..)+ , V4(..)+ , M23 ) where -import Foreign.C.Types+import Foreign.C.Types -import NanoVG.Internal.Color-import NanoVG.Internal.Context-import NanoVG.Internal.Paint-import NanoVG.Internal.Path-import NanoVG.Internal.Scissor-import NanoVG.Internal.Image-import NanoVG.Internal.State-import NanoVG.Internal.Style-import NanoVG.Internal.Transformation-import NanoVG.Internal.Types+import NanoVG.Internal.Color+import NanoVG.Internal.Context+import NanoVG.Internal.FixedVector+import NanoVG.Internal.Image+import NanoVG.Internal.Paint+import NanoVG.Internal.Path+import NanoVG.Internal.Scissor+import NanoVG.Internal.State+import NanoVG.Internal.Style+import NanoVG.Internal.Transformation+import NanoVG.Internal.Types {#pointer *NVGcontext as Context newtype nocode#}
+ src/NanoVG/Internal/FixedVector.hs view
@@ -0,0 +1,26 @@+{-# LANGUAGE DeriveFunctor, DeriveFoldable, DeriveTraversable #-}+module NanoVG.Internal.FixedVector where++-- | Vector of 2 strict elements+data V2 a =+ V2 !a+ !a+ deriving (Show,Read,Eq,Ord,Functor,Foldable,Traversable)++-- | Vector of 3 strict elements+data V3 a =+ V3 !a+ !a+ !a+ deriving (Show,Read,Eq,Ord,Functor,Foldable,Traversable)++-- | Vector of 4 strict elements+data V4 a =+ V4 !a+ !a+ !a+ !a+ deriving (Show,Read,Eq,Ord,Functor,Foldable,Traversable)++-- | Type synonym for 2x3 matrices+type M23 a = V2 (V3 a)
src/NanoVG/Internal/Paint.chs view
@@ -6,12 +6,11 @@ import Foreign.Marshal.Utils import Foreign.Ptr import Foreign.Storable-import Linear.V2- import NanoVG.Internal.Color import NanoVG.Internal.Context-import NanoVG.Internal.Types+import NanoVG.Internal.FixedVector import NanoVG.Internal.Transformation+import NanoVG.Internal.Types #include "nanovg.h" #include "nanovg_wrapper.h"
src/NanoVG/Internal/Text.chs view
@@ -2,19 +2,18 @@ {-# LANGUAGE ScopedTypeVariables #-} module NanoVG.Internal.Text where -import qualified Data.Set as S import Data.ByteString hiding (null)+import qualified Data.Set as S import qualified Data.Text as T import Foreign.C.Types import Foreign.Marshal.Alloc import Foreign.Ptr import Foreign.Storable-import Linear.V4-import Prelude hiding (null)--import NanoVG.Internal.FFIHelpers import NanoVG.Internal.Context+import NanoVG.Internal.FFIHelpers+import NanoVG.Internal.FixedVector import NanoVG.Internal.Types+import Prelude hiding (null) #include "nanovg.h"
src/NanoVG/Internal/Transformation.chs view
@@ -6,11 +6,8 @@ import Foreign.Marshal.Utils import Foreign.Ptr import Foreign.Storable-import Linear.Matrix-import Linear.V2-import Linear.V3- import NanoVG.Internal.Context+import NanoVG.Internal.FixedVector #include "nanovg.h"
test/NanoVGSpec.hs view
@@ -17,9 +17,6 @@ import Test.Hspec import NanoVG import Test.QuickCheck-import Linear.V2-import Linear.V3-import Linear.V4 C.context (C.baseCtx <> nanoVGCtx) C.include "nanovg.h"