Copyright | Will Thompson and Iñaki García Etxebarria |
---|---|
License | LGPL-2.1 |
Maintainer | Iñaki García Etxebarria |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
GBindingGroup
can be used to bind multiple properties
from an object collectively.
Use the various methods to bind properties from a single source
object to multiple destination objects. Properties can be bound
bidirectionally and are connected when the source object is set
with bindingGroupSetSource
.
Since: 2.72
Synopsis
- newtype BindingGroup = BindingGroup (ManagedPtr BindingGroup)
- class (GObject o, IsDescendantOf BindingGroup o) => IsBindingGroup o
- toBindingGroup :: (MonadIO m, IsBindingGroup o) => o -> m BindingGroup
- bindingGroupBind :: (HasCallStack, MonadIO m, IsBindingGroup a, IsObject b) => a -> Text -> b -> Text -> [BindingFlags] -> m ()
- bindingGroupBindFull :: (HasCallStack, MonadIO m, IsBindingGroup a, IsObject b) => a -> Text -> b -> Text -> [BindingFlags] -> Maybe (GClosure c) -> Maybe (GClosure d) -> m ()
- bindingGroupDupSource :: (HasCallStack, MonadIO m, IsBindingGroup a) => a -> m (Maybe Object)
- bindingGroupNew :: (HasCallStack, MonadIO m) => m BindingGroup
- bindingGroupSetSource :: (HasCallStack, MonadIO m, IsBindingGroup a, IsObject b) => a -> Maybe b -> m ()
- clearBindingGroupSource :: (MonadIO m, IsBindingGroup o) => o -> m ()
- constructBindingGroupSource :: (IsBindingGroup o, MonadIO m, IsObject a) => a -> m (GValueConstruct o)
- getBindingGroupSource :: (MonadIO m, IsBindingGroup o) => o -> m (Maybe Object)
- setBindingGroupSource :: (MonadIO m, IsBindingGroup o, IsObject a) => o -> a -> m ()
Exported types
newtype BindingGroup Source #
Memory-managed wrapper type.
BindingGroup (ManagedPtr BindingGroup) |
Instances
Eq BindingGroup Source # | |
Defined in GI.GObject.Objects.BindingGroup (==) :: BindingGroup -> BindingGroup -> Bool # (/=) :: BindingGroup -> BindingGroup -> Bool # | |
GObject BindingGroup Source # | |
Defined in GI.GObject.Objects.BindingGroup | |
ManagedPtrNewtype BindingGroup Source # | |
Defined in GI.GObject.Objects.BindingGroup toManagedPtr :: BindingGroup -> ManagedPtr BindingGroup | |
TypedObject BindingGroup Source # | |
Defined in GI.GObject.Objects.BindingGroup | |
HasParentTypes BindingGroup Source # | |
Defined in GI.GObject.Objects.BindingGroup | |
IsGValue (Maybe BindingGroup) Source # | Convert |
Defined in GI.GObject.Objects.BindingGroup gvalueGType_ :: IO GType gvalueSet_ :: Ptr GValue -> Maybe BindingGroup -> IO () gvalueGet_ :: Ptr GValue -> IO (Maybe BindingGroup) | |
type ParentTypes BindingGroup Source # | |
Defined in GI.GObject.Objects.BindingGroup |
class (GObject o, IsDescendantOf BindingGroup o) => IsBindingGroup o Source #
Type class for types which can be safely cast to BindingGroup
, for instance with toBindingGroup
.
Instances
(GObject o, IsDescendantOf BindingGroup o) => IsBindingGroup o Source # | |
Defined in GI.GObject.Objects.BindingGroup |
toBindingGroup :: (MonadIO m, IsBindingGroup o) => o -> m BindingGroup Source #
Cast to BindingGroup
, for types for which this is known to be safe. For general casts, use castTo
.
Methods
Click to display all available methods, including inherited ones
Methods
bind, bindFull, bindProperty, bindPropertyFull, dupSource, forceFloating, freezeNotify, getv, isFloating, notify, notifyByPspec, ref, refSink, runDispose, stealData, stealQdata, thawNotify, unref, watchClosure.
Getters
getData, getProperty, getQdata.
Setters
bind
:: (HasCallStack, MonadIO m, IsBindingGroup a, IsObject b) | |
=> a |
|
-> Text |
|
-> b |
|
-> Text |
|
-> [BindingFlags] |
|
-> m () |
Creates a binding between sourceProperty
on the source object
and targetProperty
on target
. Whenever the sourceProperty
is changed the targetProperty
is updated using the same value.
The binding flag BindingFlagsSyncCreate
is automatically specified.
See objectBindProperty
for more information.
Since: 2.72
bindFull
:: (HasCallStack, MonadIO m, IsBindingGroup a, IsObject b) | |
=> a |
|
-> Text |
|
-> b |
|
-> Text |
|
-> [BindingFlags] |
|
-> Maybe (GClosure c) |
|
-> Maybe (GClosure d) |
|
-> m () |
Creates a binding between sourceProperty
on the source object and
targetProperty
on target
, allowing you to set the transformation
functions to be used by the binding. The binding flag
BindingFlagsSyncCreate
is automatically specified.
This function is the language bindings friendly version of
g_binding_group_bind_property_full()
, using GClosures
instead of function pointers.
See objectBindPropertyFull
for more information.
Since: 2.72
dupSource
bindingGroupDupSource Source #
:: (HasCallStack, MonadIO m, IsBindingGroup a) | |
=> a |
|
-> m (Maybe Object) |
Gets the source object used for binding properties.
Since: 2.72
new
:: (HasCallStack, MonadIO m) | |
=> m BindingGroup | Returns: a new |
Creates a new BindingGroup
.
Since: 2.72
setSource
bindingGroupSetSource Source #
:: (HasCallStack, MonadIO m, IsBindingGroup a, IsObject b) | |
=> a |
|
-> Maybe b | |
-> m () |
Sets source
as the source object used for creating property
bindings. If there is already a source object all bindings from it
will be removed.
Note that all properties that have been bound must exist on source
.
Since: 2.72
Properties
source
The source object used for binding properties.
Since: 2.72
clearBindingGroupSource :: (MonadIO m, IsBindingGroup o) => o -> m () Source #
Set the value of the “source
” property to Nothing
.
When overloading is enabled, this is equivalent to
clear
#source
constructBindingGroupSource :: (IsBindingGroup o, MonadIO m, IsObject a) => a -> m (GValueConstruct o) Source #
Construct a GValueConstruct
with valid value for the “source
” property. This is rarely needed directly, but it is used by new
.
getBindingGroupSource :: (MonadIO m, IsBindingGroup o) => o -> m (Maybe Object) Source #
Get the value of the “source
” property.
When overloading is enabled, this is equivalent to
get
bindingGroup #source
setBindingGroupSource :: (MonadIO m, IsBindingGroup o, IsObject a) => o -> a -> m () Source #
Set the value of the “source
” property.
When overloading is enabled, this is equivalent to
set
bindingGroup [ #source:=
value ]