module HGamer3D.GUI.Slider
(
ctSlider,
Slider (..)
)
where
import Fresco
import Data.Binary.Serialise.CBOR
import Data.Binary.Serialise.CBOR.Encoding
import Data.Binary.Serialise.CBOR.Decoding
import Data.Text
import Data.Monoid
import Control.Applicative
data Slider = Slider {
sliderRange::Float,
sliderValue::Float
} deriving (Eq, Read, Show)
ctSlider :: ComponentType Slider
ctSlider = ComponentType 0x60636b107c77a533
instance Serialise Slider where
encode (Slider v1 v2) = encodeListLen 2 <> encode v1 <> encode v2
decode = decodeListLenOf 2 >> Slider <$> decode <*> decode