Editores de texto y texto JFace
El paquete
org.eclipse.ui.editors.text
del entorno de trabajo implementa el editor de texto por omisión de la
plataforma. Para su implementación, utiliza la infraestructura de editores de texto que hay en
org.eclipse.ui.texteditor.
La infraestructura de editores de texto proporciona un editor independiente
del modelo de dominio que da soporte a las características siguientes:
- Operaciones de edición de texto estándar, como las de cortar/copiar/pegar, buscar/sustituir
- Presentación visual de marcadores de recursos adyacentes en el área de edición de texto
- Actualización automática de marcadores de recursos a medida que el usuario edita texto
- Gestión de menús de contexto
- Respuestas a las acciones del usuario en el entorno de trabajo, como las de
renovar recursos desde el sistema de archivos, cerrar proyectos o eliminar el
recurso elemento de entrada del editor
ITextEditor
está definido como extensión específica de texto de la interfaz
IEditorPart.
La implementación por omisión de esta interfaz la proporciona
AbstractTextEditor.
IDocumentProvider
permite establecer el enlace entre un modelo de dominio y un editor de texto
(ITextEditor).
El proveedor de documentos gestiona la presentación del texto del modelo de
dominio y se puede compartir entre múltiples editores.
La infraestructura de edición de texto del entorno de trabajo está construido tomando como
base el texto JFace. El ejemplo del editor Java en
org.eclipse.ui.examples.javaeditor es idóneo para empezar a interpretar
la infraestructura de editores de texto y el texto JFace. Muestra de qué manera pueden
implementarse características complejas como el coloreado del texto,
la ayuda flotante y el sangrado automático.
Texto JFace
El paquete
org.eclipse.jface.text
y sus subpaquetes da soporte a la implementación de editores de texto sólidos, como
el editor de texto del entorno de trabajo y el editor Java de JDT.
El mapa siguiente proporciona una visión general del soporte existente en el texto JFace.
- org.eclipse.jface.text
define un modelo de documento genérico para texto y proporciona un visor
que visualiza texto según este modelo. Los documentos pueden dividirse en
particiones que no se solapan, lo cual puede resultar útil cuando el
texto representa múltiples elementos con diferentes significados (como los
métodos y los comentarios dentro de un archivo Java). Las particiones tienen
tipos de contenido, que se utilizan para identificar lugares donde debe
asignarse un comportamiento distinto para los diferentes tipos de contenido.
Las posiciones del documento permiten definir regiones de texto que
permanecen actualizadas a medida que el usuario edita texto.
IDocument
y
TextViewer
son los lugares idóneos para empezar a interpretar este paquete.
- org.eclipse.jface.text.formatter
define una complemento adicional del visor de texto que se puede configurar con un
comportamiento de formateo distinto para el tipo de contenido de
cada partición. El formateo se logra manipulando los espacios en blanco y
los delimitadores para presentar el texto de manera estructurada. El
formateo se utiliza con mayor frecuencia cuando se edita código, y suele
ser el usuario quien lo controla según sus preferencias. El editor de código fuente
de JDT utiliza este soporte para proporcionar formateo de código Java controlado
por el usuario.
- org.eclipse.jface.text.contentassist
define un complemento adicional del visor de texto que proporciona soporte de
finalización de texto controlado por el usuario. Se utilizan ventanas emergentes
para proponer posibles opciones de texto a la hora de completar una frase.
El usuario puede seleccionar estas opciones para su inserción automática en el
texto. La asistencia de contenido también da soporte a las ventanas emergentes
contextualizadas para proporcionar al usuario información que esté relacionada con la
posición actual en el documento.
IContentAssistant
es el lugar idóneo para empezar a interpretar este paquete.
Se puede configurar con diferentes estrategias de finalización
de frases para los tipos de contenido de las distintas particiones.
- org.eclipse.jface.text.presentation
define un complemento adicional del visor de texto que puede controlar
la presentación visual (font, estilo de font, colores) del
texto que se muestra en el visor de texto. Para cada cambio que se aplica
a un documento, el conciliador de
presentación determina qué parte de la presentación visual
debe invalidarse y cómo repararla. Se pueden utilizar diferentes
estrategias para los tipos de contenido de las distintas particiones.
- org.eclipse.jface.text.reconciler
define un complemento adicional del visor de texto que da soporte a la
sincronización de un documento con cierta estructura externa que
también podría estar manipulando el texto.
- org.eclipse.jface.text.rules
proporciona exploración de documentos basada en reglas.
Los conectores pueden utilizar reglas para distinguir símbolos como los
delimitadores de líneas, el espacio en blanco y los patrones genéricos,
al explorar un documento. Este paquete también da soporte a la conciliación
de presentaciones controlada por reglas y al particionado de documentos.
El ejemplo del editor Java utiliza este paquete para analizar código Java.
- org.eclipse.jface.text.source
define un visor del fuente. El visor del fuente amplía un visor
de texto para dar soporte a las anotaciones de texto visuales. Estas anotaciones se
utilizan en el código fuente de JDT para anotar descripciones de problemas
y puntos de interrupción en el código fuente Java.
El soporte de texto de JFace utiliza el widget
StyledText
de SWT.
