That would be fantastic Alex.  Thank you for your thoughts 
concerning this topic.  I look forward to reading your blog.

-TH

--- In [email protected], "Alex Uhlmann" <[EMAIL PROTECTED]> 
wrote:
>
> Hi there,
>  
> I'd suggest letting the Command retrieve a model object via
> ModelLocator. Then, some state property in the model changes which 
could
> trigger an event. Views could listen to either EventDispatcher 
events or
> via Bindings. Following the Binding approach, your view could bind 
to
> single properties, call methods on the view via function bindings 
or if
> you explicitly want to let the view react to a model's state 
change with
> calling a view method (i.e. invoking an effect or popup), which 
doesn't
> necessarily return a value to a MXML component, you can use 
mx:Binding
> or Paul's Observe tag. 
> http://weblogs.macromedia.com/paulw/
> Tim, you're right. I'll hopefully get to post something about this 
later
> this week.
>  
> Best,
> Alex
> 
>        Alex Uhlmann 
> Consultant (Rich Internet Applications)
> Adobe Consulting
> Westpoint, 4 Redheughs Rigg, 
> South Gyle, Edinburgh, EH12 9DQ, UK
> p: +44 (0) 131 338 6969
> m: +44 (0) 7917 428 951
> [EMAIL PROTECTED]
> http://weblogs.macromedia.com/auhlmann
> 
>  
> 
> ________________________________
> 
> From: [email protected] 
[mailto:[EMAIL PROTECTED] On
> Behalf Of Tim Hoff
> Sent: 18 September 2006 04:29
> To: [email protected]
> Subject: [flexcoders] Re: cairngorm: calling a function in a view
> 
> 
> 
> Yes, your login example illustrates a common way to drive the view 
> through the ModelLocator. However, I agree with you that it would 
> be cleaner to have a view method to do this sort of thing instead 
of 
> a huge model with lots of references. The only problem with 
> referencing a view function directly from a command, is that if 
you 
> remove the view or the function, the command breaks (violates 
> encapsulation). If you really wanted to do this from a command 
> though, you could traverse the display list ID's like so (not 
> recommended): 
> 
> Application.application.viewMain.viewRef.resetForm();
> 
> An alternative would be to dispatch a custom event, from the 
> command, that would be listened for by the view. I've addressed 
> this issue here before. My personal opinion is that a responder 
> that goes from the command, through the FrontController, to the 
> view, would be very helpful for these types of functions. The 
> Cairngorm experts here haven't really provided much guidance, 
either 
> through samples or blog postings, in this area. Perhaps as more 
> people, like you, ask similar questions, more insight will be 
> provided. Until then, since we want to remain as true to the 
> Cairngorm architecture as possible, binding all state (local and 
> shared) to the ModelLocator seems to be the recommended solution.
> 
> Thanks for the post,
> -TH
> 
> --- In [email protected] <mailto:flexcoders%
40yahoogroups.com>
> , "Diego Guebel" 
> <dguebel.subscription@> wrote:
> >
> > Hi Tim,
> > this might be a silly example:
> > I have a login form, when the command responds onFault I want to 
> able to 
> > reset the user and password textfields.
> > doing something like:
> > viewRef.resetForm();
> > 
> > you might suggest to do something like this in the view:
> > <mx:TextInput id="username" text="{login.username}"/>
> > <mx:TextInput id="password" text="{login.password}"/>
> > 
> > and something like this in the command:
> > public function onFault(event:* = null):void
> > {
> > model.login.username = "";
> > model.login.password = "";
> > }
> > 
> > I think this is the best practice, but I was just wondering as 
I'm 
> moving 
> > from Arp where you have a view reference in the command and is 
> really 
> > common to do things like viewRef.method()
> > something I think it would be clearer to have a method to do 
this 
> sort of 
> > thing instead of a huge model with lots of references....
> > 
> > Diego.
> > 
> > 
> > On Mon, 18 Sep 2006 10:17:41 +1200, Tim Hoff <TimHoff@> wrote:
> > 
> > > Hi Diego,
> > >
> > > In general a Command and a View shouldn't know about each 
other.
> > > Usually, the state of a view is changed by binding to the
> > > ModelLocator; which is updated by a Command. What does your 
view
> > > function do?
> > >
> > > -TH
> > >
> > > --- In [email protected]
> <mailto:flexcoders%40yahoogroups.com> , "Diego Guebel"
> > > <dguebel.subscription@> wrote:
> > >>
> > >> Hi there,
> > >> I wonder what would be the best way to call a function in a 
view
> > > when I
> > >> get a result in a command.
> > >> what is the way to have a reference to the view in the command
> > > since
> > >> viewlocator/viewhelper is not more recommended?
> > >> Thanks, Diego.
> > >>
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > > --
> > > Flexcoders Mailing List
> > > FAQ: 
> http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt
> <http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt> 
> > > Search Archives: http://www.mail-archive.com/flexcoders%
> <http://www.mail-archive.com/flexcoders%> 
> 40yahoogroups.com
> > > Yahoo! Groups Links
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> >
>







--
Flexcoders Mailing List
FAQ: http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt
Search Archives: http://www.mail-archive.com/flexcoders%40yahoogroups.com 
Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/flexcoders/

<*> Your email settings:
    Individual Email | Traditional

<*> To change settings online go to:
    http://groups.yahoo.com/group/flexcoders/join
    (Yahoo! ID required)

<*> To change settings via email:
    mailto:[EMAIL PROTECTED] 
    mailto:[EMAIL PROTECTED]

<*> To unsubscribe from this group, send an email to:
    [EMAIL PROTECTED]

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/
 



Reply via email to