L'exemple précédent visait à fournir un assistant pour un point d'extension spécifique. Un autre cas, peut-être plus courant, est celui dans lequel vous souhaitez lancer l'assistant de votre propre plug-in à partir d'une action que vous avez définie. (A la section Contributions des menus du plan de travail, nous abordons les moyens qui permettent d'ajouter des actions au plan de travail.)
Lorsque vous lancez votre propre assistant, vous devez encapsuler l'assistant dans un WizardDialog. Ce détail n'est pas traité pour vous par le plan de travail, comme lorsque vous ajoutez une extension d'assistant.
Par exemple, ReadmeCreationWizard pourrait être lancé indépendamment en créant une boîte de dialogue d'assistant et en l'associant à ReadmeCreationWizard. L'extrait de code ci-dessous montre comment ceci peut être réalisé à partir d'un délégué d'action. (La méthode présume que le plan de travail et la sélection sont connus.)
public void run(IAction action) {
// Create the wizard
ReadmeCreationWizard wizard = new ReadmeCreationWizard();
wizard.init(getWorkbench(), selection);
// Create the wizard dialog
WizardDialog dialog = new WizardDialog
(getWorkbench().getActiveWorkbenchWindow().getShell(),wizard);
// Open the wizard dialog
dialog.open();
}