diff --git a/project/Build.xml b/project/Build.xml index 846a2b0b3..5f7e9aae6 100644 --- a/project/Build.xml +++ b/project/Build.xml @@ -58,6 +58,8 @@ + + diff --git a/project/src/graphics/opengl/OpenGLBindings.cpp b/project/src/graphics/opengl/OpenGLBindings.cpp index c9c45c2b1..d7d8f6785 100644 --- a/project/src/graphics/opengl/OpenGLBindings.cpp +++ b/project/src/graphics/opengl/OpenGLBindings.cpp @@ -1131,7 +1131,7 @@ namespace lime { value lime_gl_get_shader_precision_format(value inShader,value inPrec) { - #ifdef lime_GLES + #ifdef LIME_GLES int range[2]; int precision; @@ -1519,7 +1519,7 @@ namespace lime { value lime_gl_clear_depth(value depth) { - #ifdef lime_GLES + #ifdef LIME_GLES glClearDepthf(val_number(depth)); #else glClearDepth(val_number(depth)); @@ -1568,7 +1568,7 @@ namespace lime { value lime_gl_depth_range(value inNear, value inFar) { - #ifdef lime_GLES + #ifdef LIME_GLES glDepthRangef(val_number(inNear), val_number(inFar)); #else glDepthRange(val_number(inNear), val_number(inFar)); diff --git a/project/src/system/ios/System.mm b/project/src/system/ios/System.mm new file mode 100644 index 000000000..8fa6a66c2 --- /dev/null +++ b/project/src/system/ios/System.mm @@ -0,0 +1,52 @@ +#import +#import + +namespace lime +{ + +FILE *OpenRead(const char *inName) +{ + FILE *result = 0; + + if (inName[0]=='/') + { + result = fopen(inName,"rb"); + } + else + { + NSString *assetPath = [@"assets" stringByAppendingPathComponent:[NSString stringWithFormat:@"%s", inName]]; + + NSString *resourcePath = [[NSBundle mainBundle] resourcePath]; + NSString *path = [resourcePath stringByAppendingPathComponent:assetPath]; + + // search in documents if not in the resource bundle + if ( ! [[NSFileManager defaultManager] fileExistsAtPath:path]) + { + NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); + NSString *documentDir = [paths objectAtIndex:0]; + path = [documentDir stringByAppendingPathComponent:assetPath]; + } + + result = fopen([path UTF8String],"rb"); + } + + return result; +} + + +FILE *OpenOverwrite(const char *inName) +{ + NSString *str = [@"assets" stringByAppendingPathComponent:[NSString stringWithFormat:@"%s", inName]]; + + NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); + NSString *documentDir = [paths objectAtIndex:0]; + NSString *path = [documentDir stringByAppendingPathComponent:str]; + + // create any directories if they don't exist + [[NSFileManager defaultManager] createDirectoryAtPath:[path stringByDeletingLastPathComponent] withIntermediateDirectories:YES attributes:nil error:NULL]; + + FILE * result = fopen([path UTF8String],"w"); + return result; +} + +}