packages feed

SDL 0.5.5 → 0.5.6

raw patch · 2 files changed

+29/−24 lines, 2 filesdep ~basePVP ok

version bump matches the API change (PVP)

Dependency ranges changed: base

API changes (from Hackage documentation)

Files

Graphics/UI/SDL/Events.hsc view
@@ -46,7 +46,7 @@                Storable(poke, sizeOf, alignment, peekByteOff, pokeByteOff, peek),                unsafePerformIO, toBool, new, alloca) import Foreign.C (peekCString, CString, CInt)-import Data.Bits (Bits((.&.), shiftL))+import Data.Bits (Bits((.&.))) import Control.Concurrent (threadDelay) import Prelude hiding (Enum(..)) import qualified Prelude (Enum(..))@@ -183,21 +183,31 @@     fromEnum ButtonRight = #{const SDL_BUTTON_RIGHT}     fromEnum ButtonWheelUp = #{const SDL_BUTTON_WHEELUP}     fromEnum ButtonWheelDown = #{const SDL_BUTTON_WHEELDOWN}-    succ ButtonLeft = ButtonMiddle-    succ ButtonMiddle = ButtonRight-    succ ButtonRight = ButtonWheelUp-    succ ButtonWheelUp = ButtonWheelDown-    succ _ = error "Graphics.UI.SDL.Events.succ: bad argument"-    pred ButtonMiddle = ButtonLeft-    pred ButtonRight = ButtonMiddle-    pred ButtonWheelUp = ButtonRight-    pred ButtonWheelDown = ButtonWheelUp-    pred _ = error "Graphics.UI.SDL.Events.pred: bad argument"-    enumFromTo x y | x > y = []-                   | x == y = [y]-                   | True = x : enumFromTo (succ x) y+    succ = toEnum . (+1) . fromEnum+    pred = toEnum . (subtract 1) . fromEnum+    enumFromTo = defEnumFromTo +mouseButtonMask :: MouseButton -> Word8+mouseButtonMask ButtonLeft = #{const SDL_BUTTON(SDL_BUTTON_LEFT)}+mouseButtonMask ButtonMiddle = #{const SDL_BUTTON(SDL_BUTTON_MIDDLE)}+mouseButtonMask ButtonRight = #{const SDL_BUTTON(SDL_BUTTON_RIGHT)}+mouseButtonMask ButtonWheelUp = #{const SDL_BUTTON(SDL_BUTTON_WHEELUP)}+mouseButtonMask ButtonWheelDown = #{const SDL_BUTTON(SDL_BUTTON_WHEELDOWN)} +allButtons :: [MouseButton]+allButtons = [ButtonLeft+             ,ButtonMiddle+             ,ButtonRight+             ,ButtonWheelUp+             ,ButtonWheelDown+             ]++defEnumFromTo :: (Enum a b, Ord a) => a -> a -> [a]+defEnumFromTo x y | x > y     = []+                  | x == y    = [y]+                  | otherwise = x : defEnumFromTo (succ x) y++ data Focus     = MouseFocus     | InputFocus@@ -514,8 +524,7 @@  mousePressed :: Word8 -> MouseButton -> Bool mousePressed mask b-    = mask .&. (1 `shiftL` num) /= 0-    where num = fromIntegral (fromEnum b)+    = mask .&. (mouseButtonMask b) /= 0                     -- Uint8 SDL_GetMouseState(int *x, int *y);@@ -538,11 +547,7 @@       do ret <- getter xPtr yPtr          [x,y] <- mapM peek [xPtr,yPtr]          return (fromIntegral x,fromIntegral y-                ,filter (mousePressed ret) [ButtonLeft-                                           ,ButtonMiddle-                                           ,ButtonRight-                                           ,ButtonWheelUp-                                           ,ButtonWheelDown])+                ,filter (mousePressed ret) allButtons)   
SDL.cabal view
@@ -1,11 +1,11 @@ Name: SDL-Version: 0.5.5+Version: 0.5.6 Maintainer: Lemmih (lemmih@gmail.com) Author: Lemmih (lemmih@gmail.com)-Copyright: 2004-2008, Lemmih+Copyright: 2004-2009, Lemmih License-File: LICENSE License: BSD3-Build-Depends: base+Build-Depends: base < 5 Build-Type: Custom Category: Foreign binding Synopsis: Binding to libSDL