< prev index next >

src/java.desktop/unix/native/libawt_xawt/xawt/XlibWrapper.c

Print this page




 566                                (int *) jlong_to_ptr(major_in_out),
 567                                (int *) jlong_to_ptr(minor_in_out));
 568     return status ? JNI_TRUE : JNI_FALSE;
 569 }
 570 JNIEXPORT jboolean JNICALL Java_sun_awt_X11_XlibWrapper_XkbLibraryVersion
 571 (JNIEnv *env, jclass clazz, jlong lib_major_in_out, jlong lib_minor_in_out)
 572 {
 573     Bool status;
 574     AWT_CHECK_HAVE_LOCK_RETURN(JNI_FALSE);
 575     *((int *)jlong_to_ptr(lib_major_in_out)) =  XkbMajorVersion;
 576     *((int *)jlong_to_ptr(lib_minor_in_out)) =  XkbMinorVersion;
 577     status = XkbLibraryVersion((int *)jlong_to_ptr(lib_major_in_out),
 578                                (int *)jlong_to_ptr(lib_minor_in_out));
 579     return status ? JNI_TRUE : JNI_FALSE;
 580 }
 581 
 582 JNIEXPORT jlong JNICALL Java_sun_awt_X11_XlibWrapper_XkbGetMap
 583 (JNIEnv *env, jclass clazz, jlong display, jlong which, jlong device_spec)
 584 {
 585     AWT_CHECK_HAVE_LOCK_RETURN(0);
 586     return (jlong) XkbGetMap( (Display *) jlong_to_ptr(display),
 587                               (unsigned int) which,
 588                               (unsigned int) device_spec);
 589 }
 590 JNIEXPORT jlong JNICALL Java_sun_awt_X11_XlibWrapper_XkbGetUpdatedMap
 591 (JNIEnv *env, jclass clazz, jlong display, jlong which, jlong xkb)
 592 {
 593     AWT_CHECK_HAVE_LOCK_RETURN(0);
 594     return (jlong) XkbGetUpdatedMap( (Display *) jlong_to_ptr(display),
 595                               (unsigned int) which,
 596                               (XkbDescPtr) jlong_to_ptr(xkb));
 597 }
 598 JNIEXPORT void JNICALL Java_sun_awt_X11_XlibWrapper_XkbFreeKeyboard
 599 (JNIEnv *env, jclass clazz, jlong xkb, jlong which, jboolean free_all)
 600 {
 601     AWT_CHECK_HAVE_LOCK();
 602     XkbFreeKeyboard(jlong_to_ptr(xkb), (unsigned int)which, free_all);
 603 }
 604 JNIEXPORT jboolean JNICALL Java_sun_awt_X11_XlibWrapper_XkbTranslateKeyCode
 605 (JNIEnv *env, jclass clazz, jlong xkb, jint keycode, jlong mods, jlong mods_rtrn, jlong keysym_rtrn)
 606 {
 607     AWT_CHECK_HAVE_LOCK_RETURN(JNI_FALSE);
 608     Bool b;
 609     b = XkbTranslateKeyCode((XkbDescPtr)xkb, (unsigned int)keycode, (unsigned int)mods,
 610                               (unsigned int *)jlong_to_ptr(mods_rtrn),
 611                                (KeySym *)jlong_to_ptr(keysym_rtrn));
 612     //printf("native,  input: keycode:0x%0X; mods:0x%0X\n", keycode, mods);
 613     //printf("native, output:  keysym:0x%0X; mods:0x%0X\n",
 614     //       *(unsigned int *)jlong_to_ptr(keysym_rtrn),
 615     //       *(unsigned int *)jlong_to_ptr(mods_rtrn));
 616     return b ? JNI_TRUE : JNI_FALSE;
 617 }
 618 JNIEXPORT void JNICALL Java_sun_awt_X11_XlibWrapper_XkbSetDetectableAutoRepeat
 619 (JNIEnv *env, jclass clazz, jlong display, jboolean detectable)
 620 {
 621     AWT_CHECK_HAVE_LOCK();
 622     XkbSetDetectableAutoRepeat((Display *) jlong_to_ptr(display), detectable, NULL);
 623 }
 624 /*
 625  * Class:     sun_awt_X11_XlibWrapper
 626  * Method:    XNextEvent
 627  * Signature: (JJ)V
 628  */
 629 


