packages feed

haskgame 0.0.3 → 0.0.4

raw patch · 4 files changed

+13/−8 lines, 4 filesPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

API changes (from Hackage documentation)

+ Graphics.UI.HaskGame: type Size = Vector2 Int
- Graphics.UI.HaskGame: surfaceSize :: Surface -> Vector2 Int
+ Graphics.UI.HaskGame: surfaceSize :: Surface -> Size
- Graphics.UI.HaskGame.Font: textSize :: Font -> String -> IO (Vector2 Int)
+ Graphics.UI.HaskGame.Font: textSize :: Font -> String -> Vector2 Int

Files

haskgame.cabal view
@@ -1,5 +1,5 @@ Name:                haskgame-Version:             0.0.3+Version:             0.0.4 Cabal-Version:       >= 1.2 Synopsis:            Haskell game library. Category:            graphics
src/Graphics/UI/HaskGame.hs view
@@ -1,7 +1,7 @@ {-# OPTIONS -Wall -O2 #-}  module Graphics.UI.HaskGame-    (Surface,Event+    (Surface,Event,Size     ,createRGBSurface,blit,fillRect,fillSurface     ,withInit,getEvents,surfaceSize,setVideoMode     )@@ -11,6 +11,7 @@ import qualified Graphics.UI.HaskGame.Rect as Rect import qualified Graphics.UI.HaskGame.Font as Font import qualified Graphics.UI.HaskGame.Utils as Utils+import Graphics.UI.HaskGame.Utils(Size) import Graphics.UI.HaskGame.Color(Color(..)) import Graphics.UI.HaskGame.Vector2(Vector2(..)) import Control.Monad(liftM)@@ -65,7 +66,7 @@ getEvents :: IO [Event] getEvents = whileM (/=SDL.NoEvent) SDL.pollEvent -surfaceSize :: Surface -> Vector2 Int+surfaceSize :: Surface -> Size surfaceSize surface = Vector2 (SDL.surfaceGetWidth surface)                               (SDL.surfaceGetHeight surface) 
src/Graphics/UI/HaskGame/Font.hs view
@@ -11,6 +11,7 @@ import qualified Graphics.UI.HaskGame.Utils as Utils import Graphics.UI.HaskGame.Color(Color(..)) import Graphics.UI.HaskGame.Vector2(Vector2(..))+import System.IO.Unsafe(unsafePerformIO)  type Font = TTF.Font @@ -21,10 +22,10 @@                              else                                  TTF.renderTextBlended font text (SDL.Color r g b) -textSize :: Font -> String -> IO (Vector2 Int)-textSize font text = do-  (w, h) <- TTF.textSize font text-  return $ Vector2 w h+textSize :: Font -> String -> Vector2 Int+textSize font text =+    let (w, h) = unsafePerformIO $ TTF.textSize font text+    in Vector2 w h  defaultFont :: Int -> IO Font defaultFont = TTF.openFont "/usr/share/fonts/truetype/freefont/FreeSerifBold.ttf"
src/Graphics/UI/HaskGame/Utils.hs view
@@ -1,10 +1,13 @@ {-# OPTIONS -Wall -O2 #-}  module Graphics.UI.HaskGame.Utils-    (bracket__,ioBoolToError)+    (Size, bracket__,ioBoolToError) where  import qualified IO+import Graphics.UI.HaskGame.Vector2(Vector2)++type Size = Vector2 Int  bracket__ :: IO () -> IO () -> IO () -> IO () bracket__ pre post code = IO.bracket_ pre (const post) code