comparison src/buddy.c @ 5060:db4280b42f2f

[gaim-migrate @ 5411] Dave Camp sent me two patches, one to remove the excess space in group name rows, and another to remove that space and the folder icon. I think it actually looks better with the folder icon, but many people have complained that this is "redundant" whatever that means. Thanks, Dave. committer: Tailor Script <tailor@pidgin.im>
author Sean Egan <seanegan@gmail.com>
date Mon, 07 Apr 2003 16:47:16 +0000
parents 5b1d70deda02
children b37d7d09ec83
comparison
equal deleted inserted replaced
5059:107252143713 5060:db4280b42f2f
1178 /****************************** GtkTreeView **********************************/ 1178 /****************************** GtkTreeView **********************************/
1179 sw = gtk_scrolled_window_new(NULL,NULL); 1179 sw = gtk_scrolled_window_new(NULL,NULL);
1180 gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW(sw), GTK_SHADOW_IN); 1180 gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW(sw), GTK_SHADOW_IN);
1181 gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(sw), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); 1181 gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(sw), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
1182 1182
1183 gtkblist->treemodel = gtk_tree_store_new(BLIST_COLUMNS, GDK_TYPE_PIXBUF, G_TYPE_STRING, 1183 gtkblist->treemodel = gtk_tree_store_new(BLIST_COLUMNS, GDK_TYPE_PIXBUF, G_TYPE_BOOLEAN, G_TYPE_STRING,
1184 G_TYPE_STRING, G_TYPE_STRING, GDK_TYPE_PIXBUF, G_TYPE_POINTER); 1184 G_TYPE_STRING, G_TYPE_STRING, GDK_TYPE_PIXBUF, G_TYPE_POINTER);
1185 1185
1186 gtkblist->treeview = gtk_tree_view_new_with_model(GTK_TREE_MODEL(gtkblist->treemodel)); 1186 gtkblist->treeview = gtk_tree_view_new_with_model(GTK_TREE_MODEL(gtkblist->treemodel));
1187 gtk_widget_set_size_request(gtkblist->treeview, -1, 200); 1187 gtk_widget_set_size_request(gtkblist->treeview, -1, 200);
1188 1188
1204 g_signal_connect(G_OBJECT(gtkblist->treeview), "motion-notify-event", G_CALLBACK(gaim_gtk_blist_motion_cb), NULL); 1204 g_signal_connect(G_OBJECT(gtkblist->treeview), "motion-notify-event", G_CALLBACK(gaim_gtk_blist_motion_cb), NULL);
1205 g_signal_connect(G_OBJECT(gtkblist->treeview), "leave-notify-event", G_CALLBACK(gaim_gtk_blist_leave_cb), NULL); 1205 g_signal_connect(G_OBJECT(gtkblist->treeview), "leave-notify-event", G_CALLBACK(gaim_gtk_blist_leave_cb), NULL);
1206 1206
1207 gtk_tree_view_set_headers_visible(GTK_TREE_VIEW(gtkblist->treeview), FALSE); 1207 gtk_tree_view_set_headers_visible(GTK_TREE_VIEW(gtkblist->treeview), FALSE);
1208 1208
1209 column = gtk_tree_view_column_new ();
1210
1209 rend = gtk_cell_renderer_pixbuf_new(); 1211 rend = gtk_cell_renderer_pixbuf_new();
1210 column = gtk_tree_view_column_new_with_attributes("Status", rend, "pixbuf", STATUS_ICON_COLUMN, NULL); 1212 gtk_tree_view_column_pack_start (column, rend, FALSE);
1213 gtk_tree_view_column_set_attributes (column, rend,
1214 "pixbuf", STATUS_ICON_COLUMN,
1215 "visible", STATUS_ICON_VISIBLE_COLUMN,
1216 NULL);
1217 g_object_set(rend, "xalign", 0.0, "ypad", 0, NULL);
1218
1219 rend = gtk_cell_renderer_text_new();
1220 gtk_tree_view_column_pack_start (column, rend, TRUE);
1221 gtk_tree_view_column_set_attributes (column, rend,
1222 "markup", NAME_COLUMN,
1223 NULL);
1224 g_object_set(rend, "ypad", 0, "yalign", 0.5, NULL);
1225
1211 gtk_tree_view_append_column(GTK_TREE_VIEW(gtkblist->treeview), column); 1226 gtk_tree_view_append_column(GTK_TREE_VIEW(gtkblist->treeview), column);
1212 g_object_set(rend, "xalign", 0.0, "ypad", 0, NULL);
1213
1214 rend = gtk_cell_renderer_text_new();
1215 column = gtk_tree_view_column_new_with_attributes("Name", rend, "markup", NAME_COLUMN, NULL);
1216 gtk_tree_view_append_column(GTK_TREE_VIEW(gtkblist->treeview), column);
1217 g_object_set(rend, "ypad", 0, "yalign", 0.5, NULL);
1218 1227
1219 rend = gtk_cell_renderer_text_new(); 1228 rend = gtk_cell_renderer_text_new();
1220 gtkblist->warning_column = gtk_tree_view_column_new_with_attributes("Warning", rend, "markup", WARNING_COLUMN, NULL); 1229 gtkblist->warning_column = gtk_tree_view_column_new_with_attributes("Warning", rend, "markup", WARNING_COLUMN, NULL);
1221 gtk_tree_view_append_column(GTK_TREE_VIEW(gtkblist->treeview), gtkblist->warning_column); 1230 gtk_tree_view_append_column(GTK_TREE_VIEW(gtkblist->treeview), gtkblist->warning_column);
1222 g_object_set(rend, "xalign", 1.0, "ypad", 0, NULL); 1231 g_object_set(rend, "xalign", 1.0, "ypad", 0, NULL);
1448 } 1457 }
1449 1458
1450 static void make_a_group(GaimBlistNode *node, GtkTreeIter *iter) { 1459 static void make_a_group(GaimBlistNode *node, GtkTreeIter *iter) {
1451 GaimBlistNode *sibling; 1460 GaimBlistNode *sibling;
1452 GtkTreeIter siblingiter; 1461 GtkTreeIter siblingiter;
1453 GdkPixbuf *groupicon = gtk_widget_render_icon(gtkblist->treeview,
1454 GAIM_STOCK_GROUP, GTK_ICON_SIZE_SMALL_TOOLBAR, NULL);
1455 struct group *group = (struct group *)node; 1462 struct group *group = (struct group *)node;
1456 char *esc = g_markup_escape_text(group->name, -1); 1463 char *esc = g_markup_escape_text(group->name, -1);
1457 char *mark; 1464 char *mark;
1458 1465
1459 if(blist_options & OPT_BLIST_SHOW_GRPNUM) 1466 if(blist_options & OPT_BLIST_SHOW_GRPNUM)
1469 } 1476 }
1470 1477
1471 gtk_tree_store_insert_after(gtkblist->treemodel, iter, NULL, 1478 gtk_tree_store_insert_after(gtkblist->treemodel, iter, NULL,
1472 sibling ? &siblingiter : NULL); 1479 sibling ? &siblingiter : NULL);
1473 gtk_tree_store_set(gtkblist->treemodel, iter, 1480 gtk_tree_store_set(gtkblist->treemodel, iter,
1474 STATUS_ICON_COLUMN, groupicon, 1481 STATUS_ICON_COLUMN, NULL,
1482 STATUS_ICON_VISIBLE_COLUMN, FALSE,
1475 NAME_COLUMN, mark, 1483 NAME_COLUMN, mark,
1476 NODE_COLUMN, node, 1484 NODE_COLUMN, node,
1477 -1); 1485 -1);
1478 g_free(mark); 1486 g_free(mark);
1479 g_object_unref(groupicon);
1480 } 1487 }
1481 1488
1482 1489
1483 static void gaim_gtk_blist_update(struct gaim_buddy_list *list, GaimBlistNode *node) 1490 static void gaim_gtk_blist_update(struct gaim_buddy_list *list, GaimBlistNode *node)
1484 { 1491 {
1594 } 1601 }
1595 } 1602 }
1596 1603
1597 gtk_tree_store_set(gtkblist->treemodel, &iter, 1604 gtk_tree_store_set(gtkblist->treemodel, &iter,
1598 STATUS_ICON_COLUMN, status, 1605 STATUS_ICON_COLUMN, status,
1606 STATUS_ICON_VISIBLE_COLUMN, TRUE,
1599 NAME_COLUMN, mark, 1607 NAME_COLUMN, mark,
1600 WARNING_COLUMN, warning, 1608 WARNING_COLUMN, warning,
1601 IDLE_COLUMN, idle, 1609 IDLE_COLUMN, idle,
1602 BUDDY_ICON_COLUMN, avatar, 1610 BUDDY_ICON_COLUMN, avatar,
1603 NODE_COLUMN, node, 1611 NODE_COLUMN, node,