Cleanup (somewhat) mouseClickOptionsList

This commit is contained in:
2024-11-25 22:54:45 +00:00
parent 0fb6c3ec26
commit d8d30e0192
+22 -9
View File
@@ -3,8 +3,8 @@ module Dodge.Update.Input.ScreenLayer (
ldpVerticalSelection,
) where
import Data.Char
import Control.Monad
import Data.Char
import qualified Data.Map.Strict as M
import Data.Maybe
import Dodge.Data.ScreenPos
@@ -58,17 +58,30 @@ optionScreenDefaultEffect u = fromMaybe u $ do
mouseClickOptionsList :: Universe -> Universe
mouseClickOptionsList u = fromMaybe u $ do
sl <- u ^? uvScreenLayers . ix 0 . scSelectionList
Just $ case u ^. uvWorld . input . mouseButtons . at ButtonLeft of
Just 0 -> fromMaybe u $ do
case u ^. uvWorld . input . mouseButtons of
mbs | mbs ^. at ButtonLeft == Just 0 -> do
i <- u ^? uvWorld . input . mouseContext . mcoMenuClick
f <- sl ^? ix i . siPayload . _1
return $ f u
_ -> case u ^. uvWorld . input . mouseButtons . at ButtonRight of
Just 0 -> fromMaybe u $ do
i <- u ^? uvWorld . input . mouseContext . mcoMenuClick
f <- sl ^? ix i . siPayload . _2
return $ f u
_ -> u
mbs | mbs ^. at ButtonRight == Just 0 -> do
i <- u ^? uvWorld . input . mouseContext . mcoMenuClick
f <- sl ^? ix i . siPayload . _2
return $ f u
_ -> Nothing
--mouseClickOptionsList u = fromMaybe u $ do
-- sl <- u ^? uvScreenLayers . ix 0 . scSelectionList
-- Just $ case u ^. uvWorld . input . mouseButtons . at ButtonLeft of
-- Just 0 -> fromMaybe u $ do
-- i <- u ^? uvWorld . input . mouseContext . mcoMenuClick
-- f <- sl ^? ix i . siPayload . _1
-- return $ f u
-- _ -> case u ^. uvWorld . input . mouseButtons . at ButtonRight of
-- Just 0 -> fromMaybe u $ do
-- i <- u ^? uvWorld . input . mouseContext . mcoMenuClick
-- f <- sl ^? ix i . siPayload . _2
-- return $ f u
-- _ -> u
ldpVerticalSelection :: Configuration -> ListDisplayParams -> Point2 -> Maybe Int
ldpVerticalSelection cfig ldp (V2 _ y)