2
0
mirror of https://github.com/esiur/esiur-dart.git synced 2026-04-03 17:58:21 +00:00

null-safety

This commit is contained in:
2021-07-24 13:12:43 +03:00
parent 6be04c39ed
commit 614c6853e3
48 changed files with 3022 additions and 3320 deletions

View File

@@ -1,48 +1,38 @@
class IEventHandler
{
Map<String, List<Function>> _events;
class IEventHandler {
Map<String, List<Function>> _events = {};
register(String event)
{
_events[event.toLowerCase()] = [];
register(String event) {
_events[event.toLowerCase()] = [];
}
IEventHandler() {}
emitArgs(String event, List arguments) {
//event = event.toLowerCase();
var et = _events[event.toLowerCase()];
if (et != null) {
for (var i = 0; i < et.length; i++)
if (Function.apply(et[i], arguments) != null) return true;
}
IEventHandler()
{
_events = {};
}
return false;
}
emitArgs(String event, List arguments)
{
event = event.toLowerCase();
if (_events.containsKey(event))
for(var i = 0; i < _events[event].length; i++)
if (Function.apply(_events[event][i], arguments) != null)
return true;
on(String event, Function callback) {
event = event.toLowerCase();
if (_events.containsKey(event)) register(event);
_events[event]?.add(callback);
return this;
}
return false;
}
on(String event, Function callback)
{
event = event.toLowerCase();
// add
if (!_events.containsKey(event))
register(event);
_events[event].add(callback);
return this;
}
off(event, callback)
{
event = event.toString();
if (_events.containsKey(event))
{
if (callback != null)
_events[event].remove(callback);
else
this._events[event] = [];
}
off(event, callback) {
event = event.toString();
if (_events.containsKey(event)) {
if (callback != null)
_events[event]?.remove(callback);
else
this._events[event] = [];
}
}
}