void glade_gtk_file_filter_write_widget (GladeWidgetAdaptor *adaptor, GladeWidget *widget, GladeXmlContext *context, GladeXmlNode *node) { GladeXmlNode *strings_node; 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 (G_TYPE_OBJECT)->write_widget (adaptor, widget, context, node); strings_node = glade_xml_node_new (context, GLADE_TAG_MIME_TYPES); glade_gtk_filter_write_strings (widget, context, strings_node, FILTER_MIME, "glade-mime-types"); if (!glade_xml_node_get_children (strings_node)) glade_xml_node_delete (strings_node); else glade_xml_node_append_child (node, strings_node); strings_node = glade_xml_node_new (context, GLADE_TAG_PATTERNS); glade_gtk_filter_write_strings (widget, context, strings_node, FILTER_PATTERN, "glade-patterns"); if (!glade_xml_node_get_children (strings_node)) glade_xml_node_delete (strings_node); else glade_xml_node_append_child (node, strings_node); }
static void glade_gtk_window_write_accel_groups (GladeWidget * widget, GladeXmlContext * context, GladeXmlNode * node) { GladeXmlNode *groups_node, *group_node; GList *groups = NULL, *list; GladeWidget *agroup; groups_node = glade_xml_node_new (context, GLADE_TAG_ACCEL_GROUPS); if (glade_widget_property_get (widget, "accel-groups", &groups)) { for (list = groups; list; list = list->next) { agroup = glade_widget_get_from_gobject (list->data); group_node = glade_xml_node_new (context, GLADE_TAG_ACCEL_GROUP); glade_xml_node_append_child (groups_node, group_node); glade_xml_node_set_property_string (group_node, GLADE_TAG_NAME, glade_widget_get_name (agroup)); } } if (!glade_xml_node_get_children (groups_node)) glade_xml_node_delete (groups_node); else glade_xml_node_append_child (node, groups_node); }
static void glade_gtk_size_group_write_widgets (GladeWidget * widget, GladeXmlContext * context, GladeXmlNode * node) { GladeXmlNode *widgets_node, *widget_node; GList *widgets = NULL, *list; GladeWidget *awidget; widgets_node = glade_xml_node_new (context, GLADE_TAG_SIZEGROUP_WIDGETS); if (glade_widget_property_get (widget, "widgets", &widgets)) { for (list = widgets; list; list = list->next) { awidget = glade_widget_get_from_gobject (list->data); widget_node = glade_xml_node_new (context, GLADE_TAG_SIZEGROUP_WIDGET); glade_xml_node_append_child (widgets_node, widget_node); glade_xml_node_set_property_string (widget_node, GLADE_TAG_NAME, glade_widget_get_name (awidget)); } } if (!glade_xml_node_get_children (widgets_node)) glade_xml_node_delete (widgets_node); else glade_xml_node_append_child (node, widgets_node); }
void glade_gtk_combo_box_text_write_widget (GladeWidgetAdaptor *adaptor, GladeWidget *widget, GladeXmlContext *context, GladeXmlNode *node) { GladeXmlNode *attrs_node; 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_COMBO_BOX)->write_widget (adaptor, widget, context, node); attrs_node = glade_xml_node_new (context, GLADE_TAG_ITEMS); glade_gtk_combo_box_text_write_items (widget, context, attrs_node); if (!glade_xml_node_get_children (attrs_node)) glade_xml_node_delete (attrs_node); else glade_xml_node_append_child (node, attrs_node); }
static void glade_gtk_icon_factory_write_sources (GladeWidget *widget, GladeXmlContext *context, GladeXmlNode *node) { GladeXmlNode *sources_node; GladeIconSources *sources = NULL; SourceWriteTab tab; glade_widget_property_get (widget, "sources", &sources); if (!sources) return; sources_node = glade_xml_node_new (context, GLADE_TAG_SOURCES); tab.context = context; tab.node = sources_node; g_hash_table_foreach (sources->sources, (GHFunc) write_icon_sources, &tab); if (!glade_xml_node_get_children (sources_node)) glade_xml_node_delete (sources_node); else glade_xml_node_append_child (node, sources_node); }
static void glade_gtk_widget_write_style_classes (GladeWidget * widget, GladeXmlContext * context, GladeXmlNode * node) { GladeXmlNode *class_node, *style_node; GList *string_list = NULL, *l; GladeString *string; if (!glade_widget_property_get (widget, "glade-style-classes", &string_list) || !string_list) return; style_node = glade_xml_node_new (context, GLADE_TAG_STYLE); for (l = string_list; l; l = l->next) { string = l->data; class_node = glade_xml_node_new (context, GLADE_TAG_CLASS); glade_xml_node_append_child (style_node, class_node); glade_xml_node_set_property_string (class_node, GLADE_TAG_NAME, string->string); } if (!glade_xml_node_get_children (style_node)) glade_xml_node_delete (style_node); else glade_xml_node_append_child (node, style_node); }
static void glade_gtk_widget_write_atk_props (GladeWidget * widget, GladeXmlContext * context, GladeXmlNode * node) { GladeXmlNode *atk_node; atk_node = glade_xml_node_new (context, GLADE_TAG_A11Y_A11Y); glade_gtk_widget_write_atk_relations (widget, context, atk_node); glade_gtk_widget_write_atk_actions (widget, context, atk_node); if (!glade_xml_node_get_children (atk_node)) glade_xml_node_delete (atk_node); else glade_xml_node_append_child (node, atk_node); glade_gtk_widget_write_atk_properties (widget, context, node); }