summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDenis Washington <denisw@src.gnome.org>2012-01-17 19:30:21 +0100
committerDenis Washington <denisw@src.gnome.org>2012-01-17 19:30:21 +0100
commit72ceb68b79fc1bd2a34f261169f44be1033a8e9a (patch)
treec204244425084c6460e3f03a66bcedea37acf173
parentaa4bf12f62d914ad53378bf78d112e0fffd574ad (diff)
downloadglade-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.c1
-rw-r--r--plugins/gtk+/glade-button-editor.c7
-rw-r--r--plugins/gtk+/glade-gtk-marshallers.c1033
-rw-r--r--plugins/gtk+/glade-image-editor.c6
-rw-r--r--plugins/gtk+/glade-image-item-editor.c2
-rw-r--r--plugins/gtk+/glade-label-editor.c8
-rw-r--r--plugins/gtk+/glade-tool-button-editor.c9
-rw-r--r--plugins/gtk+/glade-tool-item-group-editor.c2
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);