Compile fix, cleanup
This commit is contained in:
@@ -1,34 +1,56 @@
|
|||||||
package lime.ui;
|
package lime.ui;
|
||||||
|
|
||||||
#if android
|
|
||||||
import lime.system.JNI;
|
import lime.system.JNI;
|
||||||
#elseif (lime_cffi && !macro)
|
import lime.utils.Log;
|
||||||
import lime.system.CFFI;
|
|
||||||
|
#if !macro
|
||||||
|
@:build(lime.system.CFFI.build())
|
||||||
#end
|
#end
|
||||||
|
|
||||||
|
|
||||||
class Haptic {
|
class Haptic {
|
||||||
|
|
||||||
#if ( android || ios )
|
|
||||||
private static var __vibrate:Int->Int->Void = null;
|
public static function vibrate (period:Int, duration:Int):Void {
|
||||||
#end
|
|
||||||
|
|
||||||
public static function vibrate(period:Int, duration:Int){
|
|
||||||
#if android
|
#if android
|
||||||
if(__vibrate==null){
|
|
||||||
__vibrate = JNI.createStaticMethod("org/haxe/lime/GameActivity", "vibrate", "(II)V");
|
if (lime_haptic_vibrate == null) {
|
||||||
}
|
|
||||||
try{
|
lime_haptic_vibrate = JNI.createStaticMethod ("org/haxe/lime/GameActivity", "vibrate", "(II)V");
|
||||||
// This will raise an exception if you don't have VIBRATE permission
|
|
||||||
__vibrate(period, duration);
|
}
|
||||||
} catch (e:Dynamic) {
|
|
||||||
trace("JNI Exception: Have you added VIBRATE permission?");
|
try {
|
||||||
}
|
|
||||||
#elseif ios
|
lime_haptic_vibrate (period, duration);
|
||||||
if(__vibrate == null){
|
|
||||||
__vibrate = CFFI.load ("lime", "lime_haptic_vibrate", 2);
|
} catch (e:Dynamic) {
|
||||||
}
|
|
||||||
__vibrate(period, duration);
|
Log.warn ("Haptic.vibrate is not available (the VIBRATE permission may be missing)");
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
#else
|
||||||
|
|
||||||
|
lime_haptic_vibrate (period, duration);
|
||||||
|
|
||||||
#end
|
#end
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// Native Methods
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#if android
|
||||||
|
private static var lime_haptic_vibrate (period:Int, duration:Int):Void;
|
||||||
|
#elseif (lime_cffi && !macro)
|
||||||
|
@:cffi private static function lime_haptic_vibrate (period:Int, duration:Int):Void;
|
||||||
|
#end
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -8,10 +8,9 @@ namespace lime {
|
|||||||
class Haptic {
|
class Haptic {
|
||||||
|
|
||||||
public:
|
public:
|
||||||
#ifdef IPHONE
|
|
||||||
static void Vibrate (int period, int duration);
|
static void Vibrate (int period, int duration);
|
||||||
#endif
|
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -697,14 +697,16 @@ namespace lime {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void lime_haptic_vibrate (int period, int duration) {
|
void lime_haptic_vibrate (int period, int duration) {
|
||||||
|
|
||||||
#ifdef IPHONE
|
#ifdef IPHONE
|
||||||
Haptic::Vibrate(period, duration);
|
Haptic::Vibrate (period, duration);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
value lime_image_encode (value buffer, int type, int quality, value bytes) {
|
value lime_image_encode (value buffer, int type, int quality, value bytes) {
|
||||||
|
|
||||||
ImageBuffer imageBuffer = ImageBuffer (buffer);
|
ImageBuffer imageBuffer = ImageBuffer (buffer);
|
||||||
@@ -1677,7 +1679,7 @@ namespace lime {
|
|||||||
DEFINE_PRIME1 (lime_gamepad_get_device_name);
|
DEFINE_PRIME1 (lime_gamepad_get_device_name);
|
||||||
DEFINE_PRIME2 (lime_gzip_compress);
|
DEFINE_PRIME2 (lime_gzip_compress);
|
||||||
DEFINE_PRIME2 (lime_gzip_decompress);
|
DEFINE_PRIME2 (lime_gzip_decompress);
|
||||||
DEFINE_PRIME2 (lime_haptic_vibrate);
|
DEFINE_PRIME2v (lime_haptic_vibrate);
|
||||||
DEFINE_PRIME3v (lime_image_data_util_color_transform);
|
DEFINE_PRIME3v (lime_image_data_util_color_transform);
|
||||||
DEFINE_PRIME6v (lime_image_data_util_copy_channel);
|
DEFINE_PRIME6v (lime_image_data_util_copy_channel);
|
||||||
DEFINE_PRIME7v (lime_image_data_util_copy_pixels);
|
DEFINE_PRIME7v (lime_image_data_util_copy_pixels);
|
||||||
|
|||||||
@@ -2,12 +2,13 @@
|
|||||||
|
|
||||||
#import <AudioToolbox/AudioServices.h>
|
#import <AudioToolbox/AudioServices.h>
|
||||||
|
|
||||||
|
|
||||||
namespace lime {
|
namespace lime {
|
||||||
|
|
||||||
|
|
||||||
void Haptic::Vibrate (int period, int duration) {
|
void Haptic::Vibrate (int period, int duration) {
|
||||||
|
|
||||||
AudioServicesPlaySystemSound(kSystemSoundID_Vibrate);
|
AudioServicesPlaySystemSound (kSystemSoundID_Vibrate);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -39,7 +39,8 @@ public class GameActivity extends SDLActivity {
|
|||||||
});
|
});
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public static void vibrate (int period, int duration) {
|
public static void vibrate (int period, int duration) {
|
||||||
|
|
||||||
Vibrator v = (Vibrator)mSingleton.getSystemService (Context.VIBRATOR_SERVICE);
|
Vibrator v = (Vibrator)mSingleton.getSystemService (Context.VIBRATOR_SERVICE);
|
||||||
@@ -49,7 +50,7 @@ public class GameActivity extends SDLActivity {
|
|||||||
v.vibrate (duration);
|
v.vibrate (duration);
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
int periodMS = (int)Math.ceil (period / 2);
|
int periodMS = (int)Math.ceil (period / 2);
|
||||||
int count = (int)Math.ceil ((duration / period) * 2);
|
int count = (int)Math.ceil ((duration / period) * 2);
|
||||||
long[] pattern = new long[count];
|
long[] pattern = new long[count];
|
||||||
|
|||||||
Reference in New Issue
Block a user