diff options
author | Grant Gayed <ggayed> | 2004-05-27 21:48:41 +0000 |
---|---|---|
committer | Grant Gayed <ggayed> | 2004-05-27 21:48:41 +0000 |
commit | 0f19e4967bd7565d0b817b526213289acd242b74 (patch) | |
tree | cbceb5364eaa6df9788944265b0b35521a0f5936 | |
parent | 06dc38e623afcc69453149a4908e940401d48a28 (diff) | |
download | eclipse.platform.swt-0f19e4967bd7565d0b817b526213289acd242b74.tar.gz eclipse.platform.swt-0f19e4967bd7565d0b817b526213289acd242b74.tar.xz eclipse.platform.swt-0f19e4967bd7565d0b817b526213289acd242b74.zip |
62558
6 files changed, 372 insertions, 302 deletions
diff --git a/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os.c b/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os.c index ca994eceb4..6b29cc4e23 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os.c +++ b/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os.c @@ -7242,6 +7242,37 @@ JNIEXPORT jboolean JNICALL OS_NATIVE(gtk_1tree_1selection_1get_1selected) } #endif +#ifndef NO_gtk_1tree_1selection_1get_1selected_1rows +JNIEXPORT jint JNICALL OS_NATIVE(gtk_1tree_1selection_1get_1selected_1rows) + (JNIEnv *env, jclass that, jint arg0, jintArray arg1) +{ + jint *lparg1=NULL; + jint rc; + OS_NATIVE_ENTER(env, that, gtk_1tree_1selection_1get_1selected_1rows_FUNC); + if (arg1) lparg1 = (*env)->GetIntArrayElements(env, arg1, NULL); +/* + rc = (jint)gtk_tree_selection_get_selected_rows((GtkTreeSelection *)arg0, (GtkTreeModel **)lparg1); +*/ + { + static int initialized = 0; + static void *handle = NULL; + static jint (*fptr)(GtkTreeSelection *, GtkTreeModel **); + rc = 0; + if (!initialized) { + if (!handle) handle = dlopen(gtk_tree_selection_get_selected_rows_LIB, RTLD_LAZY); + if (handle) fptr = dlsym(handle, "gtk_tree_selection_get_selected_rows"); + initialized = 1; + } + if (fptr) { + rc = (jint)(*fptr)((GtkTreeSelection *)arg0, (GtkTreeModel **)lparg1); + } + } + if (arg1) (*env)->ReleaseIntArrayElements(env, arg1, lparg1, 0); + OS_NATIVE_EXIT(env, that, gtk_1tree_1selection_1get_1selected_1rows_FUNC); + return rc; +} +#endif + #ifndef NO_gtk_1tree_1selection_1path_1is_1selected JNIEXPORT jboolean JNICALL OS_NATIVE(gtk_1tree_1selection_1path_1is_1selected) (JNIEnv *env, jclass that, jint arg0, jint arg1) diff --git a/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os_custom.h b/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os_custom.h index e4f2ae1000..f3881cba01 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os_custom.h +++ b/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os_custom.h @@ -19,6 +19,7 @@ #define PTR_sizeof() sizeof(void *) /* Libraries for dynamic loaded functions */ +#define gtk_tree_selection_get_selected_rows_LIB "libgtk-x11-2.0.so" #define gtk_tree_view_column_cell_get_position_LIB "libgtk-x11-2.0.so" #define gtk_entry_set_alignment_LIB "libgtk-x11-2.0.so" #define gdk_screen_get_default_LIB "libgdk-x11-2.0.so" diff --git a/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os_stats.c b/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os_stats.c index 9e3bcece7d..a3c9f001b7 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os_stats.c +++ b/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os_stats.c @@ -18,8 +18,8 @@ #ifdef NATIVE_STATS -int OS_nativeFunctionCount = 826; -int OS_nativeFunctionCallCount[826]; +int OS_nativeFunctionCount = 827; +int OS_nativeFunctionCallCount[827]; char * OS_nativeFunctionNames[] = { "GDK_1DISPLAY", "GDK_1ROOT_1PARENT", @@ -598,6 +598,7 @@ char * OS_nativeFunctionNames[] = { "gtk_1tree_1path_1new_1from_1string___3B", "gtk_1tree_1path_1up", "gtk_1tree_1selection_1get_1selected", + "gtk_1tree_1selection_1get_1selected_1rows", "gtk_1tree_1selection_1path_1is_1selected", "gtk_1tree_1selection_1select_1all", "gtk_1tree_1selection_1select_1iter", diff --git a/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os_stats.h b/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os_stats.h index 1bef6d9d55..5c6e546240 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os_stats.h +++ b/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os_stats.h @@ -600,252 +600,253 @@ char* OS_nativeFunctionNames[]; #define gtk_1tree_1path_1new_1from_1string___3B_FUNC 574 #define gtk_1tree_1path_1up_FUNC 575 #define gtk_1tree_1selection_1get_1selected_FUNC 576 -#define gtk_1tree_1selection_1path_1is_1selected_FUNC 577 -#define gtk_1tree_1selection_1select_1all_FUNC 578 -#define gtk_1tree_1selection_1select_1iter_FUNC 579 -#define gtk_1tree_1selection_1selected_1foreach_FUNC 580 -#define gtk_1tree_1selection_1set_1mode_FUNC 581 -#define gtk_1tree_1selection_1unselect_1all_FUNC 582 -#define gtk_1tree_1selection_1unselect_1iter_FUNC 583 -#define gtk_1tree_1store_1append_FUNC 584 -#define gtk_1tree_1store_1clear_FUNC 585 -#define gtk_1tree_1store_1insert_FUNC 586 -#define gtk_1tree_1store_1newv_FUNC 587 -#define gtk_1tree_1store_1remove_FUNC 588 -#define gtk_1tree_1store_1set__IIIII_FUNC 589 -#define gtk_1tree_1store_1set__IIIJI_FUNC 590 -#define gtk_1tree_1store_1set__IIILorg_eclipse_swt_internal_gtk_GdkColor_2I_FUNC 591 -#define gtk_1tree_1store_1set__IIIZI_FUNC 592 -#define gtk_1tree_1store_1set__III_3BI_FUNC 593 -#define gtk_1tree_1view_1collapse_1row_FUNC 594 -#define gtk_1tree_1view_1column_1add_1attribute_FUNC 595 -#define gtk_1tree_1view_1column_1cell_1get_1position_FUNC 596 -#define gtk_1tree_1view_1column_1cell_1get_1size_FUNC 597 -#define gtk_1tree_1view_1column_1cell_1set_1cell_1data_FUNC 598 -#define gtk_1tree_1view_1column_1clear_FUNC 599 -#define gtk_1tree_1view_1column_1get_1cell_1renderers_FUNC 600 -#define gtk_1tree_1view_1column_1get_1resizable_FUNC 601 -#define gtk_1tree_1view_1column_1get_1spacing_FUNC 602 -#define gtk_1tree_1view_1column_1get_1visible_FUNC 603 -#define gtk_1tree_1view_1column_1get_1width_FUNC 604 -#define gtk_1tree_1view_1column_1new_FUNC 605 -#define gtk_1tree_1view_1column_1pack_1end_FUNC 606 -#define gtk_1tree_1view_1column_1pack_1start_FUNC 607 -#define gtk_1tree_1view_1column_1set_1alignment_FUNC 608 -#define gtk_1tree_1view_1column_1set_1cell_1data_1func_FUNC 609 -#define gtk_1tree_1view_1column_1set_1clickable_FUNC 610 -#define gtk_1tree_1view_1column_1set_1fixed_1width_FUNC 611 -#define gtk_1tree_1view_1column_1set_1resizable_FUNC 612 -#define gtk_1tree_1view_1column_1set_1sizing_FUNC 613 -#define gtk_1tree_1view_1column_1set_1title_FUNC 614 -#define gtk_1tree_1view_1column_1set_1visible_FUNC 615 -#define gtk_1tree_1view_1column_1set_1widget_FUNC 616 -#define gtk_1tree_1view_1expand_1row_FUNC 617 -#define gtk_1tree_1view_1get_1bin_1window_FUNC 618 -#define gtk_1tree_1view_1get_1cell_1area_FUNC 619 -#define gtk_1tree_1view_1get_1column_FUNC 620 -#define gtk_1tree_1view_1get_1cursor_FUNC 621 -#define gtk_1tree_1view_1get_1expander_1column_FUNC 622 -#define gtk_1tree_1view_1get_1headers_1visible_FUNC 623 -#define gtk_1tree_1view_1get_1path_1at_1pos_FUNC 624 -#define gtk_1tree_1view_1get_1rules_1hint_FUNC 625 -#define gtk_1tree_1view_1get_1selection_FUNC 626 -#define gtk_1tree_1view_1get_1visible_1rect_FUNC 627 -#define gtk_1tree_1view_1insert_1column_FUNC 628 -#define gtk_1tree_1view_1new_1with_1model_FUNC 629 -#define gtk_1tree_1view_1remove_1column_FUNC 630 -#define gtk_1tree_1view_1row_1expanded_FUNC 631 -#define gtk_1tree_1view_1scroll_1to_1cell_FUNC 632 -#define gtk_1tree_1view_1scroll_1to_1point_FUNC 633 -#define gtk_1tree_1view_1set_1cursor_FUNC 634 -#define gtk_1tree_1view_1set_1drag_1dest_1row_FUNC 635 -#define gtk_1tree_1view_1set_1headers_1visible_FUNC 636 -#define gtk_1tree_1view_1set_1model_FUNC 637 -#define gtk_1tree_1view_1set_1rules_1hint_FUNC 638 -#define gtk_1tree_1view_1tree_1to_1widget_1coords_FUNC 639 -#define gtk_1tree_1view_1unset_1rows_1drag_1dest_FUNC 640 -#define gtk_1tree_1view_1widget_1to_1tree_1coords_FUNC 641 -#define gtk_1vbox_1new_FUNC 642 -#define gtk_1vscale_1new_FUNC 643 -#define gtk_1vscrollbar_1new_FUNC 644 -#define gtk_1vseparator_1new_FUNC 645 -#define gtk_1widget_1add_1accelerator_FUNC 646 -#define gtk_1widget_1add_1events_FUNC 647 -#define gtk_1widget_1child_1focus_FUNC 648 -#define gtk_1widget_1create_1pango_1layout__II_FUNC 649 -#define gtk_1widget_1create_1pango_1layout__I_3B_FUNC 650 -#define gtk_1widget_1destroy_FUNC 651 -#define gtk_1widget_1event_FUNC 652 -#define gtk_1widget_1get_1default_1direction_FUNC 653 -#define gtk_1widget_1get_1default_1style_FUNC 654 -#define gtk_1widget_1get_1direction_FUNC 655 -#define gtk_1widget_1get_1modifier_1style_FUNC 656 -#define gtk_1widget_1get_1pango_1context_FUNC 657 -#define gtk_1widget_1get_1parent_FUNC 658 -#define gtk_1widget_1get_1style_FUNC 659 -#define gtk_1widget_1grab_1focus_FUNC 660 -#define gtk_1widget_1hide_FUNC 661 -#define gtk_1widget_1is_1focus_FUNC 662 -#define gtk_1widget_1mnemonic_1activate_FUNC 663 -#define gtk_1widget_1modify_1base_FUNC 664 -#define gtk_1widget_1modify_1bg_FUNC 665 -#define gtk_1widget_1modify_1fg_FUNC 666 -#define gtk_1widget_1modify_1font_FUNC 667 -#define gtk_1widget_1modify_1style_FUNC 668 -#define gtk_1widget_1modify_1text_FUNC 669 -#define gtk_1widget_1realize_FUNC 670 -#define gtk_1widget_1remove_1accelerator_FUNC 671 -#define gtk_1widget_1reparent_FUNC 672 -#define gtk_1widget_1set_1default_1direction_FUNC 673 -#define gtk_1widget_1set_1direction_FUNC 674 -#define gtk_1widget_1set_1double_1buffered_FUNC 675 -#define gtk_1widget_1set_1name_FUNC 676 -#define gtk_1widget_1set_1redraw_1on_1allocate_FUNC 677 -#define gtk_1widget_1set_1sensitive_FUNC 678 -#define gtk_1widget_1set_1size_1request_FUNC 679 -#define gtk_1widget_1set_1state_FUNC 680 -#define gtk_1widget_1shape_1combine_1mask_FUNC 681 -#define gtk_1widget_1show_FUNC 682 -#define gtk_1widget_1show_1now_FUNC 683 -#define gtk_1widget_1size_1allocate_FUNC 684 -#define gtk_1widget_1size_1request_FUNC 685 -#define gtk_1widget_1style_1get_FUNC 686 -#define gtk_1widget_1unrealize_FUNC 687 -#define gtk_1window_1activate_1default_FUNC 688 -#define gtk_1window_1add_1accel_1group_FUNC 689 -#define gtk_1window_1deiconify_FUNC 690 -#define gtk_1window_1get_1focus_FUNC 691 -#define gtk_1window_1get_1mnemonic_1modifier_FUNC 692 -#define gtk_1window_1get_1position_FUNC 693 -#define gtk_1window_1get_1size_FUNC 694 -#define gtk_1window_1iconify_FUNC 695 -#define gtk_1window_1maximize_FUNC 696 -#define gtk_1window_1move_FUNC 697 -#define gtk_1window_1new_FUNC 698 -#define gtk_1window_1present_FUNC 699 -#define gtk_1window_1remove_1accel_1group_FUNC 700 -#define gtk_1window_1resize_FUNC 701 -#define gtk_1window_1set_1default_FUNC 702 -#define gtk_1window_1set_1destroy_1with_1parent_FUNC 703 -#define gtk_1window_1set_1modal_FUNC 704 -#define gtk_1window_1set_1resizable_FUNC 705 -#define gtk_1window_1set_1title_FUNC 706 -#define gtk_1window_1set_1transient_1for_FUNC 707 -#define gtk_1window_1set_1type_1hint_FUNC 708 -#define gtk_1window_1unmaximize_FUNC 709 -#define memmove__ILorg_eclipse_swt_internal_gtk_GdkEventButton_2I_FUNC 710 -#define memmove__ILorg_eclipse_swt_internal_gtk_GtkAdjustment_2_FUNC 711 -#define memmove__ILorg_eclipse_swt_internal_gtk_GtkFixed_2_FUNC 712 -#define memmove__ILorg_eclipse_swt_internal_gtk_GtkTargetEntry_2I_FUNC 713 -#define memmove__ILorg_eclipse_swt_internal_gtk_PangoAttribute_2I_FUNC 714 -#define memmove__ILorg_eclipse_swt_internal_gtk_XClientMessageEvent_2I_FUNC 715 -#define memmove__I_3BI_FUNC 716 -#define memmove__I_3II_FUNC 717 -#define memmove__Lorg_eclipse_swt_internal_gtk_GdkColor_2II_FUNC 718 -#define memmove__Lorg_eclipse_swt_internal_gtk_GdkDragContext_2II_FUNC 719 -#define memmove__Lorg_eclipse_swt_internal_gtk_GdkEventButton_2II_FUNC 720 -#define memmove__Lorg_eclipse_swt_internal_gtk_GdkEventCrossing_2II_FUNC 721 -#define memmove__Lorg_eclipse_swt_internal_gtk_GdkEventExpose_2II_FUNC 722 -#define memmove__Lorg_eclipse_swt_internal_gtk_GdkEventFocus_2II_FUNC 723 -#define memmove__Lorg_eclipse_swt_internal_gtk_GdkEventKey_2II_FUNC 724 -#define memmove__Lorg_eclipse_swt_internal_gtk_GdkEventWindowState_2II_FUNC 725 -#define memmove__Lorg_eclipse_swt_internal_gtk_GdkEvent_2II_FUNC 726 -#define memmove__Lorg_eclipse_swt_internal_gtk_GdkImage_2I_FUNC 727 -#define memmove__Lorg_eclipse_swt_internal_gtk_GdkRectangle_2II_FUNC 728 -#define memmove__Lorg_eclipse_swt_internal_gtk_GdkVisual_2I_FUNC 729 -#define memmove__Lorg_eclipse_swt_internal_gtk_GtkAdjustment_2I_FUNC 730 -#define memmove__Lorg_eclipse_swt_internal_gtk_GtkColorSelectionDialog_2I_FUNC 731 -#define memmove__Lorg_eclipse_swt_internal_gtk_GtkCombo_2I_FUNC 732 -#define memmove__Lorg_eclipse_swt_internal_gtk_GtkFileSelection_2I_FUNC 733 -#define memmove__Lorg_eclipse_swt_internal_gtk_GtkFixed_2I_FUNC 734 -#define memmove__Lorg_eclipse_swt_internal_gtk_GtkSelectionData_2II_FUNC 735 -#define memmove__Lorg_eclipse_swt_internal_gtk_GtkTargetPair_2II_FUNC 736 -#define memmove__Lorg_eclipse_swt_internal_gtk_PangoAttribute_2II_FUNC 737 -#define memmove__Lorg_eclipse_swt_internal_gtk_PangoItem_2II_FUNC 738 -#define memmove__Lorg_eclipse_swt_internal_gtk_PangoLayoutLine_2II_FUNC 739 -#define memmove__Lorg_eclipse_swt_internal_gtk_PangoLayoutRun_2II_FUNC 740 -#define memmove__Lorg_eclipse_swt_internal_gtk_PangoLogAttr_2II_FUNC 741 -#define memmove__Lorg_eclipse_swt_internal_gtk_XExposeEvent_2II_FUNC 742 -#define memmove___3BII_FUNC 743 -#define memmove___3CII_FUNC 744 -#define memmove___3III_FUNC 745 -#define memmove___3I_3BI_FUNC 746 -#define memmove___3JII_FUNC 747 -#define memset_FUNC 748 -#define pango_1attr_1background_1new_FUNC 749 -#define pango_1attr_1font_1desc_1new_FUNC 750 -#define pango_1attr_1foreground_1new_FUNC 751 -#define pango_1attr_1list_1change_FUNC 752 -#define pango_1attr_1list_1insert_FUNC 753 -#define pango_1attr_1list_1new_FUNC 754 -#define pango_1attr_1list_1unref_FUNC 755 -#define pango_1attr_1shape_1new_FUNC 756 -#define pango_1attr_1strikethrough_1new_FUNC 757 -#define pango_1attr_1underline_1new_FUNC 758 -#define pango_1attr_1weight_1new_FUNC 759 -#define pango_1context_1get_1base_1dir_FUNC 760 -#define pango_1context_1get_1language_FUNC 761 -#define pango_1context_1get_1metrics_FUNC 762 -#define pango_1context_1list_1families_FUNC 763 -#define pango_1context_1set_1base_1dir_FUNC 764 -#define pango_1context_1set_1language_FUNC 765 -#define pango_1font_1description_1copy_FUNC 766 -#define pango_1font_1description_1free_FUNC 767 -#define pango_1font_1description_1from_1string_FUNC 768 -#define pango_1font_1description_1get_1family_FUNC 769 -#define pango_1font_1description_1get_1size_FUNC 770 -#define pango_1font_1description_1get_1style_FUNC 771 -#define pango_1font_1description_1get_1weight_FUNC 772 -#define pango_1font_1description_1new_FUNC 773 -#define pango_1font_1description_1set_1family_FUNC 774 -#define pango_1font_1description_1set_1size_FUNC 775 -#define pango_1font_1description_1set_1stretch_FUNC 776 -#define pango_1font_1description_1set_1style_FUNC 777 -#define pango_1font_1description_1set_1weight_FUNC 778 -#define pango_1font_1description_1to_1string_FUNC 779 -#define pango_1font_1face_1describe_FUNC 780 -#define pango_1font_1family_1list_1faces_FUNC 781 -#define pango_1font_1get_1metrics_FUNC 782 -#define pango_1font_1metrics_1get_1approximate_1char_1width_FUNC 783 -#define pango_1font_1metrics_1get_1ascent_FUNC 784 -#define pango_1font_1metrics_1get_1descent_FUNC 785 -#define pango_1font_1metrics_1unref_FUNC 786 -#define pango_1language_1from_1string_FUNC 787 -#define pango_1layout_1context_1changed_FUNC 788 -#define pango_1layout_1get_1alignment_FUNC 789 -#define pango_1layout_1get_1attributes_FUNC 790 -#define pango_1layout_1get_1iter_FUNC 791 -#define pango_1layout_1get_1line_FUNC 792 -#define pango_1layout_1get_1line_1count_FUNC 793 -#define pango_1layout_1get_1log_1attrs_FUNC 794 -#define pango_1layout_1get_1size_FUNC 795 -#define pango_1layout_1get_1spacing_FUNC 796 -#define pango_1layout_1get_1tabs_FUNC 797 -#define pango_1layout_1get_1text_FUNC 798 -#define pango_1layout_1get_1width_FUNC 799 -#define pango_1layout_1index_1to_1pos_FUNC 800 -#define pango_1layout_1iter_1free_FUNC 801 -#define pango_1layout_1iter_1get_1index_FUNC 802 -#define pango_1layout_1iter_1get_1line_1extents_FUNC 803 -#define pango_1layout_1iter_1get_1run_FUNC 804 -#define pango_1layout_1iter_1next_1line_FUNC 805 -#define pango_1layout_1iter_1next_1run_FUNC 806 -#define pango_1layout_1line_1get_1extents_FUNC 807 -#define pango_1layout_1line_1x_1to_1index_FUNC 808 -#define pango_1layout_1new_FUNC 809 -#define pango_1layout_1set_1alignment_FUNC 810 -#define pango_1layout_1set_1attributes_FUNC 811 -#define pango_1layout_1set_1font_1description_FUNC 812 -#define pango_1layout_1set_1single_1paragraph_1mode_FUNC 813 -#define pango_1layout_1set_1spacing_FUNC 814 -#define pango_1layout_1set_1tabs_FUNC 815 -#define pango_1layout_1set_1text_FUNC 816 -#define pango_1layout_1set_1width_FUNC 817 -#define pango_1layout_1set_1wrap_FUNC 818 -#define pango_1layout_1xy_1to_1index_FUNC 819 -#define pango_1tab_1array_1free_FUNC 820 -#define pango_1tab_1array_1get_1size_FUNC 821 -#define pango_1tab_1array_1get_1tabs_FUNC 822 -#define pango_1tab_1array_1new_FUNC 823 -#define pango_1tab_1array_1set_1tab_FUNC 824 -#define strlen_FUNC 825 +#define gtk_1tree_1selection_1get_1selected_1rows_FUNC 577 +#define gtk_1tree_1selection_1path_1is_1selected_FUNC 578 +#define gtk_1tree_1selection_1select_1all_FUNC 579 +#define gtk_1tree_1selection_1select_1iter_FUNC 580 +#define gtk_1tree_1selection_1selected_1foreach_FUNC 581 +#define gtk_1tree_1selection_1set_1mode_FUNC 582 +#define gtk_1tree_1selection_1unselect_1all_FUNC 583 +#define gtk_1tree_1selection_1unselect_1iter_FUNC 584 +#define gtk_1tree_1store_1append_FUNC 585 +#define gtk_1tree_1store_1clear_FUNC 586 +#define gtk_1tree_1store_1insert_FUNC 587 +#define gtk_1tree_1store_1newv_FUNC 588 +#define gtk_1tree_1store_1remove_FUNC 589 +#define gtk_1tree_1store_1set__IIIII_FUNC 590 +#define gtk_1tree_1store_1set__IIIJI_FUNC 591 +#define gtk_1tree_1store_1set__IIILorg_eclipse_swt_internal_gtk_GdkColor_2I_FUNC 592 +#define gtk_1tree_1store_1set__IIIZI_FUNC 593 +#define gtk_1tree_1store_1set__III_3BI_FUNC 594 +#define gtk_1tree_1view_1collapse_1row_FUNC 595 +#define gtk_1tree_1view_1column_1add_1attribute_FUNC 596 +#define gtk_1tree_1view_1column_1cell_1get_1position_FUNC 597 +#define gtk_1tree_1view_1column_1cell_1get_1size_FUNC 598 +#define gtk_1tree_1view_1column_1cell_1set_1cell_1data_FUNC 599 +#define gtk_1tree_1view_1column_1clear_FUNC 600 +#define gtk_1tree_1view_1column_1get_1cell_1renderers_FUNC 601 +#define gtk_1tree_1view_1column_1get_1resizable_FUNC 602 +#define gtk_1tree_1view_1column_1get_1spacing_FUNC 603 +#define gtk_1tree_1view_1column_1get_1visible_FUNC 604 +#define gtk_1tree_1view_1column_1get_1width_FUNC 605 +#define gtk_1tree_1view_1column_1new_FUNC 606 +#define gtk_1tree_1view_1column_1pack_1end_FUNC 607 +#define gtk_1tree_1view_1column_1pack_1start_FUNC 608 +#define gtk_1tree_1view_1column_1set_1alignment_FUNC 609 +#define gtk_1tree_1view_1column_1set_1cell_1data_1func_FUNC 610 +#define gtk_1tree_1view_1column_1set_1clickable_FUNC 611 +#define gtk_1tree_1view_1column_1set_1fixed_1width_FUNC 612 +#define gtk_1tree_1view_1column_1set_1resizable_FUNC 613 +#define gtk_1tree_1view_1column_1set_1sizing_FUNC 614 +#define gtk_1tree_1view_1column_1set_1title_FUNC 615 +#define gtk_1tree_1view_1column_1set_1visible_FUNC 616 +#define gtk_1tree_1view_1column_1set_1widget_FUNC 617 +#define gtk_1tree_1view_1expand_1row_FUNC 618 +#define gtk_1tree_1view_1get_1bin_1window_FUNC 619 +#define gtk_1tree_1view_1get_1cell_1area_FUNC 620 +#define gtk_1tree_1view_1get_1column_FUNC 621 +#define gtk_1tree_1view_1get_1cursor_FUNC 622 +#define gtk_1tree_1view_1get_1expander_1column_FUNC 623 +#define gtk_1tree_1view_1get_1headers_1visible_FUNC 624 +#define gtk_1tree_1view_1get_1path_1at_1pos_FUNC 625 +#define gtk_1tree_1view_1get_1rules_1hint_FUNC 626 +#define gtk_1tree_1view_1get_1selection_FUNC 627 +#define gtk_1tree_1view_1get_1visible_1rect_FUNC 628 +#define gtk_1tree_1view_1insert_1column_FUNC 629 +#define gtk_1tree_1view_1new_1with_1model_FUNC 630 +#define gtk_1tree_1view_1remove_1column_FUNC 631 +#define gtk_1tree_1view_1row_1expanded_FUNC 632 +#define gtk_1tree_1view_1scroll_1to_1cell_FUNC 633 +#define gtk_1tree_1view_1scroll_1to_1point_FUNC 634 +#define gtk_1tree_1view_1set_1cursor_FUNC 635 +#define gtk_1tree_1view_1set_1drag_1dest_1row_FUNC 636 +#define gtk_1tree_1view_1set_1headers_1visible_FUNC 637 +#define gtk_1tree_1view_1set_1model_FUNC 638 +#define gtk_1tree_1view_1set_1rules_1hint_FUNC 639 +#define gtk_1tree_1view_1tree_1to_1widget_1coords_FUNC 640 +#define gtk_1tree_1view_1unset_1rows_1drag_1dest_FUNC 641 +#define gtk_1tree_1view_1widget_1to_1tree_1coords_FUNC 642 +#define gtk_1vbox_1new_FUNC 643 +#define gtk_1vscale_1new_FUNC 644 +#define gtk_1vscrollbar_1new_FUNC 645 +#define gtk_1vseparator_1new_FUNC 646 +#define gtk_1widget_1add_1accelerator_FUNC 647 +#define gtk_1widget_1add_1events_FUNC 648 +#define gtk_1widget_1child_1focus_FUNC 649 +#define gtk_1widget_1create_1pango_1layout__II_FUNC 650 +#define gtk_1widget_1create_1pango_1layout__I_3B_FUNC 651 +#define gtk_1widget_1destroy_FUNC 652 +#define gtk_1widget_1event_FUNC 653 +#define gtk_1widget_1get_1default_1direction_FUNC 654 +#define gtk_1widget_1get_1default_1style_FUNC 655 +#define gtk_1widget_1get_1direction_FUNC 656 +#define gtk_1widget_1get_1modifier_1style_FUNC 657 +#define gtk_1widget_1get_1pango_1context_FUNC 658 +#define gtk_1widget_1get_1parent_FUNC 659 +#define gtk_1widget_1get_1style_FUNC 660 +#define gtk_1widget_1grab_1focus_FUNC 661 +#define gtk_1widget_1hide_FUNC 662 +#define gtk_1widget_1is_1focus_FUNC 663 +#define gtk_1widget_1mnemonic_1activate_FUNC 664 +#define gtk_1widget_1modify_1base_FUNC 665 +#define gtk_1widget_1modify_1bg_FUNC 666 +#define gtk_1widget_1modify_1fg_FUNC 667 +#define gtk_1widget_1modify_1font_FUNC 668 +#define gtk_1widget_1modify_1style_FUNC 669 +#define gtk_1widget_1modify_1text_FUNC 670 +#define gtk_1widget_1realize_FUNC 671 +#define gtk_1widget_1remove_1accelerator_FUNC 672 +#define gtk_1widget_1reparent_FUNC 673 +#define gtk_1widget_1set_1default_1direction_FUNC 674 +#define gtk_1widget_1set_1direction_FUNC 675 +#define gtk_1widget_1set_1double_1buffered_FUNC 676 +#define gtk_1widget_1set_1name_FUNC 677 +#define gtk_1widget_1set_1redraw_1on_1allocate_FUNC 678 +#define gtk_1widget_1set_1sensitive_FUNC 679 +#define gtk_1widget_1set_1size_1request_FUNC 680 +#define gtk_1widget_1set_1state_FUNC 681 +#define gtk_1widget_1shape_1combine_1mask_FUNC 682 +#define gtk_1widget_1show_FUNC 683 +#define gtk_1widget_1show_1now_FUNC 684 +#define gtk_1widget_1size_1allocate_FUNC 685 +#define gtk_1widget_1size_1request_FUNC 686 +#define gtk_1widget_1style_1get_FUNC 687 +#define gtk_1widget_1unrealize_FUNC 688 +#define gtk_1window_1activate_1default_FUNC 689 +#define gtk_1window_1add_1accel_1group_FUNC 690 +#define gtk_1window_1deiconify_FUNC 691 +#define gtk_1window_1get_1focus_FUNC 692 +#define gtk_1window_1get_1mnemonic_1modifier_FUNC 693 +#define gtk_1window_1get_1position_FUNC 694 +#define gtk_1window_1get_1size_FUNC 695 +#define gtk_1window_1iconify_FUNC 696 +#define gtk_1window_1maximize_FUNC 697 +#define gtk_1window_1move_FUNC 698 +#define gtk_1window_1new_FUNC 699 +#define gtk_1window_1present_FUNC 700 +#define gtk_1window_1remove_1accel_1group_FUNC 701 +#define gtk_1window_1resize_FUNC 702 +#define gtk_1window_1set_1default_FUNC 703 +#define gtk_1window_1set_1destroy_1with_1parent_FUNC 704 +#define gtk_1window_1set_1modal_FUNC 705 +#define gtk_1window_1set_1resizable_FUNC 706 +#define gtk_1window_1set_1title_FUNC 707 +#define gtk_1window_1set_1transient_1for_FUNC 708 +#define gtk_1window_1set_1type_1hint_FUNC 709 +#define gtk_1window_1unmaximize_FUNC 710 +#define memmove__ILorg_eclipse_swt_internal_gtk_GdkEventButton_2I_FUNC 711 +#define memmove__ILorg_eclipse_swt_internal_gtk_GtkAdjustment_2_FUNC 712 +#define memmove__ILorg_eclipse_swt_internal_gtk_GtkFixed_2_FUNC 713 +#define memmove__ILorg_eclipse_swt_internal_gtk_GtkTargetEntry_2I_FUNC 714 +#define memmove__ILorg_eclipse_swt_internal_gtk_PangoAttribute_2I_FUNC 715 +#define memmove__ILorg_eclipse_swt_internal_gtk_XClientMessageEvent_2I_FUNC 716 +#define memmove__I_3BI_FUNC 717 +#define memmove__I_3II_FUNC 718 +#define memmove__Lorg_eclipse_swt_internal_gtk_GdkColor_2II_FUNC 719 +#define memmove__Lorg_eclipse_swt_internal_gtk_GdkDragContext_2II_FUNC 720 +#define memmove__Lorg_eclipse_swt_internal_gtk_GdkEventButton_2II_FUNC 721 +#define memmove__Lorg_eclipse_swt_internal_gtk_GdkEventCrossing_2II_FUNC 722 +#define memmove__Lorg_eclipse_swt_internal_gtk_GdkEventExpose_2II_FUNC 723 +#define memmove__Lorg_eclipse_swt_internal_gtk_GdkEventFocus_2II_FUNC 724 +#define memmove__Lorg_eclipse_swt_internal_gtk_GdkEventKey_2II_FUNC 725 +#define memmove__Lorg_eclipse_swt_internal_gtk_GdkEventWindowState_2II_FUNC 726 +#define memmove__Lorg_eclipse_swt_internal_gtk_GdkEvent_2II_FUNC 727 +#define memmove__Lorg_eclipse_swt_internal_gtk_GdkImage_2I_FUNC 728 +#define memmove__Lorg_eclipse_swt_internal_gtk_GdkRectangle_2II_FUNC 729 +#define memmove__Lorg_eclipse_swt_internal_gtk_GdkVisual_2I_FUNC 730 +#define memmove__Lorg_eclipse_swt_internal_gtk_GtkAdjustment_2I_FUNC 731 +#define memmove__Lorg_eclipse_swt_internal_gtk_GtkColorSelectionDialog_2I_FUNC 732 +#define memmove__Lorg_eclipse_swt_internal_gtk_GtkCombo_2I_FUNC 733 +#define memmove__Lorg_eclipse_swt_internal_gtk_GtkFileSelection_2I_FUNC 734 +#define memmove__Lorg_eclipse_swt_internal_gtk_GtkFixed_2I_FUNC 735 +#define memmove__Lorg_eclipse_swt_internal_gtk_GtkSelectionData_2II_FUNC 736 +#define memmove__Lorg_eclipse_swt_internal_gtk_GtkTargetPair_2II_FUNC 737 +#define memmove__Lorg_eclipse_swt_internal_gtk_PangoAttribute_2II_FUNC 738 +#define memmove__Lorg_eclipse_swt_internal_gtk_PangoItem_2II_FUNC 739 +#define memmove__Lorg_eclipse_swt_internal_gtk_PangoLayoutLine_2II_FUNC 740 +#define memmove__Lorg_eclipse_swt_internal_gtk_PangoLayoutRun_2II_FUNC 741 +#define memmove__Lorg_eclipse_swt_internal_gtk_PangoLogAttr_2II_FUNC 742 +#define memmove__Lorg_eclipse_swt_internal_gtk_XExposeEvent_2II_FUNC 743 +#define memmove___3BII_FUNC 744 +#define memmove___3CII_FUNC 745 +#define memmove___3III_FUNC 746 +#define memmove___3I_3BI_FUNC 747 +#define memmove___3JII_FUNC 748 +#define memset_FUNC 749 +#define pango_1attr_1background_1new_FUNC 750 +#define pango_1attr_1font_1desc_1new_FUNC 751 +#define pango_1attr_1foreground_1new_FUNC 752 +#define pango_1attr_1list_1change_FUNC 753 +#define pango_1attr_1list_1insert_FUNC 754 +#define pango_1attr_1list_1new_FUNC 755 +#define pango_1attr_1list_1unref_FUNC 756 +#define pango_1attr_1shape_1new_FUNC 757 +#define pango_1attr_1strikethrough_1new_FUNC 758 +#define pango_1attr_1underline_1new_FUNC 759 +#define pango_1attr_1weight_1new_FUNC 760 +#define pango_1context_1get_1base_1dir_FUNC 761 +#define pango_1context_1get_1language_FUNC 762 +#define pango_1context_1get_1metrics_FUNC 763 +#define pango_1context_1list_1families_FUNC 764 +#define pango_1context_1set_1base_1dir_FUNC 765 +#define pango_1context_1set_1language_FUNC 766 +#define pango_1font_1description_1copy_FUNC 767 +#define pango_1font_1description_1free_FUNC 768 +#define pango_1font_1description_1from_1string_FUNC 769 +#define pango_1font_1description_1get_1family_FUNC 770 +#define pango_1font_1description_1get_1size_FUNC 771 +#define pango_1font_1description_1get_1style_FUNC 772 +#define pango_1font_1description_1get_1weight_FUNC 773 +#define pango_1font_1description_1new_FUNC 774 +#define pango_1font_1description_1set_1family_FUNC 775 +#define pango_1font_1description_1set_1size_FUNC 776 +#define pango_1font_1description_1set_1stretch_FUNC 777 +#define pango_1font_1description_1set_1style_FUNC 778 +#define pango_1font_1description_1set_1weight_FUNC 779 +#define pango_1font_1description_1to_1string_FUNC 780 +#define pango_1font_1face_1describe_FUNC 781 +#define pango_1font_1family_1list_1faces_FUNC 782 +#define pango_1font_1get_1metrics_FUNC 783 +#define pango_1font_1metrics_1get_1approximate_1char_1width_FUNC 784 +#define pango_1font_1metrics_1get_1ascent_FUNC 785 +#define pango_1font_1metrics_1get_1descent_FUNC 786 +#define pango_1font_1metrics_1unref_FUNC 787 +#define pango_1language_1from_1string_FUNC 788 +#define pango_1layout_1context_1changed_FUNC 789 +#define pango_1layout_1get_1alignment_FUNC 790 +#define pango_1layout_1get_1attributes_FUNC 791 +#define pango_1layout_1get_1iter_FUNC 792 +#define pango_1layout_1get_1line_FUNC 793 +#define pango_1layout_1get_1line_1count_FUNC 794 +#define pango_1layout_1get_1log_1attrs_FUNC 795 +#define pango_1layout_1get_1size_FUNC 796 +#define pango_1layout_1get_1spacing_FUNC 797 +#define pango_1layout_1get_1tabs_FUNC 798 +#define pango_1layout_1get_1text_FUNC 799 +#define pango_1layout_1get_1width_FUNC 800 +#define pango_1layout_1index_1to_1pos_FUNC 801 +#define pango_1layout_1iter_1free_FUNC 802 +#define pango_1layout_1iter_1get_1index_FUNC 803 +#define pango_1layout_1iter_1get_1line_1extents_FUNC 804 +#define pango_1layout_1iter_1get_1run_FUNC 805 +#define pango_1layout_1iter_1next_1line_FUNC 806 +#define pango_1layout_1iter_1next_1run_FUNC 807 +#define pango_1layout_1line_1get_1extents_FUNC 808 +#define pango_1layout_1line_1x_1to_1index_FUNC 809 +#define pango_1layout_1new_FUNC 810 +#define pango_1layout_1set_1alignment_FUNC 811 +#define pango_1layout_1set_1attributes_FUNC 812 +#define pango_1layout_1set_1font_1description_FUNC 813 +#define pango_1layout_1set_1single_1paragraph_1mode_FUNC 814 +#define pango_1layout_1set_1spacing_FUNC 815 +#define pango_1layout_1set_1tabs_FUNC 816 +#define pango_1layout_1set_1text_FUNC 817 +#define pango_1layout_1set_1width_FUNC 818 +#define pango_1layout_1set_1wrap_FUNC 819 +#define pango_1layout_1xy_1to_1index_FUNC 820 +#define pango_1tab_1array_1free_FUNC 821 +#define pango_1tab_1array_1get_1size_FUNC 822 +#define pango_1tab_1array_1get_1tabs_FUNC 823 +#define pango_1tab_1array_1new_FUNC 824 +#define pango_1tab_1array_1set_1tab_FUNC 825 +#define strlen_FUNC 826 diff --git a/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/org/eclipse/swt/internal/gtk/OS.java b/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/org/eclipse/swt/internal/gtk/OS.java index 90ec86fa46..ac3e259fbd 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/org/eclipse/swt/internal/gtk/OS.java +++ b/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/org/eclipse/swt/internal/gtk/OS.java @@ -956,6 +956,7 @@ public static final synchronized native int /*long*/ gtk_tree_path_new_from_stri public static final synchronized native int /*long*/ gtk_tree_path_new_from_string(int /*long*/ path); public static final synchronized native boolean gtk_tree_path_up(int /*long*/ path); public static final synchronized native boolean gtk_tree_selection_get_selected(int /*long*/ selection, int /*long*/[] model, int /*long*/ iter); +public static final synchronized native int gtk_tree_selection_get_selected_rows(int /*long*/ selection, int /*long*/[] model); public static final synchronized native boolean gtk_tree_selection_path_is_selected(int /*long*/ selection, int /*long*/ path); public static final synchronized native void gtk_tree_selection_select_all(int /*long*/ selection); public static final synchronized native void gtk_tree_selection_select_iter(int /*long*/ selection, int /*long*/ iter); diff --git a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/FileDialog.java b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/FileDialog.java index 05075b3a77..75df73e1b0 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/FileDialog.java +++ b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/FileDialog.java @@ -83,6 +83,91 @@ public FileDialog (Shell parent, int style) { super (parent, style); checkSubclass (); } +String computeResult() { + GtkFileSelection selection = new GtkFileSelection (); + OS.memmove (selection, handle); + int /*long*/ entry = selection.selection_entry; + int /*long*/ entryText = OS.gtk_entry_get_text (entry); + int entryLength = OS.strlen (entryText); + if (entryLength == 0) { + int /*long*/ fileList = selection.file_list; + int /*long*/ listSelection = OS.gtk_tree_view_get_selection (fileList); + int /*long*/[] model = new int /*long*/[1]; + int /*long*/ selectedList = OS.gtk_tree_selection_get_selected_rows (listSelection, model); + if (selectedList == 0) return null; + int listLength = OS.g_list_length (selectedList); + if (listLength == 0) { + OS.g_list_free (selectedList); + return null; + } + int /*long*/ path = OS.g_list_nth_data (selectedList, 0); + int /*long*/ [] ptr = new int /*long*/[1]; + int /*long*/ iter = OS.g_malloc (OS.GtkTreeIter_sizeof ()); + if (OS.gtk_tree_model_get_iter (model [0], iter, path)) { + OS.gtk_tree_model_get (model [0], iter, 0, ptr, -1); + } + OS.g_free (iter); + for (int i = 0; i < listLength; i++) { + OS.gtk_tree_path_free (OS.g_list_nth_data (selectedList, i)); + } + OS.g_list_free (selectedList); + if (ptr [0] == 0) return null; + int length = OS.strlen (ptr [0]); + byte [] buffer = new byte [length]; + OS.memmove (buffer, ptr [0], length); + OS.g_free (ptr [0]); + OS.gtk_entry_set_text (entry, buffer); + } + + int /*long*/ fileNamePtr = OS.gtk_file_selection_get_filename (handle); + int /*long*/ utf8Ptr = OS.g_filename_to_utf8 (fileNamePtr, -1, null, null, null); + int /*long*/ [] items_written = new int /*long*/ [1]; + int /*long*/ utf16Ptr = OS.g_utf8_to_utf16 (utf8Ptr, -1, null, items_written, null); + entryLength = (int)/*64*/items_written [0]; + char [] buffer = new char [entryLength]; + OS.memmove (buffer, utf16Ptr, entryLength * 2); + String osAnswer = new String (buffer); + OS.g_free (utf16Ptr); + OS.g_free (utf8Ptr); + + if (osAnswer == null) return null; + int separatorIndex = osAnswer.lastIndexOf (SEPARATOR); + if (separatorIndex+1 == osAnswer.length ()) return null; + + String answer = fullPath = osAnswer; + fileName = fullPath.substring (separatorIndex+1); + filterPath = fullPath.substring (0, separatorIndex); + if ((style & SWT.MULTI) == 0) { + fileNames = new String[] {fileName}; + } else { + int /*long*/ namesPtr = OS.gtk_file_selection_get_selections (handle); + int /*long*/ namesPtr1 = namesPtr; + int /*long*/ [] namePtr = new int /*long*/ [1]; + OS.memmove (namePtr, namesPtr1, OS.PTR_SIZEOF); + int length = 0; + while (namePtr[0] != 0) { + length++; + namesPtr1+=OS.PTR_SIZEOF; + OS.memmove(namePtr, namesPtr1, OS.PTR_SIZEOF); + } + fileNames = new String [length]; + namePtr = new int /*long*/ [length]; + OS.memmove (namePtr, namesPtr, length * OS.PTR_SIZEOF); + for (int i = 0; i < length; i++) { + utf8Ptr = OS.g_filename_to_utf8 (namePtr [i], -1, null, null, null); + items_written = new int /*long*/ [1]; + utf16Ptr = OS.g_utf8_to_utf16 (utf8Ptr, -1, null, items_written, null); + buffer = new char [(int)/*64*/items_written [0]]; + OS.memmove (buffer, utf16Ptr, items_written [0] * 2); + String name = new String (buffer); + fileNames [i] = name.substring (name.lastIndexOf (SEPARATOR) + 1); + OS.g_free (utf16Ptr); + OS.g_free (utf8Ptr); + } + OS.g_strfreev (namesPtr); + } + return answer; +} /** * Returns the path of the first file that was * selected in the dialog relative to the filter path @@ -153,17 +238,7 @@ public String open () { preset (); int response = OS.gtk_dialog_run (handle); if (response == OS.GTK_RESPONSE_OK) { - int /*long*/ fileNamePtr = OS.gtk_file_selection_get_filename (handle); - int /*long*/ utf8Ptr = OS.g_filename_to_utf8 (fileNamePtr, -1, null, null, null); - int /*long*/ [] items_written = new int /*long*/ [1]; - int /*long*/ utf16Ptr = OS.g_utf8_to_utf16 (utf8Ptr, -1, null, items_written, null); - int length = (int)/*64*/items_written [0]; - char [] buffer = new char [length]; - OS.memmove (buffer, utf16Ptr, length * 2); - String osAnswer = new String (buffer); - OS.g_free (utf16Ptr); - OS.g_free (utf8Ptr); - answer = interpretOsAnswer (osAnswer); + answer = computeResult (); } OS.gtk_widget_destroy (handle); return answer; @@ -253,44 +328,4 @@ void preset() { fullPath = null; fileNames = new String [0]; } -String interpretOsAnswer(String osAnswer) { - if (osAnswer==null) return null; - int separatorIndex = osAnswer.lastIndexOf (SEPARATOR); - if (separatorIndex+1 == osAnswer.length ()) return null; - - String answer = fullPath = osAnswer; - fileName = fullPath.substring (separatorIndex+1); - filterPath = fullPath.substring (0, separatorIndex); - if ((style & SWT.MULTI) == 0) { - fileNames = new String[] {fileName}; - } else { - int /*long*/ namesPtr = OS.gtk_file_selection_get_selections (handle); - int /*long*/ namesPtr1 = namesPtr; - int /*long*/ [] namePtr = new int /*long*/ [1]; - OS.memmove (namePtr, namesPtr1, OS.PTR_SIZEOF); - int length = 0; - while (namePtr[0] != 0) { - length++; - namesPtr1+=OS.PTR_SIZEOF; - OS.memmove(namePtr, namesPtr1, OS.PTR_SIZEOF); - } - fileNames = new String [length]; - namePtr = new int /*long*/ [length]; - OS.memmove (namePtr, namesPtr, length * OS.PTR_SIZEOF); - for (int i = 0; i < length; i++) { - int /*long*/ utf8Ptr = OS.g_filename_to_utf8 (namePtr [i], -1, null, null, null); - int /*long*/ [] items_written = new int /*long*/ [1]; - int /*long*/ utf16Ptr = OS.g_utf8_to_utf16 (utf8Ptr, -1, null, items_written, null); - char[] buffer = new char [(int)/*64*/items_written [0]]; - OS.memmove (buffer, utf16Ptr, items_written [0] * 2); - String name = new String (buffer); - fileNames [i] = name.substring (name.lastIndexOf (SEPARATOR) + 1); - OS.g_free (utf16Ptr); - OS.g_free (utf8Ptr); - } - OS.g_strfreev (namesPtr); - } - return answer; -} - } |