summaryrefslogtreecommitdiffstats
path: root/src/TextViewport/Render/RenderItem.hs
diff options
context:
space:
mode:
Diffstat (limited to 'src/TextViewport/Render/RenderItem.hs')
-rw-r--r--src/TextViewport/Render/RenderItem.hs9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/TextViewport/Render/RenderItem.hs b/src/TextViewport/Render/RenderItem.hs
index 7e00cf1..0cddb83 100644
--- a/src/TextViewport/Render/RenderItem.hs
+++ b/src/TextViewport/Render/RenderItem.hs
@@ -5,10 +5,13 @@ import Data.Sequences (Index, Textual)
import TextViewport.Buffer.Item (Item(..))
import TextViewport.Render.CachedRender
import TextViewport.Render.RenderedItem
-import TextViewport.Render.Segmentation (applyStrategy)
+import TextViewport.Render.Segmentation (Segmenter(applySeg))
-renderItem :: (Hashable t, Textual t, Index t ~ Int) => Int -> Int -> Item t -> Maybe (CachedRender t) -> CachedRender t
+renderItem
+ :: (Segmenter seg a, Hashable a, Textual a, Index a ~ Int)
+ => Int -> Int -> Item a seg -> Maybe (CachedRender a seg)
+ -> CachedRender a seg
renderItem width itemIx (Item txt strategy) mOld =
case mOld of
Just old
@@ -16,7 +19,7 @@ renderItem width itemIx (Item txt strategy) mOld =
, crText old == txt
-> old
_ ->
- let linesV = applyStrategy strategy width itemIx txt
+ let linesV = applySeg strategy width itemIx txt
rendered = RenderedItem linesV
in CachedRender
{ crWidth = width