Plot-ho-matic 0.5.0.3 → 0.5.0.4
raw patch · 7 files changed
+28/−12 lines, 7 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
Files
- .travis.yml +4/−3
- CHANGELOG.md +4/−0
- LICENSE +1/−1
- Plot-ho-matic.cabal +2/−2
- src/PlotHo.hs +2/−4
- src/PlotHo/GraphWidget.hs +14/−2
- src/PlotHo/PlotTypes.hs +1/−0
.travis.yml view
@@ -3,12 +3,13 @@ env: # - GHCVER=7.6.3 # todo: re-enable this - GHCVER=7.8.3 # see note about Alex/Happy+ - GHCVER=7.10.1 # see note about Alex/Happy before_install: - travis_retry sudo add-apt-repository -y ppa:hvr/ghc - travis_retry sudo apt-get update- - travis_retry sudo apt-get install cabal-install-1.18 ghc-$GHCVER libgsl0-dev liblapack-dev- - export PATH=/opt/ghc/$GHCVER/bin:/opt/cabal/1.18/bin:$PATH+ - travis_retry sudo apt-get install cabal-install-1.22 ghc-$GHCVER libgsl0-dev liblapack-dev+ - export PATH=/opt/ghc/$GHCVER/bin:/opt/cabal/1.22/bin:$PATH install: - cabal update@@ -26,7 +27,7 @@ - cabal sdist # tests that a source-distribution can be generated # The following scriptlet checks that the resulting source distribution can be built & installed- - export SRC_TGZ=$(cabal-1.18 info . | awk '{print $2 ".tar.gz";exit}') ;+ - export SRC_TGZ=$(cabal-1.22 info . | awk '{print $2 ".tar.gz";exit}') ; cd dist/; if [ -f "$SRC_TGZ" ]; then cabal install "$SRC_TGZ";
CHANGELOG.md view
@@ -31,3 +31,7 @@ --- * Hierarchical visibility clicking and inconsistent state * Merge new signal tree with old++0.5.0.4+---+* Performance improvement
LICENSE view
@@ -1,4 +1,4 @@-Copyright (c) 2013, Greg Horn+Copyright (c) 2013-2015, Greg Horn All rights reserved.
Plot-ho-matic.cabal view
@@ -1,11 +1,11 @@ name: Plot-ho-matic-version: 0.5.0.3+version: 0.5.0.4 synopsis: Real-time line plotter for protobuf-like data license: BSD3 license-file: LICENSE author: Greg Horn maintainer: gregmainland@gmail.com-copyright: Copyright (c) 2013-2014, Greg Horn+copyright: Copyright (c) 2013-2015, Greg Horn category: Graphics build-type: Simple cabal-version: >=1.10
src/PlotHo.hs view
@@ -270,10 +270,8 @@ msg <- if statsEnabled then do stats <- GHC.Stats.getGCStats- return $ init $ unlines- [ printf "The current memory usage is %.2f MB"- ((realToFrac (GHC.Stats.currentBytesUsed stats) :: Double) /(1024*1024))- ]+ return $ printf "The current memory usage is %.2f MB"+ ((realToFrac (GHC.Stats.currentBytesUsed stats) :: Double) /(1024*1024)) else return "(enable GHC statistics with +RTS -T)" Gtk.postGUISync $ Gtk.labelSetText statsLabel ("Welcome to Plot-ho-matic!\n" ++ msg) statsWorker
src/PlotHo/GraphWidget.hs view
@@ -6,7 +6,7 @@ ) where import qualified Control.Concurrent as CC-import Control.Monad ( when, unless )+import Control.Monad ( void, when, unless ) import qualified Data.IORef as IORef import qualified Data.Map as M import Data.Maybe ( isJust, fromJust )@@ -62,10 +62,22 @@ chartCanvas <- Gtk.drawingAreaNew _ <- Gtk.widgetSetSizeRequest chartCanvas 250 250 + latestRenderableMVar <- CC.newEmptyMVar+ let redraw :: IO () redraw = do renderable <- makeRenderable- chartGtkUpdateCanvas renderable chartCanvas+ maybeLatestRenderable <- CC.tryTakeMVar latestRenderableMVar+ case maybeLatestRenderable of+ -- the other action is still waiting+ Just _ -> CC.putMVar latestRenderableMVar renderable+ -- there is no action waiting, post the action+ Nothing -> do CC.putMVar latestRenderableMVar renderable+ void $ flip Gtk.idleAdd Gtk.priorityDefaultIdle $ do+ -- this might not be the same one if the messages have accumulated+ latestRenderable <- CC.takeMVar latestRenderableMVar+ chartGtkUpdateCanvas latestRenderable chartCanvas+ return False -- we're done now, don't call this again _ <- Gtk.onExpose chartCanvas $ const (redraw >> return True)
src/PlotHo/PlotTypes.hs view
@@ -24,6 +24,7 @@ , lviGetter :: Maybe (a -> [[(Double,Double)]]) , lviMarked :: MarkedState }+ instance Show (ListViewInfo a) where show (ListViewInfo n t _ m) = "ListViewInfo " ++ show (n,t,m)