From 7865ffa1a7b580c075e07ad071f3385b5b67e124 Mon Sep 17 00:00:00 2001 From: Ilya Zhuravlev Date: Sun, 28 Apr 2019 17:52:53 -0400 Subject: [PATCH] android: Switch to C++ --- apps/openmw/CMakeLists.txt | 2 +- .../{android_main.c => android_main.cpp} | 20 +++++++++---------- 2 files changed, 11 insertions(+), 11 deletions(-) rename apps/openmw/{android_main.c => android_main.cpp} (58%) diff --git a/apps/openmw/CMakeLists.txt b/apps/openmw/CMakeLists.txt index 7bce1ce40..d6e5a44f0 100644 --- a/apps/openmw/CMakeLists.txt +++ b/apps/openmw/CMakeLists.txt @@ -9,7 +9,7 @@ set(GAME if (ANDROID) set(GAME ${GAME} android_commandLine.cpp) - set(GAME ${GAME} android_main.c) + set(GAME ${GAME} android_main.cpp) endif() set(GAME_HEADER diff --git a/apps/openmw/android_main.c b/apps/openmw/android_main.cpp similarity index 58% rename from apps/openmw/android_main.c rename to apps/openmw/android_main.cpp index 393d48d77..cc36388b0 100644 --- a/apps/openmw/android_main.c +++ b/apps/openmw/android_main.cpp @@ -18,35 +18,35 @@ extern const char **argvData; void releaseArgv(); -int Java_org_libsdl_app_SDLActivity_getMouseX(JNIEnv *env, jclass cls, jobject obj) { +extern "C" int Java_org_libsdl_app_SDLActivity_getMouseX(JNIEnv *env, jclass cls, jobject obj) { int ret = 0; - SDL_GetMouseState(&ret, NULL); + SDL_GetMouseState(&ret, nullptr); return ret; } -int Java_org_libsdl_app_SDLActivity_getMouseY(JNIEnv *env, jclass cls, jobject obj) { +extern "C" int Java_org_libsdl_app_SDLActivity_getMouseY(JNIEnv *env, jclass cls, jobject obj) { int ret = 0; - SDL_GetMouseState(NULL, &ret); + SDL_GetMouseState(nullptr, &ret); return ret; } -int Java_org_libsdl_app_SDLActivity_isMouseShown(JNIEnv *env, jclass cls, jobject obj) { +extern "C" int Java_org_libsdl_app_SDLActivity_isMouseShown(JNIEnv *env, jclass cls, jobject obj) { return SDL_ShowCursor(SDL_QUERY); } extern SDL_Window *Android_Window; -int SDL_SendMouseMotion(SDL_Window * window, int mouseID, int relative, int x, int y); -void Java_org_libsdl_app_SDLActivity_sendRelativeMouseMotion(JNIEnv *env, jclass cls, int x, int y) { +extern "C" int SDL_SendMouseMotion(SDL_Window * window, int mouseID, int relative, int x, int y); +extern "C" void Java_org_libsdl_app_SDLActivity_sendRelativeMouseMotion(JNIEnv *env, jclass cls, int x, int y) { SDL_SendMouseMotion(Android_Window, 0, 1, x, y); } -int SDL_SendMouseButton(SDL_Window * window, int mouseID, Uint8 state, Uint8 button); -void Java_org_libsdl_app_SDLActivity_sendMouseButton(JNIEnv *env, jclass cls, int state, int button) { +extern "C" int SDL_SendMouseButton(SDL_Window * window, int mouseID, Uint8 state, Uint8 button); +extern "C" void Java_org_libsdl_app_SDLActivity_sendMouseButton(JNIEnv *env, jclass cls, int state, int button) { SDL_SendMouseButton(Android_Window, 0, state, button); } -int Java_org_libsdl_app_SDLActivity_nativeInit(JNIEnv* env, jclass cls, jobject obj) { +extern "C" int Java_org_libsdl_app_SDLActivity_nativeInit(JNIEnv* env, jclass cls, jobject obj) { setenv("OPENMW_DECOMPRESS_TEXTURES", "1", 1); // On Android, we use a virtual controller with guid="Virtual"