obsever test

by arumajirou
♥0 | Line 38 | Modified 2010-01-12 15:50:01 | MIT License
play

ActionScript3 source code

/**
 * Copyright arumajirou ( http://wonderfl.net/user/arumajirou )
 * MIT License ( http://www.opensource.org/licenses/mit-license.php )
 * Downloaded from: http://wonderfl.net/c/hRl2
 */

package {
	import flash.accessibility.Accessibility;
    import flash.display.Sprite;
    public class FlashTest extends Sprite {
        public function FlashTest() {
            // write as3 code here..
            
        }
    }
}

    
    class cSubject
    {
    		private var observers : Vector.<iObserver>;

    		public function cSubject()
    		{
    			observers = new Vector.<iObserver>();
    		}

    		public function attach( o : iObserver ) : void
    		{
    			observers.push( o );
    		}

    		public function dettach( o : iObserver ) : void
    		{
    			var result : int = observers.indexOf( o );
    			if( result == -1 ) return;
    			observers.splice( result, 1 );
    		}

    		public function notify( o : Object ) : void
    		{
    			var len : int = observers.length;
    			
    			for( var i : int = 0 ; i < len ; i++ )
    			{
    				observers[ i ].update( o );
    			}
    		}
    }
    
    interface iObserver
    {
    		function update( o : Object ) : void;
    }