pidgin/gtkrequest.c

changeset 18545
5af898e91ec2
parent 18190
bcf28ef7e8ff
child 18865
41e0c131611f
equal deleted inserted replaced
17398:1edf059a4a26 18545:5af898e91ec2
321 G_CALLBACK(input_response_cb), data); 321 G_CALLBACK(input_response_cb), data);
322 322
323 /* Setup the dialog */ 323 /* Setup the dialog */
324 gtk_container_set_border_width(GTK_CONTAINER(dialog), PIDGIN_HIG_BORDER/2); 324 gtk_container_set_border_width(GTK_CONTAINER(dialog), PIDGIN_HIG_BORDER/2);
325 gtk_container_set_border_width(GTK_CONTAINER(GTK_DIALOG(dialog)->vbox), PIDGIN_HIG_BORDER/2); 325 gtk_container_set_border_width(GTK_CONTAINER(GTK_DIALOG(dialog)->vbox), PIDGIN_HIG_BORDER/2);
326 gtk_window_set_resizable(GTK_WINDOW(dialog), FALSE); 326 if (!multiline)
327 gtk_window_set_resizable(GTK_WINDOW(dialog), FALSE);
327 gtk_dialog_set_has_separator(GTK_DIALOG(dialog), FALSE); 328 gtk_dialog_set_has_separator(GTK_DIALOG(dialog), FALSE);
328 gtk_dialog_set_default_response(GTK_DIALOG(dialog), 0); 329 gtk_dialog_set_default_response(GTK_DIALOG(dialog), 0);
329 gtk_box_set_spacing(GTK_BOX(GTK_DIALOG(dialog)->vbox), PIDGIN_HIG_BORDER); 330 gtk_box_set_spacing(GTK_BOX(GTK_DIALOG(dialog)->vbox), PIDGIN_HIG_BORDER);
330 331
331 /* Setup the main horizontal box */ 332 /* Setup the main horizontal box */
339 gtk_box_pack_start(GTK_BOX(hbox), img, FALSE, FALSE, 0); 340 gtk_box_pack_start(GTK_BOX(hbox), img, FALSE, FALSE, 0);
340 341
341 /* Vertical box */ 342 /* Vertical box */
342 vbox = gtk_vbox_new(FALSE, PIDGIN_HIG_BORDER); 343 vbox = gtk_vbox_new(FALSE, PIDGIN_HIG_BORDER);
343 344
344 gtk_box_pack_start(GTK_BOX(hbox), vbox, FALSE, FALSE, 0); 345 gtk_box_pack_start(GTK_BOX(hbox), vbox, TRUE, TRUE, 0);
345 346
346 /* Descriptive label */ 347 /* Descriptive label */
347 primary_esc = (primary != NULL) ? g_markup_escape_text(primary, -1) : NULL; 348 primary_esc = (primary != NULL) ? g_markup_escape_text(primary, -1) : NULL;
348 secondary_esc = (secondary != NULL) ? g_markup_escape_text(secondary, -1) : NULL; 349 secondary_esc = (secondary != NULL) ? g_markup_escape_text(secondary, -1) : NULL;
349 label_text = g_strdup_printf((primary ? "<span weight=\"bold\" size=\"larger\">" 350 label_text = g_strdup_printf((primary ? "<span weight=\"bold\" size=\"larger\">"
357 label = gtk_label_new(NULL); 358 label = gtk_label_new(NULL);
358 359
359 gtk_label_set_markup(GTK_LABEL(label), label_text); 360 gtk_label_set_markup(GTK_LABEL(label), label_text);
360 gtk_label_set_line_wrap(GTK_LABEL(label), TRUE); 361 gtk_label_set_line_wrap(GTK_LABEL(label), TRUE);
361 gtk_misc_set_alignment(GTK_MISC(label), 0, 0); 362 gtk_misc_set_alignment(GTK_MISC(label), 0, 0);
362 gtk_box_pack_start(GTK_BOX(vbox), label, TRUE, TRUE, 0); 363 gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 0);
363 364
364 g_free(label_text); 365 g_free(label_text);
365 366
366 /* Entry field. */ 367 /* Entry field. */
367 data->u.input.multiline = multiline; 368 data->u.input.multiline = multiline;
971 GtkListStore *store; 972 GtkListStore *store;
972 GtkCellRenderer *renderer; 973 GtkCellRenderer *renderer;
973 GtkTreeSelection *sel; 974 GtkTreeSelection *sel;
974 GtkTreeViewColumn *column; 975 GtkTreeViewColumn *column;
975 GtkTreeIter iter; 976 GtkTreeIter iter;
976 const GList *l; 977 GList *l;
977 978
978 /* Create the scrolled window */ 979 /* Create the scrolled window */
979 sw = gtk_scrolled_window_new(NULL, NULL); 980 sw = gtk_scrolled_window_new(NULL, NULL);
980 gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(sw), 981 gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(sw),
981 GTK_POLICY_AUTOMATIC, 982 GTK_POLICY_AUTOMATIC,
1067 data->cbs = g_new0(GCallback, 2); 1068 data->cbs = g_new0(GCallback, 2);
1068 1069
1069 data->cbs[0] = ok_cb; 1070 data->cbs[0] = ok_cb;
1070 data->cbs[1] = cancel_cb; 1071 data->cbs[1] = cancel_cb;
1071 1072
1072 data->dialog = win = gtk_window_new(GTK_WINDOW_TOPLEVEL); 1073
1073
1074 if (title != NULL)
1075 gtk_window_set_title(GTK_WINDOW(win), title);
1076 #ifdef _WIN32 1074 #ifdef _WIN32
1077 gtk_window_set_title(GTK_WINDOW(win), PIDGIN_ALERT_TITLE); 1075 data->dialog = win = pidgin_create_window(PIDGIN_ALERT_TITLE, PIDGIN_HIG_BORDER, "multifield", TRUE) ;
1078 #endif 1076 #else /* !_WIN32 */
1079 1077 data->dialog = win = pidgin_create_window(title, PIDGIN_HIG_BORDER, "multifield", TRUE) ;
1080 gtk_window_set_role(GTK_WINDOW(win), "multifield"); 1078 #endif /* _WIN32 */
1081 gtk_container_set_border_width(GTK_CONTAINER(win), PIDGIN_HIG_BORDER);
1082 1079
1083 g_signal_connect(G_OBJECT(win), "delete_event", 1080 g_signal_connect(G_OBJECT(win), "delete_event",
1084 G_CALLBACK(destroy_multifield_cb), data); 1081 G_CALLBACK(destroy_multifield_cb), data);
1085 1082
1086 /* Setup the main horizontal box */ 1083 /* Setup the main horizontal box */

mercurial