Mercurial > pidgin.yaz
comparison pidgin/gtkpounce.c @ 21343:2ae1233bd6b2
merge of '2af6143b8106e9e17b15eacee5bd408d8b7fc91a'
and '9d6b27d8f2e6f67edbf460949a3d074185eaa47e'
author | Richard Laager <rlaager@wiktel.com> |
---|---|
date | Fri, 16 Nov 2007 22:59:30 +0000 |
parents | 6c4de0d24eff |
children | 80af064d311c |
comparison
equal
deleted
inserted
replaced
21339:a051b177661e | 21343:2ae1233bd6b2 |
---|---|
470 | 470 |
471 void | 471 void |
472 pidgin_pounce_editor_show(PurpleAccount *account, const char *name, | 472 pidgin_pounce_editor_show(PurpleAccount *account, const char *name, |
473 PurplePounce *cur_pounce) | 473 PurplePounce *cur_pounce) |
474 { | 474 { |
475 pidgin_pounce_editor_show_with_parent(NULL, account, name, cur_pounce); | |
476 } | |
477 | |
478 void | |
479 pidgin_pounce_editor_show_with_parent(GtkWindow *parent, PurpleAccount *account, const char *name, | |
480 PurplePounce *cur_pounce) | |
481 { | |
482 PidginPounceDialog *dialog; | 475 PidginPounceDialog *dialog; |
483 GtkWidget *window; | 476 GtkWidget *window; |
484 GtkWidget *label; | 477 GtkWidget *label; |
485 GtkWidget *vbox1, *vbox2; | 478 GtkWidget *vbox1, *vbox2; |
486 GtkWidget *hbox; | 479 GtkWidget *hbox; |
1055 } | 1048 } |
1056 | 1049 |
1057 static void | 1050 static void |
1058 pounces_manager_add_cb(GtkButton *button, gpointer user_data) | 1051 pounces_manager_add_cb(GtkButton *button, gpointer user_data) |
1059 { | 1052 { |
1060 pidgin_pounce_editor_show_with_parent(GTK_WINDOW(pounces_manager->window), NULL, NULL, NULL); | 1053 pidgin_pounce_editor_show(NULL, NULL, NULL); |
1061 } | 1054 } |
1062 | 1055 |
1063 static void | 1056 static void |
1064 pounces_manager_modify_foreach(GtkTreeModel *model, GtkTreePath *path, | 1057 pounces_manager_modify_foreach(GtkTreeModel *model, GtkTreePath *path, |
1065 GtkTreeIter *iter, gpointer user_data) | 1058 GtkTreeIter *iter, gpointer user_data) |
1066 { | 1059 { |
1067 PurplePounce *pounce; | 1060 PurplePounce *pounce; |
1068 | 1061 |
1069 gtk_tree_model_get(model, iter, POUNCES_MANAGER_COLUMN_POUNCE, &pounce, -1); | 1062 gtk_tree_model_get(model, iter, POUNCES_MANAGER_COLUMN_POUNCE, &pounce, -1); |
1070 pidgin_pounce_editor_show_with_parent(GTK_WINDOW(pounces_manager->window), NULL, NULL, pounce); | 1063 pidgin_pounce_editor_show(NULL, NULL, pounce); |
1071 } | 1064 } |
1072 | 1065 |
1073 static void | 1066 static void |
1074 pounces_manager_modify_cb(GtkButton *button, gpointer user_data) | 1067 pounces_manager_modify_cb(GtkButton *button, gpointer user_data) |
1075 { | 1068 { |
1165 gtk_tree_model_get(GTK_TREE_MODEL(dialog->model), &iter, POUNCES_MANAGER_COLUMN_POUNCE, &pounce, -1); | 1158 gtk_tree_model_get(GTK_TREE_MODEL(dialog->model), &iter, POUNCES_MANAGER_COLUMN_POUNCE, &pounce, -1); |
1166 | 1159 |
1167 if ((pounce != NULL) && (event->button == 1) && | 1160 if ((pounce != NULL) && (event->button == 1) && |
1168 (event->type == GDK_2BUTTON_PRESS)) | 1161 (event->type == GDK_2BUTTON_PRESS)) |
1169 { | 1162 { |
1170 pidgin_pounce_editor_show_with_parent(GTK_WINDOW(pounces_manager->window), NULL, NULL, pounce); | 1163 pidgin_pounce_editor_show(NULL, NULL, pounce); |
1171 return TRUE; | 1164 return TRUE; |
1172 } | 1165 } |
1173 | 1166 |
1174 return FALSE; | 1167 return FALSE; |
1175 } | 1168 } |
1316 } | 1309 } |
1317 | 1310 |
1318 void | 1311 void |
1319 pidgin_pounces_manager_show(void) | 1312 pidgin_pounces_manager_show(void) |
1320 { | 1313 { |
1321 pidgin_pounces_manager_show_with_parent(NULL); | |
1322 } | |
1323 | |
1324 void | |
1325 pidgin_pounces_manager_show_with_parent(GtkWindow *parent) | |
1326 { | |
1327 PouncesManager *dialog; | 1314 PouncesManager *dialog; |
1328 GtkWidget *bbox; | 1315 GtkWidget *bbox; |
1329 GtkWidget *button; | 1316 GtkWidget *button; |
1330 GtkWidget *list; | 1317 GtkWidget *list; |
1331 GtkWidget *vbox; | 1318 GtkWidget *vbox; |
1332 GtkWidget *win; | 1319 GtkWidget *win; |
1333 int width, height; | 1320 int width, height; |
1334 | 1321 |
1335 if (pounces_manager != NULL) { | 1322 if (pounces_manager != NULL) { |
1336 gtk_window_present(GTK_WINDOW(pounces_manager->window)); | 1323 gtk_window_present(GTK_WINDOW(pounces_manager->window)); |
1337 gtk_window_set_transient_for(GTK_WINDOW(pounces_manager->window), parent); | |
1338 return; | 1324 return; |
1339 } | 1325 } |
1340 | 1326 |
1341 pounces_manager = dialog = g_new0(PouncesManager, 1); | 1327 pounces_manager = dialog = g_new0(PouncesManager, 1); |
1342 | 1328 |
1343 width = purple_prefs_get_int(PIDGIN_PREFS_ROOT "/pounces/dialog/width"); | 1329 width = purple_prefs_get_int(PIDGIN_PREFS_ROOT "/pounces/dialog/width"); |
1344 height = purple_prefs_get_int(PIDGIN_PREFS_ROOT "/pounces/dialog/height"); | 1330 height = purple_prefs_get_int(PIDGIN_PREFS_ROOT "/pounces/dialog/height"); |
1345 | 1331 |
1346 dialog->window = win = pidgin_create_window(_("Buddy Pounces"), PIDGIN_HIG_BORDER, "pounces", TRUE); | 1332 dialog->window = win = pidgin_create_window(_("Buddy Pounces"), PIDGIN_HIG_BORDER, "pounces", TRUE); |
1347 gtk_window_set_default_size(GTK_WINDOW(win), width, height); | 1333 gtk_window_set_default_size(GTK_WINDOW(win), width, height); |
1348 gtk_window_set_transient_for(GTK_WINDOW(win), parent); | |
1349 | 1334 |
1350 g_signal_connect(G_OBJECT(win), "delete_event", | 1335 g_signal_connect(G_OBJECT(win), "delete_event", |
1351 G_CALLBACK(pounces_manager_destroy_cb), dialog); | 1336 G_CALLBACK(pounces_manager_destroy_cb), dialog); |
1352 g_signal_connect(G_OBJECT(win), "configure_event", | 1337 g_signal_connect(G_OBJECT(win), "configure_event", |
1353 G_CALLBACK(pounces_manager_configure_cb), dialog); | 1338 G_CALLBACK(pounces_manager_configure_cb), dialog); |