src/macosx/native/sun/awt/CPrinterJob.m

Print this page




 367     [printingDictionary setObject:[NSNumber numberWithInteger:copies] forKey:NSPrintCopies];
 368 
 369     jboolean collated = JNFCallBooleanMethod(env, srcPrinterJob, jm_isCollated); // AWT_THREADING Safe (known object)
 370     [printingDictionary setObject:[NSNumber numberWithBool:collated ? YES : NO] forKey:NSPrintMustCollate];
 371 
 372     jint jNumPages = JNFCallIntMethod(env, srcPageable, jm_getNumberOfPages); // AWT_THREADING Safe (!appKit)
 373     if (jNumPages != java_awt_print_Pageable_UNKNOWN_NUMBER_OF_PAGES)
 374     {
 375         [printingDictionary setObject:[NSNumber numberWithBool:NO] forKey:NSPrintAllPages];
 376 
 377         [printingDictionary setObject:[NSNumber numberWithInteger:1] forKey:NSPrintFirstPage];
 378         [printingDictionary setObject:[NSNumber numberWithInteger:jNumPages] forKey:NSPrintLastPage];
 379     }
 380     else
 381     {
 382         [printingDictionary setObject:[NSNumber numberWithBool:YES] forKey:NSPrintAllPages];
 383     }
 384 }
 385 
 386 /*
 387  * Class:     sun_lwawt_macosx_EventDispatchAccess
 388  * Method:    pumpEventsAndWait
 389  * Signature: ()V
 390  */
 391 JNIEXPORT void JNICALL Java_sun_lwawt_macosx_EventDispatchAccess_pumpEventsAndWait
 392 (JNIEnv *env, jobject eda)
 393 {
 394     static JNF_CLASS_CACHE(jc_Thread, "java/lang/Thread");
 395     static JNF_STATIC_MEMBER_CACHE(jm_currentThread, jc_Thread, "currentThread", "()Ljava/lang/Thread;");
 396     static JNF_CLASS_CACHE(jc_EventDispatchThread, "java/awt/EventDispatchThread");
 397     static JNF_MEMBER_CACHE(jm_macosxGetConditional, jc_EventDispatchThread, "_macosxGetConditional", "(Ljava/lang/Object;)Ljava/awt/Conditional;");
 398     static JNF_MEMBER_CACHE(jm_pumpEvents, jc_EventDispatchThread, "pumpEvents", "(Ljava/awt/Conditional;)V");
 399 
 400 JNF_COCOA_DURING(env);
 401 
 402     jobject thread = JNFCallStaticObjectMethod(env, jm_currentThread);
 403     jobject conditional = JNFCallObjectMethod(env, thread, jm_macosxGetConditional, eda);
 404     if (conditional != NULL) {
 405         JNFCallVoidMethod(env, thread, jm_pumpEvents, conditional);
 406     }
 407 
 408 JNF_COCOA_HANDLE(env);
 409 }
 410 
 411 /*
 412  * Class:     sun_lwawt_macosx_CPrinterJob
 413  * Method:    abortDoc
 414  * Signature: ()V
 415  */
 416 JNIEXPORT void JNICALL Java_sun_lwawt_macosx_CPrinterJob_abortDoc
 417   (JNIEnv *env, jobject jthis)
 418 {
 419 JNF_COCOA_ENTER(env);
 420     // This is only called during the printLoop from the printLoop thread
 421     NSPrintOperation* printLoop = [NSPrintOperation currentOperation];
 422     NSPrintInfo* printInfo = [printLoop printInfo];
 423     [printInfo setJobDisposition:NSPrintCancelJob];
 424 JNF_COCOA_EXIT(env);
 425 }
 426 
 427 /*
 428  * Class:     sun_lwawt_macosx_CPrinterJob
 429  * Method:    getDefaultPage
 430  * Signature: (Ljava/awt/print/PageFormat;)V
 431  */




 367     [printingDictionary setObject:[NSNumber numberWithInteger:copies] forKey:NSPrintCopies];
 368 
 369     jboolean collated = JNFCallBooleanMethod(env, srcPrinterJob, jm_isCollated); // AWT_THREADING Safe (known object)
 370     [printingDictionary setObject:[NSNumber numberWithBool:collated ? YES : NO] forKey:NSPrintMustCollate];
 371 
 372     jint jNumPages = JNFCallIntMethod(env, srcPageable, jm_getNumberOfPages); // AWT_THREADING Safe (!appKit)
 373     if (jNumPages != java_awt_print_Pageable_UNKNOWN_NUMBER_OF_PAGES)
 374     {
 375         [printingDictionary setObject:[NSNumber numberWithBool:NO] forKey:NSPrintAllPages];
 376 
 377         [printingDictionary setObject:[NSNumber numberWithInteger:1] forKey:NSPrintFirstPage];
 378         [printingDictionary setObject:[NSNumber numberWithInteger:jNumPages] forKey:NSPrintLastPage];
 379     }
 380     else
 381     {
 382         [printingDictionary setObject:[NSNumber numberWithBool:YES] forKey:NSPrintAllPages];
 383     }
 384 }
 385 
 386 /*

























 387  * Class:     sun_lwawt_macosx_CPrinterJob
 388  * Method:    abortDoc
 389  * Signature: ()V
 390  */
 391 JNIEXPORT void JNICALL Java_sun_lwawt_macosx_CPrinterJob_abortDoc
 392   (JNIEnv *env, jobject jthis)
 393 {
 394 JNF_COCOA_ENTER(env);
 395     // This is only called during the printLoop from the printLoop thread
 396     NSPrintOperation* printLoop = [NSPrintOperation currentOperation];
 397     NSPrintInfo* printInfo = [printLoop printInfo];
 398     [printInfo setJobDisposition:NSPrintCancelJob];
 399 JNF_COCOA_EXIT(env);
 400 }
 401 
 402 /*
 403  * Class:     sun_lwawt_macosx_CPrinterJob
 404  * Method:    getDefaultPage
 405  * Signature: (Ljava/awt/print/PageFormat;)V
 406  */