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_1.cfm

Michael Ritchie
AOL Xdrive


--- In [email protected], "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)
>


Reply via email to