apelsin-1.1: src/Types.hs
module Types (
module Control.Concurrent.STM
, Bundle(..), ClanHook, PolledHook, ClanPolledHook, SetCurrent
) where
import Graphics.UI.Gtk
import Config
import ClanFetcher
import Control.Concurrent.STM
import Network.Tremulous.Protocol
data Bundle = Bundle {
mpolled :: !(TMVar PollResult)
, mconfig :: !(TMVar Config)
, mclans :: !(TMVar [Clan])
, parent :: !Window
, browserStore :: !(ListStore GameServer)
}
type ClanHook = [Clan] -> IO ()
type PolledHook = PollResult -> IO ()
type ClanPolledHook = [Clan] -> PollResult -> IO ()
type SetCurrent = Bool -> GameServer -> IO ()