Mercurial > pidgin.yaz
comparison src/gtkconn.c @ 7552:83453431d722
[gaim-migrate @ 8166]
A much appreciated patch from Daniel "Guru of the Reconnect Dialog" Atallah
committer: Tailor Script <tailor@pidgin.im>
author | Mark Doliner <mark@kingant.net> |
---|---|
date | Tue, 18 Nov 2003 04:01:23 +0000 |
parents | 240aca6344b6 |
children | 1ffe44bb2573 |
comparison
equal
deleted
inserted
replaced
7551:2dfbcda49e65 | 7552:83453431d722 |
---|---|
287 GtkTreeIter iter; | 287 GtkTreeIter iter; |
288 GValue val = { 0, }; | 288 GValue val = { 0, }; |
289 GtkTreeSelection *sel = NULL; | 289 GtkTreeSelection *sel = NULL; |
290 GtkTreeModel *model = NULL; | 290 GtkTreeModel *model = NULL; |
291 GaimAccount *account = NULL; | 291 GaimAccount *account = NULL; |
292 GaimConnection *gc = NULL; | |
293 | 292 |
294 switch(id) { | 293 switch(id) { |
295 case GTK_RESPONSE_DELETE_EVENT: | 294 case GTK_RESPONSE_DELETE_EVENT: |
296 case GTK_RESPONSE_CLOSE: | 295 case GTK_RESPONSE_CLOSE: |
297 disconnect_window_hide(); | 296 disconnect_window_hide(); |
312 if (!gtk_tree_model_get_iter_first(model, &iter)) | 311 if (!gtk_tree_model_get_iter_first(model, &iter)) |
313 return; | 312 return; |
314 } | 313 } |
315 gtk_tree_model_get_value(model, &iter, 4, &val); | 314 gtk_tree_model_get_value(model, &iter, 4, &val); |
316 account = g_value_get_pointer(&val); | 315 account = g_value_get_pointer(&val); |
317 gc = gaim_account_connect(account); | |
318 g_value_unset(&val); | 316 g_value_unset(&val); |
319 if (gaim_connection_get_state(gc) != GAIM_DISCONNECTED) { | 317 gtk_list_store_remove(GTK_LIST_STORE(model), &iter); |
320 gtk_list_store_remove(GTK_LIST_STORE(model), &iter); | 318 if (!gtk_tree_model_get_iter_first(model, &iter)) |
321 if (!gtk_tree_model_get_iter_first(model, &iter)) | 319 disconnect_window_hide(); |
322 disconnect_window_hide(); | 320 else { |
323 else { | 321 gtk_tree_selection_select_iter(sel, &iter); |
324 gtk_tree_selection_select_iter(sel, &iter); | 322 if (!gtk_tree_model_iter_next(model, &iter)) |
325 if (!gtk_tree_model_iter_next(model, &iter)) | 323 gtk_widget_hide_all(disconnect_window->sw); |
326 gtk_widget_hide_all(disconnect_window->sw); | |
327 } | |
328 } | 324 } |
325 gaim_account_connect(account); | |
329 break; | 326 break; |
330 } | 327 } |
331 } | 328 } |
332 | 329 |
333 static void disconnect_tree_cb(GtkTreeSelection *sel, GtkTreeModel *model) | 330 static void disconnect_tree_cb(GtkTreeSelection *sel, GtkTreeModel *model) |