glade3 r1795 - in trunk: . gladeui



Author: tvb
Date: Fri Apr 11 19:43:04 2008
New Revision: 1795
URL: http://svn.gnome.org/viewvc/glade3?rev=1795&view=rev

Log:
	  - Added construct "class" property so that dupping doesnt crash.



Modified:
   trunk/ChangeLog
   trunk/gladeui/glade-property.c

Modified: trunk/gladeui/glade-property.c
==============================================================================
--- trunk/gladeui/glade-property.c	(original)
+++ trunk/gladeui/glade-property.c	Fri Apr 11 19:43:04 2008
@@ -67,6 +67,7 @@
 enum
 {
 	PROP_0,
+	PROP_CLASS,
 	PROP_ENABLED,
 	PROP_SENSITIVE,
 	PROP_I18N_TRANSLATABLE,
@@ -87,22 +88,21 @@
 	GladeProperty *property;
 
 	property          = g_object_new (GLADE_TYPE_PROPERTY, 
-					  "enabled", template_prop->enabled,
-					  "sensitive", template_prop->sensitive,
+					  "class", template_prop->klass,
 					  "i18n-translatable", template_prop->i18n_translatable,
 					  "i18n-has-context", template_prop->i18n_has_context,
 					  "i18n-comment", template_prop->i18n_comment,
 					  NULL);
-	property->klass   = template_prop->klass;
 	property->widget  = widget;
 	property->value   = g_new0 (GValue, 1);
 
-	property->insensitive_tooltip =
-		template_prop->insensitive_tooltip ?
-		g_strdup (template_prop->insensitive_tooltip) : NULL;
-
 	g_value_init (property->value, template_prop->value->g_type);
 	g_value_copy (template_prop->value, property->value);
+
+	/* Need value in place here ... */
+	glade_property_set_enabled (property, template_prop->enabled);
+	glade_property_set_sensitive (property, template_prop->sensitive,
+				      template_prop->insensitive_tooltip);
 	
 	return property;
 }
@@ -405,6 +405,9 @@
 
 	switch (prop_id)
 	{
+	case PROP_CLASS:
+		property->klass = g_value_get_pointer (value);
+		break;
 	case PROP_ENABLED:
 		glade_property_set_enabled (property, g_value_get_boolean (value));
 		break;
@@ -436,6 +439,9 @@
 
 	switch (prop_id)
 	{
+	case PROP_CLASS:
+		g_value_set_pointer (value, property->klass);
+		break;
 	case PROP_ENABLED:
 		g_value_set_boolean (value, glade_property_get_enabled (property));
 		break;
@@ -513,6 +519,13 @@
 
 	/* Properties */
 	g_object_class_install_property 
+		(object_class, PROP_CLASS,
+		 g_param_spec_pointer 
+		 ("class", _("Class"), 
+		  _("The GladePropertyClass for this property"),
+		  G_PARAM_CONSTRUCT_ONLY | G_PARAM_READWRITE));
+
+	g_object_class_install_property 
 		(object_class, PROP_ENABLED,
 		 g_param_spec_boolean 
 		 ("enabled", _("Enabled"), 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]