Mercurial > pidgin.yaz
comparison src/gtkrequest.c @ 7900:365d8a67972d
[gaim-migrate @ 8560]
Cleaned up the main function that builds the field request UI. It's a lot
easier to work with now.
committer: Tailor Script <tailor@pidgin.im>
author | Christian Hammond <chipx86@chipx86.com> |
---|---|
date | Sun, 21 Dec 2003 08:16:43 +0000 |
parents | a6298fd7ee21 |
children | d91806e4ea64 |
comparison
equal
deleted
inserted
replaced
7899:7b64108b8ae3 | 7900:365d8a67972d |
---|---|
437 gtk_widget_show_all(dialog); | 437 gtk_widget_show_all(dialog); |
438 | 438 |
439 return data; | 439 return data; |
440 } | 440 } |
441 | 441 |
442 static GtkWidget * | |
443 create_string_field(GaimRequestField *field) | |
444 { | |
445 const char *value; | |
446 GtkWidget *widget; | |
447 | |
448 value = gaim_request_field_string_get_default_value(field); | |
449 | |
450 if (gaim_request_field_string_is_multiline(field)) | |
451 { | |
452 GtkWidget *textview; | |
453 | |
454 widget = gtk_scrolled_window_new(NULL, NULL); | |
455 gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(widget), | |
456 GTK_SHADOW_IN); | |
457 gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(widget), | |
458 GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); | |
459 | |
460 textview = gtk_text_view_new(); | |
461 gtk_text_view_set_editable(GTK_TEXT_VIEW(textview), | |
462 TRUE); | |
463 gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(textview), | |
464 GTK_WRAP_WORD_CHAR); | |
465 | |
466 if (gaim_prefs_get_bool("/gaim/gtk/conversations/spellcheck")) | |
467 gaim_gtk_setup_gtkspell(GTK_TEXT_VIEW(textview)); | |
468 | |
469 gtk_container_add(GTK_CONTAINER(widget), textview); | |
470 gtk_widget_show(textview); | |
471 | |
472 gtk_widget_set_size_request(widget, -1, 75); | |
473 | |
474 if (value != NULL) | |
475 { | |
476 GtkTextBuffer *buffer; | |
477 | |
478 buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(textview)); | |
479 | |
480 gtk_text_buffer_set_text(buffer, value, -1); | |
481 } | |
482 | |
483 gtk_text_view_set_editable(GTK_TEXT_VIEW(textview), | |
484 gaim_request_field_string_is_editable(field)); | |
485 | |
486 g_signal_connect(G_OBJECT(textview), "focus-out-event", | |
487 G_CALLBACK(field_string_focus_out_cb), field); | |
488 } | |
489 else | |
490 { | |
491 widget = gtk_entry_new(); | |
492 | |
493 if (value != NULL) | |
494 gtk_entry_set_text(GTK_ENTRY(widget), value); | |
495 | |
496 gtk_entry_set_visibility(GTK_ENTRY(widget), | |
497 !gaim_request_field_string_is_masked(field)); | |
498 | |
499 gtk_editable_set_editable(GTK_EDITABLE(widget), | |
500 gaim_request_field_string_is_editable(field)); | |
501 | |
502 g_signal_connect(G_OBJECT(widget), "focus-out-event", | |
503 G_CALLBACK(field_string_focus_out_cb), field); | |
504 } | |
505 | |
506 return widget; | |
507 } | |
508 | |
509 static GtkWidget * | |
510 create_int_field(GaimRequestField *field) | |
511 { | |
512 int value; | |
513 GtkWidget *widget; | |
514 | |
515 widget = gtk_entry_new(); | |
516 | |
517 value = gaim_request_field_int_get_default_value(field); | |
518 | |
519 if (value != 0) | |
520 { | |
521 char buf[32]; | |
522 | |
523 g_snprintf(buf, sizeof(buf), "%d", value); | |
524 | |
525 gtk_entry_set_text(GTK_ENTRY(widget), buf); | |
526 } | |
527 | |
528 g_signal_connect(G_OBJECT(widget), "focus-out-event", | |
529 G_CALLBACK(field_int_focus_out_cb), field); | |
530 | |
531 return widget; | |
532 } | |
533 | |
534 static GtkWidget * | |
535 create_bool_field(GaimRequestField *field) | |
536 { | |
537 GtkWidget *widget; | |
538 | |
539 widget = gtk_check_button_new_with_label( | |
540 gaim_request_field_get_label(field)); | |
541 | |
542 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widget), | |
543 gaim_request_field_bool_get_default_value(field)); | |
544 | |
545 g_signal_connect(G_OBJECT(widget), "toggled", | |
546 G_CALLBACK(field_bool_cb), field); | |
547 | |
548 return widget; | |
549 } | |
550 | |
551 static GtkWidget * | |
552 create_choice_field(GaimRequestField *field) | |
553 { | |
554 GtkWidget *widget; | |
555 GList *labels; | |
556 GList *l; | |
557 | |
558 labels = gaim_request_field_choice_get_labels(field); | |
559 | |
560 if (g_list_length(labels) > 5) | |
561 { | |
562 GtkWidget *menu; | |
563 GtkWidget *item; | |
564 | |
565 widget = gtk_option_menu_new(); | |
566 | |
567 menu = gtk_menu_new(); | |
568 | |
569 gtk_option_menu_set_menu(GTK_OPTION_MENU(widget), menu); | |
570 | |
571 for (l = labels; l != NULL; l = l->next) | |
572 { | |
573 const char *text = l->data; | |
574 | |
575 item = gtk_menu_item_new_with_label(text); | |
576 | |
577 gtk_menu_shell_append(GTK_MENU_SHELL(menu), item); | |
578 } | |
579 | |
580 g_signal_connect(G_OBJECT(widget), "changed", | |
581 G_CALLBACK(field_choice_menu_cb), | |
582 field); | |
583 } | |
584 else | |
585 { | |
586 GtkWidget *box; | |
587 GtkWidget *first_radio = NULL; | |
588 GtkWidget *radio; | |
589 | |
590 if (g_list_length(labels) == 2) | |
591 box = gtk_hbox_new(FALSE, 6); | |
592 else | |
593 box = gtk_vbox_new(FALSE, 0); | |
594 | |
595 widget = box; | |
596 | |
597 for (l = labels; l != NULL; l = l->next) | |
598 { | |
599 const char *text = l->data; | |
600 | |
601 radio = gtk_radio_button_new_with_label_from_widget( | |
602 GTK_RADIO_BUTTON(first_radio), text); | |
603 | |
604 if (first_radio == NULL) | |
605 first_radio = radio; | |
606 | |
607 gtk_box_pack_start(GTK_BOX(box), radio, TRUE, TRUE, 0); | |
608 gtk_widget_show(radio); | |
609 | |
610 g_signal_connect(G_OBJECT(radio), "toggled", | |
611 G_CALLBACK(field_choice_option_cb), field); | |
612 } | |
613 } | |
614 | |
615 return widget; | |
616 } | |
617 | |
442 static void * | 618 static void * |
443 gaim_gtk_request_fields(const char *title, const char *primary, | 619 gaim_gtk_request_fields(const char *title, const char *primary, |
444 const char *secondary, GaimRequestFields *fields, | 620 const char *secondary, GaimRequestFields *fields, |
445 const char *ok_text, GCallback ok_cb, | 621 const char *ok_text, GCallback ok_cb, |
446 const char *cancel_text, GCallback cancel_cb, | 622 const char *cancel_text, GCallback cancel_cb, |
458 GtkWidget *img; | 634 GtkWidget *img; |
459 GtkSizeGroup *sg; | 635 GtkSizeGroup *sg; |
460 GList *gl, *fl; | 636 GList *gl, *fl; |
461 GaimRequestFieldGroup *group; | 637 GaimRequestFieldGroup *group; |
462 GaimRequestField *field; | 638 GaimRequestField *field; |
463 char *text; | |
464 char *label_text; | 639 char *label_text; |
465 | 640 |
466 data = g_new0(GaimGtkRequestData, 1); | 641 data = g_new0(GaimGtkRequestData, 1); |
467 data->type = GAIM_REQUEST_FIELDS; | 642 data->type = GAIM_REQUEST_FIELDS; |
468 data->user_data = user_data; | 643 data->user_data = user_data; |
500 gtk_box_pack_start(GTK_BOX(hbox), vbox, FALSE, FALSE, 0); | 675 gtk_box_pack_start(GTK_BOX(hbox), vbox, FALSE, FALSE, 0); |
501 gtk_widget_show(vbox); | 676 gtk_widget_show(vbox); |
502 | 677 |
503 sg = gtk_size_group_new(GTK_SIZE_GROUP_HORIZONTAL); | 678 sg = gtk_size_group_new(GTK_SIZE_GROUP_HORIZONTAL); |
504 | 679 |
505 if (primary != NULL || secondary != NULL) { | 680 if (primary != NULL || secondary != NULL) |
506 label_text = g_strdup_printf((primary ? "<span weight=\"bold\" size=\"larger\">" | 681 { |
507 "%s</span>%s%s" : "%s%s%s"), | 682 label_text = g_strdup_printf( |
508 (primary ? primary : ""), | 683 (primary |
509 ((primary && secondary) ? "\n\n" : ""), | 684 ? "<span weight=\"bold\" size=\"larger\">" |
510 (secondary ? secondary : "")); | 685 "%s</span>%s%s" |
686 : "%s%s%s"), | |
687 (primary ? primary : ""), | |
688 ((primary && secondary) ? "\n\n" : ""), | |
689 (secondary ? secondary : "")); | |
511 | 690 |
512 label = gtk_label_new(NULL); | 691 label = gtk_label_new(NULL); |
513 | 692 |
514 gtk_label_set_markup(GTK_LABEL(label), label_text); | 693 gtk_label_set_markup(GTK_LABEL(label), label_text); |
515 gtk_label_set_line_wrap(GTK_LABEL(label), TRUE); | 694 gtk_label_set_line_wrap(GTK_LABEL(label), TRUE); |
520 g_free(label_text); | 699 g_free(label_text); |
521 } | 700 } |
522 | 701 |
523 for (gl = gaim_request_fields_get_groups(fields); | 702 for (gl = gaim_request_fields_get_groups(fields); |
524 gl != NULL; | 703 gl != NULL; |
525 gl = gl->next) { | 704 gl = gl->next) |
526 | 705 { |
527 GList *field_list; | 706 GList *field_list; |
528 size_t field_count = 0; | 707 size_t field_count = 0; |
529 size_t cols = 1; | 708 size_t cols = 1; |
530 size_t rows; | 709 size_t rows; |
531 size_t col_num; | 710 size_t col_num; |
532 size_t row_num = 0; | 711 size_t row_num = 0; |
533 | 712 |
534 group = gl->data; | 713 group = gl->data; |
535 field_list = gaim_request_field_group_get_fields(group); | 714 field_list = gaim_request_field_group_get_fields(group); |
536 | 715 |
537 if (gaim_request_field_group_get_title(group) != NULL) { | 716 if (gaim_request_field_group_get_title(group) != NULL) |
717 { | |
538 frame = gaim_gtk_make_frame(vbox, | 718 frame = gaim_gtk_make_frame(vbox, |
539 gaim_request_field_group_get_title(group)); | 719 gaim_request_field_group_get_title(group)); |
540 } | 720 } |
541 else | 721 else |
542 frame = vbox; | 722 frame = vbox; |
543 | 723 |
544 field_count = g_list_length(field_list); | 724 field_count = g_list_length(field_list); |
545 | 725 |
546 if (field_count > 9) { | 726 if (field_count > 9) |
727 { | |
547 rows = field_count / 2; | 728 rows = field_count / 2; |
548 cols++; | 729 cols++; |
549 } | 730 } |
550 else | 731 else |
551 rows = field_count; | 732 rows = field_count; |
552 | 733 |
553 for (fl = field_list; fl != NULL; fl = fl->next) { | 734 for (fl = field_list; fl != NULL; fl = fl->next) |
735 { | |
554 GaimRequestFieldType type; | 736 GaimRequestFieldType type; |
555 | 737 |
556 field = (GaimRequestField *)fl->data; | 738 field = (GaimRequestField *)fl->data; |
557 | 739 |
558 type = gaim_request_field_get_type(field); | 740 type = gaim_request_field_get_type(field); |
559 | 741 |
560 if (type == GAIM_REQUEST_FIELD_STRING && | 742 if (type == GAIM_REQUEST_FIELD_STRING && |
561 gaim_request_field_string_is_multiline(field)) { | 743 gaim_request_field_string_is_multiline(field)) |
562 | 744 { |
563 rows += 2; | 745 rows += 2; |
564 } | 746 } |
565 } | 747 } |
566 | 748 |
567 table = gtk_table_new(rows, 2 * cols, FALSE); | 749 table = gtk_table_new(rows, 2 * cols, FALSE); |
571 gtk_container_add(GTK_CONTAINER(frame), table); | 753 gtk_container_add(GTK_CONTAINER(frame), table); |
572 gtk_widget_show(table); | 754 gtk_widget_show(table); |
573 | 755 |
574 for (row_num = 0, fl = field_list; | 756 for (row_num = 0, fl = field_list; |
575 row_num < rows && fl != NULL; | 757 row_num < rows && fl != NULL; |
576 row_num++) { | 758 row_num++) |
577 | 759 { |
578 for (col_num = 0; | 760 for (col_num = 0; |
579 col_num < cols && fl != NULL; | 761 col_num < cols && fl != NULL; |
580 col_num++, fl = fl->next) { | 762 col_num++, fl = fl->next) |
581 | 763 { |
582 size_t col_offset = col_num * 2; | 764 size_t col_offset = col_num * 2; |
583 GaimRequestFieldType type; | 765 GaimRequestFieldType type; |
584 GtkWidget *widget = NULL; | 766 GtkWidget *widget = NULL; |
585 | 767 |
586 field = fl->data; | 768 field = fl->data; |
587 | 769 |
588 type = gaim_request_field_get_type(field); | 770 type = gaim_request_field_get_type(field); |
589 | 771 |
590 if (type != GAIM_REQUEST_FIELD_BOOLEAN) { | 772 if (type != GAIM_REQUEST_FIELD_BOOLEAN) |
773 { | |
774 char *text; | |
775 | |
591 text = g_strdup_printf("%s:", | 776 text = g_strdup_printf("%s:", |
592 gaim_request_field_get_label(field)); | 777 gaim_request_field_get_label(field)); |
593 | 778 |
594 label = gtk_label_new(NULL); | 779 label = gtk_label_new(NULL); |
595 gtk_label_set_markup_with_mnemonic(GTK_LABEL(label), text); | 780 gtk_label_set_markup_with_mnemonic(GTK_LABEL(label), text); |
596 g_free(text); | 781 g_free(text); |
597 | 782 |
598 gtk_misc_set_alignment(GTK_MISC(label), 0, 0.5); | 783 gtk_misc_set_alignment(GTK_MISC(label), 0, 0.5); |
599 | 784 |
600 gtk_size_group_add_widget(sg, label); | 785 gtk_size_group_add_widget(sg, label); |
601 | 786 |
602 if (type == GAIM_REQUEST_FIELD_STRING && | 787 if (type == GAIM_REQUEST_FIELD_STRING && |
603 gaim_request_field_string_is_multiline(field)) { | 788 gaim_request_field_string_is_multiline(field)) |
604 | 789 { |
605 gtk_table_attach_defaults(GTK_TABLE(table), label, | 790 gtk_table_attach_defaults(GTK_TABLE(table), label, |
606 0, 2 * cols, | 791 0, 2 * cols, |
607 row_num, row_num + 1); | 792 row_num, row_num + 1); |
608 | 793 |
609 row_num++; | 794 row_num++; |
610 } | 795 } |
611 else { | 796 else |
797 { | |
612 gtk_table_attach_defaults(GTK_TABLE(table), label, | 798 gtk_table_attach_defaults(GTK_TABLE(table), label, |
613 col_offset, col_offset + 1, | 799 col_offset, col_offset + 1, |
614 row_num, row_num + 1); | 800 row_num, row_num + 1); |
615 } | 801 } |
616 | 802 |
617 gtk_widget_show(label); | 803 gtk_widget_show(label); |
618 } | 804 } |
619 | 805 |
620 if (type == GAIM_REQUEST_FIELD_STRING) { | 806 if (type == GAIM_REQUEST_FIELD_STRING) |
621 const char *value; | 807 widget = create_string_field(field); |
622 | 808 else if (type == GAIM_REQUEST_FIELD_INTEGER) |
623 value = gaim_request_field_string_get_default_value(field); | 809 widget = create_int_field(field); |
624 | 810 else if (type == GAIM_REQUEST_FIELD_BOOLEAN) |
625 if (gaim_request_field_string_is_multiline(field)) { | 811 widget = create_bool_field(field); |
626 GtkWidget *textview; | 812 else if (type == GAIM_REQUEST_FIELD_CHOICE) |
627 | 813 widget = create_choice_field(field); |
628 widget = gtk_scrolled_window_new(NULL, NULL); | |
629 gtk_scrolled_window_set_shadow_type( | |
630 GTK_SCROLLED_WINDOW(widget), | |
631 GTK_SHADOW_IN); | |
632 gtk_scrolled_window_set_policy( | |
633 GTK_SCROLLED_WINDOW(widget), | |
634 GTK_POLICY_NEVER, | |
635 GTK_POLICY_AUTOMATIC); | |
636 | |
637 textview = gtk_text_view_new(); | |
638 gtk_text_view_set_editable(GTK_TEXT_VIEW(textview), | |
639 TRUE); | |
640 gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(textview), | |
641 GTK_WRAP_WORD_CHAR); | |
642 | |
643 if (gaim_prefs_get_bool( | |
644 "/gaim/gtk/conversations/spellcheck")) | |
645 { | |
646 gaim_gtk_setup_gtkspell(GTK_TEXT_VIEW(textview)); | |
647 } | |
648 | |
649 gtk_container_add(GTK_CONTAINER(widget), textview); | |
650 gtk_widget_show(textview); | |
651 | |
652 gtk_widget_set_size_request(widget, -1, 75); | |
653 | |
654 if (value != NULL) { | |
655 GtkTextBuffer *buffer; | |
656 | |
657 buffer = gtk_text_view_get_buffer( | |
658 GTK_TEXT_VIEW(textview)); | |
659 | |
660 gtk_text_buffer_set_text(buffer, value, -1); | |
661 } | |
662 | |
663 gtk_text_view_set_editable(GTK_TEXT_VIEW(textview), | |
664 gaim_request_field_string_is_editable(field)); | |
665 | |
666 g_signal_connect(G_OBJECT(textview), "focus-out-event", | |
667 G_CALLBACK(field_string_focus_out_cb), | |
668 field); | |
669 } | |
670 else { | |
671 widget = gtk_entry_new(); | |
672 | |
673 if (value != NULL) | |
674 gtk_entry_set_text(GTK_ENTRY(widget), value); | |
675 | |
676 gtk_entry_set_visibility(GTK_ENTRY(widget), | |
677 !gaim_request_field_string_is_masked(field)); | |
678 | |
679 gtk_editable_set_editable(GTK_EDITABLE(widget), | |
680 gaim_request_field_string_is_editable(field)); | |
681 | |
682 g_signal_connect(G_OBJECT(widget), "focus-out-event", | |
683 G_CALLBACK(field_string_focus_out_cb), | |
684 field); | |
685 } | |
686 } | |
687 else if (type == GAIM_REQUEST_FIELD_INTEGER) { | |
688 int value; | |
689 | |
690 widget = gtk_entry_new(); | |
691 | |
692 value = gaim_request_field_int_get_default_value(field); | |
693 | |
694 if (value != 0) { | |
695 char buf[32]; | |
696 | |
697 g_snprintf(buf, sizeof(buf), "%d", value); | |
698 | |
699 gtk_entry_set_text(GTK_ENTRY(widget), buf); | |
700 } | |
701 | |
702 g_signal_connect(G_OBJECT(widget), "focus-out-event", | |
703 G_CALLBACK(field_int_focus_out_cb), | |
704 field); | |
705 } | |
706 else if (type == GAIM_REQUEST_FIELD_BOOLEAN) { | |
707 widget = gtk_check_button_new_with_label( | |
708 gaim_request_field_get_label(field)); | |
709 | |
710 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widget), | |
711 gaim_request_field_bool_get_default_value(field)); | |
712 | |
713 g_signal_connect(G_OBJECT(widget), "toggled", | |
714 G_CALLBACK(field_bool_cb), field); | |
715 } | |
716 else if (type == GAIM_REQUEST_FIELD_CHOICE) { | |
717 GList *labels; | |
718 GList *l; | |
719 | |
720 labels = gaim_request_field_choice_get_labels(field); | |
721 | |
722 if (g_list_length(labels) > 5) { | |
723 GtkWidget *menu; | |
724 GtkWidget *item; | |
725 | |
726 widget = gtk_option_menu_new(); | |
727 | |
728 menu = gtk_menu_new(); | |
729 | |
730 gtk_option_menu_set_menu(GTK_OPTION_MENU(widget), menu); | |
731 | |
732 for (l = labels; l != NULL; l = l->next) { | |
733 const char *text = l->data; | |
734 | |
735 item = gtk_menu_item_new_with_label(text); | |
736 | |
737 gtk_menu_shell_append(GTK_MENU_SHELL(menu), item); | |
738 } | |
739 | |
740 g_signal_connect(G_OBJECT(widget), "changed", | |
741 G_CALLBACK(field_choice_menu_cb), | |
742 field); | |
743 } | |
744 else { | |
745 GtkWidget *box; | |
746 GtkWidget *first_radio = NULL; | |
747 GtkWidget *radio; | |
748 | |
749 if (g_list_length(labels) == 2) | |
750 box = gtk_hbox_new(FALSE, 6); | |
751 else | |
752 box = gtk_vbox_new(FALSE, 0); | |
753 | |
754 widget = box; | |
755 | |
756 for (l = labels; l != NULL; l = l->next) { | |
757 const char *text = l->data; | |
758 | |
759 radio = | |
760 gtk_radio_button_new_with_label_from_widget( | |
761 GTK_RADIO_BUTTON(first_radio), text); | |
762 | |
763 if (first_radio == NULL) | |
764 first_radio = radio; | |
765 | |
766 gtk_box_pack_start(GTK_BOX(box), radio, | |
767 TRUE, TRUE, 0); | |
768 gtk_widget_show(radio); | |
769 | |
770 g_signal_connect(G_OBJECT(radio), "toggled", | |
771 G_CALLBACK(field_choice_option_cb), | |
772 field); | |
773 } | |
774 } | |
775 } | |
776 | 814 |
777 if (type == GAIM_REQUEST_FIELD_STRING && | 815 if (type == GAIM_REQUEST_FIELD_STRING && |
778 gaim_request_field_string_is_multiline(field)) { | 816 gaim_request_field_string_is_multiline(field)) |
779 | 817 { |
780 gtk_table_attach(GTK_TABLE(table), widget, | 818 gtk_table_attach(GTK_TABLE(table), widget, |
781 0, 2 * cols, | 819 0, 2 * cols, |
782 row_num, row_num + 1, | 820 row_num, row_num + 1, |
783 GTK_FILL | GTK_EXPAND, | 821 GTK_FILL | GTK_EXPAND, |
784 GTK_FILL | GTK_EXPAND, | 822 GTK_FILL | GTK_EXPAND, |
785 5, 0); | 823 5, 0); |
786 } | 824 } |
787 else if (type != GAIM_REQUEST_FIELD_BOOLEAN) { | 825 else if (type != GAIM_REQUEST_FIELD_BOOLEAN) |
826 { | |
788 gtk_table_attach(GTK_TABLE(table), widget, | 827 gtk_table_attach(GTK_TABLE(table), widget, |
789 col_offset + 1, col_offset + 2, | 828 col_offset + 1, col_offset + 2, |
790 row_num, row_num + 1, | 829 row_num, row_num + 1, |
791 GTK_FILL | GTK_EXPAND, | 830 GTK_FILL | GTK_EXPAND, |
792 GTK_FILL | GTK_EXPAND, | 831 GTK_FILL | GTK_EXPAND, |
793 5, 0); | 832 5, 0); |
794 } | 833 } |
795 else { | 834 else |
835 { | |
796 gtk_table_attach(GTK_TABLE(table), widget, | 836 gtk_table_attach(GTK_TABLE(table), widget, |
797 col_offset, col_offset + 1, | 837 col_offset, col_offset + 1, |
798 row_num, row_num + 1, | 838 row_num, row_num + 1, |
799 GTK_FILL | GTK_EXPAND, | 839 GTK_FILL | GTK_EXPAND, |
800 GTK_FILL | GTK_EXPAND, | 840 GTK_FILL | GTK_EXPAND, |