fixe all code v 2
|
@ -62,10 +62,6 @@ if (NOT ANDROID)
|
||||||
ADD_DEFINITIONS(-DNOT_ANDROID)
|
ADD_DEFINITIONS(-DNOT_ANDROID)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if (ANDROID)
|
|
||||||
ADD_DEFINITIONS(-DBUILD_ANDROID)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
|
|
||||||
# doxygen main page
|
# doxygen main page
|
||||||
|
|
||||||
|
@ -248,10 +244,10 @@ if(OGRE_STATIC)
|
||||||
|
|
||||||
if (ANDROID)
|
if (ANDROID)
|
||||||
add_static_ogre_plugin(RenderSystem_GLES2)
|
add_static_ogre_plugin(RenderSystem_GLES2)
|
||||||
endif (ANDROID)
|
else ()
|
||||||
if (NOT ANDROID)
|
|
||||||
add_static_ogre_plugin(RenderSystem_GL)
|
add_static_ogre_plugin(RenderSystem_GL)
|
||||||
endif ()
|
endif ()
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
add_static_ogre_plugin(RenderSystem_Direct3D9)
|
add_static_ogre_plugin(RenderSystem_Direct3D9)
|
||||||
endif(WIN32)
|
endif(WIN32)
|
||||||
|
|
|
@ -1,31 +1,19 @@
|
||||||
# local files
|
# local files
|
||||||
|
|
||||||
if (ANDROID)
|
|
||||||
|
|
||||||
set(GAME
|
set(GAME
|
||||||
main.cpp
|
main.cpp
|
||||||
SDL_android_main.c
|
#ifdef ANDROID
|
||||||
|
android_main.c
|
||||||
|
#endif
|
||||||
engine.cpp
|
engine.cpp
|
||||||
)
|
)
|
||||||
endif (ANDROID)
|
|
||||||
|
|
||||||
|
|
||||||
if (NOT ANDROID)
|
if(NOT WIN32 OR NOT ANDROID)
|
||||||
set(GAME
|
|
||||||
main.cpp
|
|
||||||
engine.cpp
|
|
||||||
)
|
|
||||||
endif ()
|
|
||||||
|
|
||||||
if(NOT WIN32 AND NOT ANDROID)
|
|
||||||
set(GAME ${GAME} crashcatcher.cpp)
|
set(GAME ${GAME} crashcatcher.cpp)
|
||||||
endif()
|
endif()
|
||||||
if (NOT ANDROID)
|
|
||||||
ADD_DEFINITIONS(-DNOT_ANDROID)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if (ANDROID)
|
|
||||||
ADD_DEFINITIONS(-DBUILD_ANDROID)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
|
|
||||||
set(GAME_HEADER
|
set(GAME_HEADER
|
||||||
|
@ -106,8 +94,7 @@ add_openmw_dir (mwbase
|
||||||
# Main executable
|
# Main executable
|
||||||
if (ANDROID)
|
if (ANDROID)
|
||||||
set(BOOST_COMPONENTS system filesystem program_options thread wave atomic)
|
set(BOOST_COMPONENTS system filesystem program_options thread wave atomic)
|
||||||
endif (ANDROID)
|
else ()
|
||||||
if (NOT ANDROID)
|
|
||||||
set(BOOST_COMPONENTS system filesystem program_options thread wave)
|
set(BOOST_COMPONENTS system filesystem program_options thread wave)
|
||||||
endif ()
|
endif ()
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
|
@ -123,9 +110,8 @@ add_executable(openmw
|
||||||
${GAME} ${GAME_HEADER}
|
${GAME} ${GAME_HEADER}
|
||||||
${APPLE_BUNDLE_RESOURCES}
|
${APPLE_BUNDLE_RESOURCES}
|
||||||
)
|
)
|
||||||
endif ()
|
else ()
|
||||||
|
|
||||||
if (ANDROID)
|
|
||||||
add_library(openmw SHARED
|
add_library(openmw SHARED
|
||||||
${OPENMW_LIBS} ${OPENMW_LIBS_HEADER}
|
${OPENMW_LIBS} ${OPENMW_LIBS_HEADER}
|
||||||
${OPENMW_FILES}
|
${OPENMW_FILES}
|
||||||
|
@ -133,7 +119,7 @@ add_library(openmw SHARED
|
||||||
${APPLE_BUNDLE_RESOURCES}
|
${APPLE_BUNDLE_RESOURCES}
|
||||||
)
|
)
|
||||||
|
|
||||||
endif (ANDROID)
|
endif ()
|
||||||
|
|
||||||
# Sound stuff - here so CMake doesn't stupidly recompile EVERYTHING
|
# Sound stuff - here so CMake doesn't stupidly recompile EVERYTHING
|
||||||
# when we change the backend.
|
# when we change the backend.
|
||||||
|
@ -156,36 +142,14 @@ target_link_libraries(openmw
|
||||||
)
|
)
|
||||||
|
|
||||||
if (ANDROID)
|
if (ANDROID)
|
||||||
target_link_libraries(openmw
|
|
||||||
${OGRE_STATIC_PLUGINS}
|
|
||||||
)
|
|
||||||
|
|
||||||
target_link_libraries(openmw
|
target_link_libraries(openmw
|
||||||
|
${OGRE_STATIC_PLUGINS}
|
||||||
EGL
|
EGL
|
||||||
android
|
android
|
||||||
log
|
log
|
||||||
dl
|
dl
|
||||||
)
|
|
||||||
target_link_libraries(openmw
|
|
||||||
boost_atomic
|
|
||||||
boost_chrono
|
|
||||||
boost_date_time
|
|
||||||
boost_filesystem
|
|
||||||
boost_program_options
|
|
||||||
boost_system
|
|
||||||
boost_thread
|
|
||||||
boost_wave
|
|
||||||
)
|
|
||||||
target_link_libraries(openmw
|
|
||||||
FreeImage
|
|
||||||
freetype
|
|
||||||
)
|
|
||||||
|
|
||||||
target_link_libraries(openmw
|
|
||||||
OgreMainStatic
|
|
||||||
)
|
|
||||||
|
|
||||||
target_link_libraries(openmw
|
|
||||||
MyGUI.OgrePlatform
|
MyGUI.OgrePlatform
|
||||||
MyGUIEngineStatic
|
MyGUIEngineStatic
|
||||||
Plugin_StrangeButtonStatic
|
Plugin_StrangeButtonStatic
|
||||||
|
@ -194,6 +158,7 @@ BulletCollision
|
||||||
BulletDynamics
|
BulletDynamics
|
||||||
LinearMath
|
LinearMath
|
||||||
)
|
)
|
||||||
|
|
||||||
endif (ANDROID)
|
endif (ANDROID)
|
||||||
|
|
||||||
if (USE_SYSTEM_TINYXML)
|
if (USE_SYSTEM_TINYXML)
|
||||||
|
|
|
@ -1,11 +1,7 @@
|
||||||
/*
|
|
||||||
SDL_android_main.c, placed in the public domain by Sam Lantinga 3/13/14
|
|
||||||
*/
|
|
||||||
#include "../../SDL_internal.h"
|
#include "../../SDL_internal.h"
|
||||||
|
|
||||||
#ifdef __ANDROID__
|
#ifdef __ANDROID__
|
||||||
|
|
||||||
/* Include the SDL main definition header */
|
|
||||||
#include "SDL_main.h"
|
#include "SDL_main.h"
|
||||||
|
|
||||||
|
|
||||||
|
@ -14,25 +10,20 @@
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
#include <jni.h>
|
#include <jni.h>
|
||||||
|
|
||||||
/* Called before SDL_main() to initialize JNI bindings in SDL library */
|
/* Called before to initialize JNI bindings */
|
||||||
|
|
||||||
|
|
||||||
//extern void SDL_Android_Init(JNIEnv* env, jclass cls);
|
|
||||||
|
|
||||||
extern void SDL_Android_Init(JNIEnv* env, jclass cls);
|
extern void SDL_Android_Init(JNIEnv* env, jclass cls);
|
||||||
|
|
||||||
/* Start up the SDL app */
|
|
||||||
int Java_org_libsdl_app_SDLActivity_nativeInit(JNIEnv* env, jclass cls, jobject obj)
|
int Java_org_libsdl_app_SDLActivity_nativeInit(JNIEnv* env, jclass cls, jobject obj)
|
||||||
{
|
{
|
||||||
/* This interface could expand with ABI negotiation, calbacks, etc. */
|
|
||||||
SDL_Android_Init(env, cls);
|
SDL_Android_Init(env, cls);
|
||||||
|
|
||||||
SDL_SetMainReady();
|
SDL_SetMainReady();
|
||||||
|
|
||||||
//DL_SetHint(SDL_HINT_RENDER_DRIVER, "software");
|
|
||||||
|
|
||||||
// SDL_SetHint(SDL_HINT_SIMULATE_INPUT_EVENTS, "0");
|
|
||||||
|
|
||||||
|
|
||||||
/* Run the application code! */
|
/* Run the application code! */
|
||||||
|
|
||||||
|
@ -50,4 +41,3 @@ int Java_org_libsdl_app_SDLActivity_nativeInit(JNIEnv* env, jclass cls, jobject
|
||||||
|
|
||||||
#endif /* __ANDROID__ */
|
#endif /* __ANDROID__ */
|
||||||
|
|
||||||
/* vi: set ts=4 sw=4 expandtab: */
|
|
|
@ -192,7 +192,9 @@ OMW::Engine::Engine(Files::ConfigurationManager& configurationManager)
|
||||||
//kindly ask SDL not to trash our OGL context
|
//kindly ask SDL not to trash our OGL context
|
||||||
//might this be related to http://bugzilla.libsdl.org/show_bug.cgi?id=748 ?
|
//might this be related to http://bugzilla.libsdl.org/show_bug.cgi?id=748 ?
|
||||||
SDL_SetHint(SDL_HINT_RENDER_DRIVER, "software");
|
SDL_SetHint(SDL_HINT_RENDER_DRIVER, "software");
|
||||||
|
|
||||||
SDL_SetMainReady();
|
SDL_SetMainReady();
|
||||||
|
|
||||||
if(SDL_Init(flags) != 0)
|
if(SDL_Init(flags) != 0)
|
||||||
{
|
{
|
||||||
throw std::runtime_error("Could not initialize SDL! " + std::string(SDL_GetError()));
|
throw std::runtime_error("Could not initialize SDL! " + std::string(SDL_GetError()));
|
||||||
|
|
|
@ -21,6 +21,7 @@
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#if OGRE_PLATFORM == OGRE_PLATFORM_LINUX || OGRE_PLATFORM == OGRE_PLATFORM_APPLE
|
#if OGRE_PLATFORM == OGRE_PLATFORM_LINUX || OGRE_PLATFORM == OGRE_PLATFORM_APPLE
|
||||||
#include <csignal>
|
#include <csignal>
|
||||||
extern int cc_install_handlers(int argc, char **argv, int num_signals, int *sigs, const char *logfile, int (*user_info)(char*, char*));
|
extern int cc_install_handlers(int argc, char **argv, int num_signals, int *sigs, const char *logfile, int (*user_info)(char*, char*));
|
||||||
|
@ -405,3 +406,7 @@ int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine
|
||||||
return main(__argc, __argv);
|
return main(__argc, __argv);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -263,14 +263,14 @@ if (ANDROID)
|
||||||
${FreeImage_LIBRARIES} ${FREETYPE_LIBRARIES}
|
${FreeImage_LIBRARIES} ${FREETYPE_LIBRARIES}
|
||||||
|
|
||||||
${Cocoa_LIBRARIES} ${Carbon_LIBRARIES})
|
${Cocoa_LIBRARIES} ${Carbon_LIBRARIES})
|
||||||
endif (ANDROID)
|
else ()
|
||||||
if (NOT ANDROID)
|
|
||||||
set(OGRE_LIBRARIES ${OGRE_LIBRARIES} ${OGRE_LIBRARY_FWK} ${ZZip_LIBRARIES} ${ZLIB_LIBRARIES}
|
set(OGRE_LIBRARIES ${OGRE_LIBRARIES} ${OGRE_LIBRARY_FWK} ${ZZip_LIBRARIES} ${ZLIB_LIBRARIES}
|
||||||
${FreeImage_LIBRARIES} ${FREETYPE_LIBRARIES}
|
${FreeImage_LIBRARIES} ${FREETYPE_LIBRARIES}
|
||||||
|
|
||||||
${X11_LIBRARIES} ${X11_Xt_LIBRARIES} ${XAW_LIBRARY} ${X11_Xrandr_LIB}
|
${X11_LIBRARIES} ${X11_Xt_LIBRARIES} ${XAW_LIBRARY} ${X11_Xrandr_LIB}
|
||||||
${Cocoa_LIBRARIES} ${Carbon_LIBRARIES})
|
${Cocoa_LIBRARIES} ${Carbon_LIBRARIES})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if (NOT ZLIB_FOUND OR NOT ZZip_FOUND)
|
if (NOT ZLIB_FOUND OR NOT ZZip_FOUND)
|
||||||
set(OGRE_DEPS_FOUND FALSE)
|
set(OGRE_DEPS_FOUND FALSE)
|
||||||
endif ()
|
endif ()
|
||||||
|
|
|
@ -50,7 +50,7 @@ add_component_dir (misc
|
||||||
)
|
)
|
||||||
|
|
||||||
add_component_dir (files
|
add_component_dir (files
|
||||||
linuxpath windowspath macospath fixedpath multidircollection collections configurationmanager
|
linuxpath androidpath windowspath macospath fixedpath multidircollection collections configurationmanager
|
||||||
constrainedfiledatastream lowlevelfile
|
constrainedfiledatastream lowlevelfile
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
170
components/files/androidpath.cpp
Normal file
|
@ -0,0 +1,170 @@
|
||||||
|
#include "androidpath.hpp"
|
||||||
|
|
||||||
|
#if defined(__ANDROID__)
|
||||||
|
|
||||||
|
#include <cstdlib>
|
||||||
|
#include <cstring>
|
||||||
|
#include <pwd.h>
|
||||||
|
#include <unistd.h>
|
||||||
|
#include <boost/filesystem/fstream.hpp>
|
||||||
|
|
||||||
|
|
||||||
|
namespace
|
||||||
|
{
|
||||||
|
boost::filesystem::path getUserHome()
|
||||||
|
{
|
||||||
|
const char* dir = getenv("HOME");
|
||||||
|
if (dir == NULL)
|
||||||
|
{
|
||||||
|
struct passwd* pwd = getpwuid(getuid());
|
||||||
|
if (pwd != NULL)
|
||||||
|
{
|
||||||
|
dir = pwd->pw_dir;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (dir == NULL)
|
||||||
|
return boost::filesystem::path();
|
||||||
|
else
|
||||||
|
return boost::filesystem::path(dir);
|
||||||
|
}
|
||||||
|
|
||||||
|
boost::filesystem::path getEnv(const std::string& envVariable, const boost::filesystem::path& fallback)
|
||||||
|
{
|
||||||
|
const char* result = getenv(envVariable.c_str());
|
||||||
|
if (!result)
|
||||||
|
return fallback;
|
||||||
|
boost::filesystem::path dir(result);
|
||||||
|
if (dir.empty())
|
||||||
|
return fallback;
|
||||||
|
else
|
||||||
|
return dir;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* \namespace Files
|
||||||
|
*/
|
||||||
|
namespace Files
|
||||||
|
{
|
||||||
|
|
||||||
|
AndroidPath::AndroidPath(const std::string& application_name)
|
||||||
|
: mName(application_name)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
boost::filesystem::path AndroidPath::getUserConfigPath() const
|
||||||
|
{
|
||||||
|
|
||||||
|
return getEnv("XDG_CONFIG_HOME", "/sdcard/morrowind/config") / mName;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
boost::filesystem::path AndroidPath::getUserDataPath() const
|
||||||
|
{
|
||||||
|
|
||||||
|
|
||||||
|
return getEnv("XDG_DATA_HOME", "/sdcard/morrowind/share") / mName;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
boost::filesystem::path AndroidPath::getCachePath() const
|
||||||
|
{
|
||||||
|
|
||||||
|
return getEnv("XDG_CACHE_HOME", "/sdcard/morrowind/cache") / mName;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
boost::filesystem::path AndroidPath::getGlobalConfigPath() const
|
||||||
|
{
|
||||||
|
boost::filesystem::path globalPath("/sdcard/morrowind/");
|
||||||
|
|
||||||
|
return globalPath / mName;
|
||||||
|
}
|
||||||
|
|
||||||
|
boost::filesystem::path AndroidPath::getLocalPath() const
|
||||||
|
{
|
||||||
|
return boost::filesystem::path("./");
|
||||||
|
}
|
||||||
|
|
||||||
|
boost::filesystem::path AndroidPath::getGlobalDataPath() const
|
||||||
|
{
|
||||||
|
|
||||||
|
boost::filesystem::path globalDataPath("/sdcard/morrowind/data");
|
||||||
|
|
||||||
|
return globalDataPath / mName;
|
||||||
|
}
|
||||||
|
|
||||||
|
boost::filesystem::path AndroidPath::getInstallPath() const
|
||||||
|
{
|
||||||
|
boost::filesystem::path installPath;
|
||||||
|
|
||||||
|
boost::filesystem::path homePath = getUserHome();
|
||||||
|
|
||||||
|
if (!homePath.empty())
|
||||||
|
{
|
||||||
|
boost::filesystem::path wineDefaultRegistry(homePath);
|
||||||
|
wineDefaultRegistry /= ".wine/system.reg";
|
||||||
|
|
||||||
|
if (boost::filesystem::is_regular_file(wineDefaultRegistry))
|
||||||
|
{
|
||||||
|
boost::filesystem::ifstream file(wineDefaultRegistry);
|
||||||
|
bool isRegEntry = false;
|
||||||
|
std::string line;
|
||||||
|
std::string mwpath;
|
||||||
|
|
||||||
|
while (std::getline(file, line))
|
||||||
|
{
|
||||||
|
if (line[0] == '[') // we found an entry
|
||||||
|
{
|
||||||
|
if (isRegEntry)
|
||||||
|
{
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
isRegEntry = (line.find("Softworks\\\\Morrowind]") != std::string::npos);
|
||||||
|
}
|
||||||
|
else if (isRegEntry)
|
||||||
|
{
|
||||||
|
if (line[0] == '"') // empty line means new registry key
|
||||||
|
{
|
||||||
|
std::string key = line.substr(1, line.find('"', 1) - 1);
|
||||||
|
if (strcasecmp(key.c_str(), "Installed Path") == 0)
|
||||||
|
{
|
||||||
|
std::string::size_type valuePos = line.find('=') + 2;
|
||||||
|
mwpath = line.substr(valuePos, line.rfind('"') - valuePos);
|
||||||
|
|
||||||
|
std::string::size_type pos = mwpath.find("\\");
|
||||||
|
while (pos != std::string::npos)
|
||||||
|
{
|
||||||
|
mwpath.replace(pos, 2, "/");
|
||||||
|
pos = mwpath.find("\\", pos + 1);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!mwpath.empty())
|
||||||
|
{
|
||||||
|
// Change drive letter to lowercase, so we could use
|
||||||
|
// ~/.wine/dosdevices symlinks
|
||||||
|
mwpath[0] = tolower(mwpath[0]);
|
||||||
|
installPath /= homePath;
|
||||||
|
installPath /= ".wine/dosdevices/";
|
||||||
|
installPath /= mwpath;
|
||||||
|
|
||||||
|
if (!boost::filesystem::is_directory(installPath))
|
||||||
|
{
|
||||||
|
installPath.clear();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return installPath;
|
||||||
|
}
|
||||||
|
|
||||||
|
} /* namespace Files */
|
||||||
|
|
||||||
|
#endif /* defined(__linux__) || defined(__FreeBSD__) */
|
57
components/files/androidpath.hpp
Normal file
|
@ -0,0 +1,57 @@
|
||||||
|
#ifndef COMPONENTS_FILES_LINUXPATH_H
|
||||||
|
#define COMPONENTS_FILES_LINUXPATH_H
|
||||||
|
|
||||||
|
#if defined(__ANDROID__)
|
||||||
|
|
||||||
|
#include <boost/filesystem.hpp>
|
||||||
|
/**
|
||||||
|
* \namespace Files
|
||||||
|
*/
|
||||||
|
namespace Files
|
||||||
|
{
|
||||||
|
|
||||||
|
struct AndroidPath
|
||||||
|
{
|
||||||
|
AndroidPath(const std::string& application_name);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* \brief Return path to the user directory.
|
||||||
|
*/
|
||||||
|
boost::filesystem::path getUserConfigPath() const;
|
||||||
|
|
||||||
|
boost::filesystem::path getUserDataPath() const;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* \brief Return path to the global (system) directory where config files can be placed.
|
||||||
|
*/
|
||||||
|
boost::filesystem::path getGlobalConfigPath() const;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* \brief Return path to the runtime configuration directory which is the
|
||||||
|
* place where an application was started.
|
||||||
|
*/
|
||||||
|
boost::filesystem::path getLocalPath() const;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* \brief Return path to the global (system) directory where game files can be placed.
|
||||||
|
*/
|
||||||
|
boost::filesystem::path getGlobalDataPath() const;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* \brief
|
||||||
|
*/
|
||||||
|
boost::filesystem::path getCachePath() const;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* \brief Gets the path of the installed Morrowind version if there is one.
|
||||||
|
*/
|
||||||
|
boost::filesystem::path getInstallPath() const;
|
||||||
|
|
||||||
|
std::string mName;
|
||||||
|
};
|
||||||
|
|
||||||
|
} /* namespace Files */
|
||||||
|
|
||||||
|
#endif /* defined(__linux__) || defined(__FreeBSD__) */
|
||||||
|
|
||||||
|
#endif /* COMPONENTS_FILES_LINUXPATH_H */
|
|
@ -4,10 +4,12 @@
|
||||||
#include <string>
|
#include <string>
|
||||||
#include <boost/filesystem.hpp>
|
#include <boost/filesystem.hpp>
|
||||||
|
|
||||||
#if defined(__linux__) || defined(__FreeBSD__)
|
#if defined(__UNIX__) || defined(__FreeBSD__)
|
||||||
#include <components/files/linuxpath.hpp>
|
#include <components/files/linuxpath.hpp>
|
||||||
namespace Files { typedef LinuxPath TargetPathType; }
|
namespace Files { typedef LinuxPath TargetPathType; }
|
||||||
|
#elif defined (__ANDROID__)
|
||||||
|
#include <components/files/androidpath.hpp>
|
||||||
|
namespace Files { typedef AndroidPath TargetPathType; }
|
||||||
#elif defined(__WIN32) || defined(__WINDOWS__) || defined(_WIN32)
|
#elif defined(__WIN32) || defined(__WINDOWS__) || defined(_WIN32)
|
||||||
#include <components/files/windowspath.hpp>
|
#include <components/files/windowspath.hpp>
|
||||||
namespace Files { typedef WindowsPath TargetPathType; }
|
namespace Files { typedef WindowsPath TargetPathType; }
|
||||||
|
|
|
@ -58,51 +58,33 @@ LinuxPath::LinuxPath(const std::string& application_name)
|
||||||
|
|
||||||
boost::filesystem::path LinuxPath::getUserConfigPath() const
|
boost::filesystem::path LinuxPath::getUserConfigPath() const
|
||||||
{
|
{
|
||||||
#ifdef NOT_ANDROID
|
|
||||||
return getEnv("XDG_CONFIG_HOME", getUserHome() / ".config") / mName;
|
return getEnv("XDG_CONFIG_HOME", getUserHome() / ".config") / mName;
|
||||||
#endif
|
|
||||||
//else
|
|
||||||
#ifdef BUILD_ANDROID
|
|
||||||
return getEnv("XDG_CONFIG_HOME", "/sdcard/morrowind/config") / mName;
|
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
|
|
||||||
boost::filesystem::path LinuxPath::getUserDataPath() const
|
boost::filesystem::path LinuxPath::getUserDataPath() const
|
||||||
{
|
{
|
||||||
//if (flag==false)
|
|
||||||
#ifdef NOT_ANDROID
|
|
||||||
|
|
||||||
return getEnv("XDG_DATA_HOME", getUserHome() / ".local/share") / mName;
|
return getEnv("XDG_DATA_HOME", getUserHome() / ".local/share") / mName;
|
||||||
#endif
|
|
||||||
//else
|
|
||||||
#ifdef BUILD_ANDROID
|
|
||||||
return getEnv("XDG_DATA_HOME", "/sdcard/morrowind/share") / mName;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
boost::filesystem::path LinuxPath::getCachePath() const
|
boost::filesystem::path LinuxPath::getCachePath() const
|
||||||
{
|
{
|
||||||
//if (flag==false)
|
|
||||||
#ifdef NOT_ANDROID
|
|
||||||
return getEnv("XDG_CACHE_HOME", getUserHome() / ".cache") / mName;
|
return getEnv("XDG_CACHE_HOME", getUserHome() / ".cache") / mName;
|
||||||
#endif
|
|
||||||
//else
|
|
||||||
#ifdef BUILD_ANDROID
|
|
||||||
return getEnv("XDG_CACHE_HOME", "/sdcard/morrowind/cache") / mName;
|
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
|
|
||||||
boost::filesystem::path LinuxPath::getGlobalConfigPath() const
|
boost::filesystem::path LinuxPath::getGlobalConfigPath() const
|
||||||
{
|
{
|
||||||
//if (flag==false)
|
|
||||||
#ifdef NOT_ANDROID
|
|
||||||
boost::filesystem::path globalPath("/etc/");
|
boost::filesystem::path globalPath("/etc/");
|
||||||
#endif
|
|
||||||
//else
|
|
||||||
#ifdef BUILD_ANDROID
|
|
||||||
boost::filesystem::path globalPath("/sdcard/morrowind/");
|
|
||||||
#endif
|
|
||||||
return globalPath / mName;
|
return globalPath / mName;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -113,15 +95,9 @@ boost::filesystem::path LinuxPath::getLocalPath() const
|
||||||
|
|
||||||
boost::filesystem::path LinuxPath::getGlobalDataPath() const
|
boost::filesystem::path LinuxPath::getGlobalDataPath() const
|
||||||
{
|
{
|
||||||
//if (flag==false)
|
|
||||||
#ifdef NOT_ANDROID
|
|
||||||
|
|
||||||
boost::filesystem::path globalDataPath("/usr/share/games/");
|
boost::filesystem::path globalDataPath("/usr/share/games/");
|
||||||
#endif
|
|
||||||
//else
|
|
||||||
#ifdef BUILD_ANDROID
|
|
||||||
boost::filesystem::path globalDataPath("/sdcard/morrowind/data");
|
|
||||||
#endif
|
|
||||||
return globalDataPath / mName;
|
return globalDataPath / mName;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -95,7 +95,7 @@ namespace OgreInit
|
||||||
Ogre::Root* OgreInit::init(const std::string &logPath)
|
Ogre::Root* OgreInit::init(const std::string &logPath)
|
||||||
{
|
{
|
||||||
|
|
||||||
#ifdef NOT_ANDROID
|
#ifdef NOT ANDROID
|
||||||
|
|
||||||
// Set up logging first
|
// Set up logging first
|
||||||
new Ogre::LogManager;
|
new Ogre::LogManager;
|
||||||
|
|
|
@ -1,9 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<classpath>
|
|
||||||
<classpathentry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>
|
|
||||||
<classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.LIBRARIES"/>
|
|
||||||
<classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.DEPENDENCIES"/>
|
|
||||||
<classpathentry kind="src" path="src"/>
|
|
||||||
<classpathentry kind="src" path="gen"/>
|
|
||||||
<classpathentry kind="output" path="bin/classes"/>
|
|
||||||
</classpath>
|
|
|
@ -1,46 +0,0 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<!-- Replace org.libsdl.app with the identifier of your game below, e.g.
|
|
||||||
com.gamemaker.game
|
|
||||||
-->
|
|
||||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
|
||||||
package="org.libsdl.app"
|
|
||||||
android:versionCode="1"
|
|
||||||
android:versionName="0.31"
|
|
||||||
android:installLocation="auto">
|
|
||||||
|
|
||||||
<!-- Create a Java class extending SDLActivity and place it in a
|
|
||||||
directory under src matching the package, e.g.
|
|
||||||
src/com/gamemaker/game/MyGame.java
|
|
||||||
|
|
||||||
then replace "SDLActivity" with the name of your class (e.g. "MyGame")
|
|
||||||
in the XML below.
|
|
||||||
|
|
||||||
An example Java class can be found in README-android.txt
|
|
||||||
-->
|
|
||||||
<application android:label="@string/app_name"
|
|
||||||
android:icon="@drawable/ic_launcher1"
|
|
||||||
android:allowBackup="true"
|
|
||||||
android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
|
|
||||||
android:hardwareAccelerated="true" >
|
|
||||||
<activity android:name="SDLActivity"
|
|
||||||
android:label="@string/app_name"
|
|
||||||
android:configChanges="keyboardHidden|orientation"
|
|
||||||
android:screenOrientation="landscape"
|
|
||||||
>
|
|
||||||
<intent-filter>
|
|
||||||
<action android:name="android.intent.action.MAIN" />
|
|
||||||
<category android:name="android.intent.category.LAUNCHER" />
|
|
||||||
</intent-filter>
|
|
||||||
</activity>
|
|
||||||
</application>
|
|
||||||
|
|
||||||
<!-- Android 2.3.3 -->
|
|
||||||
<uses-sdk android:minSdkVersion="10" android:targetSdkVersion="19" />
|
|
||||||
|
|
||||||
<!-- OpenGL ES 2.0 -->
|
|
||||||
<uses-feature android:glEsVersion="0x00020000" />
|
|
||||||
|
|
||||||
<!-- Allow writing to external storage -->
|
|
||||||
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
|
|
||||||
<uses-permission android:name="android.permission.ACCESS_SUPERUSER" />
|
|
||||||
</manifest>
|
|
|
@ -1,17 +0,0 @@
|
||||||
# This file is used to override default values used by the Ant build system.
|
|
||||||
#
|
|
||||||
# This file must be checked into Version Control Systems, as it is
|
|
||||||
# integral to the build system of your project.
|
|
||||||
|
|
||||||
# This file is only used by the Ant script.
|
|
||||||
|
|
||||||
# You can use this to override default values such as
|
|
||||||
# 'source.dir' for the location of your java source folder and
|
|
||||||
# 'out.dir' for the location of your output folder.
|
|
||||||
|
|
||||||
# You can also use it define how the release builds are signed by declaring
|
|
||||||
# the following properties:
|
|
||||||
# 'key.store' for the location of your keystore and
|
|
||||||
# 'key.alias' for the name of the key to use.
|
|
||||||
# The password will be asked during the build when you use the 'release' target.
|
|
||||||
|
|
|
@ -1,46 +0,0 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<!-- Replace org.libsdl.app with the identifier of your game below, e.g.
|
|
||||||
com.gamemaker.game
|
|
||||||
-->
|
|
||||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
|
||||||
package="org.libsdl.app"
|
|
||||||
android:versionCode="1"
|
|
||||||
android:versionName="0.31"
|
|
||||||
android:installLocation="auto">
|
|
||||||
|
|
||||||
<!-- Create a Java class extending SDLActivity and place it in a
|
|
||||||
directory under src matching the package, e.g.
|
|
||||||
src/com/gamemaker/game/MyGame.java
|
|
||||||
|
|
||||||
then replace "SDLActivity" with the name of your class (e.g. "MyGame")
|
|
||||||
in the XML below.
|
|
||||||
|
|
||||||
An example Java class can be found in README-android.txt
|
|
||||||
-->
|
|
||||||
<application android:label="@string/app_name"
|
|
||||||
android:icon="@drawable/ic_launcher1"
|
|
||||||
android:allowBackup="true"
|
|
||||||
android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
|
|
||||||
android:hardwareAccelerated="true" >
|
|
||||||
<activity android:name="SDLActivity"
|
|
||||||
android:label="@string/app_name"
|
|
||||||
android:configChanges="keyboardHidden|orientation"
|
|
||||||
android:screenOrientation="landscape"
|
|
||||||
>
|
|
||||||
<intent-filter>
|
|
||||||
<action android:name="android.intent.action.MAIN" />
|
|
||||||
<category android:name="android.intent.category.LAUNCHER" />
|
|
||||||
</intent-filter>
|
|
||||||
</activity>
|
|
||||||
</application>
|
|
||||||
|
|
||||||
<!-- Android 2.3.3 -->
|
|
||||||
<uses-sdk android:minSdkVersion="10" android:targetSdkVersion="19" />
|
|
||||||
|
|
||||||
<!-- OpenGL ES 2.0 -->
|
|
||||||
<uses-feature android:glEsVersion="0x00020000" />
|
|
||||||
|
|
||||||
<!-- Allow writing to external storage -->
|
|
||||||
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
|
|
||||||
<uses-permission android:name="android.permission.ACCESS_SUPERUSER" />
|
|
||||||
</manifest>
|
|
|
@ -1,3 +0,0 @@
|
||||||
# cache for current jar dependency. DO NOT EDIT.
|
|
||||||
# format is <lastModified> <length> <SHA-1> <path>
|
|
||||||
# Encoding is UTF-8
|
|
Before Width: | Height: | Size: 6.1 KiB |
Before Width: | Height: | Size: 3.2 KiB |
Before Width: | Height: | Size: 9.3 KiB |
Before Width: | Height: | Size: 18 KiB |
|
@ -1,17 +0,0 @@
|
||||||
# This file is used to override default values used by the Ant build system.
|
|
||||||
#
|
|
||||||
# This file must be checked in Version Control Systems, as it is
|
|
||||||
# integral to the build system of your project.
|
|
||||||
|
|
||||||
# This file is only used by the Ant script.
|
|
||||||
|
|
||||||
# You can use this to override default values such as
|
|
||||||
# 'source.dir' for the location of your java source folder and
|
|
||||||
# 'out.dir' for the location of your output folder.
|
|
||||||
|
|
||||||
# You can also use it define how the release builds are signed by declaring
|
|
||||||
# the following properties:
|
|
||||||
# 'key.store' for the location of your keystore and
|
|
||||||
# 'key.alias' for the name of the key to use.
|
|
||||||
# The password will be asked during the build when you use the 'release' target.
|
|
||||||
|
|
|
@ -1,93 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!-- This should be changed to the name of your project -->
|
|
||||||
<project name="SDLActivity" default="help">
|
|
||||||
|
|
||||||
<!-- The local.properties file is created and updated by the 'android' tool.
|
|
||||||
It contains the path to the SDK. It should *NOT* be checked into
|
|
||||||
Version Control Systems. -->
|
|
||||||
<property file="local.properties" />
|
|
||||||
|
|
||||||
<!-- The ant.properties file can be created by you. It is only edited by the
|
|
||||||
'android' tool to add properties to it.
|
|
||||||
This is the place to change some Ant specific build properties.
|
|
||||||
Here are some properties you may want to change/update:
|
|
||||||
|
|
||||||
source.dir
|
|
||||||
The name of the source directory. Default is 'src'.
|
|
||||||
out.dir
|
|
||||||
The name of the output directory. Default is 'bin'.
|
|
||||||
|
|
||||||
For other overridable properties, look at the beginning of the rules
|
|
||||||
files in the SDK, at tools/ant/build.xml
|
|
||||||
|
|
||||||
Properties related to the SDK location or the project target should
|
|
||||||
be updated using the 'android' tool with the 'update' action.
|
|
||||||
|
|
||||||
This file is an integral part of the build system for your
|
|
||||||
application and should be checked into Version Control Systems.
|
|
||||||
|
|
||||||
-->
|
|
||||||
<property file="ant.properties" />
|
|
||||||
|
|
||||||
<!-- if sdk.dir was not set from one of the property file, then
|
|
||||||
get it from the ANDROID_HOME env var.
|
|
||||||
This must be done before we load project.properties since
|
|
||||||
the proguard config can use sdk.dir -->
|
|
||||||
<property environment="env" />
|
|
||||||
<condition property="sdk.dir" value="${env.ANDROID_HOME}">
|
|
||||||
<isset property="env.ANDROID_HOME" />
|
|
||||||
</condition>
|
|
||||||
|
|
||||||
<!-- The project.properties file is created and updated by the 'android'
|
|
||||||
tool, as well as ADT.
|
|
||||||
|
|
||||||
This contains project specific properties such as project target, and library
|
|
||||||
dependencies. Lower level build properties are stored in ant.properties
|
|
||||||
(or in .classpath for Eclipse projects).
|
|
||||||
|
|
||||||
This file is an integral part of the build system for your
|
|
||||||
application and should be checked into Version Control Systems. -->
|
|
||||||
<loadproperties srcFile="project.properties" />
|
|
||||||
|
|
||||||
<!-- quick check on sdk.dir -->
|
|
||||||
<fail
|
|
||||||
message="sdk.dir is missing. Make sure to generate local.properties using 'android update project' or to inject it through the ANDROID_HOME environment variable."
|
|
||||||
unless="sdk.dir"
|
|
||||||
/>
|
|
||||||
|
|
||||||
<!--
|
|
||||||
Import per project custom build rules if present at the root of the project.
|
|
||||||
This is the place to put custom intermediary targets such as:
|
|
||||||
-pre-build
|
|
||||||
-pre-compile
|
|
||||||
-post-compile (This is typically used for code obfuscation.
|
|
||||||
Compiled code location: ${out.classes.absolute.dir}
|
|
||||||
If this is not done in place, override ${out.dex.input.absolute.dir})
|
|
||||||
-post-package
|
|
||||||
-post-build
|
|
||||||
-pre-clean
|
|
||||||
-->
|
|
||||||
<import file="custom_rules.xml" optional="true" />
|
|
||||||
|
|
||||||
<!-- Import the actual build file.
|
|
||||||
|
|
||||||
To customize existing targets, there are two options:
|
|
||||||
- Customize only one target:
|
|
||||||
- copy/paste the target into this file, *before* the
|
|
||||||
<import> task.
|
|
||||||
- customize it to your needs.
|
|
||||||
- Customize the whole content of build.xml
|
|
||||||
- copy/paste the content of the rules files (minus the top node)
|
|
||||||
into this file, replacing the <import> task.
|
|
||||||
- customize to your needs.
|
|
||||||
|
|
||||||
***********************
|
|
||||||
****** IMPORTANT ******
|
|
||||||
***********************
|
|
||||||
In all cases you must update the value of version-tag below to read 'custom' instead of an integer,
|
|
||||||
in order to avoid having your file be overridden by tools such as "android update project"
|
|
||||||
-->
|
|
||||||
<!-- version-tag: 1 -->
|
|
||||||
<import file="${sdk.dir}/tools/ant/build.xml" />
|
|
||||||
|
|
||||||
</project>
|
|
|
@ -1,11 +0,0 @@
|
||||||
# This file is automatically generated by Android Tools.
|
|
||||||
# Do not modify this file -- YOUR CHANGES WILL BE ERASED!
|
|
||||||
#
|
|
||||||
# This file must be checked in Version Control Systems.
|
|
||||||
#
|
|
||||||
# To customize properties used by the Ant build system use,
|
|
||||||
# "build.properties", and override values to adapt the script to your
|
|
||||||
# project structure.
|
|
||||||
|
|
||||||
# Project target.
|
|
||||||
target=android-12
|
|
|
@ -1,6 +0,0 @@
|
||||||
/** Automatically generated file. DO NOT MODIFY */
|
|
||||||
package org.libsdl.app;
|
|
||||||
|
|
||||||
public final class BuildConfig {
|
|
||||||
public final static boolean DEBUG = true;
|
|
||||||
}
|
|
|
@ -1,22 +0,0 @@
|
||||||
/* AUTO-GENERATED FILE. DO NOT MODIFY.
|
|
||||||
*
|
|
||||||
* This class was automatically generated by the
|
|
||||||
* aapt tool from the resource data it found. It
|
|
||||||
* should not be modified by hand.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package org.libsdl.app;
|
|
||||||
|
|
||||||
public final class R {
|
|
||||||
public static final class attr {
|
|
||||||
}
|
|
||||||
public static final class drawable {
|
|
||||||
public static final int ic_launcher1=0x7f020000;
|
|
||||||
}
|
|
||||||
public static final class layout {
|
|
||||||
public static final int main=0x7f030000;
|
|
||||||
}
|
|
||||||
public static final class string {
|
|
||||||
public static final int app_name=0x7f040000;
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1 +0,0 @@
|
||||||
include $(call all-subdir-makefiles)
|
|
|
@ -1,6 +0,0 @@
|
||||||
|
|
||||||
# Uncomment this if you're using STL in your project
|
|
||||||
# See CPLUSPLUS-SUPPORT.html in the NDK documentation for more information
|
|
||||||
# APP_STL := stlport_static
|
|
||||||
|
|
||||||
APP_ABI := armeabi armeabi-v7a x86
|
|
|
@ -1,19 +0,0 @@
|
||||||
LOCAL_PATH := $(call my-dir)
|
|
||||||
|
|
||||||
include $(CLEAR_VARS)
|
|
||||||
|
|
||||||
LOCAL_MODULE := main
|
|
||||||
|
|
||||||
SDL_PATH := ../SDL
|
|
||||||
|
|
||||||
LOCAL_C_INCLUDES := $(LOCAL_PATH)/$(SDL_PATH)/include
|
|
||||||
|
|
||||||
# Add your application source files here...
|
|
||||||
LOCAL_SRC_FILES := $(SDL_PATH)/src/main/android/SDL_android_main.c \
|
|
||||||
YourSourceHere.c
|
|
||||||
|
|
||||||
LOCAL_SHARED_LIBRARIES := SDL2
|
|
||||||
|
|
||||||
LOCAL_LDLIBS := -lGLESv1_CM -lGLESv2 -llog
|
|
||||||
|
|
||||||
include $(BUILD_SHARED_LIBRARY)
|
|
|
@ -1,12 +0,0 @@
|
||||||
LOCAL_PATH := $(call my-dir)
|
|
||||||
|
|
||||||
include $(CLEAR_VARS)
|
|
||||||
|
|
||||||
LOCAL_MODULE := main
|
|
||||||
|
|
||||||
LOCAL_SRC_FILES := YourSourceHere.c
|
|
||||||
|
|
||||||
LOCAL_STATIC_LIBRARIES := SDL2_static
|
|
||||||
|
|
||||||
include $(BUILD_SHARED_LIBRARY)
|
|
||||||
$(call import-module,SDL)LOCAL_PATH := $(call my-dir)
|
|
|
@ -1,20 +0,0 @@
|
||||||
# To enable ProGuard in your project, edit project.properties
|
|
||||||
# to define the proguard.config property as described in that file.
|
|
||||||
#
|
|
||||||
# Add project specific ProGuard rules here.
|
|
||||||
# By default, the flags in this file are appended to flags specified
|
|
||||||
# in ${sdk.dir}/tools/proguard/proguard-android.txt
|
|
||||||
# You can edit the include path and order by changing the ProGuard
|
|
||||||
# include property in project.properties.
|
|
||||||
#
|
|
||||||
# For more details, see
|
|
||||||
# http://developer.android.com/guide/developing/tools/proguard.html
|
|
||||||
|
|
||||||
# Add any project specific keep options here:
|
|
||||||
|
|
||||||
# If your project uses WebView with JS, uncomment the following
|
|
||||||
# and specify the fully qualified class name to the JavaScript interface
|
|
||||||
# class:
|
|
||||||
#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
|
|
||||||
# public *;
|
|
||||||
#}
|
|
|
@ -1,14 +0,0 @@
|
||||||
# This file is automatically generated by Android Tools.
|
|
||||||
# Do not modify this file -- YOUR CHANGES WILL BE ERASED!
|
|
||||||
#
|
|
||||||
# This file must be checked in Version Control Systems.
|
|
||||||
#
|
|
||||||
# To customize properties used by the Ant build system edit
|
|
||||||
# "ant.properties", and override values to adapt the script to your
|
|
||||||
# project structure.
|
|
||||||
#
|
|
||||||
# To enable ProGuard to shrink and obfuscate your code, uncomment this (available properties: sdk.dir, user.home):
|
|
||||||
#proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt
|
|
||||||
|
|
||||||
# Project target.
|
|
||||||
target=android-14
|
|
Before Width: | Height: | Size: 5.9 KiB |
Before Width: | Height: | Size: 3 KiB |
Before Width: | Height: | Size: 9.4 KiB |
Before Width: | Height: | Size: 19 KiB |
|
@ -1,13 +0,0 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
|
||||||
android:orientation="vertical"
|
|
||||||
android:layout_width="fill_parent"
|
|
||||||
android:layout_height="fill_parent"
|
|
||||||
>
|
|
||||||
<TextView
|
|
||||||
android:layout_width="fill_parent"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:text="Hello World, SDLActivity"
|
|
||||||
/>
|
|
||||||
</LinearLayout>
|
|
||||||
|
|
|
@ -1,4 +0,0 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<resources>
|
|
||||||
<string name="app_name">Openmw</string>
|
|
||||||
</resources>
|
|
12
extern/sdl4ogre/sdlwindowhelper.cpp
vendored
|
@ -45,14 +45,14 @@ SDLWindowHelper::SDLWindowHelper (SDL_Window* window, int w, int h,
|
||||||
winHandle = Ogre::StringConverter::toString(WindowContentViewHandle(wmInfo));
|
winHandle = Ogre::StringConverter::toString(WindowContentViewHandle(wmInfo));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
#elif BUILD_ANDROID
|
#elif ANDROID
|
||||||
case SDL_SYSWM_ANDROID:
|
case SDL_SYSWM_ANDROID:
|
||||||
winHandle = Ogre::StringConverter::toString((unsigned long)wmInfo.info.android.window);
|
winHandle = Ogre::StringConverter::toString((unsigned long)wmInfo.info.android.window);
|
||||||
winHandleSurface = Ogre::StringConverter::toString((unsigned long)wmInfo.info.android.surface);
|
winHandleSurface = Ogre::StringConverter::toString((unsigned long)wmInfo.info.android.surface);
|
||||||
// flag1=true;
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
#elif NOT_ANDROID
|
#else
|
||||||
|
|
||||||
case SDL_SYSWM_X11:
|
case SDL_SYSWM_X11:
|
||||||
winHandle = Ogre::StringConverter::toString((unsigned long)wmInfo.info.x11.window);
|
winHandle = Ogre::StringConverter::toString((unsigned long)wmInfo.info.x11.window);
|
||||||
|
@ -70,12 +70,10 @@ SDLWindowHelper::SDLWindowHelper (SDL_Window* window, int w, int h,
|
||||||
|
|
||||||
/// \todo externalWindowHandle is deprecated according to the source code. Figure out a way to get parentWindowHandle
|
/// \todo externalWindowHandle is deprecated according to the source code. Figure out a way to get parentWindowHandle
|
||||||
/// to work properly. On Linux/X11 it causes an occasional GLXBadDrawable error.
|
/// to work properly. On Linux/X11 it causes an occasional GLXBadDrawable error.
|
||||||
#ifdef BUILD_ANDROID
|
#ifdef ANDROID
|
||||||
params.insert(std::make_pair("externalWindowHandle", winHandle));
|
|
||||||
params.insert(std::make_pair("externalSurface", winHandleSurface));
|
params.insert(std::make_pair("externalSurface", winHandleSurface));
|
||||||
#else
|
|
||||||
params.insert(std::make_pair("externalWindowHandle", winHandle));
|
|
||||||
#endif
|
#endif
|
||||||
|
params.insert(std::make_pair("externalWindowHandle", winHandle));
|
||||||
|
|
||||||
mWindow = Ogre::Root::getSingleton().createRenderWindow(title, w, h, fullscreen, ¶ms);
|
mWindow = Ogre::Root::getSingleton().createRenderWindow(title, w, h, fullscreen, ¶ms);
|
||||||
}
|
}
|
||||||
|
|