2204     jboolean isCopy = JNI_FALSE;
2205     jint * ints = (*env)->GetIntArrayElements(env, array, &isCopy);
2206     memcpy(jlong_to_ptr(dest), ints, size);
2207     if (isCopy) {
2208         (*env)->ReleaseIntArrayElements(env, array, ints, JNI_ABORT);
2209     }
2210 }
2211 
2212 JNIEXPORT void JNICALL
2213 Java_sun_awt_X11_XlibWrapper_copyLongArray(JNIEnv *env,
2214                                            jclass clazz,
2215                                            jlong dest, jobject array, jint size) {
2216     jboolean isCopy = JNI_FALSE;
2217     jlong * longs = (*env)->GetLongArrayElements(env, array, &isCopy);
2218     memcpy(jlong_to_ptr(dest), longs, size);
2219     if (isCopy) {
2220         (*env)->ReleaseLongArrayElements(env, array, longs, JNI_ABORT);
2221     }
2222 }
2223 
2224 JNIEXPORT jint JNICALL
2225 Java_sun_awt_X11_XlibWrapper_XSynchronize(JNIEnv *env, jclass clazz, jlong display, jboolean onoff)
2226 {
2227     return (jint) XSynchronize((Display*)jlong_to_ptr(display), (onoff == JNI_TRUE ? True : False));
2228 }
2229 
2230 JNIEXPORT jboolean JNICALL
2231 Java_sun_awt_X11_XlibWrapper_XShapeQueryExtension
2232 (JNIEnv *env, jclass clazz, jlong display, jlong event_base_return, jlong error_base_return)
2233 {
2234     Bool status;
2235 
2236     AWT_CHECK_HAVE_LOCK_RETURN(JNI_FALSE);
2237 
2238     status = XShapeQueryExtension((Display *)jlong_to_ptr(display),
2239             (int *)jlong_to_ptr(event_base_return), (int *)jlong_to_ptr(error_base_return));
2240     return status ? JNI_TRUE : JNI_FALSE;
2241 }
2242 
2243 /*
2244  * Class:     XlibWrapper
2245  * Method:    SetRectangularShape
2246  */
2247 




 566                                (int *) jlong_to_ptr(major_in_out),
 567                                (int *) jlong_to_ptr(minor_in_out));
 568     return status ? JNI_TRUE : JNI_FALSE;
 569 }
 570 JNIEXPORT jboolean JNICALL Java_sun_awt_X11_XlibWrapper_XkbLibraryVersion
 571 (JNIEnv *env, jclass clazz, jlong lib_major_in_out, jlong lib_minor_in_out)
 572 {
 573     Bool status;
 574     AWT_CHECK_HAVE_LOCK_RETURN(JNI_FALSE);
 575     *((int *)jlong_to_ptr(lib_major_in_out)) =  XkbMajorVersion;
 576     *((int *)jlong_to_ptr(lib_minor_in_out)) =  XkbMinorVersion;
 577     status = XkbLibraryVersion((int *)jlong_to_ptr(lib_major_in_out),
 578                                (int *)jlong_to_ptr(lib_minor_in_out));
 579     return status ? JNI_TRUE : JNI_FALSE;
 580 }
 581 
 582 JNIEXPORT jlong JNICALL Java_sun_awt_X11_XlibWrapper_XkbGetMap
 583 (JNIEnv *env, jclass clazz, jlong display, jlong which, jlong device_spec)
 584 {
 585     AWT_CHECK_HAVE_LOCK_RETURN(0);
 586     return ptr_to_jlong(XkbGetMap( (Display *) jlong_to_ptr(display),
 587                               (unsigned int) which,
 588                               (unsigned int) device_spec));
 589 }
 590 JNIEXPORT jlong JNICALL Java_sun_awt_X11_XlibWrapper_XkbGetUpdatedMap
 591 (JNIEnv *env, jclass clazz, jlong display, jlong which, jlong xkb)
 592 {
 593     AWT_CHECK_HAVE_LOCK_RETURN(0);
 594     return (jlong) XkbGetUpdatedMap( (Display *) jlong_to_ptr(display),
 595                               (unsigned int) which,
 596                               (XkbDescPtr) jlong_to_ptr(xkb));
 597 }
 598 JNIEXPORT void JNICALL Java_sun_awt_X11_XlibWrapper_XkbFreeKeyboard
 599 (JNIEnv *env, jclass clazz, jlong xkb, jlong which, jboolean free_all)
 600 {
 601     AWT_CHECK_HAVE_LOCK();
 602     XkbFreeKeyboard(jlong_to_ptr(xkb), (unsigned int)which, free_all);
 603 }
 604 JNIEXPORT jboolean JNICALL Java_sun_awt_X11_XlibWrapper_XkbTranslateKeyCode
 605 (JNIEnv *env, jclass clazz, jlong xkb, jint keycode, jlong mods, jlong mods_rtrn, jlong keysym_rtrn)
 606 {
 607     AWT_CHECK_HAVE_LOCK_RETURN(JNI_FALSE);
 608     Bool b;
 609     b = XkbTranslateKeyCode((XkbDescPtr)jlong_to_ptr(xkb), (unsigned int)keycode, (unsigned int)mods,
 610                               (unsigned int *)jlong_to_ptr(mods_rtrn),
 611                                (KeySym *)jlong_to_ptr(keysym_rtrn));
 612     //printf("native,  input: keycode:0x%0X; mods:0x%0X\n", keycode, mods);
 613     //printf("native, output:  keysym:0x%0X; mods:0x%0X\n",
 614     //       *(unsigned int *)jlong_to_ptr(keysym_rtrn),
 615     //       *(unsigned int *)jlong_to_ptr(mods_rtrn));
 616     return b ? JNI_TRUE : JNI_FALSE;
 617 }
 618 JNIEXPORT void JNICALL Java_sun_awt_X11_XlibWrapper_XkbSetDetectableAutoRepeat
 619 (JNIEnv *env, jclass clazz, jlong display, jboolean detectable)
 620 {
 621     AWT_CHECK_HAVE_LOCK();
 622     XkbSetDetectableAutoRepeat((Display *) jlong_to_ptr(display), detectable, NULL);
 623 }
 624 /*
 625  * Class:     sun_awt_X11_XlibWrapper
 626  * Method:    XNextEvent
 627  * Signature: (JJ)V
 628  */
 629 


