pidgin/gtkroomlist.c

branch
soc.2013.gobjectification.plugins
changeset 36893
491f8d2fa318
parent 36725
f17f9d4e710e
parent 35021
eaf8156d3c5e
child 37066
1ebce1f4993b
equal deleted inserted replaced
36892:577b7e80f015 36893:491f8d2fa318
201 201
202 if (gtk_tree_selection_get_selected(selection, NULL, &iter)) { 202 if (gtk_tree_selection_get_selected(selection, NULL, &iter)) {
203 val.g_type = 0; 203 val.g_type = 0;
204 gtk_tree_model_get_value(GTK_TREE_MODEL(grl->model), &iter, ROOM_COLUMN, &val); 204 gtk_tree_model_get_value(GTK_TREE_MODEL(grl->model), &iter, ROOM_COLUMN, &val);
205 room = g_value_get_pointer(&val); 205 room = g_value_get_pointer(&val);
206 if (!room || !(purple_roomlist_room_get_type(room) & PURPLE_ROOMLIST_ROOMTYPE_ROOM)) { 206 if (!room || !(purple_roomlist_room_get_room_type(room) & PURPLE_ROOMLIST_ROOMTYPE_ROOM)) {
207 gtk_widget_set_sensitive(dialog->join_button, FALSE); 207 gtk_widget_set_sensitive(dialog->join_button, FALSE);
208 gtk_widget_set_sensitive(dialog->add_button, FALSE); 208 gtk_widget_set_sensitive(dialog->add_button, FALSE);
209 return; 209 return;
210 } 210 }
211 211
281 281
282 gtk_tree_model_get_iter(GTK_TREE_MODEL(grl->model), &iter, path); 282 gtk_tree_model_get_iter(GTK_TREE_MODEL(grl->model), &iter, path);
283 val.g_type = 0; 283 val.g_type = 0;
284 gtk_tree_model_get_value(GTK_TREE_MODEL(grl->model), &iter, ROOM_COLUMN, &val); 284 gtk_tree_model_get_value(GTK_TREE_MODEL(grl->model), &iter, ROOM_COLUMN, &val);
285 room = g_value_get_pointer(&val); 285 room = g_value_get_pointer(&val);
286 if (!room || !(purple_roomlist_room_get_type(room) & PURPLE_ROOMLIST_ROOMTYPE_ROOM)) 286 if (!room || !(purple_roomlist_room_get_room_type(room) & PURPLE_ROOMLIST_ROOMTYPE_ROOM))
287 return; 287 return;
288 288
289 info.list = list; 289 info.list = list;
290 info.room = room; 290 info.room = room;
291 291
312 gtk_tree_path_free(path); 312 gtk_tree_path_free(path);
313 val.g_type = 0; 313 val.g_type = 0;
314 gtk_tree_model_get_value (GTK_TREE_MODEL(grl->model), &iter, ROOM_COLUMN, &val); 314 gtk_tree_model_get_value (GTK_TREE_MODEL(grl->model), &iter, ROOM_COLUMN, &val);
315 room = g_value_get_pointer(&val); 315 room = g_value_get_pointer(&val);
316 316
317 if (!room || !(purple_roomlist_room_get_type(room) & PURPLE_ROOMLIST_ROOMTYPE_ROOM)) 317 if (!room || !(purple_roomlist_room_get_room_type(room) & PURPLE_ROOMLIST_ROOMTYPE_ROOM))
318 return FALSE; 318 return FALSE;
319 319
320 info.list = list; 320 info.list = list;
321 info.room = room; 321 info.room = room;
322 322
451 451
452 val.g_type = 0; 452 val.g_type = 0;
453 gtk_tree_model_get_value(GTK_TREE_MODEL(grl->model), &iter, ROOM_COLUMN, &val); 453 gtk_tree_model_get_value(GTK_TREE_MODEL(grl->model), &iter, ROOM_COLUMN, &val);
454 room = g_value_get_pointer(&val); 454 room = g_value_get_pointer(&val);
455 455
456 if (!room || !(purple_roomlist_room_get_type(room) & PURPLE_ROOMLIST_ROOMTYPE_ROOM)) 456 if (!room || !(purple_roomlist_room_get_room_type(room) & PURPLE_ROOMLIST_ROOMTYPE_ROOM))
457 return FALSE; 457 return FALSE;
458 458
459 tooltip_text = g_string_new(""); 459 tooltip_text = g_string_new("");
460 gtk_tree_model_get(GTK_TREE_MODEL(grl->model), &iter, NAME_COLUMN, &name, -1); 460 gtk_tree_model_get(GTK_TREE_MODEL(grl->model), &iter, NAME_COLUMN, &name, -1);
461 461
467 PurpleRoomlistField *f = k->data; 467 PurpleRoomlistField *f = k->data;
468 gchar *label; 468 gchar *label;
469 if (purple_roomlist_field_get_hidden(f)) 469 if (purple_roomlist_field_get_hidden(f))
470 continue; 470 continue;
471 label = g_markup_escape_text(purple_roomlist_field_get_label(f), -1); 471 label = g_markup_escape_text(purple_roomlist_field_get_label(f), -1);
472 switch (purple_roomlist_field_get_type(f)) { 472 switch (purple_roomlist_field_get_field_type(f)) {
473 case PURPLE_ROOMLIST_FIELD_BOOL: 473 case PURPLE_ROOMLIST_FIELD_BOOL:
474 g_string_append_printf(tooltip_text, "%s<b>%s:</b> %s", first ? "" : "\n", label, l->data ? "True" : "False"); 474 g_string_append_printf(tooltip_text, "%s<b>%s:</b> %s", first ? "" : "\n", label, l->data ? "True" : "False");
475 break; 475 break;
476 case PURPLE_ROOMLIST_FIELD_INT: 476 case PURPLE_ROOMLIST_FIELD_INT:
477 g_string_append_printf(tooltip_text, "%s<b>%s:</b> %d", first ? "" : "\n", label, GPOINTER_TO_INT(l->data)); 477 g_string_append_printf(tooltip_text, "%s<b>%s:</b> %d", first ? "" : "\n", label, GPOINTER_TO_INT(l->data));
752 types[ROOM_COLUMN] = G_TYPE_POINTER; 752 types[ROOM_COLUMN] = G_TYPE_POINTER;
753 753
754 for (j = NUM_OF_COLUMNS, l = fields; l; l = l->next, j++) { 754 for (j = NUM_OF_COLUMNS, l = fields; l; l = l->next, j++) {
755 PurpleRoomlistField *f = l->data; 755 PurpleRoomlistField *f = l->data;
756 756
757 switch (purple_roomlist_field_get_type(f)) { 757 switch (purple_roomlist_field_get_field_type(f)) {
758 case PURPLE_ROOMLIST_FIELD_BOOL: 758 case PURPLE_ROOMLIST_FIELD_BOOL:
759 types[j] = G_TYPE_BOOLEAN; 759 types[j] = G_TYPE_BOOLEAN;
760 break; 760 break;
761 case PURPLE_ROOMLIST_FIELD_INT: 761 case PURPLE_ROOMLIST_FIELD_INT:
762 types[j] = G_TYPE_INT; 762 types[j] = G_TYPE_INT;
806 gtk_tree_view_column_set_sizing(GTK_TREE_VIEW_COLUMN(column), 806 gtk_tree_view_column_set_sizing(GTK_TREE_VIEW_COLUMN(column),
807 GTK_TREE_VIEW_COLUMN_GROW_ONLY); 807 GTK_TREE_VIEW_COLUMN_GROW_ONLY);
808 gtk_tree_view_column_set_resizable(GTK_TREE_VIEW_COLUMN(column), TRUE); 808 gtk_tree_view_column_set_resizable(GTK_TREE_VIEW_COLUMN(column), TRUE);
809 gtk_tree_view_column_set_sort_column_id(GTK_TREE_VIEW_COLUMN(column), j); 809 gtk_tree_view_column_set_sort_column_id(GTK_TREE_VIEW_COLUMN(column), j);
810 gtk_tree_view_column_set_reorderable(GTK_TREE_VIEW_COLUMN(column), TRUE); 810 gtk_tree_view_column_set_reorderable(GTK_TREE_VIEW_COLUMN(column), TRUE);
811 if (purple_roomlist_field_get_type(f) == PURPLE_ROOMLIST_FIELD_INT) { 811 if (purple_roomlist_field_get_field_type(f) == PURPLE_ROOMLIST_FIELD_INT) {
812 gtk_tree_view_column_set_cell_data_func(column, renderer, int_cell_data_func, 812 gtk_tree_view_column_set_cell_data_func(column, renderer, int_cell_data_func,
813 GINT_TO_POINTER(j), NULL); 813 GINT_TO_POINTER(j), NULL);
814 gtk_tree_sortable_set_sort_func(GTK_TREE_SORTABLE(model), j, int_sort_func, 814 gtk_tree_sortable_set_sort_func(GTK_TREE_SORTABLE(model), j, int_sort_func,
815 GINT_TO_POINTER(j), NULL); 815 GINT_TO_POINTER(j), NULL);
816 } 816 }
860 GList *l, *k; 860 GList *l, *k;
861 int j; 861 int j;
862 gboolean append = TRUE; 862 gboolean append = TRUE;
863 863
864 rl->total_rooms++; 864 rl->total_rooms++;
865 if (purple_roomlist_room_get_type(room) == PURPLE_ROOMLIST_ROOMTYPE_ROOM) 865 if (purple_roomlist_room_get_room_type(room) == PURPLE_ROOMLIST_ROOMTYPE_ROOM)
866 rl->num_rooms++; 866 rl->num_rooms++;
867 867
868 if (rl->dialog) { 868 if (rl->dialog) {
869 if (rl->dialog->pg_update_to == 0) { 869 if (rl->dialog->pg_update_to == 0) {
870 g_object_ref(list); 870 g_object_ref(list);
894 if (append) 894 if (append)
895 gtk_tree_store_append(rl->model, &iter, (parentrr ? &parent : NULL)); 895 gtk_tree_store_append(rl->model, &iter, (parentrr ? &parent : NULL));
896 else 896 else
897 iter = child; 897 iter = child;
898 898
899 if (purple_roomlist_room_get_type(room) & PURPLE_ROOMLIST_ROOMTYPE_CATEGORY) 899 if (purple_roomlist_room_get_room_type(room) & PURPLE_ROOMLIST_ROOMTYPE_CATEGORY)
900 gtk_tree_store_append(rl->model, &child, &iter); 900 gtk_tree_store_append(rl->model, &child, &iter);
901 901
902 path = gtk_tree_model_get_path(GTK_TREE_MODEL(rl->model), &iter); 902 path = gtk_tree_model_get_path(GTK_TREE_MODEL(rl->model), &iter);
903 903
904 if (purple_roomlist_room_get_type(room) & PURPLE_ROOMLIST_ROOMTYPE_CATEGORY) { 904 if (purple_roomlist_room_get_room_type(room) & PURPLE_ROOMLIST_ROOMTYPE_CATEGORY) {
905 rr = gtk_tree_row_reference_new(GTK_TREE_MODEL(rl->model), path); 905 rr = gtk_tree_row_reference_new(GTK_TREE_MODEL(rl->model), path);
906 g_hash_table_insert(rl->cats, room, rr); 906 g_hash_table_insert(rl->cats, room, rr);
907 } 907 }
908 908
909 gtk_tree_path_free(path); 909 gtk_tree_path_free(path);

mercurial