threadscope 0.1 → 0.1.1
raw patch · 8 files changed
+25/−20 lines, 8 filesdep ~containers
Dependency ranges changed: containers
Files
- About.hs +3/−3
- CairoDrawing.hs +8/−0
- EventsWindow.hs +4/−2
- ReadEvents.hs +3/−3
- Timeline/Key.hs +3/−1
- Timeline/Render.hs +1/−8
- Utils.hs +1/−1
- threadscope.cabal +2/−2
About.hs view
@@ -18,14 +18,14 @@ logo <- pixbufNewFromFile logoPath set aboutDialog [ aboutDialogName := "ThreadScope", - aboutDialogVersion := "0.1", - aboutDialogCopyright := "Released under the GHC license.", + aboutDialogVersion := "0.1.1", + aboutDialogCopyright := "Released under the GHC license as part of the Glasgow Haskell Compiler.", aboutDialogComments := "A GHC eventlog profile viewer", aboutDialogAuthors := ["Donnie Jones (donnie@darthik.com)", "Simon Marlow (simonm@microsoft.com)", "Satnam Singh (s.singh@ieee.org)"], aboutDialogLogo := Just logo, - aboutDialogWebsite := "http://code.haskell.org/ThreadScope" + aboutDialogWebsite := "http://research.microsoft.com/threadscope" ] windowSetTransientFor aboutDialog parent afterResponse aboutDialog $ \_ -> widgetDestroy aboutDialog
CairoDrawing.hs view
@@ -86,3 +86,11 @@ stroke ------------------------------------------------------------------------------- + +clearWhite :: Render () +clearWhite = do + save + setOperator OperatorSource + setSourceRGBA 0xffff 0xffff 0xffff 0xffff + paint + restore
EventsWindow.hs view
@@ -197,8 +197,10 @@ let arr = hecEventArray hecs exts <- readIORef eventsFontExtents let - line = truncate (val + eventY / fontExtentsHeight exts)- t = time (ce_event (arr!line))+ line' = truncate (val + eventY / fontExtentsHeight exts)+ arr_max = snd $ bounds arr+ line = if line' > arr_max then arr_max else line' + t = time (ce_event (arr!line)) -- writeIORef cursorIORef t writeIORef eventsCursorIORef (Just (t,line))
ReadEvents.hs view
@@ -79,9 +79,9 @@ registerEvents from state@ViewerState{..} = do - let msg = "Loading " ++ (case from of - Left filename -> filename - Right test -> test) + let msg = case from of + Left filename -> filename + Right test -> test -- dialog <- messageDialogNew Nothing [DialogModal] MessageInfo ButtonsCancel msg
Timeline/Key.hs view
@@ -9,6 +9,7 @@ import qualified Graphics.Rendering.Cairo as C import ViewerColours +import CairoDrawing ------------------------------------------------------------------------------- @@ -26,7 +27,8 @@ addKeyElements :: Render () addKeyElements - = do selectFontFace "sans serif" FontSlantNormal FontWeightNormal + = do clearWhite + selectFontFace "sans serif" FontSlantNormal FontWeightNormal setFontSize 12 addKeyElements' 10 [(Box, "running", runningColour), (Box, "GC", gcColour),
Timeline/Render.hs view
@@ -17,6 +17,7 @@ import State import ViewerColours import Traces+import CairoDrawing import GHC.RTS.Events hiding (Event) @@ -158,14 +159,6 @@ drawCursor cursor_t params ---------------------------------------------------------------------------------clearWhite :: Render ()-clearWhite = do- save- setOperator OperatorSource- setSourceRGBA 0xffff 0xffff 0xffff 0xffff- paint- restore -------------------------------------------------------------------------------
Utils.hs view
@@ -11,5 +11,5 @@ withBackgroundProcessing f = bracket (idleAdd (yield >> return True) priorityDefaultIdle)- timeoutRemove+ idleRemove (\_ -> f)
threadscope.cabal view
@@ -1,5 +1,5 @@ Name: threadscope -Version: 0.1 +Version: 0.1.1 Description: A graphical viewer for GHC eventlog traces. License: BSD3 License-file: LICENSE @@ -20,7 +20,7 @@ gtk, cairo, glade, binary, array, mtl, filepath, ghc-events >= 0.2 && < 0.3, - containers >= 0.2 && < 0.3 + containers >= 0.2 && < 0.4 extensions: RecordWildCards, BangPatterns, PatternGuards Other-Modules: About, CairoDrawing,