Simplify buttons

This commit is contained in:
2025-06-25 21:37:32 +01:00
parent 6e9d4918a1
commit a9cae4d409
13 changed files with 130 additions and 140 deletions
+9 -17
View File
@@ -11,28 +11,20 @@ import Data.Aeson
import Data.Aeson.TH
import Dodge.Data.WorldEffect
import Geometry.Data
import Sound.Data
--data ButtonDraw
-- = DefaultDrawButton Color
-- | DefaultDrawSwitch Color Color
-- | DrawNoButton
-- --deriving (Eq, Ord, Show, Read) --Generic, Flat)
data ButtonEvent
= ButtonDoNothing
| ButtonPress
{ _bpState :: ButtonState
, _bpEvent :: ButtonEvent
, _bpSound :: SoundID
{ _btOn :: Bool
, _bpEff :: WdWd
, _bpColor :: Color
}
| ButtonSimpleSwith
| ButtonSwitch
{ _bonEff :: WdWd
, _boffEff :: WdWd
, _bssColor1 :: Color
, _bssColor2 :: Color
, _bsColor1 :: Color
, _bsColor2 :: Color
, _btOn :: Bool
}
| ButtonAccessTerminal
--deriving (Eq, Show, Read) --, Generic)
@@ -46,7 +38,7 @@ data Button = Button
, _btEvent :: ButtonEvent --Button -> World -> World
, _btID :: Int
-- , _btText :: String
, _btState :: ButtonState
-- , _btState :: ButtonState
, _btTermMID :: Maybe Int
, _btName :: String
, _btColor :: Color
@@ -54,12 +46,12 @@ data Button = Button
--deriving (Eq, Show, Read) --, Generic)
--h--deriving (Eq, Show, Read) --Generic, Flat)
data ButtonState = BtOn | BtOff | BtInactive
deriving Eq -- (Eq, Ord, Show, Read) --Generic, Flat)
--data ButtonState = BtOn | BtOff | BtInactive
-- deriving Eq -- (Eq, Ord, Show, Read) --Generic, Flat)
makeLenses ''Button
makeLenses ''ButtonEvent
--deriveJSON defaultOptions ''ButtonDraw
deriveJSON defaultOptions ''ButtonState
--deriveJSON defaultOptions ''ButtonState
deriveJSON defaultOptions ''ButtonEvent
deriveJSON defaultOptions ''Button