{- GUI: Button functionality HGamer3D Library (A project to enable 3D game development in Haskell) Copyright 2015 Peter Althainz Distributed under the Apache License, Version 2.0 (See attached file LICENSE or copy at http://www.apache.org/licenses/LICENSE-2.0) file: HGamer3D/GUI/Button.hs -} -- | Module providing the Button functionality and settings module HGamer3D.GUI.Button ( Button (..), ctButton ) where import Fresco import Debug.Trace import Data.Text import Data.MessagePack import HGamer3D.Data data Button = Button { buttonPressed::Bool, buttonLabel::Text } deriving (Eq, Show, Read) instance ComponentClass Button where toObj (Button v1 v2) = ObjectArray [ObjectBool v1, (toObj v2)] fromObj (ObjectArray [ObjectBool v1, v2]) = Button v1 (fromObj v2) ctButton :: ComponentType Button ctButton = ComponentType 0x68a1857c27690b30