packages feed

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

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

{-# LANGUAGE NoMonomorphismRestriction #-}

module Graphics.UI.Qtah.Core.QObject (
  QObjectValue (..),
  QObjectConstPtr (..),
  QObjectPtr (..),
  QObjectConst,
  QObject,
  castConst,
  cast,
  downCastConst,
  downCast,
  new,
  newWithParent,
  blockSignals,
  children,
  connect,
  connectStatic,
  connectWithSenderSignalStatic,
  connectWithSenderSignalTypeStatic,
  connectWithType,
  connectWithTypeStatic,
  deleteLater,
  disconnect,
  disconnectStatic,
  disconnectWithMetaobject,
  disconnectWithReceiver,
  disconnectWithReceiverAndMethod,
  disconnectWithSignal,
  disconnectWithSignalAndReceiver,
  disconnectWithSignalAndReceiverAndMethod,
  dumpObjectInfo,
  dumpObjectTree,
  dynamicPropertyNames,
  emitDestroyed,
  event,
  eventFilter,
  inherits,
  installEventFilter,
  isWidgetType,
  isWindowType,
  killTimer,
  metaObject,
  moveToThread,
  objectName,
  parent,
  property,
  removeEventFilter,
  setObjectName,
  setParent,
  setProperty,
  signalsBlocked,
  startTimer,
  thread,
  destroyedSignal,
  objectNameChangedSignal,
  ) where

import qualified Foreign.Hoppy.Runtime as QtahFHR
import Graphics.UI.Qtah.Generated.Core.QObject
import qualified Graphics.UI.Qtah.Generated.Core.QObject as M94
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 = toQObjectConst
cast = toQObject
downCastConst = downToQObjectConst
downCast = downToQObject

destroyedSignal :: (QObjectPtr object) => QtahSignal.Signal object (M94.QObject -> HoppyP.IO ())
destroyedSignal = QtahSignal.Signal
  { QtahSignal.internalConnectSignal = \object' fn' -> do
    listener' <- listenerPtrQObject_new object' "2destroyed(QObject*)" fn'
    valid' <- listenerPtrQObject_isValid listener'
    if valid'
      then QtahP.fmap QtahP.Just $ QtahSignal.internalMakeConnection listener'
      else QtahFHR.delete listener' >> QtahP.return QtahP.Nothing
  , QtahSignal.internalName = "QObject::destroyed (ListenerPtrQObject)"
  }

objectNameChangedSignal :: (QObjectPtr object) => QtahSignal.Signal object (QtahP.String -> HoppyP.IO ())
objectNameChangedSignal = QtahSignal.Signal
  { QtahSignal.internalConnectSignal = \object' fn' -> do
    listener' <- listenerQString_new object' "2objectNameChanged(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 = "QObject::objectNameChanged (ListenerQString)"
  }