summaryrefslogtreecommitdiffstats
path: root/ThreadView.hs
diff options
context:
space:
mode:
authortv <tv@shackspace.de>2014-12-25 03:48:26 +0100
committertv <tv@shackspace.de>2014-12-25 03:48:26 +0100
commite4b5558bfed7d0428707bb7859a1afd41d3eef23 (patch)
treefa77abad8cd6e9236fd07c5bf98db49a18aa7e53 /ThreadView.hs
parent2d3088c15975ed129fa12e779769396b1ede2883 (diff)
use rosezipper as cursor
Diffstat (limited to 'ThreadView.hs')
-rw-r--r--ThreadView.hs22
1 files changed, 5 insertions, 17 deletions
diff --git a/ThreadView.hs b/ThreadView.hs
index 1c908bb..2b1c1fb 100644
--- a/ThreadView.hs
+++ b/ThreadView.hs
@@ -64,6 +64,11 @@ instance Eq ThreadView where
_ == _ = False
+isTVSearchResult :: ThreadView -> Bool
+isTVSearchResult (TVSearchResult _) = True
+isTVSearchResult _ = False
+
+
describe :: ThreadView -> String
describe (TVMessage m) = "TVMessage " <> unMessageID (messageId m)
describe (TVMessagePart m p) = "TVMessagePart " <> (unMessageID $ messageId m) <> " " <> show (partID p)
@@ -72,23 +77,6 @@ describe (TVSearch s) = "TVSearch " <> show s
describe (TVSearchResult sr) = "TVSearchResult " <> show (searchTotal sr)
-focusPrev :: Tree ThreadView -> Maybe ThreadView -> Maybe ThreadView
-focusPrev v Nothing = lastMay (flatten v)
-focusPrev v (Just cur) = do
- i <- elemIndex cur items
- maybe (lastMay items) Just $ atMay items (i - 1)
- where
- items = flatten v
-
-focusNext :: Tree ThreadView -> Maybe ThreadView -> Maybe ThreadView
-focusNext v Nothing = headMay (flatten v)
-focusNext v (Just cur) = do
- i <- elemIndex cur items
- maybe (headMay items) Just $ atMay items (i + 1)
- where
- items = flatten v
-
-
findMessage :: MessageID -> Tree ThreadView -> Maybe ThreadView
findMessage i =
find p . flatten