void glade_property_set_enabled (GladeProperty * property, gboolean enabled) { gboolean warn_before, warn_after; g_return_if_fail (GLADE_IS_PROPERTY (property)); /* Check pre-changed warning state */ warn_before = glade_property_warn_usage (property); property->priv->enabled = enabled; if (enabled) glade_property_sync (property); glade_property_fix_state (property); /* Check post-changed warning state */ warn_after = glade_property_warn_usage (property); /* Update owning widget's warning state if need be */ if (property->priv->widget != NULL && warn_before != warn_after) glade_widget_verify (property->priv->widget); g_object_notify_by_pspec (G_OBJECT (property), properties[PROP_ENABLED]); }
void glade_gtk_image_read_widget (GladeWidgetAdaptor *adaptor, GladeWidget *widget, GladeXmlNode *node) { GladeProperty *property; if (!(glade_xml_node_verify_silent (node, GLADE_XML_TAG_WIDGET) || glade_xml_node_verify_silent (node, GLADE_XML_TAG_TEMPLATE))) return; /* First chain up and read in all the normal properties.. */ GWA_GET_CLASS (GTK_TYPE_WIDGET)->read_widget (adaptor, widget, node); if (glade_widget_property_original_default (widget, "icon-name") == FALSE) { property = glade_widget_get_property (widget, "icon-name"); glade_widget_property_set (widget, "image-mode", GLADE_IMAGE_MODE_ICON); } else if (glade_widget_property_original_default (widget, "resource") == FALSE) { property = glade_widget_get_property (widget, "resource"); glade_widget_property_set (widget, "image-mode", GLADE_IMAGE_MODE_RESOURCE); } else if (glade_widget_property_original_default (widget, "pixbuf") == FALSE) { property = glade_widget_get_property (widget, "pixbuf"); glade_widget_property_set (widget, "image-mode", GLADE_IMAGE_MODE_FILENAME); } else /* if (glade_widget_property_original_default (widget, "stock") == FALSE) */ { property = glade_widget_get_property (widget, "stock"); glade_widget_property_set (widget, "image-mode", GLADE_IMAGE_MODE_STOCK); } glade_property_sync (property); }
void glade_gtk_entry_read_widget (GladeWidgetAdaptor * adaptor, GladeWidget * widget, GladeXmlNode * node) { GladeProperty *property; if (!(glade_xml_node_verify_silent (node, GLADE_XML_TAG_WIDGET) || glade_xml_node_verify_silent (node, GLADE_XML_TAG_TEMPLATE))) return; /* First chain up and read in all the normal properties.. */ GWA_GET_CLASS (GTK_TYPE_WIDGET)->read_widget (adaptor, widget, node); if (!glade_widget_property_original_default (widget, "text")) { property = glade_widget_get_property (widget, "text"); glade_widget_property_set (widget, "use-entry-buffer", FALSE); glade_property_sync (property); } else { gint target_minor, target_major; glade_project_get_target_version (glade_widget_get_project (widget), "gtk+", &target_major, &target_minor); property = glade_widget_get_property (widget, "buffer"); /* Only default to the buffer setting if the project version supports it. */ if (GPC_VERSION_CHECK (glade_property_get_class (property), target_major, target_minor)) { glade_widget_property_set (widget, "use-entry-buffer", TRUE); glade_property_sync (property); } else glade_widget_property_set (widget, "use-entry-buffer", FALSE); } if (!glade_widget_property_original_default (widget, "primary-icon-name")) { property = glade_widget_get_property (widget, "primary-icon-name"); glade_widget_property_set (widget, "primary-icon-mode", GLADE_IMAGE_MODE_ICON); } else if (!glade_widget_property_original_default (widget, "primary-icon-pixbuf")) { property = glade_widget_get_property (widget, "primary-icon-pixbuf"); glade_widget_property_set (widget, "primary-icon-mode", GLADE_IMAGE_MODE_FILENAME); } else /* if (glade_widget_property_original_default (widget, "stock") == FALSE) */ { property = glade_widget_get_property (widget, "primary-icon-stock"); glade_widget_property_set (widget, "primary-icon-mode", GLADE_IMAGE_MODE_STOCK); } glade_property_sync (property); if (!glade_widget_property_original_default (widget, "secondary-icon-name")) { property = glade_widget_get_property (widget, "secondary-icon-name"); glade_widget_property_set (widget, "secondary-icon-mode", GLADE_IMAGE_MODE_ICON); } else if (!glade_widget_property_original_default (widget, "secondary-icon-pixbuf")) { property = glade_widget_get_property (widget, "secondary-icon-pixbuf"); glade_widget_property_set (widget, "secondary-icon-mode", GLADE_IMAGE_MODE_FILENAME); } else /* if (glade_widget_property_original_default (widget, "stock") == FALSE) */ { property = glade_widget_get_property (widget, "secondary-icon-stock"); glade_widget_property_set (widget, "secondary-icon-mode", GLADE_IMAGE_MODE_STOCK); } glade_property_sync (property); if (!glade_widget_property_original_default (widget, "primary-icon-tooltip-markup")) glade_widget_property_set (widget, "glade-primary-tooltip-markup", TRUE); if (!glade_widget_property_original_default (widget, "secondary-icon-tooltip-markup")) glade_widget_property_set (widget, "glade-secondary-tooltip-markup", TRUE); }