/[classpath]/classpath/native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkFileDialogPeer.c
ViewVC logotype

Diff of /classpath/native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkFileDialogPeer.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.14 by mark, Sat Jul 31 22:14:04 2004 UTC revision 1.14.2.1 by gnu_andrew, Sat Jan 15 17:02:22 2005 UTC
# Line 84  Java_gnu_java_awt_peer_gtk_GtkFileDialog Line 84  Java_gnu_java_awt_peer_gtk_GtkFileDialog
84    NSA_SET_PTR (env, obj, widget);    NSA_SET_PTR (env, obj, widget);
85  }  }
86    
 JNIEXPORT void JNICALL  
 Java_gnu_java_awt_peer_gtk_GtkFileDialogPeer_connectJObject  
   (JNIEnv *env, jobject obj)  
 {  
   void *ptr = NSA_GET_PTR (env, obj);  
   
   gdk_threads_enter ();  
   
   gtk_widget_realize (GTK_WIDGET (ptr));  
   
   connect_awt_hook (env, obj, 1, GTK_WIDGET (ptr)->window);  
   
   gdk_threads_leave ();  
 }  
   
87  JNIEXPORT void JNICALL  JNIEXPORT void JNICALL
88  Java_gnu_java_awt_peer_gtk_GtkFileDialogPeer_connectSignals  Java_gnu_java_awt_peer_gtk_GtkFileDialogPeer_connectSignals
89    (JNIEnv *env, jobject obj)    (JNIEnv *env, jobject obj)
# Line 109  Java_gnu_java_awt_peer_gtk_GtkFileDialog Line 94  Java_gnu_java_awt_peer_gtk_GtkFileDialog
94    
95    gdk_threads_enter ();    gdk_threads_enter ();
96    
   gtk_widget_realize (GTK_WIDGET (ptr));  
   
97    g_signal_connect (G_OBJECT (GTK_DIALOG (ptr)),    g_signal_connect (G_OBJECT (GTK_DIALOG (ptr)),
98                      "response",                      "response",
99                      GTK_SIGNAL_FUNC (handle_response), *gref);                      GTK_SIGNAL_FUNC (handle_response), *gref);
# Line 144  Java_gnu_java_awt_peer_gtk_GtkFileDialog Line 127  Java_gnu_java_awt_peer_gtk_GtkFileDialog
127     This function extracts the filename from the GtkFileFilterInfo object,     This function extracts the filename from the GtkFileFilterInfo object,
128     and passes it to the Java method.  The Java method will call the filter's     and passes it to the Java method.  The Java method will call the filter's
129     accept() method and will give back the return value. */     accept() method and will give back the return value. */
130  gboolean filenameFilterCallback (const GtkFileFilterInfo *filter_info,  static gboolean filenameFilterCallback (const GtkFileFilterInfo *filter_info,
131                                   gpointer obj)                                          gpointer obj)
132  {  {
   gchar* dirname;  
133    jclass cx;    jclass cx;
134    jmethodID id;    jmethodID id;
135    jstring *filename;    jstring *filename;
# Line 168  gboolean filenameFilterCallback (const G Line 150  gboolean filenameFilterCallback (const G
150    
151  JNIEXPORT void JNICALL  JNIEXPORT void JNICALL
152  Java_gnu_java_awt_peer_gtk_GtkFileDialogPeer_nativeSetFilenameFilter  Java_gnu_java_awt_peer_gtk_GtkFileDialogPeer_nativeSetFilenameFilter
153      (JNIEnv *env, jobject obj, jobject filter_obj)      (JNIEnv *env, jobject obj, jobject filter_obj __attribute__((unused)))
154  {  {
155    void *ptr;    void *ptr;
156    GtkFileFilter *filter;    GtkFileFilter *filter;
# Line 178  Java_gnu_java_awt_peer_gtk_GtkFileDialog Line 160  Java_gnu_java_awt_peer_gtk_GtkFileDialog
160    gdk_threads_enter ();    gdk_threads_enter ();
161    
162    filter = gtk_file_filter_new();    filter = gtk_file_filter_new();
163    gtk_file_filter_add_custom(filter,    gtk_file_filter_add_custom(filter, GTK_FILE_FILTER_FILENAME,
164                               GTK_FILE_FILTER_FILENAME,                               filenameFilterCallback, obj, NULL);
                              G_CALLBACK(filenameFilterCallback),  
                              obj,  
                              NULL);  
165    
166    gtk_file_chooser_set_filter(GTK_FILE_CHOOSER(ptr), filter);    gtk_file_chooser_set_filter(GTK_FILE_CHOOSER(ptr), filter);
167    
# Line 237  handle_response (GtkDialog *dialog __att Line 216  handle_response (GtkDialog *dialog __att
216    static jmethodID disposeID;    static jmethodID disposeID;
217    void *ptr;    void *ptr;
218    G_CONST_RETURN gchar *fileName;    G_CONST_RETURN gchar *fileName;
219    jstring str_fileName;    jstring str_fileName = NULL;
220    
221    /* We only need this for the case when the user closed the window,    /* We only need this for the case when the user closed the window,
222       or clicked ok or cancel. */       or clicked ok or cancel. */
# Line 269  handle_response (GtkDialog *dialog __att Line 248  handle_response (GtkDialog *dialog __att
248    if (responseId == GTK_RESPONSE_OK) {    if (responseId == GTK_RESPONSE_OK) {
249      fileName = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (GTK_WIDGET (ptr)));      fileName = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (GTK_WIDGET (ptr)));
250      str_fileName = (*gdk_env)->NewStringUTF (gdk_env, fileName);      str_fileName = (*gdk_env)->NewStringUTF (gdk_env, fileName);
   } else if (responseId == GTK_RESPONSE_CANCEL) {  
     str_fileName = NULL;  
251    }    }
252    
253    if (!isIDSet)    if (!isIDSet)

Legend:
Removed from v.1.14  
changed lines
  Added in v.1.14.2.1

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26