aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorSean Whitton <spwhitton@spwhitton.name>2017-02-25 22:19:35 -0700
committerSean Whitton <spwhitton@spwhitton.name>2017-02-25 22:19:35 -0700
commit007af28c2abe60fb4cb10482683a335a3366e462 (patch)
tree5c77ab61de0594d668660da4cb2c956c48f79015
parent47a77b3d359d23166ee72462154617611fdfb98e (diff)
downloadsscan-007af28c2abe60fb4cb10482683a335a3366e462.tar.gz
store page count in app state
There has to be a place to store this or the UI cannot display the number of pages scanned thus far.
-rw-r--r--Main.hs5
-rw-r--r--Types/State.hs3
2 files changed, 7 insertions, 1 deletions
diff --git a/Main.hs b/Main.hs
index 8ca6351..7a60e79 100644
--- a/Main.hs
+++ b/Main.hs
@@ -35,7 +35,9 @@ drawUI st = [ui]
, hBorderWithLabel (str "[ Actions ]")
, vLimit 6 $ C.center $ actionsBox
]
- status = str "Ready to scan first page"
+ status = str $ case st^.stPageCount of
+ Just n -> "Scanned " ++ show n ++ " pages"
+ Nothing -> "Ready to scan first page"
settingsBox = defnList AlignRight Nothing
[ ("run OCRmyPDF", if st^.stOCR then "yes" else "no")
, ("colour data", show $ st^.stColour)
@@ -139,6 +141,7 @@ main = do
let paper = if papersize == "letter" then Letter else A4
initialState = St
{ _stScanningSession = Nothing
+ , _stPageCount = Nothing
, _stOCR = True
, _stColour = Greyscale
, _stPaper = paper
diff --git a/Types/State.hs b/Types/State.hs
index befba24..e37d7a8 100644
--- a/Types/State.hs
+++ b/Types/State.hs
@@ -38,6 +38,9 @@ data St =
St { _stScanningSession :: Maybe FilePath -- ^ if a session is in
-- progress, accmulate
-- scans in this dir
+ , _stPageCount :: Maybe Int -- ^ if a session is in
+ -- progress, the number of
+ -- pages scanned thus far
, _stOCR :: Bool -- ^ whether to use OCRmyPDF
, _stColour :: Colour
, _stPaper :: Paper -- ^ currently selected paper size