package com.mariusht.puremvcexample.view { import com.mariusht.puremvcexample.model.CarsProxy; import com.mariusht.puremvcexample.model.vo.CarVO; import com.mariusht.puremvcexample.view.components.BlueView; import flash.events.MouseEvent; import org.puremvc.as3.interfaces.IMediator; import org.puremvc.as3.patterns.mediator.Mediator; public class BlueViewMediator extends Mediator implements IMediator { public static const NAME:String = 'BlueViewMediator'; public function BlueViewMediator(viewComponent:BlueView) { super(NAME, viewComponent); blueView.addCarButton.addEventListener(MouseEvent.CLICK, onAdd); } private function onAdd(event:MouseEvent):void { var carsProxy:CarsProxy = facade.retrieveProxy(CarsProxy.NAME) as CarsProxy; var car:CarVO = new CarVO('Honda', 'Accord', '2003'); carsProxy.addCar(car); } protected function get blueView():BlueView { return viewComponent as BlueView; } } }