Creates a GtkExpression
that calls closure
when it is evaluated.
closure
is called with the this
object and the results of evaluating
the params
expressions.
the type of the value that this expression evaluates to
closure to call when evaluating this expression. If closure is floating, it is adopted
expressions for each parameter
Bind target
's property named property
to self
.
The value that self
evaluates to is set via g_object_set()
on
target
. This is repeated whenever self
changes to ensure that
the object's property stays synchronized with self
.
If self
's evaluation fails, target
's property
is not updated.
You can ensure that this doesn't happen by using a fallback
expression.
Note that this function takes ownership of self
. If you want
to keep it around, you should [methodGtk
.Expression.ref] it beforehand.
the target object to bind to
name of the property on target
to bind to
the this argument for the evaluation of self
Evaluates the given expression and on success stores the result
in value
.
The GType
of value
will be the type given by
[methodGtk
.Expression.get_value_type].
It is possible that expressions cannot be evaluated - for example
when the expression references objects that have been destroyed or
set to NULL
. In that case value
will remain empty and FALSE
will be returned.
Gets the GType
that this expression evaluates to.
This type is constant and will not change over the lifetime of this expression.
Checks if the expression is static.
A static expression will never change its result when
[methodGtk
.Expression.evaluate] is called on it with the same arguments.
That means a call to [methodGtk
.Expression.watch] is not necessary because
it will never trigger a notify.
Acquires a reference on the given GtkExpression
.
Releases a reference on the given GtkExpression
.
If the reference was the last, the resources associated to the self
are
freed.
Watch the given expression
for changes.
The notify
function will be called whenever the evaluation of self
may have changed.
GTK cannot guarantee that the evaluation did indeed change when the notify
gets invoked, but it guarantees the opposite: When it did in fact change,
the notify
will be invoked.
the this
argument to watch
callback to invoke when the expression changes
Creates a GtkExpression
that calls closure
when it is evaluated.
closure
is called with the this
object and the results of evaluating
the params
expressions.
the type of the value that this expression evaluates to
closure to call when evaluating this expression. If closure is floating, it is adopted
expressions for each parameter
An expression using a custom
GClosure
to compute the value from its parameters.