I think Delegate gives you what you're talking about Vic - control over your scope issues. Delegate enables you to manage scope with in your class. So, if you have an XML object and you want to maintain the response/return in your class, you do just as Dan has described.
make sense? On 9/27/06, vic <[EMAIL PROTECTED]> wrote:
Danno, that is really cool, I will try that but I have done it, I made a site template that, when a button is clicked it dispatches an Event...but I had the hardest time doing it. I am looking for a simple way to do it that works in a Class. without worrying about scope. Mine relies heavily upon scope. Anyone have any example? Thanks, V ---------- Original Message ---------------------------------- From: Dan Rogers <[EMAIL PROTECTED]> Reply-To: Flashcoders mailing list <flashcoders@chattyfig.figleaf.com> Date: Tue, 26 Sep 2006 20:55:32 -0700 >Vic, if you've ever used the XML or NetStream classes... it mimics >those types of event updates. For example... > >var xmlData = new XML(); >xmlData.onLoad = function () { > // gets invoked by the XML instance >} > >So if you delegate the onLoad method, you get something like this: > >xmlData.onLoad = Delegate.create(this, xmlDataLoad); > >... which is essentially what I am trying to do with my own classes. >Another reason I like delegating events this way, is that the >compiler will catch typos in the names of the event functions, so I >am not searching around trying to figure out why a certain event is >not firing. > >-Danro > > >On Sep 26, 2006, at 7:06 PM, vic wrote: > >> Hey Dan, I like the way you do it, its pretty simple. But here is, >> what probably will be an incredibly stupid question: >> >> How do I capture the event? Thanks, V >> >> I personally use an extremely simplified way of dealing with events. >> I've used EventDispatcher before, but it feels like overkill most of >> the time. I realize my method has no ability to multicast events, >> but it's quick, easy to read and gets the job done. >> >> Here's an example: >> >> ___________________________ >> // WidgetManager.as >> >> import mx.utils.Delegate; >> >> class WidgetManager { >> private var _widget1:Widget; >> private var _widget2:Widget; >> >> public function WidgetManager (timeline:MovieClip) { >> _widget1 = new Widget(1, timeline.widget1_mc); >> _widget1.clickEvent = Delegate.create(this, widgetClick); // add event >> >> _widget2 = new Widget(2, timeline.widget2_mc); >> _widget2.clickEvent = Delegate.create(this, widgetClick); // add event >> } >> >> private function widgetClick (eventObj:Object):Void { >> trace("widget " + eventObj.id + " was clicked"); >> eventObj.target.clickEvent = null; // remove event >> } >> } >> >> ___________________________ >> // Widget.as >> >> import mx.utils.Delegate; >> >> class Widget { >> public var clickEvent:Function; // event method >> private var _id:Number; >> private var _buttonMC:MovieClip; >> >> public function Widget (id:Number, mc:MovieClip) { >> _id = id; >> _buttonMC = mc; >> _buttonMC.onPress = Delegate.create(this, buttonPress); >> } >> >> public function buttonPress ():Void { >> clickEvent({target:this, id: _id}); >> } >> } >> >> >> >> >> On Sep 26, 2006, at 12:09 PM, Sean Scott wrote: >> >>> Hi All!, >>> >>> wondering if someone can point me in the right direction. I am >>> trying >>> to find a ASBoradcast / Event Dispatcher light model for my app. >>> >>> Basically i have a number of MCs that will have to either react to >>> events being broadcast or broadcast their own. >>> >>> I have Essential AS2 by Colin Moock. Trying to find something i can >>> import and maybe pass scope to it, vs have my main class extend it. >>> >>> I've googled, searched the archived and exausted my more talented >>> flash developer friends. >>> >>> Thanks, >>> Sean >>> _______________________________________________ >>> Flashcoders@chattyfig.figleaf.com >>> To change your subscription options or search the archive: >>> http://chattyfig.figleaf.com/mailman/listinfo/flashcoders >>> >>> Brought to you by Fig Leaf Software >>> Premier Authorized Adobe Consulting and Training >>> http://www.figleaf.com >>> http://training.figleaf.com >> >> _______________________________________________ >> Flashcoders@chattyfig.figleaf.com >> To change your subscription options or search the archive: >> http://chattyfig.figleaf.com/mailman/listinfo/flashcoders >> >> Brought to you by Fig Leaf Software >> Premier Authorized Adobe Consulting and Training >> http://www.figleaf.com >> http://training.figleaf.com >> >> _______________________________________________ >> Flashcoders@chattyfig.figleaf.com >> To change your subscription options or search the archive: >> http://chattyfig.figleaf.com/mailman/listinfo/flashcoders >> >> Brought to you by Fig Leaf Software >> Premier Authorized Adobe Consulting and Training >> http://www.figleaf.com >> http://training.figleaf.com > >_______________________________________________ >Flashcoders@chattyfig.figleaf.com >To change your subscription options or search the archive: >http://chattyfig.figleaf.com/mailman/listinfo/flashcoders > >Brought to you by Fig Leaf Software >Premier Authorized Adobe Consulting and Training >http://www.figleaf.com >http://training.figleaf.com > _______________________________________________ Flashcoders@chattyfig.figleaf.com To change your subscription options or search the archive: http://chattyfig.figleaf.com/mailman/listinfo/flashcoders Brought to you by Fig Leaf Software Premier Authorized Adobe Consulting and Training http://www.figleaf.com http://training.figleaf.com
-- [ JPG ] _______________________________________________ Flashcoders@chattyfig.figleaf.com To change your subscription options or search the archive: http://chattyfig.figleaf.com/mailman/listinfo/flashcoders Brought to you by Fig Leaf Software Premier Authorized Adobe Consulting and Training http://www.figleaf.com http://training.figleaf.com