La página Ampliaciones se utiliza para examinar y editar ampliaciones de conectores. Las ampliaciones son el mecanismo central para proporcionar comportamiento a la plataforma. A menos que el conector sea una sencilla biblioteca de la API de Java puesta a disposición de los otros conectores, el comportamiento nuevo se proporciona en forma de ampliación.
Los conectores contribuyen a los puntos de extensión definidos por esos conectores que necesitan. La sintaxis de una ampliación deben coincidir con la definición del punto de extensión para que pueda procesarse correctamente. La lista total de puntos de extensión elegibles la calcula el PDE recorriendo todos los conectores visibles (tanto del área de trabajo como externos).
El asistente de ampliación genérico proporcionado por el PDE simplemente explorará los puntos de extensión. Si se proporciona un esquema de ampliación (consulte el apartado Esquema de punto de extensión), el asistente extraerá la gramática y los metadatos del punto de extensión del esquema.
Para ilustrar el funcionamiento de la página Ampliaciones, añadiremos al conector la acción 'Hola, mundo del PDE'. Estaremos contribuyendo al punto de extensión org.eclipse.ui.actionSets. En este ejemplo se da por supuesto que se está familiarizado con los puntos de extensión.
Empezaremos por pulsar el botón Nuevo para seleccionar el asistente de ampliación:
El asistente Ampliación basada en esquema es el asistente por omisión puesto que maneja las ampliaciones de un modo genérico. Explorará los conectores y ofrecerá todos los puntos de extensión que encuentre, con o sin esquemas. Los que que tengan esquemas permitirán que el PDE ofrezca una ayuda mejor. Si falta un esquema de punto de extensión, el PDE permitirá añadir elementos y atributos a la ampliación, pero no podrá verificar si son válidos para el punto de extensión elegido.
Si se pulsa Siguiente, se ofrecerá una lista de puntos de extensión. Seleccione Conjuntos de acción y pulse Finalizar.
El asistente añadirá la ampliación nueva a la lista de ampliaciones. Puesto que esta ampliación tiene asociado un esquema, más adelante podremos editar la definición de la ampliación. Seleccionamos la ampliación que acabamos de añadir y elegimos Nuevo->actionSet del menú emergente. Este elemento de XML se ha definido como el único elemento válido que puede mostrarse en la definición de la ampliación.
Para todos los atributos obligatorios, el PDE creará valores por omisión. El nombre por omisión del conjunto de acciones puede cambiarse por "Conjunto de acciones de ejemplo" seleccionando el elemento y cambiando la propiedad etiqueta de la vista Propiedades. En la lista de ampliaciones aparecerá el nombre nuevo.
Ahora necesitamos definir un menú y una acción para el conjunto de acciones. Si seleccionamos el conjunto de acciones y hacemos aparecer el menú en la sección "Hijos de elemento de ampliación", el menú "Nuevo" ofrecerá dos opciones: menú y acción. Estas opciones se basan en la información del esquema para la ampliación de conjuntos de acciones. Lo primero que hay que hacer es crear el menú.
Seleccione Nuevo->menú para crear el menú.
Selecciónelo y cambie sus propiedades. Cambie el id por "sampleMenu" y su etiqueta por "Menú de ejemplo."
Con el objeto menú seleccionado, haga aparecer un menú y seleccione Nuevo->separador. Debería aparecer un hijo nuevo.
Seleccione "separador" y cambie su nombre en "sampleGroup". Esto creará un grupo con nombre en el menú que podemos utilizar para contribuir a la acción.
Podemos crear la acción de forma parecida:
Seleccione Nuevo->acción para crear una acción.
Selecciónela y cambie sus propiedades. Cambie su etiqueta por "&Acción de ejemplo" y su menubarPath por "sampleMenu/sampleGroup." Esto añadirá la acción al menú que acabamos de definir.
La última cosa que hay que establecer es la clase de Java de la acción. La definición de punto de extensión especifica que una acción debe implementar IWorkbenchWindowActionDelegate. El PDE puede ser de ayuda puesto que conoce esta información a partir del esquema.
Pulse en la propiedad clase para ponerse en modalidad de edición. Seleccione el botón para abrir el cuadro de diálogo del editor de celdas.
Seleccione el botón de selección para crear una clase nueva.
Pulse el botón Examinar para elegir el contenedor de origen y elija el "conector XYZ".
Cambie el nombre de la clase a "SampleAction."
Antes de que pulse Finalizar, el cuadro de diálogo debería parecerse a este:
Al finalizar, se generará la clase nueva basada en la interfaz necesaria (con una implementación de un apéndice por cada método abstracto). Además, el valor de la propiedad clase se establecerá al nombre de la clase nueva. Además, el asistente abrirá por omisión la clase de Java nueva para editarla. Puede buscar el método "run" y añadir la sentencia siguiente:
System.out.println("¡Hola, mundo del PDE!");
Guarde el código fuente nuevo y cierre el editor de Java. Luego, vuelva a la página Ampliaciones del editor de manifiestos y guárdelo.
Continuaremos con este ejemplo cuando hayamos ejecutado el conector.