Add garbage collection to native pointer values

This commit is contained in:
Joshua Granick
2015-09-22 13:30:57 -07:00
parent b3d172f7ce
commit 0e42ea9159
19 changed files with 756 additions and 588 deletions

View File

@@ -532,11 +532,11 @@ class NativeApplication {
#if !macro
@:cffi private static function lime_application_create (config:Dynamic):Float;
@:cffi private static function lime_application_event_manager_register (callback:Dynamic, eventObject:Dynamic):Void;
@:cffi private static function lime_application_exec (handle:Float):Int;
@:cffi private static function lime_application_init (handle:Float):Void;
@:cffi private static function lime_application_quit (handle:Float):Int;
@:cffi private static function lime_application_set_frame_rate (handle:Float, value:Float):Void;
@:cffi private static function lime_application_update (handle:Float):Bool;
@:cffi private static function lime_application_exec (handle:Dynamic):Int;
@:cffi private static function lime_application_init (handle:Dynamic):Void;
@:cffi private static function lime_application_quit (handle:Dynamic):Int;
@:cffi private static function lime_application_set_frame_rate (handle:Dynamic, value:Float):Void;
@:cffi private static function lime_application_update (handle:Dynamic):Bool;
@:cffi private static function lime_gamepad_event_manager_register (callback:Dynamic, eventObject:Dynamic):Void;
@:cffi private static function lime_key_event_manager_register (callback:Dynamic, eventObject:Dynamic):Void;
@:cffi private static function lime_mouse_event_manager_register (callback:Dynamic, eventObject:Dynamic):Void;

View File

@@ -148,7 +148,7 @@ class NativeMouse {
@:cffi private static function lime_mouse_set_cursor (cursor:Int):Void;
@:cffi private static function lime_mouse_set_lock (lock:Bool):Void;
@:cffi private static function lime_mouse_show ():Void;
@:cffi private static function lime_mouse_warp (x:Int, y:Int, window:Float):Void;
@:cffi private static function lime_mouse_warp (x:Int, y:Int, window:Dynamic):Void;
#end

View File

@@ -159,13 +159,13 @@ class NativeRenderer {
#if !macro
@:cffi private static function lime_renderer_create (window:Float):Float;
@:cffi private static function lime_renderer_flip (handle:Float):Void;
@:cffi private static function lime_renderer_get_context (handle:Float):Float;
@:cffi private static function lime_renderer_get_type (handle:Float):Dynamic;
@:cffi private static function lime_renderer_lock (handle:Float):Dynamic;
@:cffi private static function lime_renderer_make_current (handle:Float):Void;
@:cffi private static function lime_renderer_unlock (handle:Float):Void;
@:cffi private static function lime_renderer_create (window:Dynamic):Dynamic;
@:cffi private static function lime_renderer_flip (handle:Dynamic):Void;
@:cffi private static function lime_renderer_get_context (handle:Dynamic):Float;
@:cffi private static function lime_renderer_get_type (handle:Dynamic):Dynamic;
@:cffi private static function lime_renderer_lock (handle:Dynamic):Dynamic;
@:cffi private static function lime_renderer_make_current (handle:Dynamic):Void;
@:cffi private static function lime_renderer_unlock (handle:Dynamic):Void;
#end

View File

@@ -270,23 +270,23 @@ class NativeWindow {
#if !macro
@:cffi private static function lime_window_alert (handle:Float, message:String, title:String):Void;
@:cffi private static function lime_window_close (handle:Float):Void;
@:cffi private static function lime_window_create (application:Float, width:Int, height:Int, flags:Int, title:String):Float;
@:cffi private static function lime_window_focus (handle:Float):Void;
@:cffi private static function lime_window_get_enable_text_events (handle:Float):Bool;
@:cffi private static function lime_window_get_height (handle:Float):Int;
@:cffi private static function lime_window_get_id (handle:Float):Int;
@:cffi private static function lime_window_get_width (handle:Float):Int;
@:cffi private static function lime_window_get_x (handle:Float):Int;
@:cffi private static function lime_window_get_y (handle:Float):Int;
@:cffi private static function lime_window_move (handle:Float, x:Int, y:Int):Void;
@:cffi private static function lime_window_resize (handle:Float, width:Int, height:Int):Void;
@:cffi private static function lime_window_set_enable_text_events (handle:Float, enabled:Bool):Void;
@:cffi private static function lime_window_set_fullscreen (handle:Float, fullscreen:Bool):Bool;
@:cffi private static function lime_window_set_icon (handle:Float, buffer:Dynamic):Void;
@:cffi private static function lime_window_set_minimized (handle:Float, minimized:Bool):Bool;
@:cffi private static function lime_window_set_title (handle:Float, title:String):Dynamic;
@:cffi private static function lime_window_alert (handle:Dynamic, message:String, title:String):Void;
@:cffi private static function lime_window_close (handle:Dynamic):Void;
@:cffi private static function lime_window_create (application:Dynamic, width:Int, height:Int, flags:Int, title:String):Dynamic;
@:cffi private static function lime_window_focus (handle:Dynamic):Void;
@:cffi private static function lime_window_get_enable_text_events (handle:Dynamic):Bool;
@:cffi private static function lime_window_get_height (handle:Dynamic):Int;
@:cffi private static function lime_window_get_id (handle:Dynamic):Int;
@:cffi private static function lime_window_get_width (handle:Dynamic):Int;
@:cffi private static function lime_window_get_x (handle:Dynamic):Int;
@:cffi private static function lime_window_get_y (handle:Dynamic):Int;
@:cffi private static function lime_window_move (handle:Dynamic, x:Int, y:Int):Void;
@:cffi private static function lime_window_resize (handle:Dynamic, width:Int, height:Int):Void;
@:cffi private static function lime_window_set_enable_text_events (handle:Dynamic, enabled:Bool):Void;
@:cffi private static function lime_window_set_fullscreen (handle:Dynamic, fullscreen:Bool):Bool;
@:cffi private static function lime_window_set_icon (handle:Dynamic, buffer:Dynamic):Void;
@:cffi private static function lime_window_set_minimized (handle:Dynamic, minimized:Bool):Bool;
@:cffi private static function lime_window_set_title (handle:Dynamic, title:String):Dynamic;
#end