static void nodes_gui_update_node_flags(struct node_data *data, gnet_node_flags_t *flags) { gboolean ultra; g_assert(NULL != data); concat_strings(data->flags, sizeof data->flags, "<tt>", guc_node_flags_to_string(flags), "</tt>", (void *) 0); ultra = NODE_P_ULTRA == flags->peermode || NODE_P_G2HUB == flags->peermode; data->fg = &(gtk_widget_get_style(GTK_WIDGET(treeview_nodes)) ->fg[ultra ? GTK_STATE_NORMAL : GTK_STATE_INSENSITIVE]); }
/** * Updates the flags for given node and row. */ static void nodes_gui_update_node_flags(const struct nid *node_id, gnet_node_flags_t *flags, gint row) { GtkCList *clist = GTK_CLIST(gui_main_window_lookup("clist_nodes")); if (row == -1) row = gtk_clist_find_row_from_data(clist, deconstify_gpointer(node_id)); if (row != -1) { gtk_clist_set_text(clist, row, c_gnet_flags, guc_node_flags_to_string(flags)); if (NODE_P_LEAF == flags->peermode || NODE_P_NORMAL == flags->peermode) { GdkColor *color = &(gtk_widget_get_style(GTK_WIDGET(clist)) ->fg[GTK_STATE_INSENSITIVE]); gtk_clist_set_foreground(clist, row, color); } } else { g_warning("%s(): no matching row found", G_STRFUNC); } }