Cela nécessite l'écoute d'un grand nombre d'événements dans votre WorkbenchWindowAdvisor.
Dans la méthode preWindowOpen
vous devez ajouter des écouteurs pour:
- page d'activation et de fermeture avec
configurer.getWindow().addPageListener(listener)
Les pageActivated
et pageClosed
méthodes d'écoute ont besoin de mettre à jour le titre.
- Modifications de la perspective à l'aide de
configurer.getWindow().addPerspectiveListener(listener)
. Les méthodes perspectiveActivated
, perspectiveSavedAs
, perspectiveDeactivated
doivent mettre à jour le titre.
- Activations de pièces utilisant
configurer.getWindow().getPartService().addPartListener(listener)
. Ce besoin d'utiliser un IPartListener2
. Les méthodes partActivated
, partBroughtToTop
, partClosed
, partHidden
, partVisible
ont besoin de mettre à jour le titre.
Vous obtenez le chemin du fichier ouvert de l'éditeur actif:
IWorkbenchPage currentPage = configurer.getWindow().getActivePage();
IEditorPart activeEditor = currentPage.getActiveEditor();
if (activeEditor != null) {
path = activeEditor.getTitleToolTip();
}
et le nom en perspective:
IPerspectiveDescriptor persp = currentPage.getPerspective();
if (persp != null) {
label = persp.getLabel();
}
Le plein, encore plus complexe, le code pour cela est en org.eclipse.ui.internal.ide.application.IDEWorkbenchWindowAdvisor
Cela fonctionne (Y)! Merci beaucoup –