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 {
|
private static function doubleDigit(num:Int):String {
|
||||||
return ((num < 10) ? "0" : "") + num;
|
return ((num < 10) ? "0" : "") + num;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,4 +3,5 @@ package haxework.format;
|
|||||||
interface IFormatter {
|
interface IFormatter {
|
||||||
public function formatDate(date:Date, format:String):String;
|
public function formatDate(date:Date, format:String):String;
|
||||||
public function formatDateFloat(date:Float, 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");
|
//Reflect.deleteField(data, "type");
|
||||||
var object:Dynamic = instance(type);
|
var object:Dynamic = instance(type);
|
||||||
new GuiF(object, data, links).fill();
|
new GuiF(object, data, links).fill();
|
||||||
|
var initMethod:Dynamic = Reflect.field(object, "init");
|
||||||
|
if (initMethod != null) Reflect.callMethod(object, initMethod, []);
|
||||||
return object;
|
return object;
|
||||||
} else if (Std.is(data, String)) {
|
} else if (Std.is(data, String)) {
|
||||||
return GuiF.convertString(data, links);
|
return GuiF.convertString(data, links);
|
||||||
|
|||||||
@@ -6,10 +6,12 @@ import flash.errors.Error;
|
|||||||
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 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>();
|
||||||
|
|
||||||
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);
|
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 {
|
public static function set<T>(i:Class<T>, instance:T, ?type:Dynamic):Void {
|
||||||
@@ -21,7 +23,7 @@ class Provider {
|
|||||||
if (instances.exists(key)) {
|
if (instances.exists(key)) {
|
||||||
return instances.get(key);
|
return instances.get(key);
|
||||||
} else if (factories.exists(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);
|
instances.set(key, instance);
|
||||||
return instance;
|
return instance;
|
||||||
} else {
|
} else {
|
||||||
@@ -32,7 +34,7 @@ class Provider {
|
|||||||
public static function build<T>(i:Class<T>, ?type:Dynamic):T {
|
public static function build<T>(i:Class<T>, ?type:Dynamic):T {
|
||||||
var key:Dynamic = (type == null) ? i : type;
|
var key:Dynamic = (type == null) ? i : type;
|
||||||
if (factories.exists(key)) {
|
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;
|
return instance;
|
||||||
} else {
|
} else {
|
||||||
throw new Error("Factory for\"" + i + "\" not found");
|
throw new Error("Factory for\"" + i + "\" not found");
|
||||||
|
|||||||
Reference in New Issue
Block a user