diff --git a/lib/events.js b/lib/events.js index 7c04ce30..41bfa40a 100644 --- a/lib/events.js +++ b/lib/events.js @@ -27,6 +27,7 @@ EventEmitter.prototype.addListener = function(type, listener) { this._events[type].push(listener); } this._emit('newListener', [type, listener]); + return this; }; EventEmitter.prototype.on = EventEmitter.prototype.addListener; diff --git a/lib/widgets/node.js b/lib/widgets/node.js index 77f77f0d..dfc00195 100644 --- a/lib/widgets/node.js +++ b/lib/widgets/node.js @@ -73,6 +73,11 @@ function Node(options) { } (options.children || []).forEach(this.append.bind(this)); + if(options.events){ + for(var [name, handler] of Object.entries(options.events)) { + this.on(name, handler); + } + } } Node.uid = 0;