src/windows/native/sun/windows/awt_Cursor.cpp

Print this page




 537 {
 538     TRY;
 539 
 540     if (env->EnsureLocalCapacity(1) < 0) {
 541         return NULL;
 542     }
 543 
 544     jobject globalRef = (jobject)AwtToolkit::GetInstance().
 545         InvokeFunction((void*(*)(void*))
 546                        AwtComponent::FindHeavyweightUnderCursor,
 547                        (void *)useCache);
 548     jobject localRef = env->NewLocalRef(globalRef);
 549     env->DeleteGlobalRef(globalRef);
 550     return localRef;
 551 
 552     CATCH_BAD_ALLOC_RET(NULL);
 553 }
 554 
 555 /*
 556  * Class:     sun_awt_windows_WGlobalCursorManager
 557  * Method:    findComponentAt
 558  * Signature: (L/java/awt/Container;II)L/java/awt/Component
 559  */
 560 JNIEXPORT jobject JNICALL
 561 Java_sun_awt_windows_WGlobalCursorManager_findComponentAt(
 562     JNIEnv *env, jobject, jobject container, jint x, jint y)
 563 {
 564     TRY;
 565 
 566     /*
 567      * Call private version of Container.findComponentAt with the following
 568      * flag set -- ignoreEnabled = false (i.e., don't return or recur into
 569      * disabled Components);
 570      * NOTE: it may return a JRootPane's glass pane as the target Component
 571      */
 572     JNI_CHECK_NULL_RETURN_NULL(container, "null container");
 573     jobject comp =
 574         env->CallObjectMethod(container, AwtContainer::findComponentAtMID,
 575                               x, y, JNI_FALSE);
 576     return comp;
 577 
 578     CATCH_BAD_ALLOC_RET(NULL);
 579 }
 580 
 581 /*
 582  * Class:     sun_awt_windows_WGlobalCursorManager
 583  * Method:    getLocationOnScreen
 584  * Signature: (L/java/awt/Component;)L/java/awt/Point
 585  */
 586 JNIEXPORT jobject JNICALL
 587 Java_sun_awt_windows_WGlobalCursorManager_getLocationOnScreen(
 588     JNIEnv *env, jobject, jobject component)
 589 {
 590     TRY;
 591 
 592     JNI_CHECK_NULL_RETURN_NULL(component, "null component");
 593     jobject point =
 594         env->CallObjectMethod(component, AwtComponent::getLocationOnScreenMID);
 595     return point;
 596 
 597     CATCH_BAD_ALLOC_RET(NULL);
 598 }
 599 
 600 } /* extern "C" */


 537 {
 538     TRY;
 539 
 540     if (env->EnsureLocalCapacity(1) < 0) {
 541         return NULL;
 542     }
 543 
 544     jobject globalRef = (jobject)AwtToolkit::GetInstance().
 545         InvokeFunction((void*(*)(void*))
 546                        AwtComponent::FindHeavyweightUnderCursor,
 547                        (void *)useCache);
 548     jobject localRef = env->NewLocalRef(globalRef);
 549     env->DeleteGlobalRef(globalRef);
 550     return localRef;
 551 
 552     CATCH_BAD_ALLOC_RET(NULL);
 553 }
 554 
 555 /*
 556  * Class:     sun_awt_windows_WGlobalCursorManager


























 557  * Method:    getLocationOnScreen
 558  * Signature: (L/java/awt/Component;)L/java/awt/Point
 559  */
 560 JNIEXPORT jobject JNICALL
 561 Java_sun_awt_windows_WGlobalCursorManager_getLocationOnScreen(
 562     JNIEnv *env, jobject, jobject component)
 563 {
 564     TRY;
 565 
 566     JNI_CHECK_NULL_RETURN_NULL(component, "null component");
 567     jobject point =
 568         env->CallObjectMethod(component, AwtComponent::getLocationOnScreenMID);
 569     return point;
 570 
 571     CATCH_BAD_ALLOC_RET(NULL);
 572 }
 573 
 574 } /* extern "C" */