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

Print this page




  29 
  30 #import "AWTWindow.h"
  31 #import "LWCToolkit.h"
  32 #import "GeomUtilities.h"
  33 #import "ThreadUtilities.h"
  34 
  35 #import "sun_lwawt_macosx_CWrapper_NSWindow.h"
  36 
  37 /*
  38  * Class:     sun_lwawt_macosx_CWrapper$NSObject
  39  * Method:    release
  40  * Signature: (J)V
  41  */
  42 JNIEXPORT void JNICALL
  43 Java_sun_lwawt_macosx_CWrapper_00024NSObject_release
  44 (JNIEnv *env, jclass cls, jlong objectPtr)
  45 {
  46 JNF_COCOA_ENTER(env);
  47 
  48     id obj = (id)jlong_to_ptr(objectPtr);

  49     [JNFRunLoop performOnMainThreadWaiting:NO withBlock:^(){
  50         CFRelease(obj);
  51     }];

  52 
  53 JNF_COCOA_EXIT(env);
  54 }
  55 
  56 
  57 /*
  58  * Class:     sun_lwawt_macosx_CWrapper$NSWindow
  59  * Method:    makeKeyAndOrderFront
  60  * Signature: (J)V
  61  */
  62 JNIEXPORT void JNICALL
  63 Java_sun_lwawt_macosx_CWrapper_00024NSWindow_makeKeyAndOrderFront
  64 (JNIEnv *env, jclass cls, jlong windowPtr)
  65 {
  66 JNF_COCOA_ENTER(env);
  67 
  68     NSWindow *window = (NSWindow *)jlong_to_ptr(windowPtr);
  69     [JNFRunLoop performOnMainThread:@selector(makeKeyAndOrderFront:)
  70                                  on:window
  71                          withObject:nil




  29 
  30 #import "AWTWindow.h"
  31 #import "LWCToolkit.h"
  32 #import "GeomUtilities.h"
  33 #import "ThreadUtilities.h"
  34 
  35 #import "sun_lwawt_macosx_CWrapper_NSWindow.h"
  36 
  37 /*
  38  * Class:     sun_lwawt_macosx_CWrapper$NSObject
  39  * Method:    release
  40  * Signature: (J)V
  41  */
  42 JNIEXPORT void JNICALL
  43 Java_sun_lwawt_macosx_CWrapper_00024NSObject_release
  44 (JNIEnv *env, jclass cls, jlong objectPtr)
  45 {
  46 JNF_COCOA_ENTER(env);
  47 
  48     id obj = (id)jlong_to_ptr(objectPtr);
  49     if (obj != nil) {
  50         [JNFRunLoop performOnMainThreadWaiting:NO withBlock:^(){
  51             CFRelease(obj);
  52         }];
  53     }
  54 
  55 JNF_COCOA_EXIT(env);
  56 }
  57 
  58 
  59 /*
  60  * Class:     sun_lwawt_macosx_CWrapper$NSWindow
  61  * Method:    makeKeyAndOrderFront
  62  * Signature: (J)V
  63  */
  64 JNIEXPORT void JNICALL
  65 Java_sun_lwawt_macosx_CWrapper_00024NSWindow_makeKeyAndOrderFront
  66 (JNIEnv *env, jclass cls, jlong windowPtr)
  67 {
  68 JNF_COCOA_ENTER(env);
  69 
  70     NSWindow *window = (NSWindow *)jlong_to_ptr(windowPtr);
  71     [JNFRunLoop performOnMainThread:@selector(makeKeyAndOrderFront:)
  72                                  on:window
  73                          withObject:nil