fixes
This commit is contained in:
@@ -24,6 +24,13 @@ class Formatter implements IFormatter {
|
||||
});
|
||||
}
|
||||
|
||||
public function formatTime(time:Int):String {
|
||||
time = Math.round(time / 1000);
|
||||
var mm:Int = Math.floor(time / 60);
|
||||
var ss:Int = time - mm * 60;
|
||||
return doubleDigit(mm) + ":" + doubleDigit(ss);
|
||||
}
|
||||
|
||||
private static function doubleDigit(num:Int):String {
|
||||
return ((num < 10) ? "0" : "") + num;
|
||||
}
|
||||
|
||||
@@ -3,4 +3,5 @@ package haxework.format;
|
||||
interface IFormatter {
|
||||
public function formatDate(date:Date, format:String):String;
|
||||
public function formatDateFloat(date:Float, format:String):String;
|
||||
public function formatTime(time:Int):String;
|
||||
}
|
||||
@@ -55,6 +55,8 @@ class GuiB {
|
||||
//Reflect.deleteField(data, "type");
|
||||
var object:Dynamic = instance(type);
|
||||
new GuiF(object, data, links).fill();
|
||||
var initMethod:Dynamic = Reflect.field(object, "init");
|
||||
if (initMethod != null) Reflect.callMethod(object, initMethod, []);
|
||||
return object;
|
||||
} else if (Std.is(data, String)) {
|
||||
return GuiF.convertString(data, links);
|
||||
|
||||
@@ -6,10 +6,12 @@ import flash.errors.Error;
|
||||
class Provider {
|
||||
|
||||
private static var factories:ObjectMap<Dynamic, Class<Dynamic>> = new ObjectMap<Dynamic, Class<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>();
|
||||
|
||||
public static function setFactory<T>(i:Class<T>, clazz:Class<T>, ?type:Dynamic):Void {
|
||||
public static function setFactory<T>(i:Class<T>, clazz:Class<T>, ?type:Dynamic, ?args:Array<Dynamic>):Void {
|
||||
factories.set(type == null ? i : i + type, clazz);
|
||||
if (args != null) Provider.args.set(type == null ? i : i + type, args);
|
||||
}
|
||||
|
||||
public static function set<T>(i:Class<T>, instance:T, ?type:Dynamic):Void {
|
||||
@@ -21,7 +23,7 @@ class Provider {
|
||||
if (instances.exists(key)) {
|
||||
return instances.get(key);
|
||||
} else if (factories.exists(key)) {
|
||||
var instance:T = Type.createInstance(factories.get(key), []);
|
||||
var instance:T = Type.createInstance(factories.get(key), args.exists(key) ? args.get(key) : []);
|
||||
instances.set(key, instance);
|
||||
return instance;
|
||||
} else {
|
||||
@@ -32,7 +34,7 @@ class Provider {
|
||||
public static function build<T>(i:Class<T>, ?type:Dynamic):T {
|
||||
var key:Dynamic = (type == null) ? i : type;
|
||||
if (factories.exists(key)) {
|
||||
var instance:T = Type.createInstance(factories.get(key), []);
|
||||
var instance:T = Type.createInstance(factories.get(key), args.exists(key) ? args.get(key) : []);
|
||||
return instance;
|
||||
} else {
|
||||
throw new Error("Factory for\"" + i + "\" not found");
|
||||
|
||||
Reference in New Issue
Block a user