X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;ds=sidebyside;f=gobject%2Fgbinding.h;h=069c0d0b69398c475a6a5857c942967719111da9;hb=0bd38a2672353b22e32fb56b1a40956a6b20f052;hp=1b715402ee1e501029323f08962b7c2e43bf4926;hpb=1b033919845cef366842373da9f1cfb56f522d01;p=platform%2Fupstream%2Fglib.git diff --git a/gobject/gbinding.h b/gobject/gbinding.h index 1b71540..069c0d0 100644 --- a/gobject/gbinding.h +++ b/gobject/gbinding.h @@ -13,20 +13,18 @@ * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General - * Public License along with this library; if not, write to the - * Free Software Foundation, Inc., 59 Temple Place, Suite 330, - * Boston, MA 02111-1307, USA. + * Public License along with this library; if not, see . * * Author: Emmanuele Bassi */ +#ifndef __G_BINDING_H__ +#define __G_BINDING_H__ + #if !defined (__GLIB_GOBJECT_H_INSIDE__) && !defined (GOBJECT_COMPILATION) #error "Only can be included directly." #endif -#ifndef __G_BINDING_H__ -#define __G_BINDING_H__ - #include #include @@ -41,7 +39,7 @@ G_BEGIN_DECLS /** * GBinding: * - * GBinding is an opaque structure whose members + * GBinding is an opaque structure whose members * cannot be accessed directly. * * Since: 2.26 @@ -51,22 +49,25 @@ typedef struct _GBinding GBinding; /** * GBindingTransformFunc: * @binding: a #GBinding - * @source_value: the value of the source property - * @target_value: the value of the target property + * @from_value: the #GValue containing the value to transform + * @to_value: the #GValue in which to store the transformed value * @user_data: data passed to the transform function * - * A function to be called to transform the source property of @source - * from @source_value into the target property of @target - * using @target_value. + * A function to be called to transform @from_value to @to_value. If + * this is the @transform_to function of a binding, then @from_value + * is the @source_property on the @source object, and @to_value is the + * @target_property on the @target object. If this is the + * @transform_from function of a %G_BINDING_BIDIRECTIONAL binding, + * then those roles are reversed. * - * Return value: %TRUE if the transformation was successful, and %FALSE + * Returns: %TRUE if the transformation was successful, and %FALSE * otherwise * * Since: 2.26 */ typedef gboolean (* GBindingTransformFunc) (GBinding *binding, - const GValue *source_value, - GValue *target_value, + const GValue *from_value, + GValue *to_value, gpointer user_data); /** @@ -100,20 +101,31 @@ typedef enum { /*< prefix=G_BINDING >*/ G_BINDING_INVERT_BOOLEAN = 1 << 2 } GBindingFlags; +GLIB_AVAILABLE_IN_ALL GType g_binding_flags_get_type (void) G_GNUC_CONST; +GLIB_AVAILABLE_IN_ALL GType g_binding_get_type (void) G_GNUC_CONST; +GLIB_AVAILABLE_IN_ALL GBindingFlags g_binding_get_flags (GBinding *binding); +GLIB_AVAILABLE_IN_ALL GObject * g_binding_get_source (GBinding *binding); +GLIB_AVAILABLE_IN_ALL GObject * g_binding_get_target (GBinding *binding); +GLIB_AVAILABLE_IN_ALL const gchar * g_binding_get_source_property (GBinding *binding); +GLIB_AVAILABLE_IN_ALL const gchar * g_binding_get_target_property (GBinding *binding); +GLIB_AVAILABLE_IN_2_38 +void g_binding_unbind (GBinding *binding); +GLIB_AVAILABLE_IN_ALL GBinding *g_object_bind_property (gpointer source, const gchar *source_property, gpointer target, const gchar *target_property, GBindingFlags flags); +GLIB_AVAILABLE_IN_ALL GBinding *g_object_bind_property_full (gpointer source, const gchar *source_property, gpointer target, @@ -123,6 +135,7 @@ GBinding *g_object_bind_property_full (gpointer source, GBindingTransformFunc transform_from, gpointer user_data, GDestroyNotify notify); +GLIB_AVAILABLE_IN_ALL GBinding *g_object_bind_property_with_closures (gpointer source, const gchar *source_property, gpointer target,