diff options
Diffstat (limited to 'src/TextViewport/Render/RenderItem.hs')
| -rw-r--r-- | src/TextViewport/Render/RenderItem.hs | 9 |
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 |
