Copyright | Will Thompson Iñaki García Etxebarria and Jonas Platte |
---|---|
License | LGPL-2.1 |
Maintainer | Iñaki García Etxebarria (inaki@blueleaf.cc) |
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.
Synopsis
- newtype ParamSpecPool = ParamSpecPool (ManagedPtr ParamSpecPool)
- noParamSpecPool :: Maybe ParamSpecPool
- paramSpecPoolInsert :: (HasCallStack, MonadIO m) => ParamSpecPool -> GParamSpec -> GType -> m ()
- paramSpecPoolListOwned :: (HasCallStack, MonadIO m) => ParamSpecPool -> GType -> m [GParamSpec]
- paramSpecPoolLookup :: (HasCallStack, MonadIO m) => ParamSpecPool -> Text -> GType -> Bool -> m GParamSpec
- paramSpecPoolNew :: (HasCallStack, MonadIO m) => Bool -> m ParamSpecPool
- paramSpecPoolRemove :: (HasCallStack, MonadIO m) => ParamSpecPool -> GParamSpec -> m ()
Exported types
newtype ParamSpecPool Source #
Memory-managed wrapper type.
Instances
WrappedPtr ParamSpecPool Source # | |
Defined in GI.GObject.Structs.ParamSpecPool |
noParamSpecPool :: Maybe ParamSpecPool Source #
A convenience alias for Nothing
:: Maybe
ParamSpecPool
.
Methods
insert
:: (HasCallStack, MonadIO m) | |
=> ParamSpecPool |
|
-> GParamSpec |
|
-> GType |
|
-> m () |
Inserts a ParamSpec
in the pool.
listOwned
paramSpecPoolListOwned Source #
:: (HasCallStack, MonadIO m) | |
=> ParamSpecPool |
|
-> GType |
|
-> m [GParamSpec] | Returns: a
|
Gets an List
of all GParamSpecs
owned by ownerType
in
the pool.
lookup
:: (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
:: (HasCallStack, MonadIO m) | |
=> ParamSpecPool |
|
-> GParamSpec |
|
-> m () |
Removes a ParamSpec
from the pool.