diff options
| author | Akshay Nair <phenax5@gmail.com> | 2024-12-24 22:28:38 +0530 |
|---|---|---|
| committer | Akshay Nair <phenax5@gmail.com> | 2024-12-24 22:42:34 +0530 |
| commit | 459488a2e777380fcb65e3b4dd355fe525ff77ca (patch) | |
| tree | bd21b71b73fc627d37e91e7800dd514706e49942 /src/Chelleport/View.hs | |
| parent | 70e3920556496e5fecb5fedddf1067b2522fcac7 (diff) | |
| download | chelleport-459488a2e777380fcb65e3b4dd355fe525ff77ca.tar.gz chelleport-459488a2e777380fcb65e3b4dd355fe525ff77ca.zip | |
Add search mode for text based searching with ocr
Diffstat (limited to 'src/Chelleport/View.hs')
| -rw-r--r-- | src/Chelleport/View.hs | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/src/Chelleport/View.hs b/src/Chelleport/View.hs index fe06fd7..1a4f1f8 100644 --- a/src/Chelleport/View.hs +++ b/src/Chelleport/View.hs @@ -10,7 +10,19 @@ import qualified Data.Text as Text import Foreign.C (CInt) render :: (MonadDraw m) => State -> m () -render state = do +render state = case stateMode state of + ModeHints -> renderHintsView state + ModeSearch {searchFilteredWords} -> renderSearchView state searchFilteredWords + +renderSearchView :: (MonadDraw m) => State -> [OCRMatch] -> m () +renderSearchView state matches = do + renderGridLines state + setDrawColor colorWhite + forM_ matches $ \(OCRMatch {matchStartX, matchStartY, matchEndX, matchEndY}) -> do + fillRectVertices (matchStartX, matchStartY) (matchEndX, matchEndY) + +renderHintsView :: (MonadDraw m) => State -> m () +renderHintsView state = do renderGridLines state (wcell, hcell) <- cellSize state |
