manatee-pdfviewer 0.0.7 → 0.0.8
raw patch · 2 files changed
+23/−18 lines, 2 filesdep ~manatee-core
Dependency ranges changed: manatee-core
Files
Manatee/Extension/PdfViewer/PdfView.hs view
@@ -32,6 +32,7 @@ import Graphics.UI.Gtk.Gdk.SerializedEvent import Graphics.UI.Gtk.Poppler.Document import Graphics.UI.Gtk.Poppler.Page+import Manatee.Core.PageFrame import Manatee.Core.PageView import Manatee.Core.Types import Manatee.Extension.PdfViewer.PdfBuffer@@ -39,7 +40,6 @@ import Manatee.Toolkit.General.STM import Manatee.Toolkit.Gtk.Event import Manatee.Toolkit.Gtk.Gtk-import Manatee.Toolkit.Gtk.ScrolledWindow import Paths_manatee_pdfviewer import System.FilePath @@ -47,7 +47,7 @@ data PdfView = PdfView {pdfViewPlugId :: TVar PagePlugId- ,pdfViewScrolledWindow :: ScrolledWindow+ ,pdfViewFrame :: PageFrame ,pdfViewView :: DrawingArea ,pdfViewBuffer :: PdfBuffer ,pdfViewPageIndex :: TVar Int@@ -66,8 +66,9 @@ instance PageView PdfView where pageViewBuffer = PageBufferWrap . pdfViewBuffer pageViewPlugId = pdfViewPlugId- pageViewFocus = widgetGrabFocus . pdfViewView+ pageViewBox = pageFrameBox . pdfViewFrame pageViewScrolledWindow = pdfViewScrolledWindow+ pageViewFocus = widgetGrabFocus . pdfViewView pageViewHandleKeyAction = pdfViewHandleKeyAction -- | New pdf viewer view.@@ -77,14 +78,14 @@ pId <- newTVarIO plugId -- Create UI frame.- scrolledWindow <- scrolledWindowNew_+ pFrame <- pageFrameNewWithModeName (pageModeName $ pdfBufferMode buffer) -- Create view. view <- drawingAreaNew- scrolledWindowAddWithViewport scrolledWindow view+ scrolledWindowAddWithViewport (pageFrameScrolledWindow pFrame) view pageIndex <- newTVarIO 0 scale <- newTVarIO 0- let viewer = PdfView pId scrolledWindow view buffer pageIndex scale+ let viewer = PdfView pId pFrame view buffer pageIndex scale -- Redraw signal. view `on` exposeEvent $ tryEvent $ pdfViewHandleExpose viewer@@ -134,8 +135,8 @@ -- Update page information. writeTVarIO pageIndex currentIndex- pageViewUpdateInfoStatus - view + pageFrameUpdateStatusbar+ (pdfViewFrame view) "Page" ("Page (" ++ show (currentIndex + 1) ++ "/" ++ show (pdfBufferNPages buffer) ++ ")") @@ -185,10 +186,9 @@ -- | Get index range to render visible are. pdfViewGetIndexRange :: PdfView -> IO ([Int], Int)-pdfViewGetIndexRange PdfView {pdfViewBuffer = buffer- ,pdfViewScale = scale- ,pdfViewScrolledWindow = scrolledWindow} = do- vAdj <- scrolledWindowGetVAdjustment scrolledWindow+pdfViewGetIndexRange view@(PdfView {pdfViewBuffer = buffer+ ,pdfViewScale = scale}) = do+ vAdj <- scrolledWindowGetVAdjustment $ pdfViewScrolledWindow view vAdjTop <- adjustmentGetValue vAdj vAdjSize <- adjustmentGetPageSize vAdj scaleValue <- readTVarIO scale@@ -210,7 +210,7 @@ pdfViewSetPage :: PdfView -> Int -> IO () pdfViewSetPage view@(PdfView {pdfViewBuffer = buffer ,pdfViewScale = viewScale- ,pdfViewScrolledWindow = scrolledWindow}) page = do+ }) page = do scaleValue <- readTVarIO viewScale let (_, height) = pdfBufferPageSize buffer minIndex = 0@@ -218,14 +218,14 @@ destIndex <- if page < minIndex then do- pageViewUpdateOutputStatus view "Out of bound, goto first page." Nothing + pageFrameShowOutputbar (pdfViewFrame view) "Out of bound, goto first page." Nothing return minIndex else if page > maxIndex then do- pageViewUpdateOutputStatus view "Out of bound, goto last page." Nothing+ pageFrameShowOutputbar (pdfViewFrame view) "Out of bound, goto last page." Nothing return maxIndex else return page- vAdj <- scrolledWindowGetVAdjustment scrolledWindow+ vAdj <- scrolledWindowGetVAdjustment $ pdfViewScrolledWindow view adjustmentSetValue vAdj (i2d destIndex * height * scaleValue) -- | View next page.@@ -258,3 +258,8 @@ localInteractive view ("nGoto page (1 - " ++ show maxPage ++ ") : ") $ \ [page] -> do let pageNumber = read page :: Int pdfViewSetPage view (pageNumber - 1)++-- | Scrolled window.+pdfViewScrolledWindow :: PdfView -> ScrolledWindow +pdfViewScrolledWindow =+ pageFrameScrolledWindow . pdfViewFrame
manatee-pdfviewer.cabal view
@@ -1,5 +1,5 @@ name: manatee-pdfviewer-version: 0.0.7+version: 0.0.8 Cabal-Version: >= 1.6 license: GPL-3 license-file: LICENSE@@ -38,7 +38,7 @@ location: http://patch-tag.com/r/AndyStewart/manatee-pdfviewer Library- build-depends: base >= 4 && < 5, manatee-core >= 0.0.7, dbus-client >= 0.3 && < 0.4, stm >= 2.1.2.0,+ build-depends: base >= 4 && < 5, manatee-core >= 0.0.8, dbus-client >= 0.3 && < 0.4, stm >= 2.1.2.0, containers >= 0.3.0.0, gtk-serialized-event >= 0.12.0, poppler >= 0.12.1, gtk >= 0.12.0, cairo >= 0.12.0, text >= 0.7.1.0, mtl >= 1.1.0.2, utf8-string, filepath exposed-modules: