Merge pull request #1052 from rleisti/devel

Remove exception from TEventEmitter.emit
This commit is contained in:
Andreas Rumpf 2014-04-02 19:55:31 +02:00
commit cc9230824a

View file

@ -68,7 +68,7 @@ proc clearHandlers*(handler: var TEventHandler) =
## Clears all of the callbacks from the event handler. ## Clears all of the callbacks from the event handler.
setLen(handler.handlers, 0) setLen(handler.handlers, 0)
proc getEventhandler(emitter: var TEventEmitter, event: string): int = proc getEventHandler(emitter: var TEventEmitter, event: string): int =
for k in 0..high(emitter.s): for k in 0..high(emitter.s):
if emitter.s[k].name == event: return k if emitter.s[k].name == event: return k
return -1 return -1
@ -94,8 +94,6 @@ proc emit*(emitter: var TEventEmitter, event: string, args: TEventArgs) =
var i = getEventHandler(emitter, event) var i = getEventHandler(emitter, event)
if i >= 0: if i >= 0:
emit(emitter, emitter.s[i], args) emit(emitter, emitter.s[i], args)
else:
raise newException(EInvalidEvent, "invalid event: " & event)
proc initEventEmitter*(): TEventEmitter = proc initEventEmitter*(): TEventEmitter =
## Creates and returns a new EventEmitter. ## Creates and returns a new EventEmitter.