qtah-qt5-0.8.0: src/Graphics/UI/Qtah/Core/QTimer.hs
{-# LANGUAGE FlexibleContexts, FlexibleInstances, ForeignFunctionInterface, MonoLocalBinds, MultiParamTypeClasses, ScopedTypeVariables, TypeSynonymInstances, UndecidableInstances #-}
---------- GENERATED FILE, EDITS WILL BE LOST ----------
{-# LANGUAGE NoMonomorphismRestriction #-}
module Graphics.UI.Qtah.Core.QTimer (
QTimerValue (..),
QTimerConstPtr (..),
QTimerPtr (..),
QTimerConst,
QTimer,
castConst,
cast,
downCastConst,
downCast,
new,
interval,
isActive,
isSingleShot,
remainingTime,
setInterval,
setSingleShot,
start,
timerId,
timeoutSignal,
) where
import qualified Foreign.Hoppy.Runtime as QtahFHR
import Graphics.UI.Qtah.Generated.Core.QTimer
import Graphics.UI.Qtah.Internal.Listener
import qualified Graphics.UI.Qtah.Signal as QtahSignal
import Prelude (($), (>>))
import qualified Prelude as HoppyP
import qualified Prelude as QtahP
castConst = toQTimerConst
cast = toQTimer
downCastConst = downToQTimerConst
downCast = downToQTimer
timeoutSignal :: (QTimerPtr object) => QtahSignal.Signal object (HoppyP.IO ())
timeoutSignal = QtahSignal.Signal
{ QtahSignal.internalConnectSignal = \object' fn' -> do
listener' <- listener_new object' "2timeout()" fn'
valid' <- listener_isValid listener'
if valid'
then QtahP.fmap QtahP.Just $ QtahSignal.internalMakeConnection listener'
else QtahFHR.delete listener' >> QtahP.return QtahP.Nothing
, QtahSignal.internalName = "QTimer::timeout (Listener)"
}