135 |
jstring *filename; |
jstring *filename; |
136 |
gboolean accepted; |
gboolean accepted; |
137 |
|
|
138 |
cx = (*gdk_env)->GetObjectClass (gdk_env, (jobject) obj); |
cx = (*gdk_env())->GetObjectClass (gdk_env(), (jobject) obj); |
139 |
id = (*gdk_env)->GetMethodID (gdk_env, cx, "filenameFilterCallback", |
id = (*gdk_env())->GetMethodID (gdk_env(), cx, "filenameFilterCallback", |
140 |
"(Ljava/lang/String;)Z"); |
"(Ljava/lang/String;)Z"); |
141 |
|
|
142 |
filename = (*gdk_env)->NewStringUTF(gdk_env, filter_info->filename); |
filename = (*gdk_env())->NewStringUTF(gdk_env(), filter_info->filename); |
143 |
|
|
144 |
gdk_threads_leave(); |
gdk_threads_leave(); |
145 |
accepted = (*gdk_env)->CallBooleanMethod(gdk_env, obj, id, filename); |
accepted = (*gdk_env())->CallBooleanMethod(gdk_env(), obj, id, filename); |
146 |
gdk_threads_enter(); |
gdk_threads_enter(); |
147 |
|
|
148 |
return accepted; |
return accepted; |
225 |
&& responseId != GTK_RESPONSE_CANCEL) |
&& responseId != GTK_RESPONSE_CANCEL) |
226 |
return; |
return; |
227 |
|
|
228 |
ptr = NSA_GET_PTR (gdk_env, peer_obj); |
ptr = NSA_GET_PTR (gdk_env(), peer_obj); |
229 |
|
|
230 |
if (responseId == GTK_RESPONSE_DELETE_EVENT) |
if (responseId == GTK_RESPONSE_DELETE_EVENT) |
231 |
{ |
{ |
232 |
if (!isDisposeIDSet) |
if (!isDisposeIDSet) |
233 |
{ |
{ |
234 |
jclass cx = (*gdk_env)->GetObjectClass (gdk_env, peer_obj); |
jclass cx = (*gdk_env())->GetObjectClass (gdk_env(), peer_obj); |
235 |
disposeID = (*gdk_env)->GetMethodID (gdk_env, cx, "gtkDisposeFileDialog", "()V"); |
disposeID = (*gdk_env())->GetMethodID (gdk_env(), cx, "gtkDisposeFileDialog", "()V"); |
236 |
isDisposeIDSet = 1; |
isDisposeIDSet = 1; |
237 |
} |
} |
238 |
|
|
239 |
gdk_threads_leave (); |
gdk_threads_leave (); |
240 |
|
|
241 |
/* We can dispose of the dialog now (and unblock show) */ |
/* We can dispose of the dialog now (and unblock show) */ |
242 |
(*gdk_env)->CallVoidMethod (gdk_env, peer_obj, disposeID); |
(*gdk_env())->CallVoidMethod (gdk_env(), peer_obj, disposeID); |
243 |
|
|
244 |
gdk_threads_enter (); |
gdk_threads_enter (); |
245 |
return; |
return; |
247 |
|
|
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); |
251 |
} |
} |
252 |
|
|
253 |
if (!isIDSet) |
if (!isIDSet) |
254 |
{ |
{ |
255 |
jclass cx = (*gdk_env)->GetObjectClass (gdk_env, peer_obj); |
jclass cx = (*gdk_env())->GetObjectClass (gdk_env(), peer_obj); |
256 |
hideID = (*gdk_env)->GetMethodID (gdk_env, cx, "gtkHideFileDialog", "()V"); |
hideID = (*gdk_env())->GetMethodID (gdk_env(), cx, "gtkHideFileDialog", "()V"); |
257 |
gtkSetFilenameID = (*gdk_env)->GetMethodID (gdk_env, cx, |
gtkSetFilenameID = (*gdk_env())->GetMethodID (gdk_env(), cx, |
258 |
"gtkSetFilename", "(Ljava/lang/String;)V"); |
"gtkSetFilename", "(Ljava/lang/String;)V"); |
259 |
isIDSet = 1; |
isIDSet = 1; |
260 |
} |
} |
262 |
gdk_threads_leave (); |
gdk_threads_leave (); |
263 |
|
|
264 |
/* Set the Java object field 'file' with this value. */ |
/* Set the Java object field 'file' with this value. */ |
265 |
(*gdk_env)->CallVoidMethod (gdk_env, peer_obj, gtkSetFilenameID, str_fileName); |
(*gdk_env())->CallVoidMethod (gdk_env(), peer_obj, gtkSetFilenameID, str_fileName); |
266 |
|
|
267 |
/* We can hide the dialog now (and unblock show) */ |
/* We can hide the dialog now (and unblock show) */ |
268 |
(*gdk_env)->CallVoidMethod (gdk_env, peer_obj, hideID); |
(*gdk_env())->CallVoidMethod (gdk_env(), peer_obj, hideID); |
269 |
|
|
270 |
gdk_threads_enter (); |
gdk_threads_enter (); |
271 |
} |
} |