2011-05-26 6 views
0

Je développe une application Eclipse RCP. Dans cette application, j'importe le projet en utilisant un assistant d'importation. Je veux être averti après la fin de l'assistant d'importation.Notification d'ImportWizard dans Eclipse RCP

Aidez-moi s'il vous plaît!

Répondre

2

Je voudrais ajouter un org.eclipse.core.resources.IWorkspace.addResourceChangeListener(IResourceChangeListener) à l'espace de travail lorsque vous lancez l'assistant d'importation. Surveiller les événements et voir si org.eclipse.core.resources.IResourceChangeEvent.POST_CHANGE est émis lors de l'importation.

1

Vous pouvez utiliser ICommandService pour surveiller l'exécution des commandes dans Eclipse Platform.

Ainsi, vous pouvez informé lors de l'importation est exécuté avec l'identifiant de commande « org.eclipse.ui.file.import »:

ICommandService service = (ICommandService) 
    PlatformUI.getWorkbench().getService(ICommandService.class); 
service.addExecutionListener(...) 

Vous pouvez décrire la logique qui exécuté après l'importation à l'extension WorkspaceJob.

public AfterImportingJob extends WorkspaceJob{ 
    ... 
    public IStatus runInWorkspace(IProgressMonitor monitor) throws CoreException{ 
     ... do something 
     return Status.OK_STATUS; 
    } 
    ... 
} 

WorkspaceJob automatiquement synchronisé avec Workspace. Donc, après tout changement dans Workspace, votre travail sera exécuté. Et il s'assure que Aucune autre modification d'espace de travail ne s'exécute pendant l'exécution de votre travail.

Tout ce que vous devez faire pour utiliser cette magie est juste ordonnancement:

AfterImportingJob myJob = new AfterImporingJob(); 
myJob.schdule(); 
+0

Merci pour vos entrées – Bob