comparison android/dw.cpp @ 2499:ff3310fa6d72

Android: Implment DW_SIGNA_CONFIGURE on orientation change. Seems like my dream of having a single C entrypoint for events is dead, passing any NULL objects for unused parameters results in a sementation violation. Leaving the general purpose function in the code for now, but eventually it will go away.
author bsmith@81767d24-ef19-dc11-ae90-00e081727c95
date Wed, 05 May 2021 19:53:33 +0000
parents 4ae2b3b77f25
children ac0b7e579229
comparison
equal deleted inserted replaced
2498:4ae2b3b77f25 2499:ff3310fa6d72
351 * Entry location for all event handlers from the Android UI 351 * Entry location for all event handlers from the Android UI
352 */ 352 */
353 JNIEXPORT jint JNICALL 353 JNIEXPORT jint JNICALL
354 Java_org_dbsoft_dwindows_DWindows_eventHandler(JNIEnv* env, jobject obj, jobject obj1, jobject obj2, 354 Java_org_dbsoft_dwindows_DWindows_eventHandler(JNIEnv* env, jobject obj, jobject obj1, jobject obj2,
355 jint message, jstring str1, jstring str2, 355 jint message, jstring str1, jstring str2,
356 jint int1, jint int2, jint int3, jint int4) { 356 jint inta, jint intb, jint intc, jint intd) {
357 const char *utf81 = str1 ? env->GetStringUTFChars(str1, NULL) : NULL; 357 const char *utf81 = str1 ? env->GetStringUTFChars(str1, NULL) : NULL;
358 const char *utf82 = str2 ? env->GetStringUTFChars(str2, NULL) : NULL; 358 const char *utf82 = str2 ? env->GetStringUTFChars(str2, NULL) : NULL;
359 void *params[8] = { (void *)obj2, (void *)utf81, (void *)utf82, 359 void *params[8] = { (void *)obj2, (void *)utf81, (void *)utf82,
360 DW_INT_TO_POINTER(int1), DW_INT_TO_POINTER(int2), 360 DW_INT_TO_POINTER(inta), DW_INT_TO_POINTER(intb),
361 DW_INT_TO_POINTER(int3), DW_INT_TO_POINTER(int4), NULL }; 361 DW_INT_TO_POINTER(intc), DW_INT_TO_POINTER(intd), NULL };
362 362
363 return _dw_event_handler(obj1, params, message); 363 return _dw_event_handler(obj1, params, message);
364 } 364 }
365 365
366 /* A more simple method for quicker calls */ 366 /* A more simple method for quicker calls */
375 JNIEXPORT void JNICALL 375 JNIEXPORT void JNICALL
376 Java_org_dbsoft_dwindows_DWindows_eventHandlerNotebook(JNIEnv* env, jobject obj, jobject obj1, jint message, jlong pageID) { 376 Java_org_dbsoft_dwindows_DWindows_eventHandlerNotebook(JNIEnv* env, jobject obj, jobject obj1, jint message, jlong pageID) {
377 void *params[8] = { NULL }; 377 void *params[8] = { NULL };
378 378
379 params[3] = DW_INT_TO_POINTER(pageID); 379 params[3] = DW_INT_TO_POINTER(pageID);
380 _dw_event_handler(obj1, params, message);
381 }
382
383 JNIEXPORT void JNICALL
384 Java_org_dbsoft_dwindows_DWindows_eventHandlerInt(JNIEnv* env, jobject obj, jobject obj1, jint message,
385 jint inta, jint intb, jint intc, jint intd) {
386 void *params[8] = { NULL, NULL, NULL,
387 DW_INT_TO_POINTER(inta), DW_INT_TO_POINTER(intb),
388 DW_INT_TO_POINTER(intc), DW_INT_TO_POINTER(intd), NULL };
389
380 _dw_event_handler(obj1, params, message); 390 _dw_event_handler(obj1, params, message);
381 } 391 }
382 392
383 /* Handler for Timer events */ 393 /* Handler for Timer events */
384 JNIEXPORT jint JNICALL 394 JNIEXPORT jint JNICALL