xturtle 0.1.3 → 0.1.4
raw patch · 3 files changed
+17/−12 lines, 3 files
Files
- src/Graphics/X11/Turtle.hs +1/−1
- src/Graphics/X11/Turtle/XTools.hs +15/−10
- xturtle.cabal +1/−1
src/Graphics/X11/Turtle.hs view
@@ -98,7 +98,7 @@ -------------------------------------------------------------------------------- xturtleVersion :: (Int, String)-xturtleVersion = (49, "0.1.3")+xturtleVersion = (50, "0.1.4") --------------------------------------------------------------------------------
src/Graphics/X11/Turtle/XTools.hs view
@@ -191,18 +191,23 @@ drawImage :: Display -> Drawable -> GC -> FilePath -> Position -> Position -> Dimension -> Dimension -> IO ()-drawImage dpy win gc fp x y w h = getPicture fp w h >>= drawPicture dpy win gc x y+drawImage dpy win gc fp x y w h = getPicture fp w h >>=+ maybe (return ()) (drawPicture dpy win gc x y) -getPicture :: FilePath -> Dimension -> Dimension -> IO (Dimension, Dimension, Ptr Word32)+getPicture :: FilePath -> Dimension -> Dimension ->+ IO (Maybe (Dimension, Dimension, Ptr Word32)) getPicture fp nw nh = do- img <- loadImageImmediately fp- contextSetImage img- w <- fmap fromIntegral imageGetWidth- h <- fmap fromIntegral imageGetHeight- nimg <- createCroppedScaledImage (0 :: Int) (0 :: Int) (w :: Int) (h :: Int) nw nh- contextSetImage nimg- dat <- imageGetData- return (nw, nh, dat)+ (img, err) <- loadImageWithErrorReturn fp+ case err of+ ImlibLoadErrorNone -> do+ contextSetImage img+ w <- fmap fromIntegral imageGetWidth+ h <- fmap fromIntegral imageGetHeight+ nimg <- createCroppedScaledImage (0 :: Int) (0 :: Int) (w :: Int) (h :: Int) nw nh+ contextSetImage nimg+ dat <- imageGetData+ return $ Just (nw, nh, dat)+ _ -> print err >> return Nothing drawPicture :: Display -> Drawable -> GC -> Position -> Position -> (Dimension, Dimension, Ptr Word32) -> IO ()
xturtle.cabal view
@@ -2,7 +2,7 @@ cabal-version: >= 1.6 name: xturtle-version: 0.1.3+version: 0.1.4 stability: experimental author: Yoshikuni Jujo <PAF01143@nifty.ne.jp> maintainer: Yoshikuni Jujo <PAF01143@nifty.ne.jp>