2204     jboolean isCopy = JNI_FALSE;
2205     jint * ints = (*env)->GetIntArrayElements(env, array, &isCopy);
2206     memcpy(jlong_to_ptr(dest), ints, size);
2207     if (isCopy) {
2208         (*env)->ReleaseIntArrayElements(env, array, ints, JNI_ABORT);
2209     }
2210 }
2211 
2212 JNIEXPORT void JNICALL
2213 Java_sun_awt_X11_XlibWrapper_copyLongArray(JNIEnv *env,
2214                                            jclass clazz,
2215                                            jlong dest, jobject array, jint size) {
2216     jboolean isCopy = JNI_FALSE;
2217     jlong * longs = (*env)->GetLongArrayElements(env, array, &isCopy);
2218     memcpy(jlong_to_ptr(dest), longs, size);
2219     if (isCopy) {
2220         (*env)->ReleaseLongArrayElements(env, array, longs, JNI_ABORT);
2221     }
2222 }
2223 
2224 JNIEXPORT jlong JNICALL
2225 Java_sun_awt_X11_XlibWrapper_XSynchronize(JNIEnv *env, jclass clazz, jlong display, jboolean onoff)
2226 {
2227     return ptr_to_jlong(XSynchronize((Display*)jlong_to_ptr(display), (onoff == JNI_TRUE ? True : False)));
2228 }
2229 
2230 JNIEXPORT jboolean JNICALL
2231 Java_sun_awt_X11_XlibWrapper_XShapeQueryExtension
2232 (JNIEnv *env, jclass clazz, jlong display, jlong event_base_return, jlong error_base_return)
2233 {
2234     Bool status;
2235 
2236     AWT_CHECK_HAVE_LOCK_RETURN(JNI_FALSE);
2237 
2238     status = XShapeQueryExtension((Display *)jlong_to_ptr(display),
2239             (int *)jlong_to_ptr(event_base_return), (int *)jlong_to_ptr(error_base_return));
2240     return status ? JNI_TRUE : JNI_FALSE;
2241 }
2242 
2243 /*
2244  * Class:     XlibWrapper
2245  * Method:    SetRectangularShape
2246  */
2247 


< prev index next >