added loader sample
This commit is contained in:
5
samples/02-loader/build.hxml
Executable file
5
samples/02-loader/build.hxml
Executable file
@@ -0,0 +1,5 @@
|
|||||||
|
-cp src
|
||||||
|
-lib haxework
|
||||||
|
-main LoaderExample.hx
|
||||||
|
-swf-version 10.1
|
||||||
|
-swf target/LoaderExample.swf
|
||||||
43
samples/02-loader/src/LoaderExample.hx
Executable file
43
samples/02-loader/src/LoaderExample.hx
Executable file
@@ -0,0 +1,43 @@
|
|||||||
|
package;
|
||||||
|
|
||||||
|
import flash.display.Bitmap;
|
||||||
|
import flash.Lib;
|
||||||
|
import flash.display.BitmapData;
|
||||||
|
import haxework.net.ImageLoader;
|
||||||
|
import haxework.net.JsonLoader;
|
||||||
|
|
||||||
|
typedef ChannelItem = {
|
||||||
|
var id:String;
|
||||||
|
var maker:String;
|
||||||
|
var title:String;
|
||||||
|
var message:String;
|
||||||
|
}
|
||||||
|
|
||||||
|
class LoaderExample {
|
||||||
|
|
||||||
|
public static function main() {
|
||||||
|
// Json
|
||||||
|
trace("Json Request");
|
||||||
|
new JsonLoader().GET("http://umix.tv/channel/data2/renova.json")
|
||||||
|
.success(function(channel:Array<ChannelItem>) {
|
||||||
|
trace("Json Ok: " + channel.length);
|
||||||
|
for (item in channel) {
|
||||||
|
trace(item.id + ": " + item.message);
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.fail(function(error) {
|
||||||
|
trace(error);
|
||||||
|
});
|
||||||
|
|
||||||
|
// Image
|
||||||
|
trace("Image Request");
|
||||||
|
new ImageLoader().GET("http://umix.tv/channel/block/renova/1")
|
||||||
|
.success(function(image:BitmapData) {
|
||||||
|
trace("Image Ok: " + image.width + "x" + image.height);
|
||||||
|
Lib.current.addChild(new Bitmap(image));
|
||||||
|
})
|
||||||
|
.fail(function(error) {
|
||||||
|
trace(error);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -74,7 +74,7 @@ class BaseLoader<T> implements ILoader<T> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public function GET(url:String, data:Dynamic = null):ICallback<T> {
|
public function GET(url:String, data:Dynamic = null):ICallback<T> {
|
||||||
#if openfl
|
#if (openfl && lime)
|
||||||
if (StringTools.startsWith(url, "%assets%")) {
|
if (StringTools.startsWith(url, "%assets%")) {
|
||||||
var path:String = url.substring(9);
|
var path:String = url.substring(9);
|
||||||
var bytes:ByteArray = openfl.Assets.getBytes(path);
|
var bytes:ByteArray = openfl.Assets.getBytes(path);
|
||||||
|
|||||||
@@ -1,10 +1,15 @@
|
|||||||
package haxework.provider;
|
package haxework.provider;
|
||||||
|
|
||||||
|
import haxework.net.manage.LoaderManager;
|
||||||
|
import haxework.net.manage.ILoaderManager;
|
||||||
import haxe.ds.ObjectMap;
|
import haxe.ds.ObjectMap;
|
||||||
|
|
||||||
class Provider {
|
class Provider {
|
||||||
|
|
||||||
private static var factories:ObjectMap<Dynamic, Class<Dynamic>> = new ObjectMap<Dynamic, Class<Dynamic>>();
|
//private static var factories:ObjectMap<Dynamic, Class<Dynamic>> = new ObjectMap<Dynamic, Class<Dynamic>>();
|
||||||
|
private static var factories:ObjectMap<Dynamic, Class<Dynamic>> = cast [
|
||||||
|
ILoaderManager => LoaderManager
|
||||||
|
];
|
||||||
private static var args:ObjectMap<Dynamic, Array<Dynamic>> = new ObjectMap<Dynamic, Array<Dynamic>>();
|
private static var args:ObjectMap<Dynamic, Array<Dynamic>> = new ObjectMap<Dynamic, Array<Dynamic>>();
|
||||||
private static var instances:ObjectMap<Dynamic, Dynamic> = new ObjectMap<Dynamic, Dynamic>();
|
private static var instances:ObjectMap<Dynamic, Dynamic> = new ObjectMap<Dynamic, Dynamic>();
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user