a LOT of minor stuff
This commit is contained in:
@@ -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> {
|
||||
|
||||
Reference in New Issue
Block a user