packages feed

manatee-pdfviewer 0.0.5 → 0.0.6

raw patch · 2 files changed

+43/−38 lines, 2 filesdep ~manatee-core

Dependency ranges changed: manatee-core

Files

Manatee/Extension/PdfViewer/PdfView.hs view
@@ -177,6 +177,7 @@              ,("p",        pdfViewPrevPage)              ,("N",        pdfViewLastPage)              ,("P",        pdfViewFirstPage)+             ,("g",        pdfViewGotoPage)              ]  -- | Get index range to render visible are.@@ -202,53 +203,55 @@       currIndex   = truncate $ (vAdjTop + vAdjSize / 2) / height   return ([startIndex..endIndex], currIndex) --- | View next page.-pdfViewNextPage :: PdfView -> IO ()-pdfViewNextPage PdfView {pdfViewBuffer          = buffer-                        ,pdfViewPageIndex       = pageIndex-                        ,pdfViewScale           = viewScale-                        ,pdfViewScrolledWindow  = scrolledWindow} = do-  currentIndex <- readTVarIO pageIndex +-- | Set page.+pdfViewSetPage :: PdfView -> Int -> IO ()+pdfViewSetPage view@(PdfView {pdfViewBuffer          = buffer+                             ,pdfViewScale           = viewScale+                             ,pdfViewScrolledWindow  = scrolledWindow}) page = do   scaleValue   <- readTVarIO viewScale   let (_, height) = pdfBufferPageSize buffer-      maxIndex   = pdfBufferNPages buffer - 1-      nextIndex -        | currentIndex >= maxIndex -            = maxIndex-        | otherwise -            = currentIndex + 1+      minIndex    = 0+      maxIndex    = pdfBufferNPages buffer - 1+  destIndex <-+    if page < minIndex+       then do+         pageViewUpdateOutputStatus 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+         return maxIndex+       else return page   vAdj <- scrolledWindowGetVAdjustment scrolledWindow-  adjustmentSetValue vAdj (i2d nextIndex * height * scaleValue)+  adjustmentSetValue vAdj (i2d destIndex * height * scaleValue) +-- | View next page.+pdfViewNextPage :: PdfView -> IO ()+pdfViewNextPage view@(PdfView {pdfViewPageIndex = pageIndex}) = do+  currentIndex <- readTVarIO pageIndex +  pdfViewSetPage view (currentIndex + 1)+ -- | View prev page. pdfViewPrevPage :: PdfView -> IO ()-pdfViewPrevPage PdfView {pdfViewBuffer          = buffer-                        ,pdfViewPageIndex       = pageIndex-                        ,pdfViewScale           = viewScale-                        ,pdfViewScrolledWindow  = scrolledWindow} = do+pdfViewPrevPage view@(PdfView {pdfViewPageIndex = pageIndex}) = do   currentIndex <- readTVarIO pageIndex -  scaleValue   <- readTVarIO viewScale-  let (_, height) = pdfBufferPageSize buffer-      prevIndex -        | currentIndex <= 0-            = 0-        | otherwise -            = currentIndex - 1-  vAdj <- scrolledWindowGetVAdjustment scrolledWindow-  adjustmentSetValue vAdj (i2d prevIndex * height * scaleValue)+  pdfViewSetPage view (currentIndex - 1)  -- | First page. pdfViewFirstPage :: PdfView -> IO ()-pdfViewFirstPage = pageViewScrollToTop+pdfViewFirstPage view = +  pdfViewSetPage view 0  -- | Last page. pdfViewLastPage :: PdfView -> IO ()-pdfViewLastPage PdfView {pdfViewBuffer          = buffer-                        ,pdfViewScale           = viewScale-                        ,pdfViewScrolledWindow  = scrolledWindow} = do-  let (_, height) = pdfBufferPageSize buffer-      maxIndex   = pdfBufferNPages buffer - 1-  scaleValue <- readTVarIO viewScale-  vAdj <- scrolledWindowGetVAdjustment scrolledWindow-  adjustmentSetValue vAdj (i2d maxIndex * height * scaleValue)+pdfViewLastPage view@(PdfView {pdfViewBuffer = buffer}) = do+  let maxIndex = pdfBufferNPages buffer - 1+  pdfViewSetPage view maxIndex +-- | Goto page.+pdfViewGotoPage :: PdfView -> IO ()+pdfViewGotoPage view@(PdfView {pdfViewBuffer = buffer}) = do+  let maxPage = pdfBufferNPages buffer+  localInteractive view ("nGoto page (1 - " ++ show maxPage ++ ") : ") $ \ [page] -> do+    let pageNumber = read page :: Int+    pdfViewSetPage view (pageNumber - 1)
manatee-pdfviewer.cabal view
@@ -1,5 +1,5 @@ name:			manatee-pdfviewer-version:		0.0.5+version:		0.0.6 Cabal-Version:	>= 1.6 license:		GPL-3 license-file:	LICENSE@@ -15,6 +15,8 @@  .  And replace Chinese font string in file `/etc/fonts/conf.d/49-sansserif.conf'  .+ Video at (Select 720p HD) at : <http://www.youtube.com/watch?v=weS6zys3U8k> <http://v.youku.com/v_show/id_XMjI2MDMzODI4.html>+ .  Screenshots at : <http://goo.gl/MkVw>  .  Manual at : <http://haskell.org/haskellwiki/Manatee>@@ -36,7 +38,7 @@   location:     http://patch-tag.com/r/AndyStewart/manatee-pdfviewer    Library-     build-depends: base >= 4 && < 5, manatee-core >= 0.0.5, dbus-client >= 0.3 && < 0.4, stm >= 2.1.2.0,+     build-depends: base >= 4 && < 5, manatee-core >= 0.0.6, 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      exposed-modules: