Ejemplo - Herramienta Readme
Introducción
El editor Readme muestra cómo definir sus propios puntos de extensión para que los utilicen otros conectores. También muestra cómo crear extensiones para entradas de menú emergente de recursos, nuevos asistentes de recursos, editores de archivo en una extensión (.readme), una vista personalizada y páginas de propiedades.
Ejecución del ejemplo
Para empezar a utilizar este ejemplo, cree un archivo con la extensión .readme utilizando el asistente de creación de archivos o cree uno utilizando el asistente de creación de ejemplos.
La vista adicional proporcionada por este ejemplo puede verse seleccionando
Ventana > Mostrar vista > Otras y expandiendo la sección Readme. La acción de
vista puede verse pulsando sobre el icono del readme en la vista Navegador.
Creación de un nuevo archivo readme
Cree un archivo nuevo con la extensión de archivo .readme. Desde el menú Archivo, seleccione Nuevo y, a continuación, seleccione Otros... en el submenú.
En el asistente, pulse Simple y seleccione Archivo en la lista de la izquierda.
Pulse Siguiente para suministrar el nombre de archivo (asegúrese de que la extensión es .readme) y la carpeta que deba contenerlo.
Asistentes de creación de ejemplo
Desde el menú Archivo, seleccione Nuevo y, en el submenú, seleccione Ejemplo...
Ahora seleccione Asistentes de creación de ejemplo. Seleccione el archivo Readme. Pulse
Siguiente. Seleccione la carpeta en la cual quiere que se cree el archivo. Escriba el nombre del archivo con la extensión .readme. Pulse Finalizar.
Acción de extensión de la vista readme
En la vista de navegador, seleccione un archivo con la extensión .readme Si no existe ninguno,cree un archivo con esta extensión. En la barra de herramientas local de la vista de navegador, verá un botón cuyo ayuda flotante indica Ejecutar extensión vista Readme.
Pulse sobre este botón. Aparecerá un diálogo indicando Acción de vista ejecutada.
Menús emergentes
En la vista de navegador, seleccione un archivo con la extensión .readme. Si no existe ninguno, cree un archivo con esa extensión. Seleccione el archivo para que aparezca el menú emergente. Observe que hay una opción de menú que indica Mostrar acción de Readme en el menú emergente. Elija esta opción de menú para abrir un diálogo que indica Acción de menú emergente ejecutada.
Página de Preferencias
En el menú Ventana, seleccione Preferencias. Pulse la página denominada Ejemplo de Readme. Muestra un ejemplo de página de preferencias.
Página de propiedades
En la vista de navegador, seleccione un archivo con la extensión .readme. Si no existe ninguno, cree un archivo con esa extensión. Seleccione el archivo para que aparezca el menú emergente y, a continuación, seleccione la opción de menú Propiedades. Pulse la página denominada Herramienta Readme para ver un ejemplo de página de propiedades.
Editor del archivo readme
El Editor del archivo readme es el editor por omisión para archivos de tipo *.readme.
Cree un archivo con la extensión .readme y ábralo haciendo doble pulsación sobre el mismo, o bien haciendo que aparezca el menú emergente, seleccionando Abrir con y luego seleccionando Editor de archivo readme en el submenú.
Observe que el editor contiene un icono con un lápiz. Éste es el editor que la herramienta readme utiliza por omisión para archivos del tipo *.readme.
Acciones del editor de readme
Se muestra un ejemplo de las acciones que sólo son aplicables a un editor determinado.
Cuando un editor de archivo readme está activo, se advierten 4 botones adicionales en la barra
de herramientas - Ejecutar extensión del editor readme, Acción del editor readme 1; Acción
del editor readme 2, Acción del editor readme 3.
Cuando un editor de archivo readme está activo, aparece un menú desplegable llamado Readme.
Contiene las acciones previamente descritas: Acción de editor readme 1, Acción de editor readme 2, Acción de editor readme 3.
Vista de secciones de Readme
Para ver esta vista de secciones de Readme, en el menú Ventana, seleccione Mostrar vista y, a continuación, Otras... en el submenú. Expanda la opción Readme y seleccione Secciones de readme. Cuando se seleccione un archivo .readme en la vista Navegador, aparecerá una lista de las secciones del archivo *.readme actual. También puede ver la estructura de un archivo *.readme en la vista Esquema.
Un archivo con la extensión .readme puede dividirse en secciones si cada sección empieza por un número. Por ejemplo, si se especificara el texto siguiente en el editor de archivo readme, la herramienta readme detectaría 2 secciones. Para ver cómo se detectan
las secciones en la herramienta readme, escriba un texto en el editor de archivo readme, y
guarde el archivo tecleando Control-S o seleccionando Archivo->Guardar. Abra la vista de secciones readme y seleccione el archivo .readme en la vista de navegador.
Texto de ejemplo:
99.1 Ésta es mi primera sección
Esto es un poco de texto en mi primera sección.
99.1.1 Ésta es un subsección
Esto es un poco de texto en mi subsección.
Arrastrar y soltar
La funcionalidad de Arrastrar y soltar puede verse seleccionando una sección en la Vista de perfil y arrastrando la selección por encima de un archivo de texto. El contenido de la selección se añadirá al archivo.
Contribución de ayuda
El ejemplo de la herramienta readme también muestra cómo utilizar e implementar la ayuda de contexto en todas las extensiones que proporciona: una vista, varias acciones y una página de asistente.
Para obtener la ayuda de contexto en una acción, mantenga el puntero sobre el elemento de menú sin seleccionarlo y luego pulse la tecla F1. También puede obtener ayuda sensible a contexto (F1) en la vista Secciones de readme y en la página Asistentes de creación de ejemplos (en el asistente Nuevo).
Detalles
El ejemplo de herramienta readme declara un punto de extensión y proporciona una serie de extensiones. Las extensiones suministradas son lo bastante globales como para entender cómo funciona el Entorno de trabajo, ya que utiliza varios de los puntos de extensión más interesantes declarados por el entorno de trabajo.
Las extensiones suministradas que se incluyen en este ejemplo son vistas y acciones de vistas, páginas de preferencias, páginas de propiedades, asistentes, editores y acciones de editores, menús emergentes, conjuntos de acciones, contribuciones de ayuda, contextos de ayuda y acciones de soltar.
Este ejemplo también proporciona un punto de extensión declarado en el conector.
Todo conector que utilice la extensión org.eclipse.ui.examples.readmetool.sectionParser
definida en este ejemplo, requerirá la clase IReadmeFileParser. La clase DefaultSectionParser es una implementación de ejemplo de IReadmeFileParser.
La clase ReadmeEditor implementa IEditorPart y es definida como un editor en archivos con la extensión .readme en el archivo plugin.xml al utilizar el punto de extensión org.eclipse.ui.editors. La clase ReadmeSectionsView implementa IViewPart y es definida como una vista al utilizar el punto de extensión org.eclipse.ui.views. Este punto de extensión también define una categoría para la vista a utilizar en la selección de vista.
En este ejemplo se definen dos tipos de conjuntos de preferencias, las preferencias del Entorno de trabajo y las propiedades de recursos. La preferencia de entorno de trabajo está definida en la clase ReadmePreferencePages, que implementa IWorkbenchPreferencePage de tal modo que se añadirá al diálogo Ventana->Preferencias. La clase se define en el punto de extensión org.eclipse.ui.PreferencePages en el archivo plugin.xml. Las dos páginas de propiedades de recursos son ReadmeFilePropertyPage y ReadmeFilePropertyPage2, y ambas implementan IWorkbenchPropertyPage.
Ambas están definidos para ser invocados en el tipo IFile por la etiqueta objectClass
en el archivo plugin.xml del punto de extensión org.eclipse.ui.propertyPages.
La clase ReadmeCreationWizard implementa INewWizard y está definida en el punto de extensión org.eclipse.ui.newWizards del archivo plugin.xml. Este punto de extensión también define la categoría que el asistente muestra cuando el usuario selecciona Archivo->Nuevo->Ejemplo...
Diversas matrices de acción se añaden a este ejemplo. El conjunto de acción declara un menú etiquetado Editor de archivo readme para que se incluya en la barra de menús de la ventana del Entorno de trabajo utilizando el punto de extensión org.eclipse.ui.actionSets. También define una acción para la barra de herramientas del Entorno de trabajo y la barra de menús, utilizando las etiquetas toolbarpath y menubarPath. Utiliza la clase WindowActionDelegate. que implementa el IWorkbenchWindowActionDelegate, para implementar la acción.
La acción para el menú emergente se define como un objectContribution por la clase PopupMenuActionDelegate en el punto de extensión org.eclipse.ui.popupMenus.
PopupMenuActionDelegate implementa IObjectActionDelegate y utiliza la IWorkbenchPart proporcionada para abrir un diálogo de mensaje. La acción de vista ViewActionDelegate se define en el punto de extensión org.eclipse.ui.viewActions e implementa IViewActionDelegate. La vista en la que aparece está definida por la etiqueta targetID que en este ejemplo es org.eclipse.ui.views.ResourceNavigator. La acción del editor está definida por la clase EditorActionDelegate, que implementa IEditorActionDelegate y se añade utilizando el punto de extensión org.eclipse.ui.editorActions. El editor al cual se le aplica está definido por la etiqueta targetID que en este ejemplo está definida en
org.eclipse.ui.examples.readmetool.ReadmeEditor.
La clase ReadmeDropActionDelegate implementa IDropDelegate. Los IDropDelegates son informados cada vez que se produce una acción de soltar llevada a cabo por el Entorno de trabajo. El punto de extensión para esta acción es org.eclipse.ui.dropActions.