Author: ygrego Date: 2015-03-31 07:44:55 +0000 (Tue, 31 Mar 2015) New Revision: 985 Url: http://forge.nuiton.org/projects/sandbox/repository/revisions/985 Log: This class permit to manage event inside object of oipf Factory. Added: oipf/js/utils/EventManager.js Added: oipf/js/utils/EventManager.js =================================================================== --- oipf/js/utils/EventManager.js (rev 0) +++ oipf/js/utils/EventManager.js 2015-03-31 07:44:55 UTC (rev 985) @@ -0,0 +1,42 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ + +var EventManager = Class.extend({ + + addEventListener: function(type, listener, target) { + var listenersList = target._listeners[type]; + + if (listenersList) { + listenersList.push(listener); + } else { + target._listeners[type] = [listener]; + } + }, + + fireEvent: function(event, target) { + var listeners = target._listeners[event.type]; + + listeners && listeners.forEach(function(listener){ + listener.apply(target, event.detail); + }); + + var callback = target._callbacks[event.type]; + + callback && callback.apply(target, event.detail); + }, + + removeEventListener: function(type, listener, target){ + var listeners = target._listeners[type]; + + if (listeners) { + target._listeners[type] = listeners.filter(function(currentListener){ + return currentListener != listener; + }); + } + } +}); + +
participants (1)
-
ygregoï¼ users.nuiton.org