Me gusta utilizar el historial de navegación proporcionado por Eclipse en mi aplicación RCP. Desafortunadamente esta característica no está bien documentada. De hecho, solo encontré esta entrada Wiki: http://wiki.eclipse.org/FAQ_How_do_I_hook_my_editor_to_the_Back_and_Forward_buttons%3FUsar el historial de navegación en Eclipse RCP
Menciona que cada editor se puede marcar en el historial de navegación, sin tener que especificar una ubicación. Esto es exactamente lo que quiero.
Independientemente de si el editor específico tiene algún soporte para el historial de navegación, markLocation funcionará. Si el editor no implementa INavigationLocationProvider, se agregará una entrada de historial, lo que permite al usuario retroceder a ese editor pero sin volver a ninguna ubicación en particular.
Agregué las siguientes líneas de código a mi aplicación para agregar una entrada de navegación cada vez que se abre un nuevo Editor.
IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
IEditorPart editor = page.openEditor(input, MyEditor.ID);
page.getNavigationHistory().markLocation(editor);
Mi problema es que el código no funciona. Los iconos de la barra de herramientas para los comandos org.eclipse.ui.navigate.backwardHistory
y org.eclipse.ui.navigate.forwardHistory
permanecen atenuados.
Sé que estoy cavando publicaciones antiguas pero me salvaste el día :) ¡Esto también funciona para RAP! – Jerome