39 lines
1.1 KiB
Haxe
39 lines
1.1 KiB
Haxe
|
package kernel;
|
||
|
|
||
|
import kernel.ui.WindowContext;
|
||
|
import kernel.ui.WindowManager;
|
||
|
import lib.TermWriteable;
|
||
|
import lib.TermIO;
|
||
|
|
||
|
/**
|
||
|
Log messages to specified output.
|
||
|
**/
|
||
|
class Log {
|
||
|
private static final context:WindowContext = WindowManager.instance.createNewContext();
|
||
|
private static var writer:TermIO = new TermIO(context);
|
||
|
|
||
|
private static function setMainoutout(newOutput: TermWriteable) {
|
||
|
writer = new TermIO(newOutput);
|
||
|
}
|
||
|
|
||
|
public static function info(msg: Dynamic, ?pos:haxe.PosInfos){
|
||
|
writer.writeLn("[INFO]["+pos.className+"]: "+Std.string(msg));
|
||
|
}
|
||
|
|
||
|
public static function warn(msg: Dynamic, ?pos:haxe.PosInfos){
|
||
|
writer.writeLn("[WARN]["+pos.className+"]: "+Std.string(msg),Yellow);
|
||
|
}
|
||
|
|
||
|
public static function error(msg: Dynamic,?pos:haxe.PosInfos) {
|
||
|
writer.writeLn("[ERRO]["+pos.className+"]: "+Std.string(msg),Red);
|
||
|
}
|
||
|
|
||
|
public static function debug(msg: Dynamic,?pos:haxe.PosInfos) {
|
||
|
writer.writeLn("[DEBG]["+pos.className+"]: "+Std.string(msg),Gray);
|
||
|
}
|
||
|
|
||
|
public static function moveToOutput(addr: String) {
|
||
|
WindowManager.instance.focusContextToOutput(context,addr);
|
||
|
}
|
||
|
}
|