Anidación

En el mundo exterior, cada componente es una caja negra. El componente puede utilizar IPartFactory para crear hijos anidados independientemente de lo que sea adecuado, pero no expondrá a esos hijos directamente al mundo exterior. El ejemplo siguiente muestra una vista con dos hijos anidados.

/**
 * Vista de ejemplo que contiene anotaciones de error anidadas a la izquierda y una
 * vista de propiedades anidada a la derecha.
 *
 * @since 3.1
 */
public class TestCompositeView {
   
    public TestCompositeView(Composite parent, IPartFactory factory) throws CoreException {       
        // Crear vista de anotaciones de error PDE
        ContainerContext logViewContext = new ContainerContext();   
        ISite logView = factory.createView(
                "org.eclipse.pde.runtime.LogView",
                parent, logViewContext, null);

        // Crear vista Propiedades
        ContainerContext emptyContext = new ContainerContext();
        ISite propertiesView = factory.createView(IPageLayout.ID_PROP_SHEET, parent, emptyContext, null);

        // Diseño de construcción
        GridLayout layout = new GridLayout();
        layout.numColumns = 2;
        parent.setLayout(layout);

        // Ordenar vista de anotaciones de error
        GridData data1 = new GridData(GridData.FILL_BOTH);
        logView.getControl().setLayoutData(data1);
       
        // Ordenar vista de propiedades
        GridData data2 = new GridData(GridData.FILL_BOTH);
        propertiesView.getControl().setLayoutData(data2);

    }
}