gloss 1.7.6.6 → 1.7.7.1
raw patch · 8 files changed
+35/−35 lines, 8 filesPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
API changes (from Hackage documentation)
- Graphics.Gloss.Interface.IO.Simulate: ViewPort :: (Float, Float) -> Float -> Float -> ViewPort
+ Graphics.Gloss.Interface.IO.Simulate: ViewPort :: !(Float, Float) -> !Float -> !Float -> ViewPort
- Graphics.Gloss.Interface.IO.Simulate: viewPortRotate :: ViewPort -> Float
+ Graphics.Gloss.Interface.IO.Simulate: viewPortRotate :: ViewPort -> !Float
- Graphics.Gloss.Interface.IO.Simulate: viewPortScale :: ViewPort -> Float
+ Graphics.Gloss.Interface.IO.Simulate: viewPortScale :: ViewPort -> !Float
- Graphics.Gloss.Interface.IO.Simulate: viewPortTranslate :: ViewPort -> (Float, Float)
+ Graphics.Gloss.Interface.IO.Simulate: viewPortTranslate :: ViewPort -> !(Float, Float)
- Graphics.Gloss.Interface.Pure.Simulate: ViewPort :: (Float, Float) -> Float -> Float -> ViewPort
+ Graphics.Gloss.Interface.Pure.Simulate: ViewPort :: !(Float, Float) -> !Float -> !Float -> ViewPort
- Graphics.Gloss.Interface.Pure.Simulate: viewPortRotate :: ViewPort -> Float
+ Graphics.Gloss.Interface.Pure.Simulate: viewPortRotate :: ViewPort -> !Float
- Graphics.Gloss.Interface.Pure.Simulate: viewPortScale :: ViewPort -> Float
+ Graphics.Gloss.Interface.Pure.Simulate: viewPortScale :: ViewPort -> !Float
- Graphics.Gloss.Interface.Pure.Simulate: viewPortTranslate :: ViewPort -> (Float, Float)
+ Graphics.Gloss.Interface.Pure.Simulate: viewPortTranslate :: ViewPort -> !(Float, Float)
Files
- Graphics/Gloss/Internals/Interface/Animate/State.hs +10/−10
- Graphics/Gloss/Internals/Interface/Animate/Timing.hs +2/−3
- Graphics/Gloss/Internals/Interface/Simulate/State.hs +7/−7
- Graphics/Gloss/Internals/Interface/ViewPort.hs +3/−3
- Graphics/Gloss/Internals/Interface/ViewPort/ControlState.hs +5/−5
- Graphics/Gloss/Internals/Interface/ViewPort/Reshape.hs +2/−1
- Graphics/Gloss/Internals/Render/State.hs +5/−5
- gloss.cabal +1/−1
Graphics/Gloss/Internals/Interface/Animate/State.hs view
@@ -10,33 +10,33 @@ = State { -- | Whether the animation is running.- stateAnimate :: Bool+ stateAnimate :: !Bool -- | How many times we've entered the animation loop.- , stateAnimateCount :: Integer+ , stateAnimateCount :: !Integer -- | Whether this is the first frame of the animation.- , stateAnimateStart :: Bool+ , stateAnimateStart :: !Bool -- | Number of msec the animation has been running for- , stateAnimateTime :: Double+ , stateAnimateTime :: !Double -- | The time when we entered the display callback for the current frame.- , stateDisplayTime :: Double- , stateDisplayTimeLast :: Double+ , stateDisplayTime :: !Double+ , stateDisplayTimeLast :: !Double -- | Clamp the minimum time between frames to this value (in seconds) -- Setting this to < 10ms probably isn't worthwhile.- , stateDisplayTimeClamp :: Double+ , stateDisplayTimeClamp :: !Double -- | The time when the last call to the users render function finished.- , stateGateTimeStart :: Double+ , stateGateTimeStart :: !Double -- | The time when displayInWindow last finished (after sleeping to clamp fps).- , stateGateTimeEnd :: Double+ , stateGateTimeEnd :: !Double -- | How long it took to draw this frame- , stateGateTimeElapsed :: Double }+ , stateGateTimeElapsed :: !Double } stateInit :: State
Graphics/Gloss/Internals/Interface/Animate/Timing.hs view
@@ -34,13 +34,12 @@ , stateDisplayTimeLast = displayTimeLast } -- increment the animation time- animate <- stateRef `getsIORef` stateAnimate+ animate <- stateRef `getsIORef` stateAnimate animateCount <- stateRef `getsIORef` stateAnimateCount animateTime <- stateRef `getsIORef` stateAnimateTime animateStart <- stateRef `getsIORef` stateAnimateStart -{-- when (animateCount `mod` 5 == 0)+{- when (animateCount `mod` 5 == 0) $ putStr $ " displayTime = " ++ show displayTime ++ "\n" ++ " displayTimeLast = " ++ show displayTimeLast ++ "\n" ++ " displayTimeElapsed = " ++ show displayTimeElapsed ++ "\n"
Graphics/Gloss/Internals/Interface/Simulate/State.hs view
@@ -9,25 +9,25 @@ data State = State { -- | The iteration number we're up to.- stateIteration :: Integer+ stateIteration :: !Integer -- | Whether the animation is free-running (or single step)- , stateRun :: Bool+ , stateRun :: !Bool -- | Signals to callbackIdle to take a single step of the automation.- , stateStep :: Bool+ , stateStep :: !Bool -- | Signals to callbackIdle to roll-back to the initial world.- , stateReset :: Bool+ , stateReset :: !Bool -- | How many simulation setps to take for each second of real time- , stateResolution :: Int + , stateResolution :: !Int -- | How many seconds worth of simulation we've done so far- , stateSimTime :: Float+ , stateSimTime :: !Float -- | Record how many steps we've been taking per frame- , stateStepsPerFrame :: Int }+ , stateStepsPerFrame :: !Int } -- | Initial control state
Graphics/Gloss/Internals/Interface/ViewPort.hs view
@@ -9,13 +9,13 @@ data ViewPort = ViewPort { -- | Global translation.- viewPortTranslate :: (Float, Float)+ viewPortTranslate :: !(Float, Float) -- | Global rotation (in degrees).- , viewPortRotate :: Float + , viewPortRotate :: !Float -- | Global scaling (of both x and y coordinates).- , viewPortScale :: Float + , viewPortScale :: !Float }
Graphics/Gloss/Internals/Interface/ViewPort/ControlState.hs view
@@ -17,21 +17,21 @@ -- | The command list for the viewport controller. -- These can be safely overwridden at any time by deleting / adding entries to the list. -- Entries at the front of the list take precedence.- stateCommands :: Map Command [(Key, Maybe Modifiers)]+ stateCommands :: !(Map Command [(Key, Maybe Modifiers)]) -- | How much to scale the world by for each step of the mouse wheel.- , stateScaleStep :: Float + , stateScaleStep :: !Float -- | How many degrees to rotate the world by for each pixel of x motion.- , stateRotateFactor :: Float+ , stateRotateFactor :: !Float -- | During viewport translation, -- where the mouse was clicked on the window.- , stateTranslateMark :: Maybe (Int, Int) + , stateTranslateMark :: !(Maybe (Int, Int)) -- | During viewport rotation, -- where the mouse was clicked on the window- , stateRotateMark :: Maybe (Int, Int)+ , stateRotateMark :: !(Maybe (Int, Int)) }
Graphics/Gloss/Internals/Interface/ViewPort/Reshape.hs view
@@ -23,5 +23,6 @@ -- This controls what part of the window openGL renders to. -- We'll use the whole window. --- GL.viewport $= (GL.Position 0 0, GL.Size (fromIntegral width) (fromIntegral height))+ GL.viewport $= ( GL.Position 0 0+ , GL.Size (fromIntegral width) (fromIntegral height)) postRedisplay stateRef
Graphics/Gloss/Internals/Render/State.hs view
@@ -17,19 +17,19 @@ data State = State { -- | Whether to use color- stateColor :: Bool+ stateColor :: !Bool -- | Whether to force wireframe mode only- , stateWireframe :: Bool+ , stateWireframe :: !Bool -- | Whether to use alpha blending- , stateBlendAlpha :: Bool+ , stateBlendAlpha :: !Bool -- | Whether to use line smoothing- , stateLineSmooth :: Bool+ , stateLineSmooth :: !Bool -- | Cache of Textures that we've sent to OpenGL.- , stateTextures :: IORef [Texture]+ , stateTextures :: !(IORef [Texture]) }
gloss.cabal view
@@ -1,5 +1,5 @@ Name: gloss-Version: 1.7.6.6+Version: 1.7.7.1 License: MIT License-file: LICENSE Author: Ben Lippmeier