made Log static class
This commit is contained in:
parent
e1e0180502
commit
a93ee1cddf
@ -24,7 +24,7 @@ class KernelLog implements Process {
|
|||||||
|
|
||||||
statelessCtx.setRenderFunc(this.render);
|
statelessCtx.setRenderFunc(this.render);
|
||||||
|
|
||||||
Log.instance.onLog.handle(()->{
|
Log.onLog.handle(()->{
|
||||||
statelessCtx.requestRender();
|
statelessCtx.requestRender();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@ -33,7 +33,7 @@ class KernelLog implements Process {
|
|||||||
ctx.clear();
|
ctx.clear();
|
||||||
ctx.setCursorPos(0,0);
|
ctx.setCursorPos(0,0);
|
||||||
|
|
||||||
var lines = Log.instance.getLines();
|
var lines = Log.getLines();
|
||||||
var height = ctx.getSize().y;
|
var height = ctx.getSize().y;
|
||||||
var start = MathI.max(lines.length - height,0);
|
var start = MathI.max(lines.length - height,0);
|
||||||
|
|
||||||
|
@ -24,7 +24,7 @@ class Init {
|
|||||||
|
|
||||||
public static function initKernel() {
|
public static function initKernel() {
|
||||||
// Init singeltons here because haxe is confused about the order to create them.
|
// Init singeltons here because haxe is confused about the order to create them.
|
||||||
Log.instance = new Log();
|
Log.init();
|
||||||
KernelEvents.init();
|
KernelEvents.init();
|
||||||
Peripheral.instance = new Peripheral();
|
Peripheral.instance = new Peripheral();
|
||||||
|
|
||||||
|
@ -11,42 +11,41 @@ using tink.CoreApi;
|
|||||||
Central logging system.
|
Central logging system.
|
||||||
**/
|
**/
|
||||||
class Log {
|
class Log {
|
||||||
public static var instance:Log;
|
|
||||||
|
|
||||||
private static inline final MAX_LINES:Int = 100;
|
private static inline final MAX_LINES:Int = 100;
|
||||||
|
|
||||||
public final onLog:Signal<LogLine>;
|
public static var onLog(default, null):Signal<LogLine>;
|
||||||
|
|
||||||
private final onLogTrigger:SignalTrigger<LogLine> = new SignalTrigger();
|
private static final onLogTrigger:SignalTrigger<LogLine> = new SignalTrigger();
|
||||||
private final logLines:Array<LogLine> = [];
|
private static final logLines:Array<LogLine> = [];
|
||||||
|
|
||||||
public function new() {
|
@:allow(kernel.Init)
|
||||||
|
private static function init() {
|
||||||
onLog = onLogTrigger.asSignal();
|
onLog = onLogTrigger.asSignal();
|
||||||
}
|
}
|
||||||
|
|
||||||
public static function info(msg:Dynamic, ?pos:haxe.PosInfos) {
|
public static function info(msg:Dynamic, ?pos:haxe.PosInfos) {
|
||||||
instance.log({level: Info, message: Std.string(msg),time: 0},pos);
|
log({level: Info, message: Std.string(msg),time: 0},pos);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static function warn(msg:Dynamic, ?pos:haxe.PosInfos) {
|
public static function warn(msg:Dynamic, ?pos:haxe.PosInfos) {
|
||||||
instance.log({level: Warn, message: Std.string(msg),time: 0},pos);
|
log({level: Warn, message: Std.string(msg),time: 0},pos);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static function error(msg:Dynamic, ?pos:haxe.PosInfos) {
|
public static function error(msg:Dynamic, ?pos:haxe.PosInfos) {
|
||||||
instance.log({level: Error, message: Std.string(msg),time: 0},pos);
|
log({level: Error, message: Std.string(msg),time: 0},pos);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static function debug(msg:Dynamic, ?pos:haxe.PosInfos) {
|
public static function debug(msg:Dynamic, ?pos:haxe.PosInfos) {
|
||||||
#if debug
|
#if debug
|
||||||
instance.log({level: Debug, message: Std.string(msg),time: 0},pos);
|
log({level: Debug, message: Std.string(msg),time: 0},pos);
|
||||||
#end
|
#end
|
||||||
}
|
}
|
||||||
|
|
||||||
public static function silly(msg:Dynamic, ?pos:haxe.PosInfos) {
|
public static function silly(msg:Dynamic, ?pos:haxe.PosInfos) {
|
||||||
instance.log({level: Silly, message: Std.string(msg),time: 0},pos);
|
log({level: Silly, message: Std.string(msg),time: 0},pos);
|
||||||
}
|
}
|
||||||
|
|
||||||
private function log(line: LogLine, ?pos:haxe.PosInfos) {
|
private static function log(line: LogLine, ?pos:haxe.PosInfos) {
|
||||||
line.origin = pos.className;
|
line.origin = pos.className;
|
||||||
logLines.push(line);
|
logLines.push(line);
|
||||||
|
|
||||||
@ -60,7 +59,7 @@ class Log {
|
|||||||
#end
|
#end
|
||||||
}
|
}
|
||||||
|
|
||||||
public function getLines():ReadOnlyArray<LogLine> {
|
public static function getLines():ReadOnlyArray<LogLine> {
|
||||||
return logLines;
|
return logLines;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user