gi-atk-0.2.18.12: GI/Atk/Objects/RelationSet.hs
{- |
Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte
License : LGPL-2.1
Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
-}
module GI.Atk.Objects.RelationSet
(
-- * Exported types
RelationSet(..) ,
RelationSetK ,
toRelationSet ,
noRelationSet ,
-- * Methods
-- ** relationSetAdd
relationSetAdd ,
-- ** relationSetAddRelationByType
relationSetAddRelationByType ,
-- ** relationSetContains
relationSetContains ,
-- ** relationSetContainsTarget
relationSetContainsTarget ,
-- ** relationSetGetNRelations
relationSetGetNRelations ,
-- ** relationSetGetRelation
relationSetGetRelation ,
-- ** relationSetGetRelationByType
relationSetGetRelationByType ,
-- ** relationSetNew
relationSetNew ,
-- ** relationSetRemove
relationSetRemove ,
) where
import Prelude ()
import Data.GI.Base.ShortPrelude
import qualified Data.Text as T
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
import GI.Atk.Types
import GI.Atk.Callbacks
import qualified GI.GObject as GObject
newtype RelationSet = RelationSet (ForeignPtr RelationSet)
foreign import ccall "atk_relation_set_get_type"
c_atk_relation_set_get_type :: IO GType
type instance ParentTypes RelationSet = RelationSetParentTypes
type RelationSetParentTypes = '[GObject.Object]
instance GObject RelationSet where
gobjectIsInitiallyUnowned _ = False
gobjectType _ = c_atk_relation_set_get_type
class GObject o => RelationSetK o
instance (GObject o, IsDescendantOf RelationSet o) => RelationSetK o
toRelationSet :: RelationSetK o => o -> IO RelationSet
toRelationSet = unsafeCastTo RelationSet
noRelationSet :: Maybe RelationSet
noRelationSet = Nothing
type instance AttributeList RelationSet = RelationSetAttributeList
type RelationSetAttributeList = ('[ ] :: [(Symbol, *)])
type instance SignalList RelationSet = RelationSetSignalList
type RelationSetSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
-- method RelationSet::new
-- method type : Constructor
-- Args : []
-- Lengths : []
-- hInArgs : []
-- returnType : TInterface "Atk" "RelationSet"
-- throws : False
-- Skip return : False
foreign import ccall "atk_relation_set_new" atk_relation_set_new ::
IO (Ptr RelationSet)
relationSetNew ::
(MonadIO m) =>
m RelationSet
relationSetNew = liftIO $ do
result <- atk_relation_set_new
checkUnexpectedReturnNULL "atk_relation_set_new" result
result' <- (wrapObject RelationSet) result
return result'
-- method RelationSet::add
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "Atk" "RelationSet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "relation", argType = TInterface "Atk" "Relation", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Atk" "RelationSet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "relation", argType = TInterface "Atk" "Relation", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "atk_relation_set_add" atk_relation_set_add ::
Ptr RelationSet -> -- _obj : TInterface "Atk" "RelationSet"
Ptr Relation -> -- relation : TInterface "Atk" "Relation"
IO ()
relationSetAdd ::
(MonadIO m, RelationSetK a, RelationK b) =>
a -> -- _obj
b -> -- relation
m ()
relationSetAdd _obj relation = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
let relation' = unsafeManagedPtrCastPtr relation
atk_relation_set_add _obj' relation'
touchManagedPtr _obj
touchManagedPtr relation
return ()
-- method RelationSet::add_relation_by_type
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "Atk" "RelationSet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "relationship", argType = TInterface "Atk" "RelationType", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "target", argType = TInterface "Atk" "Object", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Atk" "RelationSet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "relationship", argType = TInterface "Atk" "RelationType", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "target", argType = TInterface "Atk" "Object", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "atk_relation_set_add_relation_by_type" atk_relation_set_add_relation_by_type ::
Ptr RelationSet -> -- _obj : TInterface "Atk" "RelationSet"
CUInt -> -- relationship : TInterface "Atk" "RelationType"
Ptr Object -> -- target : TInterface "Atk" "Object"
IO ()
relationSetAddRelationByType ::
(MonadIO m, RelationSetK a, ObjectK b) =>
a -> -- _obj
RelationType -> -- relationship
b -> -- target
m ()
relationSetAddRelationByType _obj relationship target = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
let relationship' = (fromIntegral . fromEnum) relationship
let target' = unsafeManagedPtrCastPtr target
atk_relation_set_add_relation_by_type _obj' relationship' target'
touchManagedPtr _obj
touchManagedPtr target
return ()
-- method RelationSet::contains
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "Atk" "RelationSet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "relationship", argType = TInterface "Atk" "RelationType", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Atk" "RelationSet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "relationship", argType = TInterface "Atk" "RelationType", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TBoolean
-- throws : False
-- Skip return : False
foreign import ccall "atk_relation_set_contains" atk_relation_set_contains ::
Ptr RelationSet -> -- _obj : TInterface "Atk" "RelationSet"
CUInt -> -- relationship : TInterface "Atk" "RelationType"
IO CInt
relationSetContains ::
(MonadIO m, RelationSetK a) =>
a -> -- _obj
RelationType -> -- relationship
m Bool
relationSetContains _obj relationship = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
let relationship' = (fromIntegral . fromEnum) relationship
result <- atk_relation_set_contains _obj' relationship'
let result' = (/= 0) result
touchManagedPtr _obj
return result'
-- method RelationSet::contains_target
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "Atk" "RelationSet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "relationship", argType = TInterface "Atk" "RelationType", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "target", argType = TInterface "Atk" "Object", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Atk" "RelationSet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "relationship", argType = TInterface "Atk" "RelationType", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "target", argType = TInterface "Atk" "Object", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TBoolean
-- throws : False
-- Skip return : False
foreign import ccall "atk_relation_set_contains_target" atk_relation_set_contains_target ::
Ptr RelationSet -> -- _obj : TInterface "Atk" "RelationSet"
CUInt -> -- relationship : TInterface "Atk" "RelationType"
Ptr Object -> -- target : TInterface "Atk" "Object"
IO CInt
relationSetContainsTarget ::
(MonadIO m, RelationSetK a, ObjectK b) =>
a -> -- _obj
RelationType -> -- relationship
b -> -- target
m Bool
relationSetContainsTarget _obj relationship target = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
let relationship' = (fromIntegral . fromEnum) relationship
let target' = unsafeManagedPtrCastPtr target
result <- atk_relation_set_contains_target _obj' relationship' target'
let result' = (/= 0) result
touchManagedPtr _obj
touchManagedPtr target
return result'
-- method RelationSet::get_n_relations
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "Atk" "RelationSet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Atk" "RelationSet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TInt32
-- throws : False
-- Skip return : False
foreign import ccall "atk_relation_set_get_n_relations" atk_relation_set_get_n_relations ::
Ptr RelationSet -> -- _obj : TInterface "Atk" "RelationSet"
IO Int32
relationSetGetNRelations ::
(MonadIO m, RelationSetK a) =>
a -> -- _obj
m Int32
relationSetGetNRelations _obj = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
result <- atk_relation_set_get_n_relations _obj'
touchManagedPtr _obj
return result
-- method RelationSet::get_relation
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "Atk" "RelationSet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "i", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Atk" "RelationSet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "i", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TInterface "Atk" "Relation"
-- throws : False
-- Skip return : False
foreign import ccall "atk_relation_set_get_relation" atk_relation_set_get_relation ::
Ptr RelationSet -> -- _obj : TInterface "Atk" "RelationSet"
Int32 -> -- i : TBasicType TInt32
IO (Ptr Relation)
relationSetGetRelation ::
(MonadIO m, RelationSetK a) =>
a -> -- _obj
Int32 -> -- i
m Relation
relationSetGetRelation _obj i = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
result <- atk_relation_set_get_relation _obj' i
checkUnexpectedReturnNULL "atk_relation_set_get_relation" result
result' <- (newObject Relation) result
touchManagedPtr _obj
return result'
-- method RelationSet::get_relation_by_type
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "Atk" "RelationSet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "relationship", argType = TInterface "Atk" "RelationType", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Atk" "RelationSet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "relationship", argType = TInterface "Atk" "RelationType", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TInterface "Atk" "Relation"
-- throws : False
-- Skip return : False
foreign import ccall "atk_relation_set_get_relation_by_type" atk_relation_set_get_relation_by_type ::
Ptr RelationSet -> -- _obj : TInterface "Atk" "RelationSet"
CUInt -> -- relationship : TInterface "Atk" "RelationType"
IO (Ptr Relation)
relationSetGetRelationByType ::
(MonadIO m, RelationSetK a) =>
a -> -- _obj
RelationType -> -- relationship
m Relation
relationSetGetRelationByType _obj relationship = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
let relationship' = (fromIntegral . fromEnum) relationship
result <- atk_relation_set_get_relation_by_type _obj' relationship'
checkUnexpectedReturnNULL "atk_relation_set_get_relation_by_type" result
result' <- (newObject Relation) result
touchManagedPtr _obj
return result'
-- method RelationSet::remove
-- method type : OrdinaryMethod
-- Args : [Arg {argName = "_obj", argType = TInterface "Atk" "RelationSet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "relation", argType = TInterface "Atk" "Relation", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Atk" "RelationSet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "relation", argType = TInterface "Atk" "Relation", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TVoid
-- throws : False
-- Skip return : False
foreign import ccall "atk_relation_set_remove" atk_relation_set_remove ::
Ptr RelationSet -> -- _obj : TInterface "Atk" "RelationSet"
Ptr Relation -> -- relation : TInterface "Atk" "Relation"
IO ()
relationSetRemove ::
(MonadIO m, RelationSetK a, RelationK b) =>
a -> -- _obj
b -> -- relation
m ()
relationSetRemove _obj relation = liftIO $ do
let _obj' = unsafeManagedPtrCastPtr _obj
let relation' = unsafeManagedPtrCastPtr relation
atk_relation_set_remove _obj' relation'
touchManagedPtr _obj
touchManagedPtr relation
return ()