packages feed

qtah-qt5-0.8.0: src/Graphics/UI/Qtah/Core/QFileSystemWatcher.hs

{-# LANGUAGE FlexibleContexts, FlexibleInstances, ForeignFunctionInterface, MonoLocalBinds, MultiParamTypeClasses, ScopedTypeVariables, TypeSynonymInstances, UndecidableInstances #-}
---------- GENERATED FILE, EDITS WILL BE LOST ----------

{-# LANGUAGE NoMonomorphismRestriction #-}

module Graphics.UI.Qtah.Core.QFileSystemWatcher (
  QFileSystemWatcherValue (..),
  QFileSystemWatcherConstPtr (..),
  QFileSystemWatcherPtr (..),
  QFileSystemWatcherConst,
  QFileSystemWatcher,
  castConst,
  cast,
  downCastConst,
  downCast,
  new,
  newWithParent,
  newWithPaths,
  newWithPathsAndParent,
  addPath,
  addPaths,
  directories,
  files,
  removePath,
  removePaths,
  directoryChangedSignal,
  fileChangedSignal,
  ) where

import qualified Foreign.Hoppy.Runtime as QtahFHR
import Graphics.UI.Qtah.Generated.Core.QFileSystemWatcher
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 = toQFileSystemWatcherConst
cast = toQFileSystemWatcher
downCastConst = downToQFileSystemWatcherConst
downCast = downToQFileSystemWatcher

directoryChangedSignal :: (QFileSystemWatcherPtr object) => QtahSignal.Signal object (QtahP.String -> HoppyP.IO ())
directoryChangedSignal = QtahSignal.Signal
  { QtahSignal.internalConnectSignal = \object' fn' -> do
    listener' <- listenerQString_new object' "2directoryChanged(QString)" fn'
    valid' <- listenerQString_isValid listener'
    if valid'
      then QtahP.fmap QtahP.Just $ QtahSignal.internalMakeConnection listener'
      else QtahFHR.delete listener' >> QtahP.return QtahP.Nothing
  , QtahSignal.internalName = "QFileSystemWatcher::directoryChanged (ListenerQString)"
  }

fileChangedSignal :: (QFileSystemWatcherPtr object) => QtahSignal.Signal object (QtahP.String -> HoppyP.IO ())
fileChangedSignal = QtahSignal.Signal
  { QtahSignal.internalConnectSignal = \object' fn' -> do
    listener' <- listenerQString_new object' "2fileChanged(QString)" fn'
    valid' <- listenerQString_isValid listener'
    if valid'
      then QtahP.fmap QtahP.Just $ QtahSignal.internalMakeConnection listener'
      else QtahFHR.delete listener' >> QtahP.return QtahP.Nothing
  , QtahSignal.internalName = "QFileSystemWatcher::fileChanged (ListenerQString)"
  }