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 |
A ParamSpecPool
maintains a collection of GParamSpecs
which can be
quickly accessed by owner and name. The implementation of the Object
property
system uses such a pool to store the GParamSpecs
of the properties all object
types.
- newtype ParamSpecPool = ParamSpecPool (ManagedPtr ParamSpecPool)
- noParamSpecPool :: Maybe ParamSpecPool
- data ParamSpecPoolInsertMethodInfo
- paramSpecPoolInsert :: (HasCallStack, MonadIO m) => ParamSpecPool -> GParamSpec -> GType -> m ()
- data ParamSpecPoolListOwnedMethodInfo
- paramSpecPoolListOwned :: (HasCallStack, MonadIO m) => ParamSpecPool -> GType -> m [GParamSpec]
- data ParamSpecPoolLookupMethodInfo
- paramSpecPoolLookup :: (HasCallStack, MonadIO m) => ParamSpecPool -> Text -> GType -> Bool -> m GParamSpec
- paramSpecPoolNew :: (HasCallStack, MonadIO m) => Bool -> m ParamSpecPool
- data ParamSpecPoolRemoveMethodInfo
- paramSpecPoolRemove :: (HasCallStack, MonadIO m) => ParamSpecPool -> GParamSpec -> m ()
Exported types
newtype ParamSpecPool Source #
WrappedPtr ParamSpecPool Source # | |
((~) * info (ResolveParamSpecPoolMethod t ParamSpecPool), MethodInfo * info ParamSpecPool p) => IsLabel t (ParamSpecPool -> p) Source # | |
((~) * info (ResolveParamSpecPoolMethod t ParamSpecPool), MethodInfo * info ParamSpecPool p) => IsLabelProxy t (ParamSpecPool -> p) Source # | |
HasAttributeList * ParamSpecPool Source # | |
((~) * signature (GParamSpec -> m ()), MonadIO m) => MethodInfo * ParamSpecPoolRemoveMethodInfo ParamSpecPool signature Source # | |
((~) * signature (Text -> GType -> Bool -> m GParamSpec), MonadIO m) => MethodInfo * ParamSpecPoolLookupMethodInfo ParamSpecPool signature Source # | |
((~) * signature (GType -> m [GParamSpec]), MonadIO m) => MethodInfo * ParamSpecPoolListOwnedMethodInfo ParamSpecPool signature Source # | |
((~) * signature (GParamSpec -> GType -> m ()), MonadIO m) => MethodInfo * ParamSpecPoolInsertMethodInfo ParamSpecPool signature Source # | |
type AttributeList ParamSpecPool Source # | |
Methods
insert
data ParamSpecPoolInsertMethodInfo Source #
((~) * signature (GParamSpec -> GType -> m ()), MonadIO m) => MethodInfo * ParamSpecPoolInsertMethodInfo ParamSpecPool signature Source # | |
:: (HasCallStack, MonadIO m) | |
=> ParamSpecPool |
|
-> GParamSpec |
|
-> GType |
|
-> m () |
Inserts a ParamSpec
in the pool.
listOwned
data ParamSpecPoolListOwnedMethodInfo Source #
((~) * signature (GType -> m [GParamSpec]), MonadIO m) => MethodInfo * ParamSpecPoolListOwnedMethodInfo ParamSpecPool signature Source # | |
paramSpecPoolListOwned Source #
:: (HasCallStack, MonadIO m) | |
=> ParamSpecPool |
|
-> GType |
|
-> m [GParamSpec] | Returns: a
|
Gets an List
of all GParamSpecs
owned by ownerType
in
the pool.
lookup
data ParamSpecPoolLookupMethodInfo Source #
((~) * signature (Text -> GType -> Bool -> m GParamSpec), MonadIO m) => MethodInfo * ParamSpecPoolLookupMethodInfo ParamSpecPool signature Source # | |
:: (HasCallStack, MonadIO m) | |
=> ParamSpecPool |
|
-> Text |
|
-> GType |
|
-> Bool |
|
-> m GParamSpec | Returns: The found |
Looks up a ParamSpec
in the pool.
new
:: (HasCallStack, MonadIO m) | |
=> Bool |
|
-> m ParamSpecPool | Returns: a newly allocated |
Creates a new ParamSpecPool
.
If typePrefixing
is True
, lookups in the newly created pool will
allow to specify the owner as a colon-separated prefix of the
property name, like "GtkContainer:border-width". This feature is
deprecated, so you should always set typePrefixing
to False
.
remove
data ParamSpecPoolRemoveMethodInfo Source #
((~) * signature (GParamSpec -> m ()), MonadIO m) => MethodInfo * ParamSpecPoolRemoveMethodInfo ParamSpecPool signature Source # | |
:: (HasCallStack, MonadIO m) | |
=> ParamSpecPool |
|
-> GParamSpec |
|
-> m () |
Removes a ParamSpec
from the pool.