From 73160ce78b92cef100ee619638e1372270662102 Mon Sep 17 00:00:00 2001 From: underscorediscovery Date: Fri, 12 Jul 2013 05:43:54 -0230 Subject: [PATCH] Cleaning up some older flash code, for the code completion stuff. Adding nmeCheckTimers from the nme timer class to work and actuate to work --- examples/SimpleOpenGL/project.nmml | 6 +- lime/AudioHandler.hx | 4 +- lime/LiME.hx | 3 + lime/geometry/Matrix3D.hx | 2 +- lime/utils/Assets.hx | 4 +- lime/utils/ByteArray.hx | 6 +- lime/utils/URLLoader.hx | 320 ----------------------------- lime/utils/native/ByteArray.hx | 2 +- 8 files changed, 13 insertions(+), 334 deletions(-) delete mode 100644 lime/utils/URLLoader.hx diff --git a/examples/SimpleOpenGL/project.nmml b/examples/SimpleOpenGL/project.nmml index b4a7656eb..c62c6c3a6 100644 --- a/examples/SimpleOpenGL/project.nmml +++ b/examples/SimpleOpenGL/project.nmml @@ -8,11 +8,7 @@ company="underscorediscovery" /> - + >> Named sounds are not allowed to have duplicate names"; } - var _handle = nme_sound_from_file( nme.AssetData.path.get(_file), false); + var _handle = nme_sound_from_file( nme.AssetData.path.get(_file), _music); var _sound = new Sound(_handle); sounds.set(_name, _sound); } diff --git a/lime/LiME.hx b/lime/LiME.hx index 4f234389f..0c55865d3 100644 --- a/lime/LiME.hx +++ b/lime/LiME.hx @@ -253,6 +253,9 @@ class LiME { _debug('on_update ' + Timer.stamp(), true, true); + //Keep the Timers updated. todo, tidy. + Timer.nmeCheckTimers(); + if(!has_shutdown) { if(host.update != null) { diff --git a/lime/geometry/Matrix3D.hx b/lime/geometry/Matrix3D.hx index c464927cd..e44abc702 100644 --- a/lime/geometry/Matrix3D.hx +++ b/lime/geometry/Matrix3D.hx @@ -489,5 +489,5 @@ class Matrix3D } #else -typedef Matrix3D = flash.geom.Matrix3D; +typedef Matrix3D = Dynamic; //todo ; flash.geom.Matrix3D; #end diff --git a/lime/utils/Assets.hx b/lime/utils/Assets.hx index 74f508a3a..ab04b24db 100644 --- a/lime/utils/Assets.hx +++ b/lime/utils/Assets.hx @@ -517,6 +517,8 @@ enum LibraryType { #else +#if flash + import haxe.io.Bytes; import haxe.macro.Context; import haxe.macro.Expr; @@ -761,5 +763,5 @@ class Assets { } - +#end //if flash #end \ No newline at end of file diff --git a/lime/utils/ByteArray.hx b/lime/utils/ByteArray.hx index c536ca4c4..3ef607d63 100644 --- a/lime/utils/ByteArray.hx +++ b/lime/utils/ByteArray.hx @@ -1,9 +1,7 @@ package lime.utils; -#if lime_native - typedef ByteArray = lime.utils.native.ByteArray; -#end //lime_native - #if lime_html5 typedef ByteArray = lime.utils.html5.ByteArray; +#else + typedef ByteArray = lime.utils.native.ByteArray; #end //lime_html5 diff --git a/lime/utils/URLLoader.hx b/lime/utils/URLLoader.hx deleted file mode 100644 index 447d9378b..000000000 --- a/lime/utils/URLLoader.hx +++ /dev/null @@ -1,320 +0,0 @@ -package lime.utils; -#if js - - -// import flash.events.Event; -// import flash.events.EventDispatcher; -import flash.events.HTTPStatusEvent; -import flash.events.IOErrorEvent; -import flash.events.ProgressEvent; -// import flash.errors.IOError; -// import flash.events.SecurityErrorEvent; - -import flash.utils.ByteArray; -import js.html.EventTarget; -import js.html.XMLHttpRequest; -import js.Browser; -import js.Lib; - - -class URLLoader extends EventDispatcher { - - public var bytesLoaded:Int; - public var bytesTotal:Int; - public var data:Dynamic; - public var dataFormat(default, set):URLLoaderDataFormat; - private function set_dataFormat(inputVal:URLLoaderDataFormat):URLLoaderDataFormat { - // prevent inadvertently using typed arrays when they are unsupported - // @todo move these sorts of tests somewhere common in the vein of Modernizr - if (inputVal == URLLoaderDataFormat.BINARY - && !Reflect.hasField(Browser.window, "ArrayBuffer")) { - dataFormat = URLLoaderDataFormat.TEXT; - } else { - dataFormat = inputVal; - } - return dataFormat; - } - - - public function new(request:URLRequest = null) { - - super(); - - bytesLoaded = 0; - bytesTotal = 0; - dataFormat = URLLoaderDataFormat.TEXT; - - if (request != null) { - - load(request); - - } - - } - - - public function close():Void { - - - - } - - - private dynamic function getData():Dynamic { - - return null; - - } - - - public function load(request:URLRequest):Void { - - requestUrl(request.url, request.method, request.data, request.formatRequestHeaders()); - - } - - - private function registerEvents(subject:EventTarget):Void { - - var self = this; - if (untyped __js__("typeof XMLHttpRequestProgressEvent") != __js__('"undefined"')) { - - subject.addEventListener("progress", onProgress, false); - - } - - untyped subject.onreadystatechange = function() { - - if (subject.readyState != 4) return; - - var s = try subject.status catch( e : Dynamic ) null; - - if (s == untyped __js__("undefined")) { - - s = null; - - } - - if (s != null) { - - self.onStatus(s); - - } - - //js.Lib.alert (s); - - if (s != null && s >= 200 && s < 400) { - - self.onData(subject.response); - - } else { - - if (s == null) { - - self.onError("Failed to connect or resolve host"); - - } else if (s == 12029) { - - self.onError("Failed to connect to host"); - - } else if (s == 12007) { - - self.onError("Unknown host"); - - } else if (s == 0) { - - self.onError("Unable to make request (may be blocked due to cross-domain permissions)"); - self.onSecurityError("Unable to make request (may be blocked due to cross-domain permissions)"); - - } else { - - self.onError("Http Error #" + subject.status); - - } - - } - - }; - - } - - - private function requestUrl(url:String, method:String, data:Dynamic, requestHeaders:Array):Void { - - var xmlHttpRequest:XMLHttpRequest = untyped __new__("XMLHttpRequest"); - registerEvents(cast xmlHttpRequest); - var uri:Dynamic = ""; - - if (Std.is(data, ByteArray)) { - - var data:ByteArray = cast data; - - switch (dataFormat) { - - case BINARY: uri = data.nmeGetBuffer(); - default: uri = data.readUTFBytes(data.length); - - } - - } else if (Std.is(data, URLVariables)) { - - var data:URLVariables = cast data; - - for (p in Reflect.fields(data)) { - - if (uri.length != 0) uri += "&"; - uri += StringTools.urlEncode(p) + "=" + StringTools.urlEncode(Reflect.field(data, p)); - - } - - } else { - - if (data != null) { - - uri = data.toString(); - - } - - } - - try { - - if (method == "GET" && uri != null && uri != "") { - - var question = url.split("?").length <= 1; - xmlHttpRequest.open(method, url + (if (question) "?" else "&") + uri, true); - uri = ""; - - } else { - - //js.Lib.alert ("open: " + method + ", " + url + ", true"); - xmlHttpRequest.open(method, url, true); - - } - - } catch(e:Dynamic) { - - onError(e.toString()); - return; - - } - - //js.Lib.alert ("dataFormat: " + dataFormat); - - switch (dataFormat) { - - case BINARY: untyped xmlHttpRequest.responseType = 'arraybuffer'; - default: - - } - - for (header in requestHeaders) { - - //js.Lib.alert ("setRequestHeader: " + header.name + ", " + header.value); - xmlHttpRequest.setRequestHeader(header.name, header.value); - - } - - //js.Lib.alert ("uri: " + uri); - - xmlHttpRequest.send(uri); - onOpen(); - - getData = function() { - - if (xmlHttpRequest.response != null) { - - return xmlHttpRequest.response; - - } else { - - return xmlHttpRequest.responseText; - - } - - }; - - } - - - - - // Event Handlers - - - - - private function onData(_):Void { - - var content:Dynamic = getData(); - - switch (dataFormat) { - - case BINARY: this.data = ByteArray.nmeOfBuffer(content); - default: this.data = Std.string(content); - - } - - var evt = new Event(Event.COMPLETE); - evt.currentTarget = this; - dispatchEvent(evt); - - } - - - private function onError(msg:String):Void { - - var evt = new IOErrorEvent(IOErrorEvent.IO_ERROR); - evt.text = msg; - evt.currentTarget = this; - dispatchEvent(evt); - - } - - - private function onOpen():Void { - - var evt = new Event(Event.OPEN); - evt.currentTarget = this; - dispatchEvent(evt); - - } - - - private function onProgress(event:XMLHttpRequestProgressEvent):Void { - - var evt = new ProgressEvent(ProgressEvent.PROGRESS); - evt.currentTarget = this; - evt.bytesLoaded = event.loaded; - evt.bytesTotal = event.total; - dispatchEvent(evt); - - } - - - private function onSecurityError(msg:String):Void { - - var evt = new SecurityErrorEvent(SecurityErrorEvent.SECURITY_ERROR); - evt.text = msg; - evt.currentTarget = this; - dispatchEvent(evt); - - } - - - private function onStatus(status:Int):Void { - - var evt = new HTTPStatusEvent(HTTPStatusEvent.HTTP_STATUS, false, false, status); - evt.currentTarget = this; - dispatchEvent(evt); - - } - - -} - - -typedef XMLHttpRequestProgressEvent = Dynamic; - - -#end \ No newline at end of file diff --git a/lime/utils/native/ByteArray.hx b/lime/utils/native/ByteArray.hx index 4a24b79c1..bfa3527ca 100644 --- a/lime/utils/native/ByteArray.hx +++ b/lime/utils/native/ByteArray.hx @@ -630,5 +630,5 @@ class ByteArray extends Bytes #if !haxe3 , #end implements ArrayAccess #if } #else -typedef ByteArray = flash.utils.ByteArray; +typedef ByteArray = Dynamic;//todo ; flash.utils.ByteArray; #end