Copyright | Will Thompson, Iñaki García Etxebarria and Jonas Platte |
---|---|
License | LGPL-2.1 |
Maintainer | Iñaki García Etxebarria (garetxe@gmail.com) |
Safe Haskell | None |
Language | Haskell2010 |
The AtkRelationSet held by an object establishes its relationships with objects beyond the normal "parent/child" hierarchical relationships that all user interface objects have. AtkRelationSets establish whether objects are labelled or controlled by other components, share group membership with other components (for instance within a radio-button group), or share content which "flows" between them, among other types of possible relationships.
- newtype RelationSet = RelationSet (ManagedPtr RelationSet)
- class GObject o => IsRelationSet o
- toRelationSet :: IsRelationSet o => o -> IO RelationSet
- noRelationSet :: Maybe RelationSet
- data RelationSetAddMethodInfo
- relationSetAdd :: (HasCallStack, MonadIO m, IsRelationSet a, IsRelation b) => a -> b -> m ()
- data RelationSetAddRelationByTypeMethodInfo
- relationSetAddRelationByType :: (HasCallStack, MonadIO m, IsRelationSet a, IsObject b) => a -> RelationType -> b -> m ()
- data RelationSetContainsMethodInfo
- relationSetContains :: (HasCallStack, MonadIO m, IsRelationSet a) => a -> RelationType -> m Bool
- data RelationSetContainsTargetMethodInfo
- relationSetContainsTarget :: (HasCallStack, MonadIO m, IsRelationSet a, IsObject b) => a -> RelationType -> b -> m Bool
- data RelationSetGetNRelationsMethodInfo
- relationSetGetNRelations :: (HasCallStack, MonadIO m, IsRelationSet a) => a -> m Int32
- data RelationSetGetRelationMethodInfo
- relationSetGetRelation :: (HasCallStack, MonadIO m, IsRelationSet a) => a -> Int32 -> m Relation
- data RelationSetGetRelationByTypeMethodInfo
- relationSetGetRelationByType :: (HasCallStack, MonadIO m, IsRelationSet a) => a -> RelationType -> m Relation
- relationSetNew :: (HasCallStack, MonadIO m) => m RelationSet
- data RelationSetRemoveMethodInfo
- relationSetRemove :: (HasCallStack, MonadIO m, IsRelationSet a, IsRelation b) => a -> b -> m ()
Exported types
newtype RelationSet Source #
GObject RelationSet Source # | |
IsObject RelationSet Source # | |
IsRelationSet RelationSet Source # | |
((~) * info (ResolveRelationSetMethod t RelationSet), MethodInfo * info RelationSet p) => IsLabel t (RelationSet -> p) Source # | |
((~) * info (ResolveRelationSetMethod t RelationSet), MethodInfo * info RelationSet p) => IsLabelProxy t (RelationSet -> p) Source # | |
HasAttributeList * RelationSet Source # | |
type AttributeList RelationSet Source # | |
type SignalList RelationSet Source # | |
class GObject o => IsRelationSet o Source #
toRelationSet :: IsRelationSet o => o -> IO RelationSet Source #
Methods
add
data RelationSetAddMethodInfo Source #
((~) * signature (b -> m ()), MonadIO m, IsRelationSet a, IsRelation b) => MethodInfo * RelationSetAddMethodInfo a signature Source # | |
:: (HasCallStack, MonadIO m, IsRelationSet a, IsRelation b) | |
=> a |
|
-> b |
|
-> m () |
Add a new relation to the current relation set if it is not already present. This function ref's the AtkRelation so the caller of this function should unref it to ensure that it will be destroyed when the AtkRelationSet is destroyed.
addRelationByType
data RelationSetAddRelationByTypeMethodInfo Source #
((~) * signature (RelationType -> b -> m ()), MonadIO m, IsRelationSet a, IsObject b) => MethodInfo * RelationSetAddRelationByTypeMethodInfo a signature Source # | |
relationSetAddRelationByType Source #
:: (HasCallStack, MonadIO m, IsRelationSet a, IsObject b) | |
=> a |
|
-> RelationType |
|
-> b |
|
-> m () |
Add a new relation of the specified type with the specified target to the current relation set if the relation set does not contain a relation of that type. If it is does contain a relation of that typea the target is added to the relation.
Since: 1.9
contains
data RelationSetContainsMethodInfo Source #
((~) * signature (RelationType -> m Bool), MonadIO m, IsRelationSet a) => MethodInfo * RelationSetContainsMethodInfo a signature Source # | |
:: (HasCallStack, MonadIO m, IsRelationSet a) | |
=> a |
|
-> RelationType |
|
-> m Bool | Returns: |
Determines whether the relation set contains a relation that matches the specified type.
containsTarget
data RelationSetContainsTargetMethodInfo Source #
((~) * signature (RelationType -> b -> m Bool), MonadIO m, IsRelationSet a, IsObject b) => MethodInfo * RelationSetContainsTargetMethodInfo a signature Source # | |
relationSetContainsTarget Source #
:: (HasCallStack, MonadIO m, IsRelationSet a, IsObject b) | |
=> a |
|
-> RelationType |
|
-> b |
|
-> m Bool | Returns: |
Determines whether the relation set contains a relation that
matches the specified pair formed by type relationship
and object
target
.
getNRelations
data RelationSetGetNRelationsMethodInfo Source #
((~) * signature (m Int32), MonadIO m, IsRelationSet a) => MethodInfo * RelationSetGetNRelationsMethodInfo a signature Source # | |
relationSetGetNRelations Source #
:: (HasCallStack, MonadIO m, IsRelationSet a) | |
=> a |
|
-> m Int32 | Returns: an integer representing the number of relations in the set. |
Determines the number of relations in a relation set.
getRelation
data RelationSetGetRelationMethodInfo Source #
((~) * signature (Int32 -> m Relation), MonadIO m, IsRelationSet a) => MethodInfo * RelationSetGetRelationMethodInfo a signature Source # | |
relationSetGetRelation Source #
:: (HasCallStack, MonadIO m, IsRelationSet a) | |
=> a |
|
-> Int32 |
|
-> m Relation | Returns: a |
Determines the relation at the specified position in the relation set.
getRelationByType
data RelationSetGetRelationByTypeMethodInfo Source #
((~) * signature (RelationType -> m Relation), MonadIO m, IsRelationSet a) => MethodInfo * RelationSetGetRelationByTypeMethodInfo a signature Source # | |
relationSetGetRelationByType Source #
:: (HasCallStack, MonadIO m, IsRelationSet a) | |
=> a |
|
-> RelationType |
|
-> m Relation | Returns: an |
Finds a relation that matches the specified type.
new
:: (HasCallStack, MonadIO m) | |
=> m RelationSet | Returns: a new |
Creates a new empty relation set.
remove
data RelationSetRemoveMethodInfo Source #
((~) * signature (b -> m ()), MonadIO m, IsRelationSet a, IsRelation b) => MethodInfo * RelationSetRemoveMethodInfo a signature Source # | |
:: (HasCallStack, MonadIO m, IsRelationSet a, IsRelation b) | |
=> a |
|
-> b |
|
-> m () |
Removes a relation from the relation set.
This function unref's the Relation
so it will be deleted unless there
is another reference to it.