Usted tiene el diferente paradigma de comunicación se resumen en el IBM article
- Para realizar una vista capaz de escuchar a los cambios de selección, una visión debe implementar la interfaz
ISelectionListener
y debe registrarse con la página de la mesa de trabajo
- Uso La interfaz
IAdaptable
: una clase que implementa IAdaptable
tiene la capacidad de devolver dinámicamente ciertos tipos de adaptadores que luego pueden utilizarse para recuperar más información.
- cambio de propiedad paradigma oyente
Con respecto al primer enfoque, los detalles del artículo:
Una forma más inteligente de consumir selecciones de interfaz de usuario es registrar las opiniones de los consumidores como a los oyentes a partes específicas de vista. Como puede ver en el siguiente ejemplo, la ID de vista de la parte de la vista de origen se menciona como un parámetro durante el registro de un oyente de selección.
getSite().getPage().addSelectionListener("SampleViewId",(ISelectionListener)this);
Este enfoque elimina las devoluciones de llamada redundantes a la vista del consumidor que se produciría si ese punto de vista se registraron como un oyente no específica.
El fragmento de código en el Listado 2 muestra el método de la opinión de que crea un JFace
TableViewer
y lo añade como un proveedor de selección para el sitio createPartControl()
banco de trabajo. Este código permite que cualquier cambio en la selección de UI en el TableViewer
se propague a la página y finalmente a las vistas del consumidor interesadas.
Listado 2. Configuración de un proveedor de selección
public void createPartControl(Composite parent) {
// Set up a JFace Viewer
viewer = new TableViewer(parent, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL);
viewer.setContentProvider(new ViewContentProvider());
viewer.setLabelProvider(new ViewLabelProvider());
viewer.setSorter(new NameSorter());
viewer.setInput(getViewSite());
// ADD the JFace Viewer as a Selection Provider to the View site.
getSite().setSelectionProvider(viewer);
}
Va a encontrar un enfoque similar en el RCP tutorial for eclipse3.5 (update February, 4th 2010)
'ISourceProviderListener': echaba de menos que uno. Buena solución también. +1. Y eso ahora sería "Además de lo que VonC ha mencionado ** a continuación **";) – VonC
Lamentablemente, ya no es así como funcionan las cosas en e4. No más vistas y editores, solo ... partes. La información sobre cómo funciona la comunicación entre ellos parece difícil de encontrar para e4. Para cualquier otra persona que esté buscando, [este tutorial más nuevo] (http://www.vogella.com/tutorials/Eclipse4EventSystem/article.html) parece indicar el camino. –