a LOT of minor stuff

This commit is contained in:
2022-03-05 02:41:30 +01:00
parent ce45bf2726
commit df77704d1c
12 changed files with 90 additions and 56 deletions

View File

@@ -4,8 +4,12 @@ using tink.CoreApi;
import util.Vec.Vec2;
import util.Color;
import lib.TermWriteable;
import kernel.ui.TermWriteable;
/**
A term writer that can switch beetween its internal buffer and another termwriter.
The other target is most of the time a real screen
**/
class VirtualTermWriter implements TermWriteable extends TermBuffer {
private static final defaultSize:Vec2<Int> = {x: 50, y: 50};
@@ -13,7 +17,8 @@ class VirtualTermWriter implements TermWriteable extends TermBuffer {
private var enabled:Bool = false;
private var onResizeLink:CallbackLink;
public function new(?target:TermWriteable) {
@:allow(kernel.ui)
private function new(?target:TermWriteable) {
setTarget(target);
if (enabled) {
@@ -52,6 +57,8 @@ class VirtualTermWriter implements TermWriteable extends TermBuffer {
setSuperSize(newSize);
});
newTarget.reset();
target = newTarget;
}
}
@@ -95,11 +102,18 @@ class VirtualTermWriter implements TermWriteable extends TermBuffer {
}
public override function getCursorBlink():Bool {
throw new haxe.exceptions.NotImplementedException();
if (isEnabled()){
return target.getCursorBlink();
}else{
return super.getCursorBlink();
}
}
public override function setCursorBlink(blink:Bool) {
// TODO
if (isEnabled()){
target.setCursorBlink(blink);
}
super.setCursorBlink(blink);
}
public override function getSize():Vec2<Int> {