Files
cc-haxe/src/lib/ui/reactive/UIElement.hx

20 lines
470 B
Haxe

package lib.ui.reactive;
import util.Vec.Vec2;
using tink.CoreApi;
abstract class UIElement {
abstract public function render(bounds:Vec2<Int>):Canvas;
public var changed(default, null):Signal<Noise>;
private final changedTrigger:SignalTrigger<Noise> = Signal.trigger();
public final eventListner:UIEvents = {};
public function new(events: UIEvents = null) {
changed = changedTrigger.asSignal();
if (events != null){
this.eventListner = events;
}
}
}