My favorites | Sign in
Project Logo
                
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
/**
* Copyright (c) 2008 michiyasu wada
* http://www.seyself.com/
*
* Distributed under The MIT License.
* [http://www.opensource.org/licenses/mit-license.php]
*/


import flash.events.EventDispatcher;
import flash.events.Event;

class com.seyself.events.EventMediator extends EventDispatcher
{

public var member:Array;

private var eventer:EventDispatcher;

public function EventMediator( eventer:Object )
{
member = [];
this.eventer = eventer || new EventDispatcher();
}

public function addEventListener(type:String, listener:Function,
useCapture:Boolean, priority:Number, useWeakReference:Boolean):Void
{
var loc = this;
var handler = function( event:Event )
{
var _member:Array = loc.member;
var len:Number = _member.length;
for (var i = 0; i < len;i++ ) {
if( listener ) _member[i].addEventListener( type, listener, useCapture, priority, useWeakReference);
_member[i].dispatchEvent( event );
}
}
eventer.addEventListener( type, handler, useCapture, priority, useWeakReference);
}

public function hasEventListener(type:String):Boolean
{
return eventer.hasEventListener( type );
}

public function removeEventListener(
type:String, listener:Function, useCapture:Boolean):Void
{
var len:Number = member.length;
for (var i = 0; i < len;i++ ) {
member[i].removeEventListener( type, listener, useCapture );
}
eventer.removeEventListener( type, listener, useCapture );
}

public function toString():String
{
return "[object EventMediator]";
}


}
Show details Hide details

Change log

r112 by seyself on Mar 28, 2008   Diff
[No log message]
Go to: 
Project members, sign in to write a code review

Older revisions

r108 by seyself on Mar 28, 2008   Diff
[No log message]
r107 by seyself on Mar 27, 2008   Diff
[No log message]
All revisions of this file

File info

Size: 1839 bytes, 63 lines
Hosted by Google Code