Portability | portable (depends on GHC) |
---|---|
Stability | provisional |
Maintainer | gtk2hs-users@lists.sourceforge.net |
Safe Haskell | None |
This file reflects the Gtk+ object hierarchy in terms of Haskell classes.
Note: the mk... functions were originally meant to simply be an alias for the constructor. However, in order to communicate the destructor of an object to objectNew, the mk... functions are now a tuple containing Haskell constructor and the destructor function pointer. This hack avoids changing all modules that simply pass mk... to objectNew.
Documentation
module System.Glib.GObject
class GObjectClass o => ObjectClass o Source
toObject :: ObjectClass o => o -> ObjectSource
mkObject :: (ForeignPtr Object -> Object, FinalizerPtr a)Source
unObject :: Object -> ForeignPtr ObjectSource
castToObject :: GObjectClass obj => obj -> ObjectSource
Pad (ForeignPtr Pad) |
mkPad :: (ForeignPtr Pad -> Pad, FinalizerPtr a)Source
unPad :: Pad -> ForeignPtr PadSource
castToPad :: GObjectClass obj => obj -> PadSource
class PadClass o => GhostPadClass o Source
toGhostPad :: GhostPadClass o => o -> GhostPadSource
mkGhostPad :: (ForeignPtr GhostPad -> GhostPad, FinalizerPtr a)Source
castToGhostPad :: GObjectClass obj => obj -> GhostPadSource
newtype PluginFeature Source
class ObjectClass o => PluginFeatureClass o Source
toPluginFeature :: PluginFeatureClass o => o -> PluginFeatureSource
castToPluginFeature :: GObjectClass obj => obj -> PluginFeatureSource
newtype ElementFactory Source
toElementFactory :: ElementFactoryClass o => o -> ElementFactorySource
castToElementFactory :: GObjectClass obj => obj -> ElementFactorySource
newtype TypeFindFactory Source
toTypeFindFactory :: TypeFindFactoryClass o => o -> TypeFindFactorySource
castToTypeFindFactory :: GObjectClass obj => obj -> TypeFindFactorySource
newtype IndexFactory Source
toIndexFactory :: IndexFactoryClass o => o -> IndexFactorySource
castToIndexFactory :: GObjectClass obj => obj -> IndexFactorySource
class ObjectClass o => ElementClass o Source
toElement :: ElementClass o => o -> ElementSource
mkElement :: (ForeignPtr Element -> Element, FinalizerPtr a)Source
castToElement :: GObjectClass obj => obj -> ElementSource
Bin (ForeignPtr Bin) |
mkBin :: (ForeignPtr Bin -> Bin, FinalizerPtr a)Source
unBin :: Bin -> ForeignPtr BinSource
castToBin :: GObjectClass obj => obj -> BinSource
class BinClass o => PipelineClass o Source
toPipeline :: PipelineClass o => o -> PipelineSource
mkPipeline :: (ForeignPtr Pipeline -> Pipeline, FinalizerPtr a)Source
castToPipeline :: GObjectClass obj => obj -> PipelineSource
newtype ImplementsInterface Source
class ElementClass o => ImplementsInterfaceClass o Source
mkImplementsInterface :: (ForeignPtr ImplementsInterface -> ImplementsInterface, FinalizerPtr a)Source
castToImplementsInterface :: GObjectClass obj => obj -> ImplementsInterfaceSource
class ElementClass o => TagSetterClass o Source
toTagSetter :: TagSetterClass o => o -> TagSetterSource
mkTagSetter :: (ForeignPtr TagSetter -> TagSetter, FinalizerPtr a)Source
castToTagSetter :: GObjectClass obj => obj -> TagSetterSource
class ElementClass o => BaseSrcClass o Source
toBaseSrc :: BaseSrcClass o => o -> BaseSrcSource
mkBaseSrc :: (ForeignPtr BaseSrc -> BaseSrc, FinalizerPtr a)Source
castToBaseSrc :: GObjectClass obj => obj -> BaseSrcSource
class BaseSrcClass o => PushSrcClass o Source
toPushSrc :: PushSrcClass o => o -> PushSrcSource
mkPushSrc :: (ForeignPtr PushSrc -> PushSrc, FinalizerPtr a)Source
castToPushSrc :: GObjectClass obj => obj -> PushSrcSource
class ElementClass o => BaseSinkClass o Source
toBaseSink :: BaseSinkClass o => o -> BaseSinkSource
mkBaseSink :: (ForeignPtr BaseSink -> BaseSink, FinalizerPtr a)Source
castToBaseSink :: GObjectClass obj => obj -> BaseSinkSource
newtype BaseTransform Source
toBaseTransform :: BaseTransformClass o => o -> BaseTransformSource
castToBaseTransform :: GObjectClass obj => obj -> BaseTransformSource
class ObjectClass o => PluginClass o Source
toPlugin :: PluginClass o => o -> PluginSource
mkPlugin :: (ForeignPtr Plugin -> Plugin, FinalizerPtr a)Source
unPlugin :: Plugin -> ForeignPtr PluginSource
castToPlugin :: GObjectClass obj => obj -> PluginSource
class ObjectClass o => RegistryClass o Source
toRegistry :: RegistryClass o => o -> RegistrySource
mkRegistry :: (ForeignPtr Registry -> Registry, FinalizerPtr a)Source
castToRegistry :: GObjectClass obj => obj -> RegistrySource
class ObjectClass o => BusClass o Source
mkBus :: (ForeignPtr Bus -> Bus, FinalizerPtr a)Source
unBus :: Bus -> ForeignPtr BusSource
castToBus :: GObjectClass obj => obj -> BusSource
class ObjectClass o => ClockClass o Source
toClock :: ClockClass o => o -> ClockSource
mkClock :: (ForeignPtr Clock -> Clock, FinalizerPtr a)Source
unClock :: Clock -> ForeignPtr ClockSource
castToClock :: GObjectClass obj => obj -> ClockSource
newtype AudioClock Source
class ClockClass o => AudioClockClass o Source
toAudioClock :: AudioClockClass o => o -> AudioClockSource
mkAudioClock :: (ForeignPtr AudioClock -> AudioClock, FinalizerPtr a)Source
castToAudioClock :: GObjectClass obj => obj -> AudioClockSource
newtype SystemClock Source
class ClockClass o => SystemClockClass o Source
toSystemClock :: SystemClockClass o => o -> SystemClockSource
castToSystemClock :: GObjectClass obj => obj -> SystemClockSource
newtype NetClientClock Source
toNetClientClock :: NetClientClockClass o => o -> NetClientClockSource
castToNetClientClock :: GObjectClass obj => obj -> NetClientClockSource
class ObjectClass o => IndexClass o Source
toIndex :: IndexClass o => o -> IndexSource
mkIndex :: (ForeignPtr Index -> Index, FinalizerPtr a)Source
unIndex :: Index -> ForeignPtr IndexSource
castToIndex :: GObjectClass obj => obj -> IndexSource
newtype PadTemplate Source
class ObjectClass o => PadTemplateClass o Source
toPadTemplate :: PadTemplateClass o => o -> PadTemplateSource
castToPadTemplate :: GObjectClass obj => obj -> PadTemplateSource
class ObjectClass o => TaskClass o Source
mkTask :: (ForeignPtr Task -> Task, FinalizerPtr a)Source
unTask :: Task -> ForeignPtr TaskSource
castToTask :: GObjectClass obj => obj -> TaskSource
class ObjectClass o => XMLClass o Source
mkXML :: (ForeignPtr XML -> XML, FinalizerPtr a)Source
unXML :: XML -> ForeignPtr XMLSource
castToXML :: GObjectClass obj => obj -> XMLSource
newtype ChildProxy Source
class ObjectClass o => ChildProxyClass o Source
toChildProxy :: ChildProxyClass o => o -> ChildProxySource
mkChildProxy :: (ForeignPtr ChildProxy -> ChildProxy, FinalizerPtr a)Source
castToChildProxy :: GObjectClass obj => obj -> ChildProxySource
newtype CollectPads Source
class ObjectClass o => CollectPadsClass o Source
toCollectPads :: CollectPadsClass o => o -> CollectPadsSource
castToCollectPads :: GObjectClass obj => obj -> CollectPadsSource
newtype URIHandler Source
class GObjectClass o => URIHandlerClass o Source
toURIHandler :: URIHandlerClass o => o -> URIHandlerSource
mkURIHandler :: (ForeignPtr URIHandler -> URIHandler, FinalizerPtr a)Source
castToURIHandler :: GObjectClass obj => obj -> URIHandlerSource
class GObjectClass o => AdapterClass o Source
toAdapter :: AdapterClass o => o -> AdapterSource
mkAdapter :: (ForeignPtr Adapter -> Adapter, FinalizerPtr a)Source
castToAdapter :: GObjectClass obj => obj -> AdapterSource
newtype Controller Source
class GObjectClass o => ControllerClass o Source
toController :: ControllerClass o => o -> ControllerSource
mkController :: (ForeignPtr Controller -> Controller, FinalizerPtr a)Source
castToController :: GObjectClass obj => obj -> ControllerSource