diff options
author | Silenio Quarti | 2001-09-04 15:54:11 +0000 |
---|---|---|
committer | Silenio Quarti | 2001-09-04 15:54:11 +0000 |
commit | 4510458698a44cfe0ebb614544242955fbc20f7a (patch) | |
tree | 3abf251ed2feead5995d917b6ddd72b6cf400d4b /bundles/org.eclipse.swt/Eclipse SWT/motif/library/swt.c | |
parent | a2b9bca1b2547b13d86917552eeb3b52c207b9e4 (diff) | |
download | eclipse.platform.swt-4510458698a44cfe0ebb614544242955fbc20f7a.tar.gz eclipse.platform.swt-4510458698a44cfe0ebb614544242955fbc20f7a.tar.xz eclipse.platform.swt-4510458698a44cfe0ebb614544242955fbc20f7a.zip |
ssq -codepage work
Diffstat (limited to 'bundles/org.eclipse.swt/Eclipse SWT/motif/library/swt.c')
-rwxr-xr-x | bundles/org.eclipse.swt/Eclipse SWT/motif/library/swt.c | 492 |
1 files changed, 489 insertions, 3 deletions
diff --git a/bundles/org.eclipse.swt/Eclipse SWT/motif/library/swt.c b/bundles/org.eclipse.swt/Eclipse SWT/motif/library/swt.c index 3caada3798..feab06591d 100755 --- a/bundles/org.eclipse.swt/Eclipse SWT/motif/library/swt.c +++ b/bundles/org.eclipse.swt/Eclipse SWT/motif/library/swt.c @@ -15,6 +15,9 @@ #include <stdio.h> #include <assert.h> +#include <langinfo.h> +#include <iconv.h> +#include <stdlib.h> JNIEXPORT int JNICALL Java_org_eclipse_swt_internal_motif_OS_getSharedLibraryMajorVersionNumber (JNIEnv *env, jclass that) @@ -5315,8 +5318,9 @@ JNIEXPORT jboolean JNICALL Java_org_eclipse_swt_internal_motif_OS_XmWidgetGetDis * Method: XmbLookupString * Signature: (ILorg/eclipse/swt/internal/motif/XInputEvent;[BI[I[I)I */ +/* JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_motif_OS_XmbLookupString - (JNIEnv *env, jclass that, jint widget, jobject event, jbyteArray string, jint size, jintArray keysym, jintArray status) + (JNIEnv *env, jclass that, jint ic, jobject event, jbyteArray string, jint size, jintArray keysym, jintArray status) { DECL_GLOB(pGlob) XEvent xEvent, *lpxEvent=NULL; @@ -5339,11 +5343,11 @@ JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_motif_OS_XmbLookupString if (status) status1 = (*env)->GetIntArrayElements(env, status, NULL); - rc = (jint)XmImMbLookupString((Widget)widget, (XKeyPressedEvent *)lpxEvent, (char *)string1, size, (KeySym *)keysym1, (int *)status1); + rc = (jint)XmbLookupString((XIC)ic, (XKeyPressedEvent *)lpxEvent, (char *)string1, size, (KeySym *)keysym1, (int *)status1); #ifdef PRINT_FAILED_RCODES if (rc == 0) - fprintf(stderr, "XmImMbLookupString: call failed rc = %d\n", rc); + fprintf(stderr, "XmbLookupString: call failed rc = %d\n", rc); #endif if (event) { @@ -5357,6 +5361,7 @@ JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_motif_OS_XmbLookupString (*env)->ReleaseIntArrayElements(env, status, status1, 0); return rc; } +*/ /* * Class: org_eclipse_swt_internal_motif_OS @@ -8134,3 +8139,484 @@ JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_motif_OS_XtRemoveInput XtRemoveInput((XtInputId)id); } + +/* + * Class: org_eclipse_swt_internal_motif_OS + * Method: XmImGetXIC + * Signature: (II[II)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_motif_OS_XmImGetXIC + (JNIEnv *env, jclass that, jint widget, jint input_policy, jintArray args, jint num_args) +{ + jint *args1=NULL; + jint rc; +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "XmImGetXIC\n"); +#endif + if (args) + args1 = (*env)->GetIntArrayElements(env, args, NULL); + rc = (jint) XmImGetXIC((Widget)widget, (XmInputPolicy)input_policy, (ArgList)args1, num_args); + if (args) + (*env)->ReleaseIntArrayElements(env, args, args1, 0); + + return rc; +} + +/* + * Class: org_eclipse_swt_internal_motif_OS + * Method: XmImGetXIM + * Signature: (I)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_motif_OS_XmImGetXIM + (JNIEnv *env, jclass that, jint widget) +{ +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "XmImGetXIM\n"); +#endif + + return (jint) XmImGetXIM((Widget)widget); +} + +/* + * Class: org_eclipse_swt_internal_motif_OS + * Method: XmImRegister + * Signature: (II)V + */ +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_motif_OS_XmImRegister + (JNIEnv *env, jclass that, jint widget, jint reserved) +{ +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "XmImRegister\n"); +#endif + + XmImRegister((Widget)widget, reserved); +} + +/* + * Class: org_eclipse_swt_internal_motif_OS + * Method: XmImSetFocusValues + * Signature: (I[II)V + */ +/* +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_motif_OS_XmImSetFocusValues + (JNIEnv *env, jclass that, jint widget, jintArray args, jint num_args) +{ + jint *args1=NULL; +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "XmImSetFocusValues\n"); +#endif + if (args) + args1 = (*env)->GetIntArrayElements(env, args, NULL); + XmImSetFocusValues((Widget)widget, (ArgList)args1, num_args); + if (args) + (*env)->ReleaseIntArrayElements(env, args, args1, 0); +} +*/ + +/* + * Class: org_eclipse_swt_internal_motif_OS + * Method: XmImVaSetFocusValues + * Signature: (IIIIIIIIII)I + */ +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_motif_OS_XmImVaSetFocusValues + (JNIEnv *env, jclass that, jint widget, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5, jint arg6, jint arg7, jint arg8, jint arg9) +{ +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "XmImVaSetFocusValues\n"); +#endif + XmImVaSetFocusValues((Widget)widget, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9); +} + +/* + * Class: org_eclipse_swt_internal_motif_OS + * Method: XmImSetValues + * Signature: (I[II)V + */ +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_motif_OS_XmImSetValues + (JNIEnv *env, jclass that, jint widget, jintArray args, jint num_args) +{ + jint *args1=NULL; +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "XmImSetValues\n"); +#endif + if (args) + args1 = (*env)->GetIntArrayElements(env, args, NULL); + XmImSetValues((Widget)widget, (ArgList)args1, num_args); + if (args) + (*env)->ReleaseIntArrayElements(env, args, args1, 0); +} + +/* + * Class: org_eclipse_swt_internal_motif_OS + * Method: XmImUnregister + * Signature: (I)V + */ +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_motif_OS_XmImUnregister + (JNIEnv *env, jclass that, jint widget) +{ +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "XmImUnregister\n"); +#endif + + XmImUnregister((Widget)widget); +} + +/* + * Class: org_eclipse_swt_internal_motif_OS + * Method: XmImUnsetFocus + * Signature: (I)V + */ +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_motif_OS_XmImUnsetFocus + (JNIEnv *env, jclass that, jint widget) +{ +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "XmImUnsetFocus\n"); +#endif + + XmImUnsetFocus((Widget)widget); +} + +/* + * Class: org_eclipse_swt_internal_motif_OS + * Method: XCreateIC + * Signature: (IIIIIIII)I + */ +/* +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_motif_OS_XCreateIC + (JNIEnv *env, jclass that, jint im, jint arg1, jint arg2, jint arg3, jint arg4, jint arg5, jint arg6, jint arg7) +{ +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "XCreateIC\n"); +#endif + + return (jint)XCreateIC((XIM)im, arg1, arg2, arg3, arg4, arg5, arg6, arg7); +} +*/ + +/* + * Class: org_eclipse_swt_internal_motif_OS + * Method: XSetICValues + * Signature: (IIII)I + */ +/* +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_motif_OS_XSetICValues + (JNIEnv *env, jclass that, jint ic, jint arg1, jint arg2, jint arg3) +{ +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "XSetICValues\n"); +#endif + + return (jint)XSetICValues((XIC)ic, arg1, arg2, arg3); +} +*/ + +/* + * Class: org_eclipse_swt_internal_motif_OS + * Method: XGetICValues + * Signature: (IIII)I + */ +/* +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_motif_OS_XGetICValues + (JNIEnv *env, jclass that, jint ic, jint arg1, jint arg2, jint arg3) +{ +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "XGetICValues\n"); +#endif + + return (jint)XGetICValues((XIC)ic, arg1, arg2, arg3); +} +*/ + +/* + * Class: org_eclipse_swt_internal_motif_OS + * Method: XSetICFocus + * Signature: (I)V + */ +/* +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_motif_OS_XSetICFocus + (JNIEnv *env, jclass that, jint ic) +{ +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "XSetICFocus\n"); +#endif + + XSetICFocus((XIC)ic); +} +*/ + +/* + * Class: org_eclipse_swt_internal_motif_OS + * Method: XUnsetICFocus + * Signature: (I)V + */ +/* +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_motif_OS_XUnsetICFocus + (JNIEnv *env, jclass that, jint ic) +{ +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "XUnsetICFocus\n"); +#endif + + XUnsetICFocus((XIC)ic); +} +*/ + +/* + * Class: org_eclipse_swt_internal_motif_OS + * Method: XGetIMValues + * Signature: (IIII)I + */ +/* +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_motif_OS_XGetIMValues + (JNIEnv *env, jclass that, jint im, jint arg1, jint arg2, jint arg3) +{ +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "XGetIMValues\n"); +#endif + + return (jint)XGetIMValues((XIM)im, arg1, arg2, arg3); +} +*/ + +/* + * Class: org_eclipse_swt_internal_motif_OS + * Method: memmove + * Signature: (I[SI)V + */ +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_motif_OS_memmove__I_3SI + (JNIEnv *env, jclass that, jint dest, jshortArray src, jint count) +{ + jshort *src1; +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "memmove__I_3SI\n"); +#endif + + /* don't do anything if src pointer is NULL */ + if (src) { + src1 = (*env)->GetShortArrayElements(env, src, NULL); + memmove((void *)dest, (void *)src1, count); + (*env)->ReleaseShortArrayElements(env, src, src1, 0); + } +} + +/* + * Class: org_eclipse_swt_internal_motif_OS + * Method: nl_langinfo + * Signature: (I)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_motif_OS_nl_1langinfo + (JNIEnv *env, jclass that, jint item) +{ +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "nl_langinfo\n"); +#endif + + return (jint)nl_langinfo(item); +} + +/* + * Class: org_eclipse_swt_internal_motif_OS + * Method: iconv_open + * Signature: ([B[B)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_motif_OS_iconv_1open + (JNIEnv *env, jclass that, jbyteArray tocode, jbyteArray fromcode) +{ + jbyte *tocode1=NULL, *fromcode1=NULL; + jint result; +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "iconv_open\n"); +#endif + if (tocode) + tocode1 = (*env)->GetByteArrayElements(env, tocode, NULL); + if (fromcode) + fromcode1 = (*env)->GetByteArrayElements(env, fromcode, NULL); + result = (jint)iconv_open(tocode1, fromcode1); + if (tocode) + (*env)->ReleaseByteArrayElements(env, tocode, tocode1, 0); + if (fromcode) + (*env)->ReleaseByteArrayElements(env, fromcode, fromcode1, 0); + + return result; +} + +/* + * Class: org_eclipse_swt_internal_motif_OS + * Method: iconv_close + * Signature: (I)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_motif_OS_iconv_1close + (JNIEnv *env, jclass that, jint cd) +{ +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "iconv_close\n"); +#endif + + return (jint)iconv_close((iconv_t)cd); +} + +/* + * Class: org_eclipse_swt_internal_motif_OS + * Method: iconv + * Signature: (I[BI[BI)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_motif_OS_iconv + (JNIEnv *env, jclass that, jint cd, jintArray inBuf, jintArray inBytesLeft, jintArray outBuf, jintArray outBytesLeft) +{ + jint *inBuf1=NULL, *outBuf1=NULL, *inBytesLeft1=NULL, *outBytesLeft1=NULL; + jint result; +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "iconv\n"); +#endif + if (inBuf) + inBuf1 = (*env)->GetIntArrayElements(env, inBuf, NULL); + if (outBuf) + outBuf1 = (*env)->GetIntArrayElements(env, outBuf, NULL); + if (inBytesLeft) + inBytesLeft1 = (*env)->GetIntArrayElements(env, inBytesLeft, NULL); + if (outBytesLeft) + outBytesLeft1 = (*env)->GetIntArrayElements(env, outBytesLeft, NULL); + result = (jint)iconv((iconv_t)cd, (void *)inBuf1, (size_t *)inBytesLeft1, (char **)outBuf1, (size_t *)outBytesLeft1); + if (inBuf) + (*env)->ReleaseIntArrayElements(env, inBuf, inBuf1, 0); + if (outBuf) + (*env)->ReleaseIntArrayElements(env, outBuf, outBuf1, 0); + if (inBytesLeft) + (*env)->ReleaseIntArrayElements(env, inBytesLeft, inBytesLeft1, 0); + if (outBytesLeft) + (*env)->ReleaseIntArrayElements(env, outBytesLeft, outBytesLeft1, 0); + return result; +} + +/* + * Class: org_eclipse_swt_internal_motif_OS + * Method: MB_1CUR_1MAX + * Signature: ()I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_motif_OS_MB_1CUR_1MAX + (JNIEnv *env, jclass that) +{ +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "MB_1CUR_1MAX\n"); +#endif + + return (jint)MB_CUR_MAX; +} + +/* + * Class: org_eclipse_swt_internal_motif_OS + * Method: memmove + * Signature: ([CII)V + */ +/* +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_motif_OS_memmove___3CII + (JNIEnv *env, jclass that, jcharArray dest, jint src, jint count) +{ + jchar *dest1; +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "memmove___3CII\n"); +#endif + + if (dest) { + dest1 = (*env)->GetCharArrayElements(env, dest, NULL); + memmove((void *)dest1, (void *)src, count); + (*env)->ReleaseCharArrayElements(env, dest, dest1, 0); + } +} +*/ + +/* + * Class: org_eclipse_swt_internal_motif_OS + * Method: memmove + * Signature: (I[CI)V + */ +/* +JNIEXPORT void JNICALL Java_org_eclipse_swt_internal_motif_OS_memmove__I_3CI + (JNIEnv *env, jclass that, jint dest, jcharArray src, jint count) +{ + jchar *src1; +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "memmove__I_3CI\n"); +#endif + + if (src) { + int i; + unsigned char *dest1 = (unsigned char *)dest; + src1 = (*env)->GetCharArrayElements(env, src, NULL); + memmove((void *)dest, (void *)src1, count); + (*env)->ReleaseCharArrayElements(env, src, src1, 0); + } +} +*/ + +/* + * Class: org_eclipse_swt_internal_motif_OS + * Method: XCreateFontSet + * Signature: (I[B[I[I[I)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_motif_OS_XCreateFontSet + (JNIEnv *env, jclass that, jint display, jbyteArray base_font_name_list, jintArray missing_charset_list_return, jintArray missing_charset_count_return, jintArray def_string_return) +{ + jbyte *base_font_name_list1=NULL; + jint *missing_charset_list_return1=NULL, *missing_charset_count_return1=NULL, *def_string_return1=NULL; + jint result; +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "XCreateFontSet\n"); +#endif + if (base_font_name_list) + base_font_name_list1 = (*env)->GetByteArrayElements(env, base_font_name_list, NULL); + if (missing_charset_list_return) + missing_charset_list_return1 = (*env)->GetIntArrayElements(env, missing_charset_list_return, NULL); + if (missing_charset_count_return) + missing_charset_count_return1 = (*env)->GetIntArrayElements(env, missing_charset_count_return, NULL); + if (def_string_return) + def_string_return1 = (*env)->GetIntArrayElements(env, def_string_return, NULL); + result = (jint)XCreateFontSet((Display *)display, (char *)base_font_name_list1, (char ***)missing_charset_list_return1, (int *)missing_charset_count_return1, (char **)def_string_return1); + if (base_font_name_list) + (*env)->ReleaseByteArrayElements(env, base_font_name_list, base_font_name_list1, 0); + if (missing_charset_list_return) + (*env)->ReleaseIntArrayElements(env, missing_charset_list_return, missing_charset_list_return1, 0); + if (missing_charset_count_return) + (*env)->ReleaseIntArrayElements(env, missing_charset_count_return, missing_charset_count_return1, 0); + if (def_string_return) + (*env)->ReleaseIntArrayElements(env, def_string_return, def_string_return1, 0); + return result; +} + +/* + * Class: org_eclipse_swt_internal_motif_OS + * Method: XLocaleOfFontSet + * Signature: (I)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_motif_OS_XLocaleOfFontSet + (JNIEnv *env, jclass that, jint fontSet) +{ +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "XLocaleOfFontSet\n"); +#endif + + return (jint)XLocaleOfFontSet((XFontSet)fontSet); +} + +/* + * Class: org_eclipse_swt_internal_motif_OS + * Method: setlocale + * Signature: (I[B)I + */ +JNIEXPORT jint JNICALL Java_org_eclipse_swt_internal_motif_OS_setlocale + (JNIEnv *env, jclass that, int category, jbyteArray locale) +{ + jbyte *locale1=NULL; + jint rc; +#ifdef DEBUG_CALL_PRINTS + fprintf(stderr, "setlocale\n"); +#endif + + if (locale) + locale1 = (*env)->GetByteArrayElements(env, locale, NULL); + rc = (jint) setlocale(category, (char *)locale1); + if (locale) + (*env)->ReleaseByteArrayElements(env, locale, locale1, 0); + + return rc; +}
\ No newline at end of file |