Yup thats the way to go and then you can have another variable in your 
ModelLocator for the currentstate and set it once the remote call is complete 
to change the state of the view, which u bind to.
 
Dimitrios Gianninas
RIA Developer
Optimal Payments Inc.
 

________________________________

From: [email protected] [mailto:[EMAIL PROTECTED] On Behalf Of 
Battershall, Jeff
Sent: Wednesday, January 03, 2007 7:44 PM
To: [email protected]
Subject: RE: [flexcoders] Re: Cairngorm Architecture Question - How to 
Implement a Workflow



Michael, Dimitrios,

Thanks for your input - I'm already doing something like this for the
switching between the different views, but it is within a given view
itself I need to have change of state after successful submission, and
require some additional steps to be done. Like 1) Upload file and
related data, 2) Preview Results 3) Approve. 

My view needs to know when the form submission has succeeded and then
trigger the next appropriate step. Per the docs, it seems that the
Command classes can implement Iresponder - perhaps that is the way to
go.

Jeff 

-----Original Message-----
From: [email protected] <mailto:flexcoders%40yahoogroups.com>  
[mailto:[email protected] <mailto:flexcoders%40yahoogroups.com> ] On
Behalf Of Michael Ritchie
Sent: Wednesday, January 03, 2007 2:24 PM
To: [email protected] <mailto:flexcoders%40yahoogroups.com> 
Subject: [flexcoders] Re: Cairngorm Architecture Question - How to
Implement a Workflow

What I would do is in the successful result of the command, update a
variable in the model. Bind the variable of the model to a view
stack that monitors changes to the model. Upon successful form
submission and return from the server, update the model variable, the
view will then change to show the view stack current view:

Some ruff code:

private function getView( state : String ) : Container
{
if( model.workflowState == ModelLocator.STATE_FORM ){
return formview;
} else if (model.workflowState == ModelLocator.STATE_RESULTS){
return resultview
} else {
return defaultview;

}
}

<mx:ViewStack selectedChild="{getView(model.workflowState)}">
<mx:Canvas id="formtview" width="100%" height="100%"/>
<mx:Canvas id="resultview" width="100%" height="100%"/> 
<mx:Canvas id="defaultview" width="100%" height="100%"/>
</mx:ViewStack>

Take a look at this post by Alex Uhlmann for full example:

http://weblogs.macromedia.com/auhlmann/archives/2006/07/cairngorm_2_for_ 
<http://weblogs.macromedia.com/auhlmann/archives/2006/07/cairngorm_2_for_> 
1.cfm

Michael Ritchie
AOL Xdrive

--- In [email protected] <mailto:flexcoders%40yahoogroups.com> , 
"Battershall, Jeff"
<[EMAIL PROTECTED]> wrote:
>
> I've got an app consisting of several discrete views (MXML components)

> performing different admin functions.
> 
> One of the components has the user submit a form, after which I'm 
> going to have the user review the results before finalizing 
> (approving) the submission.
> 
> I'm interested in anyone's feedback on the best way to approach this. 
> If I fire off a Cairngorm Event/Command to do the submission, how do I

> return control back to the view that fired the event after the 
> submission is complete so that it can perform the next step in the 
> process (approval)? Seems like a total kludge to pass a reference to 
> the view with the event I'm firing. It also seems ridiculous to 
> implement logic at the ModelLocator level.
> 
> Currently, I'm leaning toward having my Command class extend 
> EventDispatcher and fire off a completion event which is listened for 
> by the view, which then starts the approval step, which then fires off

> its own event/command class. My view needs to respond to the current 
> step completed - question is the best, cleanest way to implement this.
> 
> Jeff Battershall
> Application Architect
> Dow Jones Indexes
> [EMAIL PROTECTED]
> (609) 520-5637 (p)
> (484) 477-9900 (c)
>

--
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%40yahoogroups.com 
<http://www.mail-archive.com/flexcoders%40yahoogroups.com>  
Yahoo! Groups Links



 

-- 
WARNING
-------
This electronic message and its attachments may contain confidential, 
proprietary or legally privileged information, which is solely for the use of 
the intended recipient.  No privilege or other rights are waived by any 
unintended transmission or unauthorized retransmission of this message.  If you 
are not the intended recipient of this message, or if you have received it in 
error, you should immediately stop reading this message and delete it and all 
attachments from your system.  The reading, distribution, copying or other use 
of this message or its attachments by unintended recipients is unauthorized and 
may be unlawful.  If you have received this e-mail in error, please notify the 
sender.

AVIS IMPORTANT
--------------
Ce message électronique et ses pièces jointes peuvent contenir des 
renseignements confidentiels, exclusifs ou légalement privilégiés destinés au 
seul usage du destinataire visé.  L'expéditeur original ne renonce à aucun 
privilège ou à aucun autre droit si le présent message a été transmis 
involontairement ou s'il est retransmis sans son autorisation.  Si vous n'êtes 
pas le destinataire visé du présent message ou si vous l'avez reçu par erreur, 
veuillez cesser immédiatement de le lire et le supprimer, ainsi que toutes ses 
pièces jointes, de votre système.  La lecture, la distribution, la copie ou 
tout autre usage du présent message ou de ses pièces jointes par des personnes 
autres que le destinataire visé ne sont pas autorisés et pourraient être 
illégaux.  Si vous avez reçu ce courrier électronique par erreur, veuillez en 
aviser l'expéditeur.

Reply via email to