diff options
author | Denis Washington <denisw@src.gnome.org> | 2012-01-17 19:30:21 +0100 |
---|---|---|
committer | Denis Washington <denisw@src.gnome.org> | 2012-01-17 19:30:21 +0100 |
commit | 72ceb68b79fc1bd2a34f261169f44be1033a8e9a (patch) | |
tree | c204244425084c6460e3f03a66bcedea37acf173 | |
parent | aa4bf12f62d914ad53378bf78d112e0fffd574ad (diff) | |
download | glade-gbinding.tar.gz |
Call glade_property_invalidate() properly in all GTK+ widget property editorsgbinding
Every situation where the user disables a property through the inspector should
now correctly unbind any dependent bound properties, which fixes the last known
major bug in the property binding code!
-rw-r--r-- | plugins/gtk+/glade-activatable-editor.c | 1 | ||||
-rw-r--r-- | plugins/gtk+/glade-button-editor.c | 7 | ||||
-rw-r--r-- | plugins/gtk+/glade-gtk-marshallers.c | 1033 | ||||
-rw-r--r-- | plugins/gtk+/glade-image-editor.c | 6 | ||||
-rw-r--r-- | plugins/gtk+/glade-image-item-editor.c | 2 | ||||
-rw-r--r-- | plugins/gtk+/glade-label-editor.c | 8 | ||||
-rw-r--r-- | plugins/gtk+/glade-tool-button-editor.c | 9 | ||||
-rw-r--r-- | plugins/gtk+/glade-tool-item-group-editor.c | 2 |
8 files changed, 1068 insertions, 0 deletions
diff --git a/plugins/gtk+/glade-activatable-editor.c b/plugins/gtk+/glade-activatable-editor.c index a8d5cfc0..64446e77 100644 --- a/plugins/gtk+/glade-activatable-editor.c +++ b/plugins/gtk+/glade-activatable-editor.c @@ -137,6 +137,7 @@ reset_property (GladeWidget * gwidget, const gchar * property_name) if ((property = glade_widget_get_property (gwidget, property_name)) != NULL) { + glade_property_invalidate (property); glade_property_get_default (property, &value); glade_command_set_property_value (property, &value); g_value_unset (&value); diff --git a/plugins/gtk+/glade-button-editor.c b/plugins/gtk+/glade-button-editor.c index 33ab3aa6..683804c1 100644 --- a/plugins/gtk+/glade-button-editor.c +++ b/plugins/gtk+/glade-button-editor.c @@ -213,6 +213,7 @@ standard_toggled (GtkWidget * widget, GladeButtonEditor * button_editor) /* Setup reasonable defaults for button label. */ property = glade_widget_get_property (gwidget, "stock"); + glade_property_invalidate (property); glade_command_set_property (property, NULL); property = @@ -258,6 +259,7 @@ custom_toggled (GtkWidget * widget, GladeButtonEditor * button_editor) /* clear out some things... */ property = glade_widget_get_property (gwidget, "image"); + glade_property_invalidate (property); glade_command_set_property (property, NULL); property = @@ -265,9 +267,11 @@ custom_toggled (GtkWidget * widget, GladeButtonEditor * button_editor) glade_command_set_property (property, FALSE); property = glade_widget_get_property (gwidget, "stock"); + glade_property_invalidate (property); glade_command_set_property (property, NULL); property = glade_widget_get_property (gwidget, "label"); + glade_property_invalidate (property); glade_command_set_property (property, NULL); /* Add a placeholder via the custom-child property... */ @@ -304,6 +308,7 @@ stock_toggled (GtkWidget * widget, GladeButtonEditor * button_editor) /* clear out stuff... */ property = glade_widget_get_property (gwidget, "image"); + glade_property_invalidate (property); glade_command_set_property (property, NULL); glade_widget_property_get (gwidget, "use-action-appearance", &use_appearance); @@ -311,6 +316,7 @@ stock_toggled (GtkWidget * widget, GladeButtonEditor * button_editor) { property = glade_widget_get_property (gwidget, "label"); + glade_property_invalidate (property); glade_command_set_property (property, ""); } @@ -350,6 +356,7 @@ label_toggled (GtkWidget * widget, GladeButtonEditor * button_editor) glade_widget_get_name (gwidget)); property = glade_widget_get_property (gwidget, "stock"); + glade_property_invalidate (property); glade_command_set_property (property, NULL); property = glade_widget_get_property (gwidget, "use-stock"); diff --git a/plugins/gtk+/glade-gtk-marshallers.c b/plugins/gtk+/glade-gtk-marshallers.c new file mode 100644 index 00000000..20b371ab --- /dev/null +++ b/plugins/gtk+/glade-gtk-marshallers.c @@ -0,0 +1,1033 @@ + +#ifndef __glade_gtk_marshal_MARSHAL_H__ +#define __glade_gtk_marshal_MARSHAL_H__ + +#include <glib-object.h> + +G_BEGIN_DECLS + +#ifdef G_ENABLE_DEBUG +#define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) +#define g_marshal_value_peek_char(v) g_value_get_schar (v) +#define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) +#define g_marshal_value_peek_int(v) g_value_get_int (v) +#define g_marshal_value_peek_uint(v) g_value_get_uint (v) +#define g_marshal_value_peek_long(v) g_value_get_long (v) +#define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) +#define g_marshal_value_peek_int64(v) g_value_get_int64 (v) +#define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) +#define g_marshal_value_peek_enum(v) g_value_get_enum (v) +#define g_marshal_value_peek_flags(v) g_value_get_flags (v) +#define g_marshal_value_peek_float(v) g_value_get_float (v) +#define g_marshal_value_peek_double(v) g_value_get_double (v) +#define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) +#define g_marshal_value_peek_param(v) g_value_get_param (v) +#define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) +#define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) +#define g_marshal_value_peek_object(v) g_value_get_object (v) +#define g_marshal_value_peek_variant(v) g_value_get_variant (v) +#else /* !G_ENABLE_DEBUG */ +/* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. + * Do not access GValues directly in your code. Instead, use the + * g_value_get_*() functions + */ +#define g_marshal_value_peek_boolean(v) (v)->data[0].v_int +#define g_marshal_value_peek_char(v) (v)->data[0].v_int +#define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint +#define g_marshal_value_peek_int(v) (v)->data[0].v_int +#define g_marshal_value_peek_uint(v) (v)->data[0].v_uint +#define g_marshal_value_peek_long(v) (v)->data[0].v_long +#define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong +#define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 +#define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 +#define g_marshal_value_peek_enum(v) (v)->data[0].v_long +#define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong +#define g_marshal_value_peek_float(v) (v)->data[0].v_float +#define g_marshal_value_peek_double(v) (v)->data[0].v_double +#define g_marshal_value_peek_string(v) (v)->data[0].v_pointer +#define g_marshal_value_peek_param(v) (v)->data[0].v_pointer +#define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer +#define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer +#define g_marshal_value_peek_object(v) (v)->data[0].v_pointer +#define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer +#endif /* !G_ENABLE_DEBUG */ + + +/* VOID:POINTER,POINTER (./glade-gtk-marshallers.list:1) */ +extern void glade_gtk_marshal_VOID__POINTER_POINTER (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); +void +glade_gtk_marshal_VOID__POINTER_POINTER (GClosure *closure, + GValue *return_value G_GNUC_UNUSED, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint G_GNUC_UNUSED, + gpointer marshal_data) +{ + typedef void (*GMarshalFunc_VOID__POINTER_POINTER) (gpointer data1, + gpointer arg_1, + gpointer arg_2, + gpointer data2); + register GMarshalFunc_VOID__POINTER_POINTER callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + + g_return_if_fail (n_param_values == 3); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_VOID__POINTER_POINTER) (marshal_data ? marshal_data : cc->callback); + + callback (data1, + g_marshal_value_peek_pointer (param_values + 1), + g_marshal_value_peek_pointer (param_values + 2), + data2); +} + +/* VOID:POINTER (./glade-gtk-marshallers.list:2) */ +#define glade_gtk_marshal_VOID__POINTER g_cclosure_marshal_VOID__POINTER + +/* VOID:STRING,ULONG,UINT,STRING (./glade-gtk-marshallers.list:3) */ +extern void glade_gtk_marshal_VOID__STRING_ULONG_UINT_STRING (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); +void +glade_gtk_marshal_VOID__STRING_ULONG_UINT_STRING (GClosure *closure, + GValue *return_value G_GNUC_UNUSED, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint G_GNUC_UNUSED, + gpointer marshal_data) +{ + typedef void (*GMarshalFunc_VOID__STRING_ULONG_UINT_STRING) (gpointer data1, + gpointer arg_1, + gulong arg_2, + guint arg_3, + gpointer arg_4, + gpointer data2); + register GMarshalFunc_VOID__STRING_ULONG_UINT_STRING callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + + g_return_if_fail (n_param_values == 5); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_VOID__STRING_ULONG_UINT_STRING) (marshal_data ? marshal_data : cc->callback); + + callback (data1, + g_marshal_value_peek_string (param_values + 1), + g_marshal_value_peek_ulong (param_values + 2), + g_marshal_value_peek_uint (param_values + 3), + g_marshal_value_peek_string (param_values + 4), + data2); +} + +/* VOID:OBJECT (./glade-gtk-marshallers.list:4) */ +#define glade_gtk_marshal_VOID__OBJECT g_cclosure_marshal_VOID__OBJECT + +/* VOID:STRING (./glade-gtk-marshallers.list:5) */ +#define glade_gtk_marshal_VOID__STRING g_cclosure_marshal_VOID__STRING + +/* VOID:INT,INT (./glade-gtk-marshallers.list:6) */ +extern void glade_gtk_marshal_VOID__INT_INT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); +void +glade_gtk_marshal_VOID__INT_INT (GClosure *closure, + GValue *return_value G_GNUC_UNUSED, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint G_GNUC_UNUSED, + gpointer marshal_data) +{ + typedef void (*GMarshalFunc_VOID__INT_INT) (gpointer data1, + gint arg_1, + gint arg_2, + gpointer data2); + register GMarshalFunc_VOID__INT_INT callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + + g_return_if_fail (n_param_values == 3); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_VOID__INT_INT) (marshal_data ? marshal_data : cc->callback); + + callback (data1, + g_marshal_value_peek_int (param_values + 1), + g_marshal_value_peek_int (param_values + 2), + data2); +} + +/* VOID:OBJECT,OBJECT (./glade-gtk-marshallers.list:7) */ +extern void glade_gtk_marshal_VOID__OBJECT_OBJECT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); +void +glade_gtk_marshal_VOID__OBJECT_OBJECT (GClosure *closure, + GValue *return_value G_GNUC_UNUSED, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint G_GNUC_UNUSED, + gpointer marshal_data) +{ + typedef void (*GMarshalFunc_VOID__OBJECT_OBJECT) (gpointer data1, + gpointer arg_1, + gpointer arg_2, + gpointer data2); + register GMarshalFunc_VOID__OBJECT_OBJECT callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + + g_return_if_fail (n_param_values == 3); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_VOID__OBJECT_OBJECT) (marshal_data ? marshal_data : cc->callback); + + callback (data1, + g_marshal_value_peek_object (param_values + 1), + g_marshal_value_peek_object (param_values + 2), + data2); +} + +/* VOID:OBJECT,BOOLEAN (./glade-gtk-marshallers.list:8) */ +extern void glade_gtk_marshal_VOID__OBJECT_BOOLEAN (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); +void +glade_gtk_marshal_VOID__OBJECT_BOOLEAN (GClosure *closure, + GValue *return_value G_GNUC_UNUSED, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint G_GNUC_UNUSED, + gpointer marshal_data) +{ + typedef void (*GMarshalFunc_VOID__OBJECT_BOOLEAN) (gpointer data1, + gpointer arg_1, + gboolean arg_2, + gpointer data2); + register GMarshalFunc_VOID__OBJECT_BOOLEAN callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + + g_return_if_fail (n_param_values == 3); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_VOID__OBJECT_BOOLEAN) (marshal_data ? marshal_data : cc->callback); + + callback (data1, + g_marshal_value_peek_object (param_values + 1), + g_marshal_value_peek_boolean (param_values + 2), + data2); +} + +/* VOID:STRING,STRING,STRING (./glade-gtk-marshallers.list:9) */ +extern void glade_gtk_marshal_VOID__STRING_STRING_STRING (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); +void +glade_gtk_marshal_VOID__STRING_STRING_STRING (GClosure *closure, + GValue *return_value G_GNUC_UNUSED, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint G_GNUC_UNUSED, + gpointer marshal_data) +{ + typedef void (*GMarshalFunc_VOID__STRING_STRING_STRING) (gpointer data1, + gpointer arg_1, + gpointer arg_2, + gpointer arg_3, + gpointer data2); + register GMarshalFunc_VOID__STRING_STRING_STRING callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + + g_return_if_fail (n_param_values == 4); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_VOID__STRING_STRING_STRING) (marshal_data ? marshal_data : cc->callback); + + callback (data1, + g_marshal_value_peek_string (param_values + 1), + g_marshal_value_peek_string (param_values + 2), + g_marshal_value_peek_string (param_values + 3), + data2); +} + +/* OBJECT:POINTER (./glade-gtk-marshallers.list:10) */ +extern void glade_gtk_marshal_OBJECT__POINTER (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); +void +glade_gtk_marshal_OBJECT__POINTER (GClosure *closure, + GValue *return_value G_GNUC_UNUSED, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint G_GNUC_UNUSED, + gpointer marshal_data) +{ + typedef GObject* (*GMarshalFunc_OBJECT__POINTER) (gpointer data1, + gpointer arg_1, + gpointer data2); + register GMarshalFunc_OBJECT__POINTER callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + GObject* v_return; + + g_return_if_fail (return_value != NULL); + g_return_if_fail (n_param_values == 2); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_OBJECT__POINTER) (marshal_data ? marshal_data : cc->callback); + + v_return = callback (data1, + g_marshal_value_peek_pointer (param_values + 1), + data2); + + g_value_take_object (return_value, v_return); +} + +/* OBJECT:OBJECT,UINT (./glade-gtk-marshallers.list:11) */ +extern void glade_gtk_marshal_OBJECT__OBJECT_UINT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); +void +glade_gtk_marshal_OBJECT__OBJECT_UINT (GClosure *closure, + GValue *return_value G_GNUC_UNUSED, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint G_GNUC_UNUSED, + gpointer marshal_data) +{ + typedef GObject* (*GMarshalFunc_OBJECT__OBJECT_UINT) (gpointer data1, + gpointer arg_1, + guint arg_2, + gpointer data2); + register GMarshalFunc_OBJECT__OBJECT_UINT callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + GObject* v_return; + + g_return_if_fail (return_value != NULL); + g_return_if_fail (n_param_values == 3); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_OBJECT__OBJECT_UINT) (marshal_data ? marshal_data : cc->callback); + + v_return = callback (data1, + g_marshal_value_peek_object (param_values + 1), + g_marshal_value_peek_uint (param_values + 2), + data2); + + g_value_take_object (return_value, v_return); +} + +/* BOOLEAN:STRING (./glade-gtk-marshallers.list:12) */ +extern void glade_gtk_marshal_BOOLEAN__STRING (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); +void +glade_gtk_marshal_BOOLEAN__STRING (GClosure *closure, + GValue *return_value G_GNUC_UNUSED, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint G_GNUC_UNUSED, + gpointer marshal_data) +{ + typedef gboolean (*GMarshalFunc_BOOLEAN__STRING) (gpointer data1, + gpointer arg_1, + gpointer data2); + register GMarshalFunc_BOOLEAN__STRING callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + gboolean v_return; + + g_return_if_fail (return_value != NULL); + g_return_if_fail (n_param_values == 2); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_BOOLEAN__STRING) (marshal_data ? marshal_data : cc->callback); + + v_return = callback (data1, + g_marshal_value_peek_string (param_values + 1), + data2); + + g_value_set_boolean (return_value, v_return); +} + +/* BOOLEAN:BOXED (./glade-gtk-marshallers.list:13) */ +extern void glade_gtk_marshal_BOOLEAN__BOXED (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); +void +glade_gtk_marshal_BOOLEAN__BOXED (GClosure *closure, + GValue *return_value G_GNUC_UNUSED, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint G_GNUC_UNUSED, + gpointer marshal_data) +{ + typedef gboolean (*GMarshalFunc_BOOLEAN__BOXED) (gpointer data1, + gpointer arg_1, + gpointer data2); + register GMarshalFunc_BOOLEAN__BOXED callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + gboolean v_return; + + g_return_if_fail (return_value != NULL); + g_return_if_fail (n_param_values == 2); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_BOOLEAN__BOXED) (marshal_data ? marshal_data : cc->callback); + + v_return = callback (data1, + g_marshal_value_peek_boxed (param_values + 1), + data2); + + g_value_set_boolean (return_value, v_return); +} + +/* BOOLEAN:OBJECT (./glade-gtk-marshallers.list:14) */ +extern void glade_gtk_marshal_BOOLEAN__OBJECT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); +void +glade_gtk_marshal_BOOLEAN__OBJECT (GClosure *closure, + GValue *return_value G_GNUC_UNUSED, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint G_GNUC_UNUSED, + gpointer marshal_data) +{ + typedef gboolean (*GMarshalFunc_BOOLEAN__OBJECT) (gpointer data1, + gpointer arg_1, + gpointer data2); + register GMarshalFunc_BOOLEAN__OBJECT callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + gboolean v_return; + + g_return_if_fail (return_value != NULL); + g_return_if_fail (n_param_values == 2); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_BOOLEAN__OBJECT) (marshal_data ? marshal_data : cc->callback); + + v_return = callback (data1, + g_marshal_value_peek_object (param_values + 1), + data2); + + g_value_set_boolean (return_value, v_return); +} + +/* BOOLEAN:OBJECT,BOXED (./glade-gtk-marshallers.list:15) */ +extern void glade_gtk_marshal_BOOLEAN__OBJECT_BOXED (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); +void +glade_gtk_marshal_BOOLEAN__OBJECT_BOXED (GClosure *closure, + GValue *return_value G_GNUC_UNUSED, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint G_GNUC_UNUSED, + gpointer marshal_data) +{ + typedef gboolean (*GMarshalFunc_BOOLEAN__OBJECT_BOXED) (gpointer data1, + gpointer arg_1, + gpointer arg_2, + gpointer data2); + register GMarshalFunc_BOOLEAN__OBJECT_BOXED callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + gboolean v_return; + + g_return_if_fail (return_value != NULL); + g_return_if_fail (n_param_values == 3); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_BOOLEAN__OBJECT_BOXED) (marshal_data ? marshal_data : cc->callback); + + v_return = callback (data1, + g_marshal_value_peek_object (param_values + 1), + g_marshal_value_peek_boxed (param_values + 2), + data2); + + g_value_set_boolean (return_value, v_return); +} + +/* BOOLEAN:OBJECT,POINTER (./glade-gtk-marshallers.list:16) */ +extern void glade_gtk_marshal_BOOLEAN__OBJECT_POINTER (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); +void +glade_gtk_marshal_BOOLEAN__OBJECT_POINTER (GClosure *closure, + GValue *return_value G_GNUC_UNUSED, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint G_GNUC_UNUSED, + gpointer marshal_data) +{ + typedef gboolean (*GMarshalFunc_BOOLEAN__OBJECT_POINTER) (gpointer data1, + gpointer arg_1, + gpointer arg_2, + gpointer data2); + register GMarshalFunc_BOOLEAN__OBJECT_POINTER callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + gboolean v_return; + + g_return_if_fail (return_value != NULL); + g_return_if_fail (n_param_values == 3); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_BOOLEAN__OBJECT_POINTER) (marshal_data ? marshal_data : cc->callback); + + v_return = callback (data1, + g_marshal_value_peek_object (param_values + 1), + g_marshal_value_peek_pointer (param_values + 2), + data2); + + g_value_set_boolean (return_value, v_return); +} + +/* BOOLEAN:OBJECT,BOOLEAN (./glade-gtk-marshallers.list:17) */ +extern void glade_gtk_marshal_BOOLEAN__OBJECT_BOOLEAN (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); +void +glade_gtk_marshal_BOOLEAN__OBJECT_BOOLEAN (GClosure *closure, + GValue *return_value G_GNUC_UNUSED, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint G_GNUC_UNUSED, + gpointer marshal_data) +{ + typedef gboolean (*GMarshalFunc_BOOLEAN__OBJECT_BOOLEAN) (gpointer data1, + gpointer arg_1, + gboolean arg_2, + gpointer data2); + register GMarshalFunc_BOOLEAN__OBJECT_BOOLEAN callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + gboolean v_return; + + g_return_if_fail (return_value != NULL); + g_return_if_fail (n_param_values == 3); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_BOOLEAN__OBJECT_BOOLEAN) (marshal_data ? marshal_data : cc->callback); + + v_return = callback (data1, + g_marshal_value_peek_object (param_values + 1), + g_marshal_value_peek_boolean (param_values + 2), + data2); + + g_value_set_boolean (return_value, v_return); +} + +/* BOOLEAN:OBJECT,UINT (./glade-gtk-marshallers.list:18) */ +extern void glade_gtk_marshal_BOOLEAN__OBJECT_UINT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); +void +glade_gtk_marshal_BOOLEAN__OBJECT_UINT (GClosure *closure, + GValue *return_value G_GNUC_UNUSED, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint G_GNUC_UNUSED, + gpointer marshal_data) +{ + typedef gboolean (*GMarshalFunc_BOOLEAN__OBJECT_UINT) (gpointer data1, + gpointer arg_1, + guint arg_2, + gpointer data2); + register GMarshalFunc_BOOLEAN__OBJECT_UINT callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + gboolean v_return; + + g_return_if_fail (return_value != NULL); + g_return_if_fail (n_param_values == 3); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_BOOLEAN__OBJECT_UINT) (marshal_data ? marshal_data : cc->callback); + + v_return = callback (data1, + g_marshal_value_peek_object (param_values + 1), + g_marshal_value_peek_uint (param_values + 2), + data2); + + g_value_set_boolean (return_value, v_return); +} + +/* BOOLEAN:OBJECT,OBJECT (./glade-gtk-marshallers.list:19) */ +extern void glade_gtk_marshal_BOOLEAN__OBJECT_OBJECT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); +void +glade_gtk_marshal_BOOLEAN__OBJECT_OBJECT (GClosure *closure, + GValue *return_value G_GNUC_UNUSED, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint G_GNUC_UNUSED, + gpointer marshal_data) +{ + typedef gboolean (*GMarshalFunc_BOOLEAN__OBJECT_OBJECT) (gpointer data1, + gpointer arg_1, + gpointer arg_2, + gpointer data2); + register GMarshalFunc_BOOLEAN__OBJECT_OBJECT callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + gboolean v_return; + + g_return_if_fail (return_value != NULL); + g_return_if_fail (n_param_values == 3); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_BOOLEAN__OBJECT_OBJECT) (marshal_data ? marshal_data : cc->callback); + + v_return = callback (data1, + g_marshal_value_peek_object (param_values + 1), + g_marshal_value_peek_object (param_values + 2), + data2); + + g_value_set_boolean (return_value, v_return); +} + +/* BOOLEAN:OBJECT,STRING (./glade-gtk-marshallers.list:20) */ +extern void glade_gtk_marshal_BOOLEAN__OBJECT_STRING (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); +void +glade_gtk_marshal_BOOLEAN__OBJECT_STRING (GClosure *closure, + GValue *return_value G_GNUC_UNUSED, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint G_GNUC_UNUSED, + gpointer marshal_data) +{ + typedef gboolean (*GMarshalFunc_BOOLEAN__OBJECT_STRING) (gpointer data1, + gpointer arg_1, + gpointer arg_2, + gpointer data2); + register GMarshalFunc_BOOLEAN__OBJECT_STRING callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + gboolean v_return; + + g_return_if_fail (return_value != NULL); + g_return_if_fail (n_param_values == 3); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_BOOLEAN__OBJECT_STRING) (marshal_data ? marshal_data : cc->callback); + + v_return = callback (data1, + g_marshal_value_peek_object (param_values + 1), + g_marshal_value_peek_string (param_values + 2), + data2); + + g_value_set_boolean (return_value, v_return); +} + +/* BOOLEAN:STRING,STRING,STRING,BOXED (./glade-gtk-marshallers.list:21) */ +extern void glade_gtk_marshal_BOOLEAN__STRING_STRING_STRING_BOXED (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); +void +glade_gtk_marshal_BOOLEAN__STRING_STRING_STRING_BOXED (GClosure *closure, + GValue *return_value G_GNUC_UNUSED, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint G_GNUC_UNUSED, + gpointer marshal_data) +{ + typedef gboolean (*GMarshalFunc_BOOLEAN__STRING_STRING_STRING_BOXED) (gpointer data1, + gpointer arg_1, + gpointer arg_2, + gpointer arg_3, + gpointer arg_4, + gpointer data2); + register GMarshalFunc_BOOLEAN__STRING_STRING_STRING_BOXED callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + gboolean v_return; + + g_return_if_fail (return_value != NULL); + g_return_if_fail (n_param_values == 5); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_BOOLEAN__STRING_STRING_STRING_BOXED) (marshal_data ? marshal_data : cc->callback); + + v_return = callback (data1, + g_marshal_value_peek_string (param_values + 1), + g_marshal_value_peek_string (param_values + 2), + g_marshal_value_peek_string (param_values + 3), + g_marshal_value_peek_boxed (param_values + 4), + data2); + + g_value_set_boolean (return_value, v_return); +} + +/* BOOLEAN:STRING,BOXED,OBJECT (./glade-gtk-marshallers.list:22) */ +extern void glade_gtk_marshal_BOOLEAN__STRING_BOXED_OBJECT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); +void +glade_gtk_marshal_BOOLEAN__STRING_BOXED_OBJECT (GClosure *closure, + GValue *return_value G_GNUC_UNUSED, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint G_GNUC_UNUSED, + gpointer marshal_data) +{ + typedef gboolean (*GMarshalFunc_BOOLEAN__STRING_BOXED_OBJECT) (gpointer data1, + gpointer arg_1, + gpointer arg_2, + gpointer arg_3, + gpointer data2); + register GMarshalFunc_BOOLEAN__STRING_BOXED_OBJECT callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + gboolean v_return; + + g_return_if_fail (return_value != NULL); + g_return_if_fail (n_param_values == 4); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_BOOLEAN__STRING_BOXED_OBJECT) (marshal_data ? marshal_data : cc->callback); + + v_return = callback (data1, + g_marshal_value_peek_string (param_values + 1), + g_marshal_value_peek_boxed (param_values + 2), + g_marshal_value_peek_object (param_values + 3), + data2); + + g_value_set_boolean (return_value, v_return); +} + +/* STRING:OBJECT (./glade-gtk-marshallers.list:23) */ +extern void glade_gtk_marshal_STRING__OBJECT (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); +void +glade_gtk_marshal_STRING__OBJECT (GClosure *closure, + GValue *return_value G_GNUC_UNUSED, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint G_GNUC_UNUSED, + gpointer marshal_data) +{ + typedef gchar* (*GMarshalFunc_STRING__OBJECT) (gpointer data1, + gpointer arg_1, + gpointer data2); + register GMarshalFunc_STRING__OBJECT callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + gchar* v_return; + + g_return_if_fail (return_value != NULL); + g_return_if_fail (n_param_values == 2); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_STRING__OBJECT) (marshal_data ? marshal_data : cc->callback); + + v_return = callback (data1, + g_marshal_value_peek_object (param_values + 1), + data2); + + g_value_take_string (return_value, v_return); +} + +/* INT:OBJECT,BOXED (./glade-gtk-marshallers.list:24) */ +extern void glade_gtk_marshal_INT__OBJECT_BOXED (GClosure *closure, + GValue *return_value, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint, + gpointer marshal_data); +void +glade_gtk_marshal_INT__OBJECT_BOXED (GClosure *closure, + GValue *return_value G_GNUC_UNUSED, + guint n_param_values, + const GValue *param_values, + gpointer invocation_hint G_GNUC_UNUSED, + gpointer marshal_data) +{ + typedef gint (*GMarshalFunc_INT__OBJECT_BOXED) (gpointer data1, + gpointer arg_1, + gpointer arg_2, + gpointer data2); + register GMarshalFunc_INT__OBJECT_BOXED callback; + register GCClosure *cc = (GCClosure*) closure; + register gpointer data1, data2; + gint v_return; + + g_return_if_fail (return_value != NULL); + g_return_if_fail (n_param_values == 3); + + if (G_CCLOSURE_SWAP_DATA (closure)) + { + data1 = closure->data; + data2 = g_value_peek_pointer (param_values + 0); + } + else + { + data1 = g_value_peek_pointer (param_values + 0); + data2 = closure->data; + } + callback = (GMarshalFunc_INT__OBJECT_BOXED) (marshal_data ? marshal_data : cc->callback); + + v_return = callback (data1, + g_marshal_value_peek_object (param_values + 1), + g_marshal_value_peek_boxed (param_values + 2), + data2); + + g_value_set_int (return_value, v_return); +} + +G_END_DECLS + +#endif /* __glade_gtk_marshal_MARSHAL_H__ */ + diff --git a/plugins/gtk+/glade-image-editor.c b/plugins/gtk+/glade-image-editor.c index 8e24daca..1e94dbb3 100644 --- a/plugins/gtk+/glade-image-editor.c +++ b/plugins/gtk+/glade-image-editor.c @@ -155,8 +155,10 @@ set_stock_mode (GladeImageEditor * image_editor) GValue value = { 0, }; property = glade_widget_get_property (gwidget, "icon-name"); + glade_property_invalidate (property); glade_command_set_property (property, NULL); property = glade_widget_get_property (gwidget, "pixbuf"); + glade_property_invalidate (property); glade_command_set_property (property, NULL); property = glade_widget_get_property (gwidget, "stock"); @@ -175,8 +177,10 @@ set_icon_mode (GladeImageEditor * image_editor) GladeWidget *gwidget = glade_editable_loaded_widget (GLADE_EDITABLE (image_editor)); property = glade_widget_get_property (gwidget, "stock"); + glade_property_invalidate (property); glade_command_set_property (property, NULL); property = glade_widget_get_property (gwidget, "pixbuf"); + glade_property_invalidate (property); glade_command_set_property (property, NULL); property = glade_widget_get_property (gwidget, "image-mode"); glade_command_set_property (property, GLADE_IMAGE_MODE_ICON); @@ -191,8 +195,10 @@ set_file_mode (GladeImageEditor * image_editor) GladeWidget *gwidget = glade_editable_loaded_widget (GLADE_EDITABLE (image_editor)); property = glade_widget_get_property (gwidget, "stock"); + glade_property_invalidate (property); glade_command_set_property (property, NULL); property = glade_widget_get_property (gwidget, "icon-name"); + glade_property_invalidate (property); glade_command_set_property (property, NULL); property = glade_widget_get_property (gwidget, "image-mode"); glade_command_set_property (property, GLADE_IMAGE_MODE_FILENAME); diff --git a/plugins/gtk+/glade-image-item-editor.c b/plugins/gtk+/glade-image-item-editor.c index b5d9e4c0..13c93144 100644 --- a/plugins/gtk+/glade-image-item-editor.c +++ b/plugins/gtk+/glade-image-item-editor.c @@ -172,6 +172,7 @@ stock_toggled (GtkWidget * widget, GladeImageItemEditor * item_editor) glade_command_push_group (_("Setting %s to use a stock item"), glade_widget_get_name (loaded)); property = glade_widget_get_property (loaded, "label"); + glade_command_invalidate (property); glade_command_set_property (property, NULL); property = glade_widget_get_property (loaded, "use-underline"); glade_command_set_property (property, FALSE); @@ -221,6 +222,7 @@ custom_toggled (GtkWidget * widget, GladeImageItemEditor * item_editor) /* First clear stock... */ property = glade_widget_get_property (gwidget, "stock"); + glade_command_invalidate (property); glade_command_set_property (property, NULL); property = glade_widget_get_property (gwidget, "use-stock"); glade_command_set_property (property, FALSE); diff --git a/plugins/gtk+/glade-label-editor.c b/plugins/gtk+/glade-label-editor.c index c1ad58c2..a93ea376 100644 --- a/plugins/gtk+/glade-label-editor.c +++ b/plugins/gtk+/glade-label-editor.c @@ -214,6 +214,7 @@ attributes_toggled (GtkWidget * widget, GladeLabelEditor * label_editor) property = glade_widget_get_property (gwidget, "use-markup"); glade_command_set_property (property, FALSE); property = glade_widget_get_property (gwidget, "pattern"); + glade_command_invalidate (property); glade_command_set_property (property, NULL); property = glade_widget_get_property (gwidget, "label-content-mode"); glade_command_set_property (property, GLADE_LABEL_MODE_ATTRIBUTES); @@ -245,8 +246,10 @@ markup_toggled (GtkWidget * widget, GladeLabelEditor * label_editor) glade_widget_get_name (gwidget)); property = glade_widget_get_property (gwidget, "pattern"); + glade_property_invalidate (property); glade_command_set_property (property, NULL); property = glade_widget_get_property (gwidget, "glade-attributes"); + glade_property_invalidate (property); glade_command_set_property (property, NULL); property = glade_widget_get_property (gwidget, "use-markup"); @@ -281,6 +284,7 @@ pattern_toggled (GtkWidget * widget, GladeLabelEditor * label_editor) glade_widget_get_name (gwidget)); property = glade_widget_get_property (gwidget, "glade-attributes"); + glade_command_invalidate (property); glade_command_set_property (property, NULL); property = glade_widget_get_property (gwidget, "use-markup"); glade_command_set_property (property, FALSE); @@ -318,6 +322,7 @@ width_toggled (GtkWidget * widget, GladeLabelEditor * label_editor) glade_widget_get_name (gwidget)); property = glade_widget_get_property (gwidget, "max-width-chars"); + glade_command_invalidate (property); glade_command_set_property (property, -1); property = glade_widget_get_property (gwidget, "use-max-width"); glade_command_set_property (property, FALSE); @@ -349,6 +354,7 @@ max_width_toggled (GtkWidget * widget, GladeLabelEditor * label_editor) glade_widget_get_name (gwidget)); property = glade_widget_get_property (gwidget, "width-chars"); + glade_command_invalidate (property); glade_command_set_property (property, -1); property = glade_widget_get_property (gwidget, "use-max-width"); glade_command_set_property (property, TRUE); @@ -385,6 +391,7 @@ wrap_free_toggled (GtkWidget * widget, GladeLabelEditor * label_editor) property = glade_widget_get_property (gwidget, "single-line-mode"); glade_command_set_property (property, FALSE); property = glade_widget_get_property (gwidget, "wrap-mode"); + glade_command_invalidate (property); glade_command_set_property (property, PANGO_WRAP_WORD); property = glade_widget_get_property (gwidget, "wrap"); glade_command_set_property (property, FALSE); @@ -421,6 +428,7 @@ single_toggled (GtkWidget * widget, GladeLabelEditor * label_editor) property = glade_widget_get_property (gwidget, "wrap-mode"); glade_command_set_property (property, PANGO_WRAP_WORD); property = glade_widget_get_property (gwidget, "wrap"); + glade_command_invalidate (property); glade_command_set_property (property, FALSE); property = glade_widget_get_property (gwidget, "single-line-mode"); diff --git a/plugins/gtk+/glade-tool-button-editor.c b/plugins/gtk+/glade-tool-button-editor.c index 7703475b..4a97e1fc 100644 --- a/plugins/gtk+/glade-tool-button-editor.c +++ b/plugins/gtk+/glade-tool-button-editor.c @@ -142,6 +142,7 @@ standard_label_toggled (GtkWidget * widget, glade_widget_get_name (gwidget)); property = glade_widget_get_property (gwidget, "label-widget"); + glade_command_invalidate (property); glade_command_set_property (property, NULL); property = glade_widget_get_property (gwidget, "label"); @@ -178,6 +179,7 @@ custom_label_toggled (GtkWidget * widget, GladeToolButtonEditor * button_editor) glade_widget_get_name (gwidget)); property = glade_widget_get_property (gwidget, "label"); + glade_command_invalidate (property); glade_command_set_property (property, NULL); property = glade_widget_get_property (gwidget, "custom-label"); glade_command_set_property (property, TRUE); @@ -209,10 +211,13 @@ stock_toggled (GtkWidget * widget, GladeToolButtonEditor * button_editor) glade_widget_get_name (gwidget)); property = glade_widget_get_property (gwidget, "icon-name"); + glade_command_invalidate (property); glade_command_set_property (property, NULL); property = glade_widget_get_property (gwidget, "icon"); + glade_command_invalidate (property); glade_command_set_property (property, NULL); property = glade_widget_get_property (gwidget, "icon-widget"); + glade_command_invalidate (property); glade_command_set_property (property, NULL); property = glade_widget_get_property (gwidget, "image-mode"); glade_command_set_property (property, GLADE_TB_MODE_STOCK); @@ -245,10 +250,12 @@ icon_toggled (GtkWidget * widget, GladeToolButtonEditor * button_editor) glade_widget_get_name (gwidget)); property = glade_widget_get_property (gwidget, "stock-id"); + glade_command_invalidate (property); glade_command_set_property (property, NULL); property = glade_widget_get_property (gwidget, "icon"); glade_command_set_property (property, NULL); property = glade_widget_get_property (gwidget, "icon-widget"); + glade_command_invalidate (property); glade_command_set_property (property, NULL); property = glade_widget_get_property (gwidget, "image-mode"); glade_command_set_property (property, GLADE_TB_MODE_ICON); @@ -280,8 +287,10 @@ custom_toggled (GtkWidget * widget, GladeToolButtonEditor * button_editor) glade_widget_get_name (gwidget)); property = glade_widget_get_property (gwidget, "stock-id"); + glade_command_invalidate (property); glade_command_set_property (property, NULL); property = glade_widget_get_property (gwidget, "icon-name"); + glade_command_invalidate (property); glade_command_set_property (property, NULL); property = glade_widget_get_property (gwidget, "icon"); glade_command_set_property (property, NULL); diff --git a/plugins/gtk+/glade-tool-item-group-editor.c b/plugins/gtk+/glade-tool-item-group-editor.c index c8678a6e..1703df07 100644 --- a/plugins/gtk+/glade-tool-item-group-editor.c +++ b/plugins/gtk+/glade-tool-item-group-editor.c @@ -151,6 +151,7 @@ label_toggled (GtkWidget * widget, glade_widget_get_name (gwidget)); property = glade_widget_get_property (gwidget, "label-widget"); + glade_command_invalidate (property); glade_command_set_property (property, NULL); property = glade_widget_get_property (gwidget, "label"); @@ -187,6 +188,7 @@ label_widget_toggled (GtkWidget * widget, GladeToolItemGroupEditor * group_edito glade_widget_get_name (gwidget)); property = glade_widget_get_property (gwidget, "label"); + glade_command_invalidate (property); glade_command_set_property (property, NULL); property = glade_widget_get_property (gwidget, "custom-label"); glade_command_set_property (property, TRUE); |