[question] StaticWizardStepDescriptor

4 posts / 0 new
Last post
atao
Offline
Joined: 10/15/2008
[question] StaticWizardStepDescriptor

Vincent,

The class StaticWizardStepDescriptor is the only implementation of IWizardStepDescriptor.

So, why the "Static" prefix? Have you a future "dynamic" one in mind?

Regards

Pierre

vvandens
Offline
Joined: 05/29/2008
[question] StaticWizardStepDescriptor

Hi Pierre,

"Static" means that there is no way to make the wizard flow dynamic, i.e. have optional steps based on the values entered, have different branches, ... You just "statically" link the next step to the previous one.

However the IWizardStepDescriptor contract only implies that a wizard step must be able to provide its next and previous steps based on the current context. This opens the door to more dynamic flows; but there is hardly any way to make these dynamic flows part of the core framework. The are typically to be coded in the final applications either by implementing IWizardStepDescriptor or by subclassing StaticWizardStepDescriptor and overriding get[Next/Previous]StepDescriptor(context).

So yes, there can be dynamic wizard step descriptors as opposed to the static ones, but they won't be part of the framework.

 

HTH,

Vincent

atao
Offline
Joined: 10/15/2008
[question] StaticWizardStepDescriptor

Vincent,

by implementing IWizardStepDescriptor or by subclassing StaticWizardStepDescriptor

OK

overriding get[Next/Previous]StepDescriptor(context)

Is it possible to do it from the "onEnterAction" of the current step descriptor or from the "onLeaveAction" of the previous one?

Regards

Pierre

 

 

 

vvandens
Offline
Joined: 05/29/2008
[question] StaticWizardStepDescriptor

Is it possible to do it from the "onEnterAction" of the current step descriptor or from the "onLeaveAction" of the previous one?

If you mean calling set[Next|Previous]StepDescriptor from the onEnter and onLeave actions, then no, since it is not thread-safe (wizard step descriptors can be shared across sessions). You won't see any problem in Swing, but it will bring trouble in all the other UI channels.

 

HTH,

Vincent